component serport """Hardware driver for the digital I/O bits of the 8250 and 16550 serial port. .B loadrt serport io=\\fIaddr[,addr...]\\fR .PP The pin numbers refer to the 9-pin serial pinout. Keep in mind that these ports generally use rs232 voltages, not 0/5V signals. Specify the I/O address of the serial ports using the module parameter \\fBio=\\fIaddr[,addr...]\\fR. These ports must not be in use by the kernel. To free up the I/O ports after bootup, install setserial and execute a command like: .RS sudo setserial /dev/ttyS0 uart none .RE but it is best to ensure that the serial port is never used or configured by the Linux kernel by setting a kernel commandline parameter or not loading the serial kernel module if it is a modularized driver. """; pin out bit pin_1_in "Also called DCD (data carrier detect); pin 8 on the 25-pin serial pinout"; pin out bit pin_6_in "Also called DSR (data set ready); pin 6 on the 25-pin serial pinout"; pin out bit pin_8_in "Also called CTS (clear to send); pin 5 on the 25-pin serial pinout"; pin out bit pin_9_in "Also called RI (ring indicator); pin 22 on the 25-pin serial pinout"; pin out bit pin_1_in_not "Inverted version of pin-1-in"; pin out bit pin_6_in_not "Inverted version of pin-6-in"; pin out bit pin_8_in_not "Inverted version of pin-8-in"; pin out bit pin_9_in_not "Inverted version of pin-9-in"; pin in bit pin_3_out "Also called TX (transmit data); pin 2 on the 25-pin serial pinout"; pin in bit pin_4_out "Also called DTR (data terminal ready); pin 20 on the 25-pin serial pinout"; pin in bit pin_7_out "Also called RTS (request to send); pin 4 on the 25-pin serial pinout"; param rw bit pin_3_out_invert; param rw bit pin_4_out_invert; param rw bit pin_7_out_invert; param r u32 ioaddr; option count_function; option extra_setup; option extra_cleanup; option constructable no; function read nofp; function write nofp; license "GPL"; ;; #include #include #define MAX 8 int io[MAX] = {0,}; RTAPI_MP_ARRAY_INT(io, MAX, "I/O addresses of serial ports"); int get_count(void) { int i = 0; for(i=0; i