[U-Boot-Users] What the right procedure should be when write a new driver for U-boot?

Hi maintainer
There is some confusion about what the right procedure should be, when someone want to add some drivers to U-boot.
When I read U-boot's code, I found the devices initialize function devices_init() (called in /u-boot-x.x.x/lib_xxx/board.c), It creates a device list, then dev_xxx_init() register the devices such as LCD, USB, Serial, Keyboard in the list.
But, some SOC have their own drivers, for example s3c24x0 have their own driver of USB, Serial,(/cpu/arm920t/s3c24x0/usb_ohci.c) they don't care about the device list, they do it their way.
Is there any 'official' policy on it?

In message 1158829226.8962.35.camel@localhost you wrote:
When I read U-boot's code, I found the devices initialize function devices_init() (called in /u-boot-x.x.x/lib_xxx/board.c), It creates a device list, then dev_xxx_init() register the devices such as LCD, USB, Serial, Keyboard in the list.
The "devices" list is what can be used for assignement to the standard I/O "devices" (i. e. the stdin, stdout and stderr data streams).
But, some SOC have their own drivers, for example s3c24x0 have their own driver of USB, Serial,(/cpu/arm920t/s3c24x0/usb_ohci.c) they don't care about the device list, they do it their way.
Some devices like serial or LCD may be used for standard I/O streams, others (like USB or network may not.
Is there any 'official' policy on it?
Yes - see above.
Best regards,
Wolfgang Denk
participants (2)
-
Lyoo
-
Wolfgang Denk