kernel driver for rs232 serial peripheral
Arnd Bergmann
arnd at arndb.de
Thu Aug 25 17:38:08 EDT 2011
On Thursday 25 August 2011 17:28:25 Joey Oravec wrote:
> We make a multi-function chip (rtc, gpio, nvram, etc) for embedded
> applications that has an rs232 serial interface. My goal is to write an
> MFD kernel driver that speaks serial to this device and implements
> interfaces. Other busses like spi and i2c are pretty straightforward in
> the kernel but serial feels a lot more complicated. To talk to this
> device from the kernel it seems like I need to:
>
> - Call tty_register_ldisc to create a line discipline
> - Call tty_register_driver and setup a driver
> - Require userspace to call setserial and change the line discipline
>
> This might work, but the documentation implies that a line discipline is
> for a protocol, not for connecting a device driver to a serial port. Is
> there any kind of easier-to-use serial class similar to i2c or spi where
> I can just setup a platform device/driver on a specific serial port? Am
> I missing an easier solution?
I don't think you need to call tty_register_driver, if it's a standard
serial port, it should already work.
Also, I believe that there is a way to set the line discipline from
inside the kernel if you know what is connected. I forgot the details
but there should be a number of examples in the kernel source.
Arnd
More information about the linux-arm-kernel
mailing list