[U-Boot] [RFC] Driver model
Marek Vasut
marek.vasut at gmail.com
Mon Sep 20 12:05:40 CEST 2010
Hi,
most of the readers here probably noticed, there are various forks of U-Boot
bootloader floating around the net. The development model there is quite closed
and certainly not community driven, on the other hand, they have neat driver
model.
As for U-Boot, there currently is no driver model. Therefore I'd like to start a
discussing on this topic so we can converge towards a reasonable result.
My few points:
* Start with ethernet subsystem
It seems to be quite ready for conversion of this scale. Besides it'd be easy to
prove multiple instances of ethernet device work with the driver model.
* Create an universal driver model:
The driver will have usual .probe function, which will have some argument of
type "void *" to it's driver data. This way we can pass it's base address for
example instead of #defining it. Very similar to linux kernel.
* We need some "device tree"
To know, what driver is where and where are it's driver data etc.
* Get rid of static data in drivers, switch to dynamic allocation
So these wont interfere with multiple instances of the same driver.
Cheers
More information about the U-Boot
mailing list