Platform matching style (was:: [RFC] add phy-handle property for fec_mpc52xx)

2 messages, 2 authors, 2008-01-10 · open the first message on its own page

Platform matching style (was:: [RFC] add phy-handle property for fec_mpc52xx)

From: Grant Likely <hidden>
Date: 2008-01-10 15:31:19

On 1/9/08, Benjamin Herrenschmidt [off-list ref] wrote:
As much as I despise having to work around firmware bugs, it looks
indeed like this one has been broken for way too long to the point where
users are being hurt, distros are being hurt, and telling people to
whack things in nvramrc is just plain gross, so let's merge it.
Tangent question:

The Efika has device_type = "chrp" in the root node, but in Linux
Efika support does not use CHRP, it uses
arch/powerpc/platforms/52xx/efika.c.  However, if CHRP support is
compiled in then it will see the chrp device_type and bind to it
before efika.c has a chance to probe.  I see three reasonable
solutions to this:

1. Apply a device tree fixup to change device_type from "chrp" to
"efika" (the current solution)
2. Modify chrp_probe() to check specifically for the Efika when probing
3. Modify the link order so that Efika is probed before CHRP.

All three of these solutions will work, but I'd like to get opinions
on which is stylistically the best approach (or if there is another
approach I'm missing).

In general, I'm trying to reduce the Efika fixups down to only what is
absolutely necessary and as much as possible work with the provided
device tree.

Cheers,
g.


-- 
Grant Likely, B.Sc., P.Eng.
Secret Lab Technologies Ltd.

Re: Platform matching style (was:: [RFC] add phy-handle property for fec_mpc52xx)

From: Olof Johansson <hidden>
Date: 2008-01-10 15:42:51

On Thu, Jan 10, 2008 at 08:31:18AM -0700, Grant Likely wrote:
1. Apply a device tree fixup to change device_type from "chrp" to
"efika" (the current solution)
2. Modify chrp_probe() to check specifically for the Efika when probing
3. Modify the link order so that Efika is probed before CHRP.

All three of these solutions will work, but I'd like to get opinions
on which is stylistically the best approach (or if there is another
approach I'm missing).

In general, I'm trying to reduce the Efika fixups down to only what is
absolutely necessary and as much as possible work with the provided
device tree.
(3) sounds fragile to me.

There's already code in the kernel that does (2): pSeries_probe checks
to make sure it's not running on a cell blade. That has the benefit of
presenting something closer to the real device tree to the user through
/proc/device-tree, not that I'm sure it has all that much value.


-Olof
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help