Messages in this thread | | | From | "Moffett, Kyle D" <> | Date | Thu, 22 Dec 2011 11:15:06 -0600 | Subject | Driver core support for early platform devices |
| |
Hi,
I'm tinkering with some improvements to the way that OpenPIC/MPIC are detected and loaded on PowerPC platforms, and it seems like I am trying to use the driver model before it is fully initialized.
In particular, it seems like it should be possible to simply declare an OpenPIC in the device-tree and have it automatically bound to a platform driver declaring the right OpenFirmware match strings.
Unfortunately, it needs to be bound by init_IRQ() time, while the driver model does not get initialized until much later (after the scheduler is up and running).
As far as I can tell, there seem to be 2 possible approaches to making that possible:
(1) Split the driver-model initialization into "early" and "late" phases so that drivers can be registered and devices probed very early on and then replay the necessary scheduler-dependent things after the system is mostly started up (IE: devtmpfs, etc).
(2) Create a separate mini-platform-driver-model which can create and probe platform devices early on and then automatically register them properly on the platform_bus once the driver model comes up.
Do you think this is the right approach? Is there any existing work being done to support either model?
Thanks for your help!
Cheers, Kyle Moffett
-- Curious about my work on the Debian powerpcspe port? I'm keeping a blog here: http://pureperl.blogspot.com/
| |