All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rob Herring <robherring2@gmail.com>
To: Grant Likely <grant.likely@linaro.org>,
	linux-kernel@vger.kernel.org, devicetree@vger.kernel.org
Cc: "Ivan T. Ivanov" <iivanov@mm-sol.com>,
	Josh Cartwright <joshc@codeaurora.org>,
	Courtney Cavin <courtney.cavin@sonymobile.com>,
	Bjorn Andersson <bjorn@kryo.se>,
	Frank Rowand <frowand.list@gmail.com>,
	Rob Herring <robh@kernel.org>
Subject: [PATCH 3/4] of/platform: fix device naming for non-translatable addresses
Date: Wed,  7 May 2014 16:48:17 -0500	[thread overview]
Message-ID: <1399499298-8830-4-git-send-email-robherring2@gmail.com> (raw)
In-Reply-To: <1399499298-8830-1-git-send-email-robherring2@gmail.com>

From: Rob Herring <robh@kernel.org>

Using non-translatable addresses in platform device names is wrong
because they may not be globally unique. Just use the default naming with
a global index if the address cannot be translated instead.

of_can_translate_address has the same checks as of_translate_address, so
we can remove it here as well.

Reported-by: "Ivan T. Ivanov" <iivanov@mm-sol.com>
Cc: Josh Cartwright <joshc@codeaurora.org>
Cc: Courtney Cavin <courtney.cavin@sonymobile.com>
Cc: Bjorn Andersson <bjorn@kryo.se>
Cc: Frank Rowand <frowand.list@gmail.com>
Cc: Grant Likely <grant.likely@linaro.org>
Signed-off-by: Rob Herring <robh@kernel.org>
---
 drivers/of/platform.c | 11 +----------
 1 file changed, 1 insertion(+), 10 deletions(-)

diff --git a/drivers/of/platform.c b/drivers/of/platform.c
index 622aeb3..d827ceb 100644
--- a/drivers/of/platform.c
+++ b/drivers/of/platform.c
@@ -78,7 +78,6 @@ void of_device_make_bus_id(struct device *dev)
 	struct device_node *node = dev->of_node;
 	const __be32 *reg;
 	u64 addr;
-	const __be32 *addrp;
 	int magic;
 
 #ifdef CONFIG_PPC_DCR
@@ -106,15 +105,7 @@ void of_device_make_bus_id(struct device *dev)
 	 */
 	reg = of_get_property(node, "reg", NULL);
 	if (reg) {
-		if (of_can_translate_address(node)) {
-			addr = of_translate_address(node, reg);
-		} else {
-			addrp = of_get_address(node, 0, NULL, NULL);
-			if (addrp)
-				addr = of_read_number(addrp, 1);
-			else
-				addr = OF_BAD_ADDR;
-		}
+		addr = of_translate_address(node, reg);
 		if (addr != OF_BAD_ADDR) {
 			dev_set_name(dev, "%llx.%s",
 				     (unsigned long long)addr, node->name);
-- 
1.9.1

  parent reply	other threads:[~2014-05-07 21:48 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-07 21:48 [PATCH 0/4] DT platform device name collision fixes Rob Herring
2014-05-07 21:48 ` Rob Herring
     [not found] ` <1399499298-8830-1-git-send-email-robherring2-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-05-07 21:48   ` [PATCH 1/4] of/selftest: add testcase for nodes with same name and address Rob Herring
2014-05-07 21:48     ` Rob Herring
     [not found]     ` <1399499298-8830-2-git-send-email-robherring2-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-05-08  2:51       ` Frank Rowand
2014-05-08  2:51         ` Frank Rowand
2014-05-08  8:59         ` Grant Likely
2014-05-08 19:44           ` Frank Rowand
     [not found]         ` <536AF13F.6000502-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-05-09  4:28           ` Frank Rowand
2014-05-09  4:28             ` Frank Rowand
2014-05-08  9:00       ` Grant Likely
2014-05-08  9:00         ` Grant Likely
2014-05-07 22:52   ` [PATCH 0/4] DT platform device name collision fixes Frank Rowand
2014-05-07 22:52     ` Frank Rowand
     [not found]     ` <536AB91F.3010302-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-05-08  2:54       ` Frank Rowand
2014-05-08  2:54         ` Frank Rowand
2014-05-07 21:48 ` [PATCH 2/4] of/platform: return error on of_platform_device_create_pdata failure Rob Herring
     [not found]   ` <1399499298-8830-3-git-send-email-robherring2-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-05-13 17:56     ` Olof Johansson
2014-05-13 17:56       ` Olof Johansson
     [not found]       ` <20140513175603.GA27173-O5ziIzlqnXUVNXGz7ipsyg@public.gmane.org>
2014-05-13 18:31         ` Rob Herring
2014-05-13 18:31           ` Rob Herring
2014-05-13 20:32       ` Frank Rowand
2014-05-13 20:37         ` Olof Johansson
     [not found]         ` <53728173.7050508-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-05-14  7:43           ` Ivan T. Ivanov
2014-05-14  7:43             ` Ivan T. Ivanov
2014-05-07 21:48 ` Rob Herring [this message]
2014-05-08 10:41   ` [PATCH 3/4] of/platform: fix device naming for non-translatable addresses Arnd Bergmann
2014-05-08 12:55     ` Rob Herring
2014-05-08 12:55       ` Rob Herring
     [not found]       ` <CAL_JsqJEW_Xrfi7OiF6caHVup1Y6-8SvyOJawov8o3oiYiFvXQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-05-08 13:15         ` Arnd Bergmann
2014-05-08 13:15           ` Arnd Bergmann
2014-05-08 11:47   ` Ivan T. Ivanov
2014-05-07 21:48 ` [PATCH 4/4] of: kill off of_can_translate_address Rob Herring

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1399499298-8830-4-git-send-email-robherring2@gmail.com \
    --to=robherring2@gmail.com \
    --cc=bjorn@kryo.se \
    --cc=courtney.cavin@sonymobile.com \
    --cc=devicetree@vger.kernel.org \
    --cc=frowand.list@gmail.com \
    --cc=grant.likely@linaro.org \
    --cc=iivanov@mm-sol.com \
    --cc=joshc@codeaurora.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=robh@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.