Grant,
I have been following your MIPS device tree patches and have begun to
experiment with them. If you could give some feedback on my ideas, I
would appreciate it.
Background:
The Octeon is a MIPS64 based SOC family. The various members of the
Octeon family have several Ethernet ports of different types, one or
more MDIO and I2C busses and other miscellaneous devices. People put
the SOCs on boards that have a wide variety of PHYs, I2C devices all
connected in different ways.
Currently we have ad hoc code throughout the drivers and platform
initialization code that specify how everything is connected.
Plan:
I want to convert this to use the device tree and related functions.
Since none of the existing hardware has an existing device tree I plan
on taking a two pronged approach.
Modify platform drivers to get configuration information from the device
tree. Then:
1) Load and use a dtb blob as specified on the kernel command line.
2) If no command line dtb specified, use a default dtb embedded in the
kernel image and then edit or patch it using of_attach_node(),
of_detach_node(), prom_remove_property(), and prom_add_property() based
on some of the the same ad hoc code we currently use.
Q: As a very high level plan does this make any sense?
Would you recommend something else?
Thanks in advance,
David Daney