[REGRESSION in 3.18][PPC] PA Semi fails to boot after: of/base: Fix PowerPC address parsing hack

Christian Zigotzky chzigotzky at xenosoft.de
Sat Mar 7 20:12:45 AEDT 2015


Hi All,

I have a patch for it (Kernel 4.0-rc2):

diff -rupN linux-4.0/drivers/of/address.c 
linux-4.0-nemo/drivers/of/address.c
--- linux-4.0/drivers/of/address.c    2015-03-03 18:04:59.000000000 +0100
+++ linux-4.0-nemo/drivers/of/address.c    2015-03-03 22:34:00.037500744 
+0100
@@ -450,21 +450,6 @@ static struct of_bus *of_match_bus(struc
      return NULL;
  }

-static int of_empty_ranges_quirk(void)
-{
-    if (IS_ENABLED(CONFIG_PPC)) {
-        /* To save cycles, we cache the result */
-        static int quirk_state = -1;
-
-        if (quirk_state < 0)
-            quirk_state =
-                of_machine_is_compatible("Power Macintosh") ||
-                of_machine_is_compatible("MacRISC");
-        return quirk_state;
-    }
-    return false;
-}
-
  static int of_translate_one(struct device_node *parent, struct of_bus 
*bus,
                  struct of_bus *pbus, __be32 *addr,
                  int na, int ns, int pna, const char *rprop)
@@ -490,10 +475,12 @@ static int of_translate_one(struct devic
       * This code is only enabled on powerpc. --gcl
       */
      ranges = of_get_property(parent, rprop, &rlen);
-    if (ranges == NULL && !of_empty_ranges_quirk()) {
+#if !defined(CONFIG_PPC)
+       if (ranges == NULL) {
          pr_debug("OF: no ranges; cannot translate\n");
          return 1;
      }
+#endif /* !defined(CONFIG_PPC) */
      if (ranges == NULL || rlen == 0) {
          offset = of_read_number(addr, na);
          memset(addr, 0, pna * 4);

Rgds,

Christian

On 07/03/2015 01:16 a.m., Alex Perez wrote:
> On Mar 6, 2015, at 3:07 PM, linuxppc-dev-request at lists.ozlabs.org 
> <mailto:linuxppc-dev-request at lists.ozlabs.org> wrote:
>
>> Date: Sat, 07 Mar 2015 09:56:22 +1100
>> From: Benjamin Herrenschmidt <benh at kernel.crashing.org 
>> <mailto:benh at kernel.crashing.org>>
>> To: Steven Rostedt <rostedt at goodmis.org <mailto:rostedt at goodmis.org>>
>> Cc: Grant Likely <grant.likely at linaro.org 
>> <mailto:grant.likely at linaro.org>>, Rob Herring
>> <robh at kernel.org <mailto:robh at kernel.org>>, Olof Johansson 
>> <olof at lixom.net <mailto:olof at lixom.net>>,
>> linuxppc-dev at lists.ozlabs.org <mailto:linuxppc-dev at lists.ozlabs.org>, 
>> LKML <linux-kernel at vger.kernel.org <mailto:linux-kernel at vger.kernel.org>>
>> Subject: Re: [REGRESSION in 3.18][PPC] PA Semi fails to boot after:
>> of/base: Fix PowerPC address parsing hack
>> Message-ID: <1425682582.4636.197.camel at kernel.crashing.org 
>> <mailto:1425682582.4636.197.camel at kernel.crashing.org>>
>> Content-Type: text/plain; charset="UTF-8"
>>
>> On Fri, 2015-03-06 at 10:00 -0500, Steven Rostedt wrote:
>>> On Fri, 06 Mar 2015 15:18:42 +1100
>>> Benjamin Herrenschmidt <benh at kernel.crashing.org 
>>> <mailto:benh at kernel.crashing.org>> wrote:
>>>
>>>
>>>> Can you shoot me the DT (/proc/device-tree in a tarball) ?
>>>
>>> Attached.
>>
>> This is indeed a bug in their DT. We might want to add quirks for
>> that unless it can be fixed (or has been via FW update). Olof ?
>
> I will of course ultimately defer to Olof, but PASemi hasn’t existed 
> for years, and there is no entity which could possibly update the DT 
> for these reference PASemi development boards, unless Olof has source, 
> which I’m pretty sure he does not :)

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ozlabs.org/pipermail/linuxppc-dev/attachments/20150307/ba70e50b/attachment-0001.html>


More information about the Linuxppc-dev mailing list