[RFC PATCH 0/2] serial: Hack up 8520.c for evil device tree hookin.

David Daney ddaney at caviumnetworks.com
Thu Mar 17 12:26:05 EST 2011


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



More information about the devicetree-discuss mailing list