From patchwork Wed Nov 7 22:31:44 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rob Herring X-Patchwork-Id: 150451 Delivered-To: patch@linaro.org Received: by 2002:a2e:299d:0:0:0:0:0 with SMTP id p29-v6csp93105ljp; Wed, 7 Nov 2018 14:31:58 -0800 (PST) X-Google-Smtp-Source: AJdET5fCfS22JGLvfwHqG6Oqbtyf7L6P754sRQ0bBKbVAsDZ0B3iCWyZeSWRvPzax/dHLYu48Ap+ X-Received: by 2002:a63:1848:: with SMTP id 8mr1768009pgy.81.1541629918540; Wed, 07 Nov 2018 14:31:58 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1541629918; cv=none; d=google.com; s=arc-20160816; b=dToheQLwdhVX53+bsg/oPYkdpHZb32ax2K+0GAcp3a0iHeWZMlXJhRlN5l5kiHs8Ym nd4nVfxJIUNiOfhQztIPTyJO1Qge0S4TrVKGLTghhnBK9G4cab30b2/8j1q28NdW+QgJ DpNNkD05ovojBTlindcUH2b884PNv3eNxCRbz1PXxqJ14rQClU30p2rFoMW3pJMVgj2c pz5lRsr+X89KvB1IzGtrkfIcyInj5mx5XzEAM0bdB33P2w0Ox59EMRrF9avyF6R+honI 9Bc989IT3ytT0n44+ZLlUyyfAmTuKNyW2NILTFQED80HazQ4CwPJYX9GSXX/468Vs3CQ lCfQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=3CYnbqPAmqUfHKzmMcRqlFYTfeL9hdSDgbdLKoosjak=; b=Q2jQGOVRfs+WdTZbAE/crShIDm5A5PDTdzVVmIz/wwF5+T5RuCc/at9VyatDJylDuh Ry8eleGnOFBw4kHkVj9SufQfcsSTuK3iCd5QSui81q8znniKLLdsngeMPmlhCdq5Ewfn xd8nWH7ai0ZSEWbVrLS9OB54pUNmg44qMLMhHXE62+AqikTiSoJq3jXSAojAL03ARY0d 10lCAlaqqfppezmbBEfh8C/7/j3FGmJIxpxSLTRnQC3soPnVqVxkFW7att+gSiFIkas8 V2yCGj2Ijer9eTUgoQsD7y2BascEEV+P6Ndtnc3tIsnTaSkfNyDbsCZYnaA62ef4xuOd bnug== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id o61-v6si2068773pld.187.2018.11.07.14.31.58; Wed, 07 Nov 2018 14:31:58 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728128AbeKHIEW (ORCPT + 32 others); Thu, 8 Nov 2018 03:04:22 -0500 Received: from mail-oi1-f194.google.com ([209.85.167.194]:36721 "EHLO mail-oi1-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727591AbeKHIEV (ORCPT ); Thu, 8 Nov 2018 03:04:21 -0500 Received: by mail-oi1-f194.google.com with SMTP id r127-v6so15293462oie.3; Wed, 07 Nov 2018 14:31:54 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=3CYnbqPAmqUfHKzmMcRqlFYTfeL9hdSDgbdLKoosjak=; b=VXtgf+m+r1n4iSX2VsRzo0o8CtPHcBDzcYfi6wJVmwYj8gEP6RxDcCHtx71XEyW0jg 87XnhJvGyFS2ToPel4v4IGUbAHWFojGiVZQlaRmbV5TzUX06FguZ8kVyGHAvr5mI/kG4 pES+seEl8Hl+8oinUIS3CBGz1UdepiFXckJO3WPepaBP9rd2F+ndPmjfv+WThgQY2MZe CUHwzTIHj0TlkOj63maTtrd53eTcvyWSCKvKXyB7VMojog3R1fCDvFc6qno0yDM3OKAm 3012CBrt/zXOC9vbMyv9s5I8qRGcM+OYq7UdbRditK9WLz5HjVymDYs2D2RWowZl1MWJ xu6w== X-Gm-Message-State: AGRZ1gK/ASxbmq0YMljLYD7WgKi9nu09HXUkY94s1TDSD8gtwznSceSv n0GjNiOUjoMY/2err18NeA== X-Received: by 2002:aca:5596:: with SMTP id j144-v6mr1324611oib.54.1541629913931; Wed, 07 Nov 2018 14:31:53 -0800 (PST) Received: from xps15.herring.priv (24-155-109-49.dyn.grandenetworks.net. [24.155.109.49]) by smtp.googlemail.com with ESMTPSA id f9sm750959oth.17.2018.11.07.14.31.53 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 07 Nov 2018 14:31:53 -0800 (PST) From: Rob Herring To: "David S. Miller" Cc: Frank Rowand , linux-kernel@vger.kernel.org, sparclinux@vger.kernel.org Subject: [PATCH 1/8] fs/openpromfs: use full_name instead of path_component_name Date: Wed, 7 Nov 2018 16:31:44 -0600 Message-Id: <20181107223151.14991-2-robh@kernel.org> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181107223151.14991-1-robh@kernel.org> References: <20181107223151.14991-1-robh@kernel.org> MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org In preparation to remove struct device_node.path_component_name, use full_name instead. kbasename is used so full_name can be used whether it is the full path or just the node's name and unit-address. Cc: "David S. Miller" Cc: sparclinux@vger.kernel.org Signed-off-by: Rob Herring --- fs/openpromfs/inode.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) -- 2.19.1 diff --git a/fs/openpromfs/inode.c b/fs/openpromfs/inode.c index 607092f367ad..3d8e9bcfe239 100644 --- a/fs/openpromfs/inode.c +++ b/fs/openpromfs/inode.c @@ -199,10 +199,11 @@ static struct dentry *openpromfs_lookup(struct inode *dir, struct dentry *dentry child = dp->child; while (child) { - int n = strlen(child->path_component_name); + const char *node_name = kbasename(child->full_name); + int n = strlen(node_name); if (len == n && - !strncmp(child->path_component_name, name, len)) { + !strncmp(node_name, name, len)) { ent_type = op_inode_node; ent_data.node = child; ino = child->unique_id; @@ -293,8 +294,8 @@ static int openpromfs_readdir(struct file *file, struct dir_context *ctx) } while (child) { if (!dir_emit(ctx, - child->path_component_name, - strlen(child->path_component_name), + kbasename(child->full_name), + strlen(kbasename(child->full_name)), child->unique_id, DT_DIR)) goto out; From patchwork Wed Nov 7 22:31:45 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rob Herring X-Patchwork-Id: 150452 Delivered-To: patch@linaro.org Received: by 2002:a2e:299d:0:0:0:0:0 with SMTP id p29-v6csp93111ljp; Wed, 7 Nov 2018 14:31:59 -0800 (PST) X-Google-Smtp-Source: AJdET5cljs0Xo6SL7s7AXzsiU9xtvJMXVvez0c0AEwzPMTY03XWYtVH2jdSqJW7XvRMFrU3WH4eS X-Received: by 2002:a17:902:7a2:: with SMTP id 31-v6mr2070180plj.277.1541629918931; Wed, 07 Nov 2018 14:31:58 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1541629918; cv=none; d=google.com; s=arc-20160816; b=FnKCKgD4mwkVoZ7PviDAbUu62XXs/3fOFnEW9TN/MMnBI+HQJKdOLNZWEBw2Y2hG+e baV2N9iLYtwiGs6qu0m64gj7VsGuCGRYQ6qeOgSZUz39miXC0PlLkh4nkOB7ncqJ/O9A xpQtsOIizVQwrC3zmzL1WlM26JuwY6JjR2ZaoySecPxWwda01y+G8bV6nKYqDBA4840i Q8H18f4myD2IsQFutV8m7CkPi3TarqQKrgjW3wbFQouoM58lUToGC2lPWi0sg0oLqVgY OQjxUbtMfgijKWUSJmKfjh4Br39q98z8POQUIXIix7SvTKwQhvWDkIMMzDHAX1282Ahx HdJg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=QzI8JHdrx3gMSYYSAWjUWfYDzwDDbM1CO6mI41xpJGw=; b=Ekrm8238KhkuwqLCId/t2AjnemUQsWGWmhhZ5CxsDnFTPL4oksqQuOIhIl/a2TCcqz CbHFIQYezOCsTsz+QbJuy/xOR540kB1ru9yfJAByv4buXXozZfTcLTIqHVuE7YE7QZIv jDrTmuIjSczeeXuEqv+G8qmoRq/9hI0mzsikqN7gJjXgUrEJVvWs/K/LSvHfwcfyAFxa OS1psd1p8XfMco3jmAZK57/oHYhB08UoVbBX9bl/CprrxpZ8qGbQQI1ABBAHoF7d2KON sEOxiT9Tuw8JaLKNWmpNi6vh32+S/FPUZ1LNZsT1VXoL+8yx3aibVVZl+MrafW/1+cvH watQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id o61-v6si2068773pld.187.2018.11.07.14.31.58; Wed, 07 Nov 2018 14:31:58 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728177AbeKHIEX (ORCPT + 32 others); Thu, 8 Nov 2018 03:04:23 -0500 Received: from mail-ot1-f68.google.com ([209.85.210.68]:42787 "EHLO mail-ot1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728080AbeKHIEX (ORCPT ); Thu, 8 Nov 2018 03:04:23 -0500 Received: by mail-ot1-f68.google.com with SMTP id n46so12110023otb.9; Wed, 07 Nov 2018 14:31:55 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=QzI8JHdrx3gMSYYSAWjUWfYDzwDDbM1CO6mI41xpJGw=; b=iNipIryrABO8B97uPY646/9dkP9qT17nPVLD+4TydaCyQsSd/z4LLrkbkdScSjgRSi 0Nn/yXHWur6hib+mS0Xa6DF+j6Hhufhwd9TuXPBhCwOokH6fS4bEdkq6aKQNuiggSf+u YxBbOCRkszo6682MRnI2b9zVYwLG2NykVYCr4zrR1H16ByoToVMSvGiHRmy9rAIGVXS5 gORle8Sy0y0Sf7zRu4L3mQHv/j9Kj4OxFFlTCuVor3IhyaMh7q77pojIjdwEVCVJah+E SUrCTqJeAj+j0UMY7YkqwJknLABCqgiKhW6NCQ5JsL9f9QP+MQl8HzcLepBQ+7YrbQ8s tIdw== X-Gm-Message-State: AGRZ1gIyCQlwplo2k1lKLzThdQZUm9yJIfT/UYBnnmhyzntjIyvDo+vz X37GIzcq+ize1aUyVQzw5A== X-Received: by 2002:a9d:2987:: with SMTP id n7mr1316096otb.339.1541629915084; Wed, 07 Nov 2018 14:31:55 -0800 (PST) Received: from xps15.herring.priv (24-155-109-49.dyn.grandenetworks.net. [24.155.109.49]) by smtp.googlemail.com with ESMTPSA id f9sm750959oth.17.2018.11.07.14.31.53 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 07 Nov 2018 14:31:54 -0800 (PST) From: Rob Herring To: "David S. Miller" Cc: Frank Rowand , linux-kernel@vger.kernel.org, sparclinux@vger.kernel.org Subject: [PATCH 2/8] of: Drop full path from Sparc PDT full_name Date: Wed, 7 Nov 2018 16:31:45 -0600 Message-Id: <20181107223151.14991-3-robh@kernel.org> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181107223151.14991-1-robh@kernel.org> References: <20181107223151.14991-1-robh@kernel.org> MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Now that there are no more users of path_component_name outside of the PDT code and users of device_node.full_name are converted to use "%pOF" printf specifier, we can align Sparc with other arches and store just the base node name and unit address in full_name. This makes path_component_name redundant, so it can be removed. As full_name is used by printf specifiers, set it as early as possible. Cc: Frank Rowand Signed-off-by: Rob Herring --- drivers/of/pdt.c | 26 +++----------------------- include/linux/of.h | 1 - 2 files changed, 3 insertions(+), 24 deletions(-) -- 2.19.1 diff --git a/drivers/of/pdt.c b/drivers/of/pdt.c index 013e65de074a..40321b6b82e2 100644 --- a/drivers/of/pdt.c +++ b/drivers/of/pdt.c @@ -32,24 +32,7 @@ unsigned int of_pdt_unique_id __initdata; static char * __init of_pdt_build_full_name(struct device_node *dp) { - int len, ourlen, plen; - char *n; - - dp->path_component_name = build_path_component(dp); - - plen = strlen(dp->parent->full_name); - ourlen = strlen(dp->path_component_name); - len = ourlen + plen + 2; - - n = prom_early_alloc(len); - strcpy(n, dp->parent->full_name); - if (!of_node_is_root(dp->parent)) { - strcpy(n + plen, "/"); - plen++; - } - strcpy(n + plen, dp->path_component_name); - - return n; + return build_path_component(dp); } #else /* CONFIG_SPARC */ @@ -181,6 +164,8 @@ static struct device_node * __init of_pdt_create_node(phandle node, dp->properties = of_pdt_build_prop_list(node); + dp->full_name = of_pdt_build_full_name(dp); + irq_trans_init(dp); return dp; @@ -204,8 +189,6 @@ static struct device_node * __init of_pdt_build_tree(struct device_node *parent, ret = dp; prev_sibling = dp; - dp->full_name = of_pdt_build_full_name(dp); - dp->child = of_pdt_build_tree(dp, of_pdt_prom_ops->getchild(node)); if (of_pdt_build_more) @@ -228,9 +211,6 @@ void __init of_pdt_build_devicetree(phandle root_node, struct of_pdt_ops *ops) of_pdt_prom_ops = ops; of_root = of_pdt_create_node(root_node, NULL); -#if defined(CONFIG_SPARC) - of_root->path_component_name = ""; -#endif of_root->full_name = "/"; of_root->child = of_pdt_build_tree(of_root, diff --git a/include/linux/of.h b/include/linux/of.h index a5aee3c438ad..0fe5bef81a7e 100644 --- a/include/linux/of.h +++ b/include/linux/of.h @@ -66,7 +66,6 @@ struct device_node { unsigned long _flags; void *data; #if defined(CONFIG_SPARC) - const char *path_component_name; unsigned int unique_id; struct of_irq_controller *irq_trans; #endif From patchwork Wed Nov 7 22:31:46 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rob Herring X-Patchwork-Id: 150453 Delivered-To: patch@linaro.org Received: by 2002:a2e:299d:0:0:0:0:0 with SMTP id p29-v6csp93135ljp; Wed, 7 Nov 2018 14:32:01 -0800 (PST) X-Google-Smtp-Source: AJdET5fxYcT44nLLA/gxaVNvlByo1uP+x+BdFU7ubFQhOtchYN1UVbyUnA3al19sZD4hbff4DXpm X-Received: by 2002:a17:902:2943:: with SMTP id g61-v6mr2190332plb.82.1541629920968; Wed, 07 Nov 2018 14:32:00 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1541629920; cv=none; d=google.com; s=arc-20160816; b=0h110YMQuFSaGGbXv+3HD56sZbxVHWnYHBq3uhZj1zisGtnXRzTeC1mmC5YHYIPPxE Z3R+7s8pd0PmNSLEdCcIUDtHpBkKyL6b/z8C3OnKOGQ4J3wQmdTK02Sedr/V4veo16uz 8rAlGNGC3XPWhT72EsJaCt1hfny/x95X7vqkp/M1Dz72bVBgD3zHmdZ4N2QDBZM7kGNq iEqS12LEDPtLBC8x3C7mQnCILwzrT+CcV6PT3KTyz4sg3CYq+VkB+7+G5OZsuvXzqDTg cZBna2CCI3cKWmlQUNQ5ksJ5S340kb1v/tzVwtw8ADP8FS1hkrWQKM2SGbsxa5+ghAg7 8MEg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=9gl0eGLxWkV78v12QkOZr6gfUapSEn24ksgEQkdeKgY=; b=nUNGFSYlKDDpNkMtr029cePVEXNjvxv4IX24Vu6hoxLyQrnMdkCdLJrBXXdHUHDs5Y L1ro1p8IPTXXBxCwBv9nwZQeaHu1WYlg4sVQoVwS38CWaRgzmmXN+ebfSq5hMeQi3whW wcAPZpyaHrjZab2LIEUoPoYtJDJ+hrHofXCeu36+DUybLyQGsdt5B/HtzQCdOlg6t94m yBtKxxYimvx+TKZUMMhITQwDC0OD6JQSoZ7PLL9w7pvtabx+hS5Mo+jwPrY8XyMA3O7j vXL4DKDghC9s0JZMP7XH9ocxqopOEuglrEAHHrdYpd/YpDtSIUMQb6KmssP9xHo3Ka35 JGeQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id p187-v6si1645394pfb.127.2018.11.07.14.32.00; Wed, 07 Nov 2018 14:32:00 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728219AbeKHIEZ (ORCPT + 32 others); Thu, 8 Nov 2018 03:04:25 -0500 Received: from mail-oi1-f195.google.com ([209.85.167.195]:35401 "EHLO mail-oi1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727591AbeKHIEY (ORCPT ); Thu, 8 Nov 2018 03:04:24 -0500 Received: by mail-oi1-f195.google.com with SMTP id v198-v6so15306520oif.2; Wed, 07 Nov 2018 14:31:57 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=9gl0eGLxWkV78v12QkOZr6gfUapSEn24ksgEQkdeKgY=; b=ic42Ac4SVaU4PG4i28tHTKJcbLiljrAla6Xbq5WoO0KrBWG3ZVMCtdHEEEwJ6BX/yG bQSJpGiGyNPcghVWI3mRIOROsIC+ZuhXcKJMhbNN3w1ucuH2YQnpaNvK1vNUgY/CjPn+ 4zh0YqdVa0nrFDqyNUR7xG5d7aVkY2gLD3iA/q6jK2YbXEI5A7rEw4gRGkl0+LozEw3I mvlGAU8/K6u1hC3icI35t/oTBj9Z23i5ermvVHHNDxmD1QU8x4/fEAeqnmhYTPeGjpRi LncbmP4OIQ7514+viXZRQozePD3JiRgbczQ28t9c4ofQpEhfsepi6Ta2Qs0egyAsBY/T FC7w== X-Gm-Message-State: AGRZ1gI7K/6R5NBs52CbGa6qK3vShq1npVgChBC6bKaerfDBn9oAsXtj UX779siZvy6xHOE8dTXYJw== X-Received: by 2002:aca:f40d:: with SMTP id s13-v6mr1335131oih.102.1541629916441; Wed, 07 Nov 2018 14:31:56 -0800 (PST) Received: from xps15.herring.priv (24-155-109-49.dyn.grandenetworks.net. [24.155.109.49]) by smtp.googlemail.com with ESMTPSA id f9sm750959oth.17.2018.11.07.14.31.55 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 07 Nov 2018 14:31:55 -0800 (PST) From: Rob Herring To: "David S. Miller" Cc: Frank Rowand , linux-kernel@vger.kernel.org, sparclinux@vger.kernel.org Subject: [PATCH 3/8] sparc: prom: use property "name" directly to construct node names Date: Wed, 7 Nov 2018 16:31:46 -0600 Message-Id: <20181107223151.14991-4-robh@kernel.org> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181107223151.14991-1-robh@kernel.org> References: <20181107223151.14991-1-robh@kernel.org> MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org In preparation to remove direct accesses to the device_node.name pointer, retrieve the node name from the "name" property instead. Cc: "David S. Miller" Cc: sparclinux@vger.kernel.org Signed-off-by: Rob Herring --- arch/sparc/kernel/prom_32.c | 20 ++++++++++------ arch/sparc/kernel/prom_64.c | 47 +++++++++++++++++++++++-------------- 2 files changed, 42 insertions(+), 25 deletions(-) -- 2.19.1 diff --git a/arch/sparc/kernel/prom_32.c b/arch/sparc/kernel/prom_32.c index d41e2a749c5d..30e33b461970 100644 --- a/arch/sparc/kernel/prom_32.c +++ b/arch/sparc/kernel/prom_32.c @@ -60,6 +60,7 @@ void * __init prom_early_alloc(unsigned long size) */ static void __init sparc32_path_component(struct device_node *dp, char *tmp_buf) { + const char *name = of_get_property(dp, "name", NULL); struct linux_prom_registers *regs; struct property *rprop; @@ -69,13 +70,14 @@ static void __init sparc32_path_component(struct device_node *dp, char *tmp_buf) regs = rprop->value; sprintf(tmp_buf, "%s@%x,%x", - dp->name, + name, regs->which_io, regs->phys_addr); } /* "name@slot,offset" */ static void __init sbus_path_component(struct device_node *dp, char *tmp_buf) { + const char *name = of_get_property(dp, "name", NULL); struct linux_prom_registers *regs; struct property *prop; @@ -85,7 +87,7 @@ static void __init sbus_path_component(struct device_node *dp, char *tmp_buf) regs = prop->value; sprintf(tmp_buf, "%s@%x,%x", - dp->name, + name, regs->which_io, regs->phys_addr); } @@ -93,6 +95,7 @@ static void __init sbus_path_component(struct device_node *dp, char *tmp_buf) /* "name@devnum[,func]" */ static void __init pci_path_component(struct device_node *dp, char *tmp_buf) { + const char *name = of_get_property(dp, "name", NULL); struct linux_prom_pci_registers *regs; struct property *prop; unsigned int devfn; @@ -105,12 +108,12 @@ static void __init pci_path_component(struct device_node *dp, char *tmp_buf) devfn = (regs->phys_hi >> 8) & 0xff; if (devfn & 0x07) { sprintf(tmp_buf, "%s@%x,%x", - dp->name, + name, devfn >> 3, devfn & 0x07); } else { sprintf(tmp_buf, "%s@%x", - dp->name, + name, devfn >> 3); } } @@ -118,6 +121,7 @@ static void __init pci_path_component(struct device_node *dp, char *tmp_buf) /* "name@addrhi,addrlo" */ static void __init ebus_path_component(struct device_node *dp, char *tmp_buf) { + const char *name = of_get_property(dp, "name", NULL); struct linux_prom_registers *regs; struct property *prop; @@ -128,13 +132,14 @@ static void __init ebus_path_component(struct device_node *dp, char *tmp_buf) regs = prop->value; sprintf(tmp_buf, "%s@%x,%x", - dp->name, + name, regs->which_io, regs->phys_addr); } /* "name:vendor:device@irq,addrlo" */ static void __init ambapp_path_component(struct device_node *dp, char *tmp_buf) { + const char *name = of_get_property(dp, "name", NULL); struct amba_prom_registers *regs; unsigned int *intr, *device, *vendor, reg0; struct property *prop; @@ -168,7 +173,7 @@ static void __init ambapp_path_component(struct device_node *dp, char *tmp_buf) device = prop->value; sprintf(tmp_buf, "%s:%d:%d@%x,%x", - dp->name, *vendor, *device, + name, *vendor, *device, *intr, reg0); } @@ -196,12 +201,13 @@ static void __init __build_path_component(struct device_node *dp, char *tmp_buf) char * __init build_path_component(struct device_node *dp) { + const char *name = of_get_property(dp, "name", NULL); char tmp_buf[64], *n; tmp_buf[0] = '\0'; __build_path_component(dp, tmp_buf); if (tmp_buf[0] == '\0') - strcpy(tmp_buf, dp->name); + strcpy(tmp_buf, name); n = prom_early_alloc(strlen(tmp_buf) + 1); strcpy(n, tmp_buf); diff --git a/arch/sparc/kernel/prom_64.c b/arch/sparc/kernel/prom_64.c index c37955d127fe..1667df573f6f 100644 --- a/arch/sparc/kernel/prom_64.c +++ b/arch/sparc/kernel/prom_64.c @@ -72,6 +72,7 @@ void * __init prom_early_alloc(unsigned long size) */ static void __init sun4v_path_component(struct device_node *dp, char *tmp_buf) { + const char *name = of_get_property(dp, "name", NULL); struct linux_prom64_registers *regs; struct property *rprop; u32 high_bits, low_bits, type; @@ -83,7 +84,7 @@ static void __init sun4v_path_component(struct device_node *dp, char *tmp_buf) regs = rprop->value; if (!of_node_is_root(dp->parent)) { sprintf(tmp_buf, "%s@%x,%x", - dp->name, + name, (unsigned int) (regs->phys_addr >> 32UL), (unsigned int) (regs->phys_addr & 0xffffffffUL)); return; @@ -98,21 +99,22 @@ static void __init sun4v_path_component(struct device_node *dp, char *tmp_buf) if (low_bits) sprintf(tmp_buf, "%s@%s%x,%x", - dp->name, prefix, + name, prefix, high_bits, low_bits); else sprintf(tmp_buf, "%s@%s%x", - dp->name, + name, prefix, high_bits); } else if (type == 12) { sprintf(tmp_buf, "%s@%x", - dp->name, high_bits); + name, high_bits); } } static void __init sun4u_path_component(struct device_node *dp, char *tmp_buf) { + const char *name = of_get_property(dp, "name", NULL); struct linux_prom64_registers *regs; struct property *prop; @@ -123,7 +125,7 @@ static void __init sun4u_path_component(struct device_node *dp, char *tmp_buf) regs = prop->value; if (!of_node_is_root(dp->parent)) { sprintf(tmp_buf, "%s@%x,%x", - dp->name, + name, (unsigned int) (regs->phys_addr >> 32UL), (unsigned int) (regs->phys_addr & 0xffffffffUL)); return; @@ -139,7 +141,7 @@ static void __init sun4u_path_component(struct device_node *dp, char *tmp_buf) mask = 0x7fffff; sprintf(tmp_buf, "%s@%x,%x", - dp->name, + name, *(u32 *)prop->value, (unsigned int) (regs->phys_addr & mask)); } @@ -148,6 +150,7 @@ static void __init sun4u_path_component(struct device_node *dp, char *tmp_buf) /* "name@slot,offset" */ static void __init sbus_path_component(struct device_node *dp, char *tmp_buf) { + const char *name = of_get_property(dp, "name", NULL); struct linux_prom_registers *regs; struct property *prop; @@ -157,7 +160,7 @@ static void __init sbus_path_component(struct device_node *dp, char *tmp_buf) regs = prop->value; sprintf(tmp_buf, "%s@%x,%x", - dp->name, + name, regs->which_io, regs->phys_addr); } @@ -165,6 +168,7 @@ static void __init sbus_path_component(struct device_node *dp, char *tmp_buf) /* "name@devnum[,func]" */ static void __init pci_path_component(struct device_node *dp, char *tmp_buf) { + const char *name = of_get_property(dp, "name", NULL); struct linux_prom_pci_registers *regs; struct property *prop; unsigned int devfn; @@ -177,12 +181,12 @@ static void __init pci_path_component(struct device_node *dp, char *tmp_buf) devfn = (regs->phys_hi >> 8) & 0xff; if (devfn & 0x07) { sprintf(tmp_buf, "%s@%x,%x", - dp->name, + name, devfn >> 3, devfn & 0x07); } else { sprintf(tmp_buf, "%s@%x", - dp->name, + name, devfn >> 3); } } @@ -190,6 +194,7 @@ static void __init pci_path_component(struct device_node *dp, char *tmp_buf) /* "name@UPA_PORTID,offset" */ static void __init upa_path_component(struct device_node *dp, char *tmp_buf) { + const char *name = of_get_property(dp, "name", NULL); struct linux_prom64_registers *regs; struct property *prop; @@ -204,7 +209,7 @@ static void __init upa_path_component(struct device_node *dp, char *tmp_buf) return; sprintf(tmp_buf, "%s@%x,%x", - dp->name, + name, *(u32 *) prop->value, (unsigned int) (regs->phys_addr & 0xffffffffUL)); } @@ -212,6 +217,7 @@ static void __init upa_path_component(struct device_node *dp, char *tmp_buf) /* "name@reg" */ static void __init vdev_path_component(struct device_node *dp, char *tmp_buf) { + const char *name = of_get_property(dp, "name", NULL); struct property *prop; u32 *regs; @@ -221,12 +227,13 @@ static void __init vdev_path_component(struct device_node *dp, char *tmp_buf) regs = prop->value; - sprintf(tmp_buf, "%s@%x", dp->name, *regs); + sprintf(tmp_buf, "%s@%x", name, *regs); } /* "name@addrhi,addrlo" */ static void __init ebus_path_component(struct device_node *dp, char *tmp_buf) { + const char *name = of_get_property(dp, "name", NULL); struct linux_prom64_registers *regs; struct property *prop; @@ -237,7 +244,7 @@ static void __init ebus_path_component(struct device_node *dp, char *tmp_buf) regs = prop->value; sprintf(tmp_buf, "%s@%x,%x", - dp->name, + name, (unsigned int) (regs->phys_addr >> 32UL), (unsigned int) (regs->phys_addr & 0xffffffffUL)); } @@ -245,6 +252,7 @@ static void __init ebus_path_component(struct device_node *dp, char *tmp_buf) /* "name@bus,addr" */ static void __init i2c_path_component(struct device_node *dp, char *tmp_buf) { + const char *name = of_get_property(dp, "name", NULL); struct property *prop; u32 *regs; @@ -258,12 +266,13 @@ static void __init i2c_path_component(struct device_node *dp, char *tmp_buf) * property of the i2c bus node etc. etc. */ sprintf(tmp_buf, "%s@%x,%x", - dp->name, regs[0], regs[1]); + name, regs[0], regs[1]); } /* "name@reg0[,reg1]" */ static void __init usb_path_component(struct device_node *dp, char *tmp_buf) { + const char *name = of_get_property(dp, "name", NULL); struct property *prop; u32 *regs; @@ -275,16 +284,17 @@ static void __init usb_path_component(struct device_node *dp, char *tmp_buf) if (prop->length == sizeof(u32) || regs[1] == 1) { sprintf(tmp_buf, "%s@%x", - dp->name, regs[0]); + name, regs[0]); } else { sprintf(tmp_buf, "%s@%x,%x", - dp->name, regs[0], regs[1]); + name, regs[0], regs[1]); } } /* "name@reg0reg1[,reg2reg3]" */ static void __init ieee1394_path_component(struct device_node *dp, char *tmp_buf) { + const char *name = of_get_property(dp, "name", NULL); struct property *prop; u32 *regs; @@ -296,10 +306,10 @@ static void __init ieee1394_path_component(struct device_node *dp, char *tmp_buf if (regs[2] || regs[3]) { sprintf(tmp_buf, "%s@%08x%08x,%04x%08x", - dp->name, regs[0], regs[1], regs[2], regs[3]); + name, regs[0], regs[1], regs[2], regs[3]); } else { sprintf(tmp_buf, "%s@%08x%08x", - dp->name, regs[0], regs[1]); + name, regs[0], regs[1]); } } @@ -356,12 +366,13 @@ static void __init __build_path_component(struct device_node *dp, char *tmp_buf) char * __init build_path_component(struct device_node *dp) { + const char *name = of_get_property(dp, "name", NULL); char tmp_buf[64], *n; tmp_buf[0] = '\0'; __build_path_component(dp, tmp_buf); if (tmp_buf[0] == '\0') - strcpy(tmp_buf, dp->name); + strcpy(tmp_buf, name); n = prom_early_alloc(strlen(tmp_buf) + 1); strcpy(n, tmp_buf); From patchwork Wed Nov 7 22:31:47 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rob Herring X-Patchwork-Id: 150454 Delivered-To: patch@linaro.org Received: by 2002:a2e:299d:0:0:0:0:0 with SMTP id p29-v6csp93157ljp; Wed, 7 Nov 2018 14:32:02 -0800 (PST) X-Google-Smtp-Source: AJdET5eUqz4awRtVyx58BkVpxe5AkeY88HOsPH1vbBgWqrsfEJxYFEmRJxfpbjTMKSWIL3HwU/x6 X-Received: by 2002:a17:902:4025:: with SMTP id b34-v6mr2170756pld.318.1541629922421; Wed, 07 Nov 2018 14:32:02 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1541629922; cv=none; d=google.com; s=arc-20160816; b=R0X5Xx2V8qqbrj+W/0onFsP07PzSFw4oyOb8/UXqiVczeUf7Ml9qQBBiPEAvSnGe+Z yupkegukck3gQOYjmKJQVkb03OouqAcL/bh5Yq5wwH3jEw6qnZdi/dScTqgyOrHzPVnY 0On98rS8ZZvVZJP6UC1N2Rc8lEixwkhpjU7D+Pj38MJ9uuhtTaldkfA8bLs5pE2NOK/N z9uCnansyATrTcyGZw+8W1Di3377bHO/h6sPJUeQfNEW4tGlw55WgsKp6N71dX0+pc9M mNXqJbzTI7+1yJfw7zI/Qau1kzP1ttdxQ8VxiK19e/APWNS6Nt3fyLFr+OJ1NfJwlNX4 g/Ng== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=tMuQiZ4DDHWnQZuvh39rUeWW6dJtn97BpEgcgzHc3cQ=; b=GxNSaLNdQL9X2hJ0V3fIgljbjwvIExCSvhZ2j8NQzdC9dNCKT+YPTHQfHyD5jVIDJB IvSdAkDNKNhWe3bsIl3J6DgJFgLUTAha7bV21Lr0GUcuXuxbygQXCo8diupW1IkdGKRM HXV3TQDpi7pun0jCBTLebcURnQcM23Yeq+rhsvODDq91K+o4mdREzOqTBMF45qeht/Na 1I9Oqm4UWHwLMi8sgO7w7929e3XL/BBnnHF15vkjuYQ7HA/6qnWYg2gpGYvmriMgPJjB bIPdUjAZPQHFyKr8AHefpzA1wqq9unmD8i77AaSVAdq4E+LSNO/qLLFDgM/mi1TL3Lhx 15Dg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id j7-v6si1902634plt.349.2018.11.07.14.32.02; Wed, 07 Nov 2018 14:32:02 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728253AbeKHIE0 (ORCPT + 32 others); Thu, 8 Nov 2018 03:04:26 -0500 Received: from mail-ot1-f68.google.com ([209.85.210.68]:46635 "EHLO mail-ot1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728184AbeKHIEZ (ORCPT ); Thu, 8 Nov 2018 03:04:25 -0500 Received: by mail-ot1-f68.google.com with SMTP id q5so16303343otl.13; Wed, 07 Nov 2018 14:31:58 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=tMuQiZ4DDHWnQZuvh39rUeWW6dJtn97BpEgcgzHc3cQ=; b=pyNvbcZZ3O0pie/4Je4VG8fKywcJUL3ZxF8BXta7k8WjrgsqJAMbT2w8wD3JJX2HNG UykZEoPmoqUprTAOuXn86XeaJCcU6IvuSXhB8SRvhoY0pn1w1VEL6eBo7Ao7c4N4gYMn GzoMid4VG7v/DiFi0oTefXQw5nX5pga3yE9v5OasnRmliD2buLheqTLipmVFdIWUky7t 4fs024jUApXOIoM1SH1N+W6Aq7Gf30cUUG323UorhVIvO16R61FusNCMP4dVYodyfZ0g PUpMjXhtp1uuiqZs9TMkGGJvpWdE5UoPKpMt8McPxAuzjwlaVZJx+nACT+zpobpLKkV5 BTPw== X-Gm-Message-State: AGRZ1gL+Z91CsRzZRrpe3Z421p4KgF26zVzMjnb6jg7nBBMspcHbPnKt UnyPvwypIcR0ZZKXOd+NrA== X-Received: by 2002:a9d:7059:: with SMTP id x25mr1406185otj.35.1541629917621; Wed, 07 Nov 2018 14:31:57 -0800 (PST) Received: from xps15.herring.priv (24-155-109-49.dyn.grandenetworks.net. [24.155.109.49]) by smtp.googlemail.com with ESMTPSA id f9sm750959oth.17.2018.11.07.14.31.56 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 07 Nov 2018 14:31:56 -0800 (PST) From: Rob Herring To: "David S. Miller" Cc: Frank Rowand , linux-kernel@vger.kernel.org, sparclinux@vger.kernel.org Subject: [PATCH 4/8] sparc: Convert to using %pOF instead of full_name Date: Wed, 7 Nov 2018 16:31:47 -0600 Message-Id: <20181107223151.14991-5-robh@kernel.org> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181107223151.14991-1-robh@kernel.org> References: <20181107223151.14991-1-robh@kernel.org> MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Now that we have a custom printf format specifier, convert users of full_name to use %pOF instead. This is preparation to remove storing of the full path string for each node. Cc: "David S. Miller" Cc: sparclinux@vger.kernel.org Signed-off-by: Rob Herring --- arch/sparc/kernel/auxio_64.c | 3 +-- arch/sparc/kernel/chmc.c | 8 +++---- arch/sparc/kernel/of_device_32.c | 7 +++---- arch/sparc/kernel/of_device_64.c | 36 +++++++++++++++----------------- arch/sparc/kernel/pci.c | 31 +++++++++++++-------------- arch/sparc/kernel/prom_32.c | 4 ++-- arch/sparc/kernel/sbus.c | 4 ++-- arch/sparc/kernel/sun4d_irq.c | 8 +++---- arch/sparc/kernel/time_64.c | 12 +++++------ arch/sparc/kernel/vio.c | 2 +- 10 files changed, 55 insertions(+), 60 deletions(-) -- 2.19.1 diff --git a/arch/sparc/kernel/auxio_64.c b/arch/sparc/kernel/auxio_64.c index 4e8f56c3793c..6145658d915a 100644 --- a/arch/sparc/kernel/auxio_64.c +++ b/arch/sparc/kernel/auxio_64.c @@ -123,8 +123,7 @@ static int auxio_probe(struct platform_device *dev) if (!auxio_register) return -ENODEV; - printk(KERN_INFO "AUXIO: Found device at %s\n", - dp->full_name); + printk(KERN_INFO "AUXIO: Found device at %pOF\n", dp); if (auxio_devtype == AUXIO_TYPE_EBUS) auxio_set_led(AUXIO_LED_ON); diff --git a/arch/sparc/kernel/chmc.c b/arch/sparc/kernel/chmc.c index 0de4bcb8261f..61fe1b951ba3 100644 --- a/arch/sparc/kernel/chmc.c +++ b/arch/sparc/kernel/chmc.c @@ -464,8 +464,8 @@ static int jbusmc_probe(struct platform_device *op) mc_list_add(&p->list); - printk(KERN_INFO PFX "UltraSPARC-IIIi memory controller at %s\n", - op->dev.of_node->full_name); + printk(KERN_INFO PFX "UltraSPARC-IIIi memory controller at %pOF\n", + op->dev.of_node); dev_set_drvdata(&op->dev, p); @@ -747,8 +747,8 @@ static int chmc_probe(struct platform_device *op) mc_list_add(&p->list); - printk(KERN_INFO PFX "UltraSPARC-III memory controller at %s [%s]\n", - dp->full_name, + printk(KERN_INFO PFX "UltraSPARC-III memory controller at %pOF [%s]\n", + dp, (p->layout_size ? "ACTIVE" : "INACTIVE")); dev_set_drvdata(&op->dev, p); diff --git a/arch/sparc/kernel/of_device_32.c b/arch/sparc/kernel/of_device_32.c index e4abe9b8f97a..ab133e2753ab 100644 --- a/arch/sparc/kernel/of_device_32.c +++ b/arch/sparc/kernel/of_device_32.c @@ -324,8 +324,8 @@ static void __init build_device_resources(struct platform_device *op, memset(r, 0, sizeof(*r)); if (of_resource_verbose) - printk("%s reg[%d] -> %llx\n", - op->dev.of_node->full_name, index, + printk("%pOF reg[%d] -> %llx\n", + op->dev.of_node, index, result); if (result != OF_BAD_ADDR) { @@ -386,8 +386,7 @@ static struct platform_device * __init scan_one_device(struct device_node *dp, op->dev.dma_mask = &op->dev.coherent_dma_mask; if (of_device_register(op)) { - printk("%s: Could not register of device.\n", - dp->full_name); + printk("%pOF: Could not register of device.\n", dp); kfree(op); op = NULL; } diff --git a/arch/sparc/kernel/of_device_64.c b/arch/sparc/kernel/of_device_64.c index 6df6086968c6..2353cb7bc40f 100644 --- a/arch/sparc/kernel/of_device_64.c +++ b/arch/sparc/kernel/of_device_64.c @@ -341,9 +341,9 @@ static void __init build_device_resources(struct platform_device *op, /* Prevent overrunning the op->resources[] array. */ if (num_reg > PROMREG_MAX) { - printk(KERN_WARNING "%s: Too many regs (%d), " + printk(KERN_WARNING "%pOF: Too many regs (%d), " "limiting to %d.\n", - op->dev.of_node->full_name, num_reg, PROMREG_MAX); + op->dev.of_node, num_reg, PROMREG_MAX); num_reg = PROMREG_MAX; } @@ -401,8 +401,8 @@ static void __init build_device_resources(struct platform_device *op, memset(r, 0, sizeof(*r)); if (of_resource_verbose) - printk("%s reg[%d] -> %llx\n", - op->dev.of_node->full_name, index, + printk("%pOF reg[%d] -> %llx\n", + op->dev.of_node, index, result); if (result != OF_BAD_ADDR) { @@ -548,8 +548,8 @@ static unsigned int __init build_one_device_irq(struct platform_device *op, dp->irq_trans->data); if (of_irq_verbose) - printk("%s: direct translate %x --> %x\n", - dp->full_name, orig_irq, irq); + printk("%pOF: direct translate %x --> %x\n", + dp, orig_irq, irq); goto out; } @@ -579,10 +579,9 @@ static unsigned int __init build_one_device_irq(struct platform_device *op, &irq); if (of_irq_verbose) - printk("%s: Apply [%s:%x] imap --> [%s:%x]\n", - op->dev.of_node->full_name, - pp->full_name, this_orig_irq, - of_node_full_name(iret), irq); + printk("%pOF: Apply [%pOF:%x] imap --> [%pOF:%x]\n", + op->dev.of_node, + pp, this_orig_irq, iret, irq); if (!iret) break; @@ -597,10 +596,10 @@ static unsigned int __init build_one_device_irq(struct platform_device *op, irq = pci_irq_swizzle(dp, pp, irq); if (of_irq_verbose) - printk("%s: PCI swizzle [%s] " + printk("%pOF: PCI swizzle [%pOF] " "%x --> %x\n", - op->dev.of_node->full_name, - pp->full_name, this_orig_irq, + op->dev.of_node, + pp, this_orig_irq, irq); } @@ -619,8 +618,8 @@ static unsigned int __init build_one_device_irq(struct platform_device *op, irq = ip->irq_trans->irq_build(op->dev.of_node, irq, ip->irq_trans->data); if (of_irq_verbose) - printk("%s: Apply IRQ trans [%s] %x --> %x\n", - op->dev.of_node->full_name, ip->full_name, orig_irq, irq); + printk("%pOF: Apply IRQ trans [%pOF] %x --> %x\n", + op->dev.of_node, ip, orig_irq, irq); out: nid = of_node_to_nid(dp); @@ -656,9 +655,9 @@ static struct platform_device * __init scan_one_device(struct device_node *dp, /* Prevent overrunning the op->irqs[] array. */ if (op->archdata.num_irqs > PROMINTR_MAX) { - printk(KERN_WARNING "%s: Too many irqs (%d), " + printk(KERN_WARNING "%pOF: Too many irqs (%d), " "limiting to %d.\n", - dp->full_name, op->archdata.num_irqs, PROMINTR_MAX); + dp, op->archdata.num_irqs, PROMINTR_MAX); op->archdata.num_irqs = PROMINTR_MAX; } memcpy(op->archdata.irqs, irq, op->archdata.num_irqs * 4); @@ -680,8 +679,7 @@ static struct platform_device * __init scan_one_device(struct device_node *dp, op->dev.dma_mask = &op->dev.coherent_dma_mask; if (of_device_register(op)) { - printk("%s: Could not register of device.\n", - dp->full_name); + printk("%pOF: Could not register of device.\n", dp); kfree(op); op = NULL; } diff --git a/arch/sparc/kernel/pci.c b/arch/sparc/kernel/pci.c index 17ea16a1337c..45ba2757a1b9 100644 --- a/arch/sparc/kernel/pci.c +++ b/arch/sparc/kernel/pci.c @@ -431,13 +431,13 @@ static void of_scan_pci_bridge(struct pci_pbm_info *pbm, u64 size; if (ofpci_verbose) - pci_info(dev, "of_scan_pci_bridge(%s)\n", node->full_name); + pci_info(dev, "of_scan_pci_bridge(%pOF)\n", node); /* parse bus-range property */ busrange = of_get_property(node, "bus-range", &len); if (busrange == NULL || len != 8) { - pci_info(dev, "Can't get bus-range for PCI-PCI bridge %s\n", - node->full_name); + pci_info(dev, "Can't get bus-range for PCI-PCI bridge %pOF\n", + node); return; } @@ -455,8 +455,8 @@ static void of_scan_pci_bridge(struct pci_pbm_info *pbm, bus = pci_add_new_bus(dev->bus, dev, busrange[0]); if (!bus) { - pci_err(dev, "Failed to create pci bus for %s\n", - node->full_name); + pci_err(dev, "Failed to create pci bus for %pOF\n", + node); return; } @@ -512,13 +512,13 @@ static void of_scan_pci_bridge(struct pci_pbm_info *pbm, res = bus->resource[0]; if (res->flags) { pci_err(dev, "ignoring extra I/O range" - " for bridge %s\n", node->full_name); + " for bridge %pOF\n", node); continue; } } else { if (i >= PCI_NUM_RESOURCES - PCI_BRIDGE_RESOURCES) { pci_err(dev, "too many memory ranges" - " for bridge %s\n", node->full_name); + " for bridge %pOF\n", node); continue; } res = bus->resource[i]; @@ -554,14 +554,14 @@ static void pci_of_scan_bus(struct pci_pbm_info *pbm, struct pci_dev *dev; if (ofpci_verbose) - pci_info(bus, "scan_bus[%s] bus no %d\n", - node->full_name, bus->number); + pci_info(bus, "scan_bus[%pOF] bus no %d\n", + node, bus->number); child = NULL; prev_devfn = -1; while ((child = of_get_next_child(node, child)) != NULL) { if (ofpci_verbose) - pci_info(bus, " * %s\n", child->full_name); + pci_info(bus, " * %pOF\n", child); reg = of_get_property(child, "reg", ®len); if (reg == NULL || reglen < 20) continue; @@ -598,7 +598,7 @@ show_pciobppath_attr(struct device * dev, struct device_attribute * attr, char * pdev = to_pci_dev(dev); dp = pdev->dev.of_node; - return snprintf (buf, PAGE_SIZE, "%s\n", dp->full_name); + return snprintf (buf, PAGE_SIZE, "%pOF\n", dp); } static DEVICE_ATTR(obppath, S_IRUSR | S_IRGRP | S_IROTH, show_pciobppath_attr, NULL); @@ -698,7 +698,7 @@ struct pci_bus *pci_scan_one_pbm(struct pci_pbm_info *pbm, struct device_node *node = pbm->op->dev.of_node; struct pci_bus *bus; - printk("PCI: Scanning PBM %s\n", node->full_name); + printk("PCI: Scanning PBM %pOF\n", node); pci_add_resource_offset(&resources, &pbm->io_space, pbm->io_offset); @@ -714,8 +714,7 @@ struct pci_bus *pci_scan_one_pbm(struct pci_pbm_info *pbm, bus = pci_create_root_bus(parent, pbm->pci_first_busno, pbm->pci_ops, pbm, &resources); if (!bus) { - printk(KERN_ERR "Failed to create bus for %s\n", - node->full_name); + printk(KERN_ERR "Failed to create bus for %pOF\n", node); pci_free_resource_list(&resources); return NULL; } @@ -1111,8 +1110,8 @@ static void pci_bus_slot_names(struct device_node *node, struct pci_bus *bus) sp = prop->names; if (ofpci_verbose) - pci_info(bus, "Making slots for [%s] mask[0x%02x]\n", - node->full_name, mask); + pci_info(bus, "Making slots for [%pOF] mask[0x%02x]\n", + node, mask); i = 0; while (mask) { diff --git a/arch/sparc/kernel/prom_32.c b/arch/sparc/kernel/prom_32.c index 30e33b461970..f2835cddf362 100644 --- a/arch/sparc/kernel/prom_32.c +++ b/arch/sparc/kernel/prom_32.c @@ -261,7 +261,7 @@ void __init of_console_init(void) } of_console_device = dp; - strcpy(of_console_path, dp->full_name); + sprintf(of_console_path, "%pOF", dp); if (!strcmp(type, "serial")) { strcat(of_console_path, (skip ? ":b" : ":a")); @@ -301,7 +301,7 @@ void __init of_console_init(void) of_console_device = dp; if (prom_vers == PROM_V2) { - strcpy(of_console_path, dp->full_name); + sprintf(of_console_path, "%pOF", dp); switch (*romvec->pv_stdout) { case PROMDEV_TTYA: strcat(of_console_path, ":a"); diff --git a/arch/sparc/kernel/sbus.c b/arch/sparc/kernel/sbus.c index c133dfc37c5c..41c5deb581b8 100644 --- a/arch/sparc/kernel/sbus.c +++ b/arch/sparc/kernel/sbus.c @@ -67,8 +67,8 @@ void sbus_set_sbus64(struct device *dev, int bursts) regs = of_get_property(op->dev.of_node, "reg", NULL); if (!regs) { - printk(KERN_ERR "sbus_set_sbus64: Cannot find regs for %s\n", - op->dev.of_node->full_name); + printk(KERN_ERR "sbus_set_sbus64: Cannot find regs for %pOF\n", + op->dev.of_node); return; } slot = regs->which_io; diff --git a/arch/sparc/kernel/sun4d_irq.c b/arch/sparc/kernel/sun4d_irq.c index d869d409fce6..6d266d7dd2b6 100644 --- a/arch/sparc/kernel/sun4d_irq.c +++ b/arch/sparc/kernel/sun4d_irq.c @@ -361,15 +361,15 @@ static unsigned int sun4d_build_device_irq(struct platform_device *op, * lacks a "board#" property, something is very wrong. */ if (!bus->parent || strcmp(bus->parent->name, bus_connection)) { - printk(KERN_ERR "%s: Error, parent is not %s.\n", - bus->full_name, bus_connection); + printk(KERN_ERR "%pOF: Error, parent is not %s.\n", + bus, bus_connection); goto err_out; } board_parent = bus->parent; board = of_getintprop_default(board_parent, "board#", -1); if (board == -1) { - printk(KERN_ERR "%s: Error, lacks board# property.\n", - board_parent->full_name); + printk(KERN_ERR "%pOF: Error, lacks board# property.\n", + board_parent); goto err_out; } diff --git a/arch/sparc/kernel/time_64.c b/arch/sparc/kernel/time_64.c index 5f356dc8e178..68a80f9baea7 100644 --- a/arch/sparc/kernel/time_64.c +++ b/arch/sparc/kernel/time_64.c @@ -445,8 +445,8 @@ static int rtc_probe(struct platform_device *op) { struct resource *r; - printk(KERN_INFO "%s: RTC regs at 0x%llx\n", - op->dev.of_node->full_name, op->resource[0].start); + printk(KERN_INFO "%pOF: RTC regs at 0x%llx\n", + op->dev.of_node, op->resource[0].start); /* The CMOS RTC driver only accepts IORESOURCE_IO, so cons * up a fake resource so that the probe works for all cases. @@ -501,8 +501,8 @@ static struct platform_device rtc_bq4802_device = { static int bq4802_probe(struct platform_device *op) { - printk(KERN_INFO "%s: BQ4802 regs at 0x%llx\n", - op->dev.of_node->full_name, op->resource[0].start); + printk(KERN_INFO "%pOF: BQ4802 regs at 0x%llx\n", + op->dev.of_node, op->resource[0].start); rtc_bq4802_device.resource = &op->resource[0]; return platform_device_register(&rtc_bq4802_device); @@ -565,8 +565,8 @@ static int mostek_probe(struct platform_device *op) strcmp(dp->parent->parent->name, "central") != 0) return -ENODEV; - printk(KERN_INFO "%s: Mostek regs at 0x%llx\n", - dp->full_name, op->resource[0].start); + printk(KERN_INFO "%pOF: Mostek regs at 0x%llx\n", + dp, op->resource[0].start); m48t59_rtc.resource = &op->resource[0]; return platform_device_register(&m48t59_rtc); diff --git a/arch/sparc/kernel/vio.c b/arch/sparc/kernel/vio.c index 32bae68e34c1..0b578d03797b 100644 --- a/arch/sparc/kernel/vio.c +++ b/arch/sparc/kernel/vio.c @@ -193,7 +193,7 @@ show_pciobppath_attr(struct device *dev, struct device_attribute *attr, vdev = to_vio_dev(dev); dp = vdev->dp; - return snprintf (buf, PAGE_SIZE, "%s\n", dp->full_name); + return snprintf (buf, PAGE_SIZE, "%pOF\n", dp); } static DEVICE_ATTR(obppath, S_IRUSR | S_IRGRP | S_IROTH, From patchwork Wed Nov 7 22:31:48 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rob Herring X-Patchwork-Id: 150458 Delivered-To: patch@linaro.org Received: by 2002:a2e:299d:0:0:0:0:0 with SMTP id p29-v6csp93539ljp; Wed, 7 Nov 2018 14:32:35 -0800 (PST) X-Google-Smtp-Source: AJdET5fVb1260uOb/9dW++h1JyrLQOXRQG0aWZ67O4uMvuansLI85399HN0ZtCBx4SctLRPrwYkv X-Received: by 2002:a63:8f45:: with SMTP id r5mr1785097pgn.222.1541629955675; Wed, 07 Nov 2018 14:32:35 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1541629955; cv=none; d=google.com; s=arc-20160816; b=zUIDIj7PijRJTUN4EI+UMze0aQThHzCKrr6loiPQWUfgzhVUWExuPfxPX+pVzwqKrW QHCkFrZWZNqLTLudz9mYXDYswnW3kJ66Kskzh6qqKLti0Ziye7Er0pgx70rOsaWVG7yY CZMbc+rgDo6WNEqUCLqoBYqZ/4v5eibWT3GFGRBC+1EZYaLcE/XKW8GUx5M2htWgGv9f fXMwvtUbsgX690xuPZA/Ub7ry8bEwqoWy7/G9kNWbzOWf3C5Dx5iAFD2WMUQ0oGqGUsy YvaUwnjrfv9FA/tczF+zu3O6gdrP13ZcX+IEOs7U5tD0pmODZujhSi5xXPAGveZqlhoz dV6w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=rxS87lQ3nj/74C5MLjne/ka159Uu8qEX99KCto3gKTo=; b=tw2NeGmbgSvrerLfDiQRDNTXE874gAnW84SDerSQjXAL2tf60AFu0WHUuB+8lzIiv+ eCws9tcNyNUHjvIl8mroWs5jVDsOhFacnqTf2lhoh/MRfEsTt+qeCTmUPi0O9Tq6Ggsj 0JpKqNpJppACBkbzyB+iHy65SJA1cnBsJx4Vz0UXXnREdKOn0zljYqNg2VPl92cqH8YZ JneqNaXdh5qWzZzUbhrAbCufO8PsJj7ZX0L6olYeEM9LvZfXhNhdedy/SdLZ4O2U+2h9 lmJv2/ioLhkL4gcuywRDGvHaryPGfjM5HPIm/V4w9sXPSogMEA00ResdLCkV8tjp3eta Fevw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id q7si1704292pgl.303.2018.11.07.14.32.35; Wed, 07 Nov 2018 14:32:35 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728414AbeKHIFA (ORCPT + 32 others); Thu, 8 Nov 2018 03:05:00 -0500 Received: from mail-ot1-f65.google.com ([209.85.210.65]:40293 "EHLO mail-ot1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727591AbeKHIE0 (ORCPT ); Thu, 8 Nov 2018 03:04:26 -0500 Received: by mail-ot1-f65.google.com with SMTP id s5so2401114oth.7; Wed, 07 Nov 2018 14:31:59 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=rxS87lQ3nj/74C5MLjne/ka159Uu8qEX99KCto3gKTo=; b=meWnCiX82bToAzyxv1hdhSSj5jkNJPKu3FtAQRp5Coc7NKO3GPWgM33kGXmifRwQVT bWjJRkElvrKGLd0hN627FdqHX9NcJaHzluEFaYhuziXuTbz7T1cUCbo885LYrsqgbkrb W0V9ZQ9ys0fj5YxxhmPXg1TbCE+dQjWEetAjOHmQQZMhu6Y4PAJEq1Jn9Gr6HMu5bNN9 BAmdubRT24GQkAdLbat1PzNAXEgOpfRHMgH91cqnU3eq9s71+aAMmX8SeLvPV3BJuJ38 FLmyVFxLWuP7Xy0oHheQ7VhthrzbToosN6cTT58LBjVcQmAp9ryJmlyfihoLhYBtkNpz xCAA== X-Gm-Message-State: AGRZ1gIYsjSJJQVST5W6GBl6zFQ9cLbd+jwfgqLoFgjQ0t6g3WfMJroA qiWL281nXF0E1Pme8fHrHJaYA14= X-Received: by 2002:a9d:654c:: with SMTP id q12mr1338592otl.338.1541629918818; Wed, 07 Nov 2018 14:31:58 -0800 (PST) Received: from xps15.herring.priv (24-155-109-49.dyn.grandenetworks.net. [24.155.109.49]) by smtp.googlemail.com with ESMTPSA id f9sm750959oth.17.2018.11.07.14.31.57 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 07 Nov 2018 14:31:57 -0800 (PST) From: Rob Herring To: "David S. Miller" Cc: Frank Rowand , linux-kernel@vger.kernel.org, sparclinux@vger.kernel.org Subject: [PATCH 5/8] sparc: Convert to using %pOFn instead of device_node.name Date: Wed, 7 Nov 2018 16:31:48 -0600 Message-Id: <20181107223151.14991-6-robh@kernel.org> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181107223151.14991-1-robh@kernel.org> References: <20181107223151.14991-1-robh@kernel.org> MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org In preparation to remove the node name pointer from struct device_node, convert printf users to use the %pOFn format specifier. This was originally applied for 4.19, but reverted. The problematic changes to prom_{32,64}.c have been dropped. Cc: "David S. Miller" Cc: sparclinux@vger.kernel.org Signed-off-by: Rob Herring --- arch/sparc/kernel/auxio_64.c | 4 ++-- arch/sparc/kernel/power.c | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) -- 2.19.1 diff --git a/arch/sparc/kernel/auxio_64.c b/arch/sparc/kernel/auxio_64.c index 6145658d915a..e1b10f88ffb4 100644 --- a/arch/sparc/kernel/auxio_64.c +++ b/arch/sparc/kernel/auxio_64.c @@ -115,8 +115,8 @@ static int auxio_probe(struct platform_device *dev) auxio_devtype = AUXIO_TYPE_SBUS; size = 1; } else { - printk("auxio: Unknown parent bus type [%s]\n", - dp->parent->name); + printk("auxio: Unknown parent bus type [%pOFn]\n", + dp->parent); return -ENODEV; } auxio_register = of_ioremap(&dev->resource[0], 0, size, "auxio"); diff --git a/arch/sparc/kernel/power.c b/arch/sparc/kernel/power.c index 92627abce311..d941875dd718 100644 --- a/arch/sparc/kernel/power.c +++ b/arch/sparc/kernel/power.c @@ -41,8 +41,8 @@ static int power_probe(struct platform_device *op) power_reg = of_ioremap(res, 0, 0x4, "power"); - printk(KERN_INFO "%s: Control reg at %llx\n", - op->dev.of_node->name, res->start); + printk(KERN_INFO "%pOFn: Control reg at %llx\n", + op->dev.of_node, res->start); if (has_button_interrupt(irq, op->dev.of_node)) { if (request_irq(irq, From patchwork Wed Nov 7 22:31:49 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rob Herring X-Patchwork-Id: 150455 Delivered-To: patch@linaro.org Received: by 2002:a2e:299d:0:0:0:0:0 with SMTP id p29-v6csp93178ljp; Wed, 7 Nov 2018 14:32:04 -0800 (PST) X-Google-Smtp-Source: AJdET5e6aXcxDPNBdMmAut7rbeA0/Q6l9U5u5odGQTcRVJYE8KO4QFxjwUR4WA7rzuYbWBnqednT X-Received: by 2002:a62:1c1:: with SMTP id 184-v6mr2151530pfb.242.1541629924107; Wed, 07 Nov 2018 14:32:04 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1541629924; cv=none; d=google.com; s=arc-20160816; b=luq2kR5zCJk2gpJKtkcDFZnbumj3vXLFjIDlfIYkkyXQG6vZtbSrP0jxULZ9aMOwd7 XzrtwJb0f2sOv2CO5N1+T08hmg69ZBwRvpiljrsgy6FA/dF7NjHewxPCH5B3C5GGLrvS aRqkpK+ao4U7+JUdy0E6XZsg8Z9UT4+MsxXKFaZxDVp4QqX6+s0OsHOvDhbavdD8HWbk KH+YkRawP+dLdVRzHu8OmGwzag/OCoENdVgI1f2ITRa6MLSwdqt+jw3DjoWbLXylr80D wHYFioBPNlGD+ge+JYPhN/L/Z95Mi0XxbjQ6Vdxd8/9+c75a0ITGgCJMDtlSQy7QU9o8 +T6w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=Vbn4w3Psg8cV69QaXnkF86KfcYB0GciUjDPGNvuO0j8=; b=fmjvMr6ecnhe8RZ3WBnzceH9pLp56Ua81u5wqPF+47oRtVgBEVXXQij5RNSFnWdEmN M3I/Wf+B9TTyo/8gt3pRkTI3gjEY3SjZnKHGnEG8uWGcB87O5iQlzMQ1nRllVnrdbAwe tkV9JCFh+7mPE5ykFj8+uAAATtwXQ7P1D/RvVkc3s0tiPAnjKvDVJAl2kAw6IAj8G/hE PMgDf8ffNHMSyT/LgCjvVId+kQ0312u7ma/bx6rRfIk83jLICJdP2+pOc0Maq4vx8rfv fkX9abjJ9DNmiRvSIHWRlgOyBvD/VfKEATz4fmcAjWqoWCNenfjRWcS32tA0s1115IRt cJhg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 62-v6si1988889ply.423.2018.11.07.14.32.03; Wed, 07 Nov 2018 14:32:04 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728293AbeKHIE2 (ORCPT + 32 others); Thu, 8 Nov 2018 03:04:28 -0500 Received: from mail-oi1-f194.google.com ([209.85.167.194]:34788 "EHLO mail-oi1-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728184AbeKHIE1 (ORCPT ); Thu, 8 Nov 2018 03:04:27 -0500 Received: by mail-oi1-f194.google.com with SMTP id i138-v6so12291496oib.1; Wed, 07 Nov 2018 14:32:00 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=Vbn4w3Psg8cV69QaXnkF86KfcYB0GciUjDPGNvuO0j8=; b=gR3DopgJnJ7ef9NuK/4CgJH9S49ypr97xHF6shlppV8mgpEMDGB13YbYXXeen50O6h +0CpbiXsdg11Y2tkDBbxolJys3Usmuc71qrp18b6FuMVAP2M2zJ7mfilNYiNlOR4pfg5 6Y1V+hXZ8v8RjN6WDyOpOOGbPVN4P7ZQwdpQP8dtghQOGz5Rw9PNWTcMWNTi/wCvP0Qi r5KEwLCeNre+cEcJ6V491KSuW5q/9JBbZZ1xlN7Ua2O+y7xxsLYHqwU1GFFsIg+4XvDY bIl0Or6l2mRtiLXGXaQylqkUdzZkZTXoPjqSbnOjlwKAFhuCgdFDmhpIHmc6h/R2l8Mx WxoQ== X-Gm-Message-State: AGRZ1gJcxuqHpjerjhXZ8DJ/zPuwLYiYdyVxh2jhoCZvgJwBnvflgjyj JqZVAs8EXwEfDJ6F8/+nuxwdizE= X-Received: by 2002:aca:6c4c:: with SMTP id h73-v6mr1280771oic.156.1541629920001; Wed, 07 Nov 2018 14:32:00 -0800 (PST) Received: from xps15.herring.priv (24-155-109-49.dyn.grandenetworks.net. [24.155.109.49]) by smtp.googlemail.com with ESMTPSA id f9sm750959oth.17.2018.11.07.14.31.58 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 07 Nov 2018 14:31:59 -0800 (PST) From: Rob Herring To: "David S. Miller" Cc: Frank Rowand , linux-kernel@vger.kernel.org, sparclinux@vger.kernel.org Subject: [PATCH 6/8] sparc: Use of_node_name_eq for node name comparisons Date: Wed, 7 Nov 2018 16:31:49 -0600 Message-Id: <20181107223151.14991-7-robh@kernel.org> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181107223151.14991-1-robh@kernel.org> References: <20181107223151.14991-1-robh@kernel.org> MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Convert string compares of DT node names to use of_node_name_eq helper instead. This removes direct access to the node name pointer. Cc: "David S. Miller" Cc: sparclinux@vger.kernel.org Signed-off-by: Rob Herring --- arch/sparc/kernel/auxio_64.c | 4 ++-- arch/sparc/kernel/central.c | 2 +- arch/sparc/kernel/irq_64.c | 2 +- arch/sparc/kernel/of_device_32.c | 8 ++++---- arch/sparc/kernel/of_device_64.c | 20 ++++++++++---------- arch/sparc/kernel/of_device_common.c | 4 ++-- arch/sparc/kernel/pci.c | 4 ++-- arch/sparc/kernel/pci_sabre.c | 2 +- arch/sparc/kernel/prom_64.c | 4 ++-- arch/sparc/kernel/prom_irqtrans.c | 18 +++++++++--------- arch/sparc/kernel/sun4d_irq.c | 6 +++--- arch/sparc/kernel/time_64.c | 4 ++-- 12 files changed, 39 insertions(+), 39 deletions(-) -- 2.19.1 diff --git a/arch/sparc/kernel/auxio_64.c b/arch/sparc/kernel/auxio_64.c index e1b10f88ffb4..4843f48bfe85 100644 --- a/arch/sparc/kernel/auxio_64.c +++ b/arch/sparc/kernel/auxio_64.c @@ -108,10 +108,10 @@ static int auxio_probe(struct platform_device *dev) struct device_node *dp = dev->dev.of_node; unsigned long size; - if (!strcmp(dp->parent->name, "ebus")) { + if (of_node_name_eq(dp->parent, "ebus")) { auxio_devtype = AUXIO_TYPE_EBUS; size = sizeof(u32); - } else if (!strcmp(dp->parent->name, "sbus")) { + } else if (of_node_name_eq(dp->parent, "sbus")) { auxio_devtype = AUXIO_TYPE_SBUS; size = 1; } else { diff --git a/arch/sparc/kernel/central.c b/arch/sparc/kernel/central.c index 38ae4fdc9eb4..bfae98ab8638 100644 --- a/arch/sparc/kernel/central.c +++ b/arch/sparc/kernel/central.c @@ -168,7 +168,7 @@ static int fhc_probe(struct platform_device *op) goto out; } - if (!strcmp(op->dev.of_node->parent->name, "central")) + if (of_node_name_eq(op->dev.of_node->parent, "central")) p->central = true; p->pregs = of_ioremap(&op->resource[0], 0, diff --git a/arch/sparc/kernel/irq_64.c b/arch/sparc/kernel/irq_64.c index 713670e6d13d..3ec9f1402aad 100644 --- a/arch/sparc/kernel/irq_64.c +++ b/arch/sparc/kernel/irq_64.c @@ -915,7 +915,7 @@ static void map_prom_timers(void) dp = of_find_node_by_path("/"); dp = dp->child; while (dp) { - if (!strcmp(dp->name, "counter-timer")) + if (of_node_name_eq(dp, "counter-timer")) break; dp = dp->sibling; } diff --git a/arch/sparc/kernel/of_device_32.c b/arch/sparc/kernel/of_device_32.c index ab133e2753ab..dc5b1b0ec659 100644 --- a/arch/sparc/kernel/of_device_32.c +++ b/arch/sparc/kernel/of_device_32.c @@ -232,10 +232,10 @@ static int __init use_1to1_mapping(struct device_node *pp) * But, we should still pass the translation work up * to the SBUS itself. */ - if (!strcmp(pp->name, "dma") || - !strcmp(pp->name, "espdma") || - !strcmp(pp->name, "ledma") || - !strcmp(pp->name, "lebuffer")) + if (of_node_name_eq(pp, "dma") || + of_node_name_eq(pp, "espdma") || + of_node_name_eq(pp, "ledma") || + of_node_name_eq(pp, "lebuffer")) return 0; return 1; diff --git a/arch/sparc/kernel/of_device_64.c b/arch/sparc/kernel/of_device_64.c index 2353cb7bc40f..4b5eabb20ac8 100644 --- a/arch/sparc/kernel/of_device_64.c +++ b/arch/sparc/kernel/of_device_64.c @@ -46,7 +46,7 @@ EXPORT_SYMBOL(of_iounmap); static int of_bus_pci_match(struct device_node *np) { - if (!strcmp(np->name, "pci")) { + if (of_node_name_eq(np, "pci")) { const char *model = of_get_property(np, "model", NULL); if (model && !strcmp(model, "SUNW,simba")) @@ -77,7 +77,7 @@ static int of_bus_simba_match(struct device_node *np) /* Treat PCI busses lacking ranges property just like * simba. */ - if (!strcmp(np->name, "pci")) { + if (of_node_name_eq(np, "pci")) { if (!of_find_property(np, "ranges", NULL)) return 1; } @@ -170,8 +170,8 @@ static unsigned long of_bus_pci_get_flags(const u32 *addr, unsigned long flags) */ static int of_bus_fhc_match(struct device_node *np) { - return !strcmp(np->name, "fhc") || - !strcmp(np->name, "central"); + return of_node_name_eq(np, "fhc") || + of_node_name_eq(np, "central"); } #define of_bus_fhc_count_cells of_bus_sbus_count_cells @@ -295,17 +295,17 @@ static int __init use_1to1_mapping(struct device_node *pp) * But, we should still pass the translation work up * to the SBUS itself. */ - if (!strcmp(pp->name, "dma") || - !strcmp(pp->name, "espdma") || - !strcmp(pp->name, "ledma") || - !strcmp(pp->name, "lebuffer")) + if (of_node_name_eq(pp, "dma") || + of_node_name_eq(pp, "espdma") || + of_node_name_eq(pp, "ledma") || + of_node_name_eq(pp, "lebuffer")) return 0; /* Similarly for all PCI bridges, if we get this far * it lacks a ranges property, and this will include * cases like Simba. */ - if (!strcmp(pp->name, "pci")) + if (of_node_name_eq(pp, "pci")) return 0; return 1; @@ -591,7 +591,7 @@ static unsigned int __init build_one_device_irq(struct platform_device *op, break; } } else { - if (!strcmp(pp->name, "pci")) { + if (of_node_name_eq(pp, "pci")) { unsigned int this_orig_irq = irq; irq = pci_irq_swizzle(dp, pp, irq); diff --git a/arch/sparc/kernel/of_device_common.c b/arch/sparc/kernel/of_device_common.c index de0ee3971f00..b186b7f0f6c4 100644 --- a/arch/sparc/kernel/of_device_common.c +++ b/arch/sparc/kernel/of_device_common.c @@ -151,8 +151,8 @@ int of_bus_sbus_match(struct device_node *np) struct device_node *dp = np; while (dp) { - if (!strcmp(dp->name, "sbus") || - !strcmp(dp->name, "sbi")) + if (of_node_name_eq(dp, "sbus") || + of_node_name_eq(dp, "sbi")) return 1; /* Have a look at use_1to1_mapping(). We're trying diff --git a/arch/sparc/kernel/pci.c b/arch/sparc/kernel/pci.c index 45ba2757a1b9..377113ae9a6a 100644 --- a/arch/sparc/kernel/pci.c +++ b/arch/sparc/kernel/pci.c @@ -283,7 +283,7 @@ static struct pci_dev *of_create_pci_dev(struct pci_pbm_info *pbm, sd->stc = &pbm->stc; sd->numa_node = pbm->numa_node; - if (!strcmp(node->name, "ebus")) + if (of_node_name_eq(node, "ebus")) of_propagate_archdata(op); type = of_get_property(node, "device_type", NULL); @@ -336,7 +336,7 @@ static struct pci_dev *of_create_pci_dev(struct pci_pbm_info *pbm, dev->error_state = pci_channel_io_normal; dev->dma_mask = 0xffffffff; - if (!strcmp(node->name, "pci")) { + if (of_node_name_eq(node, "pci")) { /* a PCI-PCI bridge */ dev->hdr_type = PCI_HEADER_TYPE_BRIDGE; dev->rom_base_reg = PCI_ROM_ADDRESS1; diff --git a/arch/sparc/kernel/pci_sabre.c b/arch/sparc/kernel/pci_sabre.c index 8107286be9ab..3c38ca40a22b 100644 --- a/arch/sparc/kernel/pci_sabre.c +++ b/arch/sparc/kernel/pci_sabre.c @@ -475,7 +475,7 @@ static int sabre_probe(struct platform_device *op) * different ways, inconsistently. */ for_each_node_by_type(cpu_dp, "cpu") { - if (!strcmp(cpu_dp->name, "SUNW,UltraSPARC-IIe")) + if (of_node_name_eq(cpu_dp, "SUNW,UltraSPARC-IIe")) hummingbird_p = 1; } } diff --git a/arch/sparc/kernel/prom_64.c b/arch/sparc/kernel/prom_64.c index 1667df573f6f..17860d6ed1bd 100644 --- a/arch/sparc/kernel/prom_64.c +++ b/arch/sparc/kernel/prom_64.c @@ -335,8 +335,8 @@ static void __init __build_path_component(struct device_node *dp, char *tmp_buf) ebus_path_component(dp, tmp_buf); return; } - if (!strcmp(parent->name, "usb") || - !strcmp(parent->name, "hub")) { + if (of_node_name_eq(parent, "usb") || + of_node_name_eq(parent, "hub")) { usb_path_component(dp, tmp_buf); return; } diff --git a/arch/sparc/kernel/prom_irqtrans.c b/arch/sparc/kernel/prom_irqtrans.c index f3fecac7facb..f76b4ae697f5 100644 --- a/arch/sparc/kernel/prom_irqtrans.c +++ b/arch/sparc/kernel/prom_irqtrans.c @@ -725,11 +725,11 @@ static unsigned int central_build_irq(struct device_node *dp, unsigned long imap, iclr; u32 tmp; - if (!strcmp(dp->name, "eeprom")) { + if (of_node_name_eq(dp, "eeprom")) { res = ¢ral_op->resource[5]; - } else if (!strcmp(dp->name, "zs")) { + } else if (of_node_name_eq(dp, "zs")) { res = ¢ral_op->resource[4]; - } else if (!strcmp(dp->name, "clock-board")) { + } else if (of_node_name_eq(dp, "clock-board")) { res = ¢ral_op->resource[3]; } else { return ino; @@ -824,19 +824,19 @@ void __init irq_trans_init(struct device_node *dp) } #endif #ifdef CONFIG_SBUS - if (!strcmp(dp->name, "sbus") || - !strcmp(dp->name, "sbi")) { + if (of_node_name_eq(dp, "sbus") || + of_node_name_eq(dp, "sbi")) { sbus_irq_trans_init(dp); return; } #endif - if (!strcmp(dp->name, "fhc") && - !strcmp(dp->parent->name, "central")) { + if (of_node_name_eq(dp, "fhc") && + of_node_name_eq(dp->parent, "central")) { central_irq_trans_init(dp); return; } - if (!strcmp(dp->name, "virtual-devices") || - !strcmp(dp->name, "niu")) { + if (of_node_name_eq(dp, "virtual-devices") || + of_node_name_eq(dp, "niu")) { sun4v_vdev_irq_trans_init(dp); return; } diff --git a/arch/sparc/kernel/sun4d_irq.c b/arch/sparc/kernel/sun4d_irq.c index 6d266d7dd2b6..9a137c70e8d1 100644 --- a/arch/sparc/kernel/sun4d_irq.c +++ b/arch/sparc/kernel/sun4d_irq.c @@ -335,12 +335,12 @@ static unsigned int sun4d_build_device_irq(struct platform_device *op, irq = real_irq; while (bus) { - if (!strcmp(bus->name, "sbi")) { + if (of_node_name_eq(bus, "sbi")) { bus_connection = "io-unit"; break; } - if (!strcmp(bus->name, "bootbus")) { + if (of_node_name_eq(bus, "bootbus")) { bus_connection = "cpu-unit"; break; } @@ -360,7 +360,7 @@ static unsigned int sun4d_build_device_irq(struct platform_device *op, * If Bus nodes parent is not io-unit/cpu-unit or the io-unit/cpu-unit * lacks a "board#" property, something is very wrong. */ - if (!bus->parent || strcmp(bus->parent->name, bus_connection)) { + if (!of_node_name_eq(bus->parent, bus_connection)) { printk(KERN_ERR "%pOF: Error, parent is not %s.\n", bus, bus_connection); goto err_out; diff --git a/arch/sparc/kernel/time_64.c b/arch/sparc/kernel/time_64.c index 68a80f9baea7..3eb77943ce12 100644 --- a/arch/sparc/kernel/time_64.c +++ b/arch/sparc/kernel/time_64.c @@ -561,8 +561,8 @@ static int mostek_probe(struct platform_device *op) /* On an Enterprise system there can be multiple mostek clocks. * We should only match the one that is on the central FHC bus. */ - if (!strcmp(dp->parent->name, "fhc") && - strcmp(dp->parent->parent->name, "central") != 0) + if (of_node_name_eq(dp->parent, "fhc") && + !of_node_name_eq(dp->parent->parent, "central")) return -ENODEV; printk(KERN_INFO "%pOF: Mostek regs at 0x%llx\n", From patchwork Wed Nov 7 22:31:50 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rob Herring X-Patchwork-Id: 150456 Delivered-To: patch@linaro.org Received: by 2002:a2e:299d:0:0:0:0:0 with SMTP id p29-v6csp93201ljp; Wed, 7 Nov 2018 14:32:06 -0800 (PST) X-Google-Smtp-Source: AJdET5cf7E1r30AY7JVpkJVPxXqL65CSSpMVZRyQ90/61gz31U2h5H9xGHwkSkDbm0YnjWVsGa61 X-Received: by 2002:a63:ac46:: with SMTP id z6mr1815804pgn.162.1541629926481; Wed, 07 Nov 2018 14:32:06 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1541629926; cv=none; d=google.com; s=arc-20160816; b=WJNlygsaUoZa6SEDdSuN1i71J8hyjbCp2qcxLOuHcx4uN2v7G9ox0LmcbA4MSW+Y6s LssOdYXYVB2ydP8pvrX0HifKemX28GDPKUhnGzOBv1Y0sPtJxMUH8ozfdXRUzOcW/9eQ 3O8Ry8hbFCtNOp743uIoPaBkurSvyLJ6Oy92NWBJRgTnJ+muKl8Wz/2D+TSIgACnRlnE ZYeErJG4vRVSR//pQ9DXELMHW1nbrGRlhtVkQx7zV2AFVraTzhdImBHoa/cm/PpHrMoh o5bLakyQ6XgzRJ87SYSUOJy3g5Oj2KAMU3IY2cLZf74lw+Fj/l8997KIxHzAI1FLpIYY IjqQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=zk0fMcNWEybl0Qy11hZmnnvnababl/kcVrGBWS2p8z4=; b=GAjGlFx1i9dRMubUbyZE/9HMEHie3h8pALeW36gbzMx6tFOrh0s46oYcXJlPvRdei3 kuo835DG8pQyqZwNaD/8QJUeWynGeORrjOcrauGfjZV7AgoccV+mFbp57oDSUm+krErx fYNxQYHs10K9v3gW5263PWrC7czoRwlu+8RD+UZ2K8+ILMLHrm67zf+xk9Gwp6YQ+vqJ uh/RY9h4aUKKggdIU3dbIUJ0vtXqMJBdcwnhpjESYljESc3otGPidOjCOK7ZMneWB5IW ql0U/Lkg3CkF96qaGCk8p3yWcK6TgOB7qcwZ9yFdVb3BCIaWpX0ua3nx/hrK9+u+6NU7 5niA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id v189si1770741pgb.398.2018.11.07.14.32.06; Wed, 07 Nov 2018 14:32:06 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728334AbeKHIEa (ORCPT + 32 others); Thu, 8 Nov 2018 03:04:30 -0500 Received: from mail-oi1-f193.google.com ([209.85.167.193]:35404 "EHLO mail-oi1-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728184AbeKHIE3 (ORCPT ); Thu, 8 Nov 2018 03:04:29 -0500 Received: by mail-oi1-f193.google.com with SMTP id v198-v6so15306687oif.2; Wed, 07 Nov 2018 14:32:02 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=zk0fMcNWEybl0Qy11hZmnnvnababl/kcVrGBWS2p8z4=; b=K7Ge2aQIKW44y3tmtI00wPa504UzI0xd5ygNVsEUA5l3sJl9AWqFrML+bDK6Rl+1VA 8DfHpt9RiLVpowtBaLT1rbN3abYKogNcsuCc8lWjuCcC9QOxtK44OQsibPEKQL7y8vUa qd1kfpiuadlsQHdOd2jqSsQGOcm3Qoh0jDtk5YPOu0bBTMGtHVd77xp7OA0HMi6LiajM oTF7j7R4JO7RwFGxs23b62MJc/S1RMkdTUy3q15esQ0lS32yGBWtOo1YGh3CQlkTQK0L 1GAQTZLFNerspHhY3MCJQ5TABRcvJWjNsfQlsuNY/FCm9Ac2OFmbAQH/DdGoh21GxleI g8GA== X-Gm-Message-State: AGRZ1gJZyiKa73UWpzSpVfeU3J+UBOV1kDmNaqyGbbvOEda4gVKmKDdP wONeehSi7ZpzoM3dzyVrWVnLrYU= X-Received: by 2002:aca:5842:: with SMTP id m63-v6mr1319644oib.162.1541629921419; Wed, 07 Nov 2018 14:32:01 -0800 (PST) Received: from xps15.herring.priv (24-155-109-49.dyn.grandenetworks.net. [24.155.109.49]) by smtp.googlemail.com with ESMTPSA id f9sm750959oth.17.2018.11.07.14.32.00 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 07 Nov 2018 14:32:00 -0800 (PST) From: Rob Herring To: "David S. Miller" Cc: Frank Rowand , linux-kernel@vger.kernel.org, sparclinux@vger.kernel.org Subject: [PATCH 7/8] sparc: Remove unused leon_trans_init Date: Wed, 7 Nov 2018 16:31:50 -0600 Message-Id: <20181107223151.14991-8-robh@kernel.org> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181107223151.14991-1-robh@kernel.org> References: <20181107223151.14991-1-robh@kernel.org> MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The function leon_trans_init is unused. Remove it and save us from figuring out what to do with a '' node name. Cc: "David S. Miller" Cc: sparclinux@vger.kernel.org Signed-off-by: Rob Herring --- arch/sparc/include/asm/leon.h | 1 - arch/sparc/kernel/leon_kernel.c | 14 -------------- 2 files changed, 15 deletions(-) -- 2.19.1 diff --git a/arch/sparc/include/asm/leon.h b/arch/sparc/include/asm/leon.h index c68bb5b76e3d..8c01f0f6b1ed 100644 --- a/arch/sparc/include/asm/leon.h +++ b/arch/sparc/include/asm/leon.h @@ -225,7 +225,6 @@ void leon_update_virq_handling(unsigned int virq, irq_flow_handler_t flow_handler, const char *name, int do_ack); void leon_init_timers(void); -void leon_trans_init(struct device_node *dp); void leon_node_init(struct device_node *dp, struct device_node ***nextp); void init_leon(void); void poke_leonsparc(void); diff --git a/arch/sparc/kernel/leon_kernel.c b/arch/sparc/kernel/leon_kernel.c index 84b233752f28..39229940d725 100644 --- a/arch/sparc/kernel/leon_kernel.c +++ b/arch/sparc/kernel/leon_kernel.c @@ -484,20 +484,6 @@ static void leon_load_profile_irq(int cpu, unsigned int limit) { } -void __init leon_trans_init(struct device_node *dp) -{ - if (strcmp(dp->type, "cpu") == 0 && strcmp(dp->name, "") == 0) { - struct property *p; - p = of_find_property(dp, "mid", (void *)0); - if (p) { - int mid; - dp->name = prom_early_alloc(5 + 1); - memcpy(&mid, p->value, p->length); - sprintf((char *)dp->name, "cpu%.2d", mid); - } - } -} - #ifdef CONFIG_SMP void leon_clear_profile_irq(int cpu) { From patchwork Wed Nov 7 22:31:51 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rob Herring X-Patchwork-Id: 150457 Delivered-To: patch@linaro.org Received: by 2002:a2e:299d:0:0:0:0:0 with SMTP id p29-v6csp93225ljp; Wed, 7 Nov 2018 14:32:08 -0800 (PST) X-Google-Smtp-Source: AJdET5fzXV1Th6XI2C15O+QUaIWom8g31HPSBxjesj01ZYOWut7HfiPLNRl+h3ps5RvBXRQ0WHSR X-Received: by 2002:a63:ce56:: with SMTP id r22-v6mr1766319pgi.217.1541629928230; Wed, 07 Nov 2018 14:32:08 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1541629928; cv=none; d=google.com; s=arc-20160816; b=ikvBhjdmjg3PrUqJfrRDg8QOGuRgEllMuUncOrt42isQEECECRTnPMub4uezOsCzJv qccPj3RmYHP10q6uCFRvy9vJe3BgB8erB0bimQdmiFZ3AjsAB4OPJk4HCliSvlUGsd/n UVMgh+Y32hX2QIBiBeQfhQ9cU7JuMGFyYjeW4KOMTKvPDBxqYvhqHlx4ByRluVNlJVFs VfayrxufczzerIOFGp2esx/TbzmJEVtn/KXiEatsOOetvT6o6oJ7J7sDaSOs2GUj3ysb T4bF78S20i2JGTwcCs/TWGd8OjpYzkkFMfgNiRSIlX6d6ic8e0T1eOBVsgZxGlB6aXB6 F9ig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=5GWY0d7dwqs0Irw9FyRHcmXB22q6QSmhdPht17rramM=; b=cldghMEV9/w/brl0Rousx0ipWgFL50IhcHNSNIgUgxTbm8OGAAZEtvzkQePjgt7tv5 Y7du1MQqzIcqW8vVnuOyGmR03t6evMi+0WQ7DJKS6+CUcAcsYTWoR4AU5t1RAA4PgUBO BcZnRYdOpNbW7t0WrCoUpguy0slvAzYStJe1PnzLULeuhMxUyYidXvAJGvLubi774BXt HLu2kOh+N8pwtVWzA0P2ss7UQlhO/ujTf19MH6no2wXEvO3dh5rwHB1cQh6HPT2kCg8P dtFqTkNR+0IF/JP9WbZt3Bd/TLHQsoPKAnbfeO0bMlOf3KI7jk1OpD1IsO8cFh9nxQmV N71w== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id v189si1770741pgb.398.2018.11.07.14.32.07; Wed, 07 Nov 2018 14:32:08 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728359AbeKHIEd (ORCPT + 32 others); Thu, 8 Nov 2018 03:04:33 -0500 Received: from mail-oi1-f196.google.com ([209.85.167.196]:44849 "EHLO mail-oi1-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728184AbeKHIEb (ORCPT ); Thu, 8 Nov 2018 03:04:31 -0500 Received: by mail-oi1-f196.google.com with SMTP id k19-v6so15245483oic.11; Wed, 07 Nov 2018 14:32:03 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=5GWY0d7dwqs0Irw9FyRHcmXB22q6QSmhdPht17rramM=; b=TKb0x9OO31FAzCN/9FETR/UScEZQiS4Oyw6KgCYKDOrft3MhLZXqlLsQ4eSE4NoVaI VnYtp8tzUCC+5RT65JNm0xOYKkYauwIU8WGlN6rudsUw1PuISYtEGc/2CeHTh4AQhUqf 8s3w2+ALpIMitE7NABrQJVkEztuVhHEv1zLMNdzPxaHrobcuUKMXRTC4GDqQbDMVtsYS Z2sPUjc6WQGKeI57oqdFRW4lw6w/blnVq1qQsylE/N/6ClroT4zRGUcYNJX+FjCBsG7A 52SlM3eic3JDhEv5zZtNfoge52KQYbyUwNOsB7PONPD+Wm6qIhZt0aFAdRvyom2cW7Fj tXuw== X-Gm-Message-State: AGRZ1gJFcfcFQItxnYfyPhG6+8UoSiNPYa7QF+vu7XP8SC3KYpDztRSj QLPr+3mXI8gq+/3m9+kBXQ== X-Received: by 2002:aca:4dd4:: with SMTP id a203-v6mr1304165oib.168.1541629922633; Wed, 07 Nov 2018 14:32:02 -0800 (PST) Received: from xps15.herring.priv (24-155-109-49.dyn.grandenetworks.net. [24.155.109.49]) by smtp.googlemail.com with ESMTPSA id f9sm750959oth.17.2018.11.07.14.32.01 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 07 Nov 2018 14:32:01 -0800 (PST) From: Rob Herring To: "David S. Miller" Cc: Frank Rowand , linux-kernel@vger.kernel.org, sparclinux@vger.kernel.org Subject: [PATCH 8/8] sparc: Use device_type helpers to access the node type Date: Wed, 7 Nov 2018 16:31:51 -0600 Message-Id: <20181107223151.14991-9-robh@kernel.org> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181107223151.14991-1-robh@kernel.org> References: <20181107223151.14991-1-robh@kernel.org> MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Remove directly accessing device_node.type pointer and use the accessors instead. This will eventually allow removing the type pointer. Replace the open coded iterating over child nodes with for_each_child_of_node() while we're here. Cc: "David S. Miller" Cc: sparclinux@vger.kernel.org Signed-off-by: Rob Herring --- arch/sparc/kernel/of_device_32.c | 4 ++-- arch/sparc/kernel/pci.c | 9 ++------- arch/sparc/kernel/process_32.c | 2 +- arch/sparc/kernel/prom_32.c | 20 +++++++------------- arch/sparc/kernel/prom_64.c | 24 +++++++++--------------- arch/sparc/kernel/prom_irqtrans.c | 2 +- arch/sparc/kernel/reboot.c | 3 ++- arch/sparc/kernel/vio.c | 7 ++----- 8 files changed, 26 insertions(+), 45 deletions(-) -- 2.19.1 diff --git a/arch/sparc/kernel/of_device_32.c b/arch/sparc/kernel/of_device_32.c index dc5b1b0ec659..ee4841a96058 100644 --- a/arch/sparc/kernel/of_device_32.c +++ b/arch/sparc/kernel/of_device_32.c @@ -22,7 +22,7 @@ static int of_bus_pci_match(struct device_node *np) { - if (!strcmp(np->type, "pci") || !strcmp(np->type, "pciex")) { + if (of_node_is_type(np, "pci") || of_node_is_type(np, "pciex")) { /* Do not do PCI specific frobbing if the * PCI bridge lacks a ranges property. We * want to pass it through up to the next @@ -107,7 +107,7 @@ static unsigned long of_bus_sbus_get_flags(const u32 *addr, unsigned long flags) static int of_bus_ambapp_match(struct device_node *np) { - return !strcmp(np->type, "ambapp"); + return of_node_is_type(np, "ambapp"); } static void of_bus_ambapp_count_cells(struct device_node *child, diff --git a/arch/sparc/kernel/pci.c b/arch/sparc/kernel/pci.c index 377113ae9a6a..bcfec6a85d23 100644 --- a/arch/sparc/kernel/pci.c +++ b/arch/sparc/kernel/pci.c @@ -267,7 +267,6 @@ static struct pci_dev *of_create_pci_dev(struct pci_pbm_info *pbm, struct dev_archdata *sd; struct platform_device *op; struct pci_dev *dev; - const char *type; u32 class; dev = pci_alloc_dev(bus); @@ -286,13 +285,9 @@ static struct pci_dev *of_create_pci_dev(struct pci_pbm_info *pbm, if (of_node_name_eq(node, "ebus")) of_propagate_archdata(op); - type = of_get_property(node, "device_type", NULL); - if (type == NULL) - type = ""; - if (ofpci_verbose) pci_info(bus," create device, devfn: %x, type: %s\n", - devfn, type); + devfn, of_node_get_device_type(node)); dev->sysdata = node; dev->dev.parent = bus->bridge; @@ -340,7 +335,7 @@ static struct pci_dev *of_create_pci_dev(struct pci_pbm_info *pbm, /* a PCI-PCI bridge */ dev->hdr_type = PCI_HEADER_TYPE_BRIDGE; dev->rom_base_reg = PCI_ROM_ADDRESS1; - } else if (!strcmp(type, "cardbus")) { + } else if (of_node_is_type(node, "cardbus")) { dev->hdr_type = PCI_HEADER_TYPE_CARDBUS; } else { dev->hdr_type = PCI_HEADER_TYPE_NORMAL; diff --git a/arch/sparc/kernel/process_32.c b/arch/sparc/kernel/process_32.c index d9662cf7e648..26cca65e9246 100644 --- a/arch/sparc/kernel/process_32.c +++ b/arch/sparc/kernel/process_32.c @@ -110,7 +110,7 @@ void machine_restart(char * cmd) void machine_power_off(void) { if (auxio_power_register && - (strcmp(of_console_device->type, "serial") || scons_pwroff)) { + (!of_node_is_type(of_console_device, "serial") || scons_pwroff)) { u8 power_register = sbus_readb(auxio_power_register); power_register |= AUXIO_POWER_OFF; sbus_writeb(power_register, auxio_power_register); diff --git a/arch/sparc/kernel/prom_32.c b/arch/sparc/kernel/prom_32.c index f2835cddf362..42d7f2a7da6d 100644 --- a/arch/sparc/kernel/prom_32.c +++ b/arch/sparc/kernel/prom_32.c @@ -182,14 +182,14 @@ static void __init __build_path_component(struct device_node *dp, char *tmp_buf) struct device_node *parent = dp->parent; if (parent != NULL) { - if (!strcmp(parent->type, "pci") || - !strcmp(parent->type, "pciex")) + if (of_node_is_type(parent, "pci") || + of_node_is_type(parent, "pciex")) return pci_path_component(dp, tmp_buf); - if (!strcmp(parent->type, "sbus")) + if (of_node_is_type(parent, "sbus")) return sbus_path_component(dp, tmp_buf); - if (!strcmp(parent->type, "ebus")) + if (of_node_is_type(parent, "ebus")) return ebus_path_component(dp, tmp_buf); - if (!strcmp(parent->type, "ambapp")) + if (of_node_is_type(parent, "ambapp")) return ambapp_path_component(dp, tmp_buf); /* "isa" is handled with platform naming */ @@ -284,15 +284,9 @@ void __init of_console_init(void) prom_halt(); } dp = of_find_node_by_phandle(node); - type = of_get_property(dp, "device_type", NULL); - if (!type) { - prom_printf("Console stdout lacks " - "device_type property.\n"); - prom_halt(); - } - - if (strcmp(type, "display") && strcmp(type, "serial")) { + if (!of_node_is_type(dp, "display") && + !of_node_is_type(dp, "serial")) { prom_printf("Console device_type is neither display " "nor serial.\n"); prom_halt(); diff --git a/arch/sparc/kernel/prom_64.c b/arch/sparc/kernel/prom_64.c index 17860d6ed1bd..e897a4ded3a1 100644 --- a/arch/sparc/kernel/prom_64.c +++ b/arch/sparc/kernel/prom_64.c @@ -318,20 +318,20 @@ static void __init __build_path_component(struct device_node *dp, char *tmp_buf) struct device_node *parent = dp->parent; if (parent != NULL) { - if (!strcmp(parent->type, "pci") || - !strcmp(parent->type, "pciex")) { + if (of_node_is_type(parent, "pci") || + of_node_is_type(parent, "pciex")) { pci_path_component(dp, tmp_buf); return; } - if (!strcmp(parent->type, "sbus")) { + if (of_node_is_type(parent, "sbus")) { sbus_path_component(dp, tmp_buf); return; } - if (!strcmp(parent->type, "upa")) { + if (of_node_is_type(parent, "upa")) { upa_path_component(dp, tmp_buf); return; } - if (!strcmp(parent->type, "ebus")) { + if (of_node_is_type(parent, "ebus")) { ebus_path_component(dp, tmp_buf); return; } @@ -340,15 +340,15 @@ static void __init __build_path_component(struct device_node *dp, char *tmp_buf) usb_path_component(dp, tmp_buf); return; } - if (!strcmp(parent->type, "i2c")) { + if (of_node_is_type(parent, "i2c")) { i2c_path_component(dp, tmp_buf); return; } - if (!strcmp(parent->type, "firewire")) { + if (of_node_is_type(parent, "firewire")) { ieee1394_path_component(dp, tmp_buf); return; } - if (!strcmp(parent->type, "virtual-devices")) { + if (of_node_is_type(parent, "virtual-devices")) { vdev_path_component(dp, tmp_buf); return; } @@ -605,7 +605,6 @@ void __init of_console_init(void) { char *msg = "OF stdout device is: %s\n"; struct device_node *dp; - const char *type; phandle node; of_console_path = prom_early_alloc(256); @@ -628,13 +627,8 @@ void __init of_console_init(void) } dp = of_find_node_by_phandle(node); - type = of_get_property(dp, "device_type", NULL); - if (!type) { - prom_printf("Console stdout lacks device_type property.\n"); - prom_halt(); - } - if (strcmp(type, "display") && strcmp(type, "serial")) { + if (!of_node_is_type(dp, "display") && !of_node_is_type(dp, "serial")) { prom_printf("Console device_type is neither display " "nor serial.\n"); prom_halt(); diff --git a/arch/sparc/kernel/prom_irqtrans.c b/arch/sparc/kernel/prom_irqtrans.c index f76b4ae697f5..28aff1c524b5 100644 --- a/arch/sparc/kernel/prom_irqtrans.c +++ b/arch/sparc/kernel/prom_irqtrans.c @@ -193,7 +193,7 @@ static int sabre_device_needs_wsync(struct device_node *dp) * the DMA synchronization handling */ while (parent) { - if (!strcmp(parent->type, "pci")) + if (of_node_is_type(parent, "pci")) break; parent = parent->parent; } diff --git a/arch/sparc/kernel/reboot.c b/arch/sparc/kernel/reboot.c index 7933ee365207..69c1b6c047d5 100644 --- a/arch/sparc/kernel/reboot.c +++ b/arch/sparc/kernel/reboot.c @@ -7,6 +7,7 @@ #include #include #include +#include #include #include @@ -25,7 +26,7 @@ EXPORT_SYMBOL(pm_power_off); void machine_power_off(void) { - if (strcmp(of_console_device->type, "serial") || scons_pwroff) + if (!of_node_is_type(of_console_device, "serial") || scons_pwroff) prom_halt_power_off(); prom_halt(); diff --git a/arch/sparc/kernel/vio.c b/arch/sparc/kernel/vio.c index 0b578d03797b..c7cad9b7bba7 100644 --- a/arch/sparc/kernel/vio.c +++ b/arch/sparc/kernel/vio.c @@ -366,12 +366,9 @@ static struct vio_dev *vio_create_one(struct mdesc_handle *hp, u64 mp, if (parent == NULL) { dp = cdev_node; } else if (to_vio_dev(parent) == root_vdev) { - dp = of_get_next_child(cdev_node, NULL); - while (dp) { - if (!strcmp(dp->type, type)) + for_each_child_of_node(cdev_node, dp) { + if (of_node_is_type(dp, type)) break; - - dp = of_get_next_child(cdev_node, dp); } } else { dp = to_vio_dev(parent)->dp;