Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 10 Apr 2019 22:40:58 -0700
From:      Mark Millard <marklmi@yahoo.com>
To:        FreeBSD PowerPC ML <freebsd-ppc@freebsd.org>, freebsd-hackers Hackers <freebsd-hackers@freebsd.org>
Subject:   Openfirmware node handling questions (associate with old PowerMac usefdt mode contexts and things not working)
Message-ID:  <372E571A-0D72-4511-89FA-C09A88370AC9@yahoo.com>

next in thread | raw e-mail | index | archive | help
Part of an old PowerMac3,6 G4 node tree looks like the below.
Note the replications of the names gpio5, gpio6, gpio11, and
extint-gpio15 :

  Node 0xff959ff0: pci
    Node 0xff95cb40: mac-io
      Node 0xff963f60: interrupt-controller
      Node 0xff9641d0: gpio
        Node 0xff964428: extint-gpio1
        Node 0xff964728: programmer-switch
        Node 0xff964a10: gpio5
        Node 0xff964c60: extint-gpio15
        Node 0xff964f20: gpio6
        Node 0xff965170: extint-gpio16
        Node 0xff965498: extint-gpio14
        Node 0xff965758: gpio12
        Node 0xff9659a0: gpio11
        Node 0xff965be8: gpio5
        Node 0xff965e00: gpio6
        Node 0xff966020: extint-gpio4
        Node 0xff9662b0: gpio11
        Node 0xff966500: extint-gpio15

The code that creates the fdt for this for usefdt mode
rejects (skips) each Node that has a prior matching
name already added in the parent node.

(This seems to be keeping usefdt mode from identifying
the ethernet port.)

There is the same sort of issue for an old PowerMac11,2
G5 with a node tree that in part looks like the below:

. . .
        Node 0xff994de0: i2c
          Node 0xff995a00: i2c-bus
            Node 0xff995bc8: codec
            Node 0xff995d00: codec
          Node 0xff995e38: i2c-bus
            Node 0xff996000: codec

The "2nd" instance of i2c-bus is skipped based on the
first one having already been added to the parent.
(I've no clue which is first vs. second in the order of
processing.)

There are other duplicate subordinate names in other
places that do not report a message about skipping.
(I've yet to figure out what makes the distinction.)

Is this rejection of the "later" instance of the same
name(?) valid (officially)? Did Apple do something odd
here? Is there something else I should look for that
would indicate valid vs. invalid duplicate subordinate
names under the same parent? Is the rejection of
such duplicate subordinate names(?) just wrong?


===
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?372E571A-0D72-4511-89FA-C09A88370AC9>