Hi Alex, 2017-10-27 0:10 GMT+08:00 Alan Cox <gnomes@xxxxxxxxxxxxxxxxxxx>: > >> > +static int __init dell_uart_bl_init(void) >> > +{ >> > + ftty = filp_open("/dev/ttyS0", O_RDWR | O_NOCTTY | O_NDELAY, 0); >> > > You have no idea what name is assigned. This doesn't work. Yes, I did. The port is defined in BIOS as PNP0501 uart port, so the port will be registered by 8250 PNP driver as ttyS* device. And consider it's defined in the BIOS, so it should be the first uart port on the system, and ttyS0 would be his name. > > This isn't the way to do it any more because the 'tty from kernel' > problem finally got fixed. You can attach it as a serdev directly to the > kernel. > > Take a look at serdev_tty_port_register/serdev_tty_port_unreg Yes, I'm studying serdev, but currently there are not many examples for reference, so I still have no clues how to implement it by serdev. I'll try using serdev_tty_port_register/serdev_tty_port_unreg to re-implement the driver. Thanks. > > Alan -- Chia-Lin Kao(AceLan) http://blog.acelan.idv.tw/ E-Mail: acelan.kaoATcanonical.com (s/AT/@/)