Serial Device Driver Entry Hooks

Keith James Robertson kjrobert en abio.com
Vie Ene 21 11:48:29 CST 2000


Greetings,

I am developing a device driver for a serial device.  However, I am
confused by stacking of the lower level serial drivers and how to
interface with the appropriate one and have been unable to find much
documentation on serial drivers.  A solution to all of my questions
would likely be solved by someone pointing me to a kernel space serial
device driver that requires looking at and changing values in the serial
UART control registers (ie device supports multiple speeds, pnp).

That said... here are my questions.

1) There appears to be two 'drivers':

a) linux/drivers/char/generic_serial.[ch]
b) linux/drivers/char/serial.c  and its associated serial.h in
linux/include/asm...

Which one of these drivers is appropriate to 'link' too?

2)  With the exception of register_device and unregister_device in
serial.c neither of these files export and functions that I can find in
/proc/ksyms.  How can I attach to the lower device driver to send and
recieve through the serial port, change UART settings, etc.
register_serial and unregister_serial appear to be only for configuring
new serial ports at run time (ie PCMCIA)

3)  Is this the right way to even go about the driver?  It doesn't seem
logical to modify the UART registers directly as I would assume there is
some kernel space routines to do this for you.

Thanks

Keith Robertson
University of Waterloo
Canada

P.S.  I am not currently subscribed to the linux-kernel mailing list.
Please reply to kjrobert en abio.com . I am using 2.2.x although I am
willing and interested to hear about solutions in 2.3.39 and up too.



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo en vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/



Más información sobre la lista de distribución Ayuda