dm: Add timeline and guide for porting serial drivers
PATCH v2 1/1 dm: Add timeline and guide for porting serial drivers
Add a README with a brief guide to porting serial drivers over to use driver model.
Add a timeline also. All serial drivers should be converted by the end of January 2015.
---
To avoid anyone missing out on this, I have added to Cc the all U-Boot maintainers using this:
(for f in $(find . -name MAINTAINERS); do grep ^M: $f; done) | \
awk '{$1=""; print "Series-cc:" $0}' |sort | uniqThis is about 229 email address, of which 217 seem to be different people.
Changes in v2:
- Copy the patch to all maintainers
- Move the timeline back to January
doc/driver-model/serial-howto.txt | 58 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 doc/driver-model/serial-howto.txt
doc/driver-model/serial-howto.txt new file +58 -0
@@ -0,0 +1,58 @@ +How to port a serial driver to driver model +=========================================== + +About 16 of 33 serial drivers have been converted as at September 2015. It +is time for maintainers to start converting over the remaining serial drivers: + + altera_jtag_uart.c + altera_uart.c + arm_dcc.c + lpc32xx_hsuart.c + mcfuart.c + mxs_auart.c + opencores_yanu.c + serial_bfin.c + serial_imx.c + serial_lpuart.c + serial_max3100.c + serial_pxa.c + serial_s3c24x0.c + serial_sa1100.c + serial_stm32.c + serial_xuartlite.c + usbtty.c + +You should complete this by the end of January 2015. + +Here is a suggested approach for converting your serial driver over to driver +model. Please feel free to update this file with your ideas and suggestions. + +- #ifdef out all your own serial driver code (#ifndef CONFIG_DM_SERIAL) +- Define CONFIG_DM_SERIAL for your board, vendor or architecture +- If the board does not already use driver model, you need CONFIG_DM also +- Your board should then build, but will not boot since there will be no serial + driver +- Add the U_BOOT_DRIVER piece at the end (e.g. copy serial_s5p.c for example) +- Add a private struct for the driver data - avoid using static variables +- Implement each of the driver methods, perhaps by calling your old methods +- You may need to adjust the function parameters so that the old and new + implementations can share most of the existing code +- If you convert all existing users of the driver, remove the pre-driver-model + code + +In terms of patches a conversion series typically has these patches: +- clean up / prepare the driver for conversion +- add driver model code +- convert at least one existing board to use driver model serial +- (if no boards remain that don't use driver model) remove the old code + +This may be a good time to move your board to use device tree also. Mostly +this involves these steps: + +- define CONFIG_OF_CONTROL and CONFIG_OF_SEPARATE +- add your device tree files to arch/<arch>/dts +- update the Makefile there +- Add stdout-path to your /chosen device tree node if it is not already there +- build and get u-boot-dtb.bin so you can test it +- Your drivers can now use device tree +- For device tree in SPL, define CONFIG_SPL_OF_CONTROL
Signature · 1 line
2.6.0.rc2.230.g3dd15c0
PATCH v2 1/1 dm: Add timeline and guide for porting serial drivers
Quoted 7 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Simon" == Simon Glass <[email protected]> writes:
Add a README with a brief guide to porting serial drivers over to use driver model.
Add a timeline also. All serial drivers should be converted by the end of January 2015.
2015?
Signature · 1 line
Bye, Peter Korsgaard
PATCH v2 1/1 dm: Add timeline and guide for porting serial drivers
In reply to Simon GlassHi Simon,
Quoted 5 lines · Simon Glass
Add a README with a brief guide to porting serial drivers over to use driver model.
Add a timeline also. All serial drivers should be converted by the end of January 2015.
January 2016
Quoted 25 lines
Signed-off-by Simon Glass <[email protected]>---
To avoid anyone missing out on this, I have added to Cc the all U-Boot maintainers using this:(for f in $(find . -name MAINTAINERS); do grep ^M: $f; done) | \ awk '{$1=""; print "Series-cc:" $0}' |sort | uniqThis is about 229 email address, of which 217 seem to be different people.
Changes in v2:
- Copy the patch to all maintainers
- Move the timeline back to Januarydoc/driver-model/serial-howto.txt | 58 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+)create mode 100644
doc/driver-model/serial-howto.txtdoc/driver-model/serial-howto.txt new file +0
-0
doc/driver-model/serial-howto.txt line 8
Quoted 8 lines
doc/driver-model/serial-howto.txt new file +8
-0@@ -0,0 +1,58 @@ +How to port a serial driver to driver model +=========================================== + +About 16 of 33 serial drivers have been converted as at September 2015. It +is time for maintainers to start converting over the remaining serial drivers: + + altera_jtag_uart.c + altera_uart.c
altera_jtag_uart.c and altera_uart.c are converted to driver model. :)
Quoted 7 lines
doc/driver-model/serial-howto.txt new file +7
-0+ arm_dcc.c + lpc32xx_hsuart.c + mcfuart.c + mxs_auart.c + opencores_yanu.c + serial_bfin.c + serial_imx.c
doc/driver-model/serial-howto.txt line 25
Quoted 10 lines
doc/driver-model/serial-howto.txt new file +10
-0+ serial_lpuart.c + serial_max3100.c + serial_pxa.c + serial_s3c24x0.c + serial_sa1100.c + serial_stm32.c + serial_xuartlite.c + usbtty.c + +You should complete this by the end of January 2015.
2016.
Best regards,
Thomas