I wanted to get some feedback on my attempts to control my serial device registration with device tree data. It was suggested by Grant Likely that I could use of_serial.c for my purposes. However I think it is simpler to do my own registration code, because I need to set my own device type, required port flags, and I/O functions, instead of using general purpose ones. Adding this to of_serial.c would be quite ugly, so I would like to keep it with my chip/board code. This leads to a problem: You cannot call serial8250_register_port() until the 8250.c driver is registered. of_serial.c is lucky that it comes after 8250.c in the make file so that the device initcall order is correct. When I put the code in my board's serial.c file, I am not so lucky. To get the initialization order correct, I add a notifier chain to 8250.c What say you all to this approach? David Daney (2): serial: 8250: Add a notifier chain for driver registration. MIPS: Octeon: Use device tree to register serial ports. arch/mips/cavium-octeon/serial.c | 140 ++++++++++++++++---------------------- drivers/tty/serial/8250.c | 20 ++++++ include/linux/serial_8250.h | 21 ++++++ 3 files changed, 101 insertions(+), 80 deletions(-) -- 1.7.2.3 -- To unsubscribe from this list: send the line "unsubscribe linux-serial" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html