From f626e23b02d6450f0f1118ebaa3bc8b9c74cbc82 Mon Sep 17 00:00:00 2001 From: Stuart Longland Date: Sun, 5 Mar 2017 18:05:24 +1000 Subject: [PATCH] README: be-gone smelly DOS carriage returns! --- README | 542 ++++++++++++++++++++++++++++----------------------------- 1 file changed, 271 insertions(+), 271 deletions(-) diff --git a/README b/README index ec4cad1..892028d 100644 --- a/README +++ b/README @@ -1,271 +1,271 @@ -This is a port of the Advantech driver to modern (>=3.19) kernels. As such, -it should be noted that this driver comes with absolutely no warranty. - -Furthermore, I have given no consideration to support for older kernels, nor -has this been thoroughly tested. If it builds, consider yourself lucky. - -I'll be adding further notes here as I get more things working. Long term, -I'd like to see this code cleaned up and merged into the standard `8250` -serial driver from which it forked (a long time ago by the looks of things). - -Building procedures, get your kernel sources prepared (`make menuconfig`, -followed by perhaps `make bzImage modules` or maybe `make modules_prepare`), -then in the kernel source tree, run: - -``` -$ make modules M=/path/to/adv950/driver -``` - -With luck, you should find a `adv950.ko` file in `/path/to/adv950/driver`. - -Create the directory `/lib/modules/$( uname -r )/extra` and plop that `.ko` -file in it, then run `depmod -a`. Fingers crossed, you should be able to -`modprobe` the driver and it should work. I find the `udev` subsystem -autodetects the serial device and attempts to load the driver at boot. - -The devices appear as `/dev/ttyAPx` device nodes, and `dmesg` looks like this: - -``` -Mar 5 06:31:58 vk4msl-router kernel: adv950: loading out-of-tree module taints kernel. -Mar 5 06:31:58 vk4msl-router kernel: -Mar 5 06:31:58 vk4msl-router kernel: =============================================================== -Mar 5 06:31:58 vk4msl-router kernel: Advantech PCI-954/952/16C950 Device Drivers. V3.33 [11/07/2011] -Mar 5 06:31:58 vk4msl-router kernel: Supports: RS232/422/485 auto detection and setting -Mar 5 06:31:58 vk4msl-router kernel: Devices: UNO: UNO2050 [COM3/COM4] -Mar 5 06:31:58 vk4msl-router kernel: UNO2059 [COM1~COM4] -Mar 5 06:31:58 vk4msl-router kernel: UNOB-2201CB [COM1~COM8] -Mar 5 06:31:58 vk4msl-router kernel: UNOB-2176 [COM1~COM4] -Mar 5 06:31:58 vk4msl-router kernel: UNO-1150 [COM2/COM3] -Mar 5 06:31:58 vk4msl-router kernel: UNO-2679 [COM3~COM6] -Mar 5 06:31:58 vk4msl-router kernel: UNO-4672 [COM3~COM10] -Mar 5 06:31:58 vk4msl-router kernel: ICOM: PCI-1601, PCI-1602\x0a PCI-1603, PCI-1604\x0a - PCI-1610, PCI-1612\x0a PCI-1620, PCI-1622 -Mar 5 06:31:58 vk4msl-router kernel: MIC: MIC-3611, MIC-3612 -Mar 5 06:31:58 vk4msl-router kernel: MIC-3620, MIC-3621 -Mar 5 06:31:58 vk4msl-router kernel: PCM: PCM-3614P/I, PCM-3641P/I -Mar 5 06:31:58 vk4msl-router kernel: PCM-3618P/I, PCM-3681P/I -Mar 5 06:31:58 vk4msl-router kernel: General: A001, A002, A004 -Mar 5 06:31:58 vk4msl-router kernel: A101, A102, A104 -Mar 5 06:31:58 vk4msl-router kernel: F001, F002, F004 -Mar 5 06:31:58 vk4msl-router kernel: F101, F102, F104 -Mar 5 06:31:58 vk4msl-router kernel: A202, A304, A408 -Mar 5 06:31:58 vk4msl-router kernel: Advantech Industrial Automation Group. -Mar 5 06:31:58 vk4msl-router kernel: =============================================================== -Mar 5 06:31:58 vk4msl-router kernel: Serial: 8250/16550 driver, Max support 64 ports, IRQ sharing enabled -Mar 5 06:31:58 vk4msl-router kernel: Advantech General COM Port Device -Mar 5 06:31:58 vk4msl-router kernel: , function 0, port 0, RS232 -Mar 5 06:31:58 vk4msl-router kernel: -Mar 5 06:31:58 vk4msl-router kernel: ttyAP0 at I/O 0xef00 (irq = 7) is a 16C950/954 -Mar 5 06:31:58 vk4msl-router kernel: Advantech General COM Port Device -Mar 5 06:31:58 vk4msl-router kernel: , function 0, port 1, RS232 -Mar 5 06:31:58 vk4msl-router kernel: -Mar 5 06:31:58 vk4msl-router kernel: ttyAP1 at I/O 0xee00 (irq = 7) is a 16C950/954 -``` - -Status as of 2017-03-05: The driver loads, device nodes appear, but not much else. - - -- Stuart Longland - -The original README is below. - ------------------------------------------------------------------------------ - -============================================================================= - ADVANTECH industrial comunication cards device driver - Installation Guide - for Linux Kernel 2.4.x,2.6.x,3.x - Copyright (C) 2011, Advantech eAutomation Division. -============================================================================= - -This README file describes the HOW-TOs of driver installation. - -1. Change Logs - -Version 3.00 <2004-11-29> - - Moved code from 2.4.x -Version 3.01 <2004-12-02> - - Fixed UNO-2050 function 1 offset typing error -Version 3.02 <2004-12-03> - - Support FC3 -Version 3.03 <2004-12-15> - - Support UART types can be specified by each port to support - some kind of devices did not fully implement with auto detection -Version 3.04 <2004-12-30> - - Support serial port ioctl TIOCGSERIAL to get serial port jumper - setting and store at reserved_char[0]. If value is zero, that - means jumper switch to RS232. Otherwise, it would be RS422/485. - - struct serial_struct serinfo; - // get serial port information - serinfo.reserved_char[0] = 0; - if (ioctl(fd, TIOCGSERIAL, &serinfo) < 0) { - perror("Cannot get serial info"); - close(fd); - return; - } - - // get serial port type configuration - if (serinfo.reserved_char[0] == 0) - { - // RS232 - } - else - { - // RS422/485 - } -Version 3.05 <2005-2-17> - - Porting serial driver to 2.4 kernel - - Enhance 2.4 and 2.6 serial drivers, Makefile and script file -Version 3.06 <2005-4-25> - - Remove the folder of 'pclterm' from the package - - Test in SuSE 9.2, Mandrake 10.1 and Debian 3.0r2 -Version 3.07 <2005-5-31> - - Add ICOM cards support - PCI-1601A/B/AU/BU, PCI-1602A/B/AU/BU/UP, - PCI-1603, PCI-1604UP and PCI-1622CU -Version 3.08 <2005-6-14> - - Correct PCI-952 2nd port start base address(BAR1) -Version 3.09 <2005-6-22> - - Fix 2.4 driver which did not set auto DTR correctly -Version 3.10 <2005-6-24> - - Add code to setup auto DTR after detection -Version 3.11 <2005-6-29> - - Fix PCI-1622 ports on function 1 detection problem -Version 3.12 <2005-7-22> - - Add support for UNOB-2201CB carrier board - - Add MIC-3612 and MIC-3620 to 2.6 pci_serial_quirks table - - Change the value of UART_NR to 64 in the driver for 2.6 kernel -Version 3.13 <2005-8-9> - - Fix UNOB-2201CB ports on function 1 detection problem -Version 3.14 <2005-11-07> - - Add support for MIC-3611 -Version 3.15 <2006-2-16> - - Add support for Mandriva Linux 2006 -Version 3.16 <2006-2-16> - - Change the SERIAL_NAME to support devfs. -Version 3.17 <2006-5-24> - - Add support for Debian 3.1r0a (kernel version 2.6.8-2-686) -Version 3.18 <2006-6-8> - - Add support for SuSE LINUX 10.1 and Fedora Core 5 -Verson 3.19 <2006-11-10> - -Add support for UNO-2176 -Version 3.20 <2007-03-06> - - Fix bug in low active type for 485 mode(kernel 2.6) - - Support Ubuntu 6.06(add UBUNTU_2_6_15) and RedHat Enterprise Server 4(kernel 2.6) - - Support quick response(use setserial to change uart type) - - Enable 16C950 trigger level and hardware and software flow control -Version 3.21 <2007-05-21> - - Add support for PCM-3614P PCM-3618P PCM-3681P PCM-3641P -Version 3.22 <2007-09-14> - - Support FC6 -Version 3.23 <2007-09-30> - - Fix the bug in serial8250_get_mctrl -Version 3.24 <2007-12-06> - - Fix software flow control in 2.4 kernel version for MIC-3612 -Version 3.25 <2007-12-06> - - Fix bug about flow control in 2.6 kernel - - Fix bug about change_speed in 2.4 kernel -Version 3.26 <2008-07-07> - - to support FC7 and FC8 - - to support UNO-1150 - - to support MIC-3621 - - to support ubuntu 8.04 -Version 3.27 <2008-10-08> - - Source headers comply with GPL - - modify the driver readme -Version 3.28 <2008-12-08> - - to support UNO-2679, UNO-4672 -Version 3.29 <2009-06-03> - - to support debian 5.0 - - to support patch CONFIG_PREEMPT_RT in kernel - - to support A001 A002 A004 A101 A102 A104 devices - - to support F001 F002 F004 F101 F102 F104 deivces -Version 3.30 <2010-05-06> - - to support FC10,FC11,FC12,SUSE 11.2 Madriva 2010 - - to support Advantech General COM port -Version 3.31 <2010-08-11> - - updata to support kernel-2.6.32 and kernel-2.6.33 - - to support ubuntu 10.04 and Fedora core 13 -Version 3.32 <2010-08-11> - - updata to support redhat 7.2 - - fix bug for general COM port information - - add support Fedora 14 - - fix bug about stty -Version 3.33 <2010-11-07> - - support 2.6.37,2.6.38,2.6.39 and 3.x kernel - - support PCIe-1620 - - -2. Test environment - - +--------------------------+-------------------------+ - | Distribution | kernel version | - +--------------------------+-------------------------+ - | Red Hat 7.2 | 2.4.7-10 | - | Red Hat 9 | 2.4.20-8 | - | RedHat Enterprise 4 | 2.6.9-34.EL | - | Redhat Enterprise 5.4 | 2.6.18-164.el5 | - | Fedora Core 6 | 2.6.18-1.2798.fc6 | - | Fedora Core 8 | 2.6.23.1-42.fc8 | - | Fedora Core 9 | 2.6.25-14.fc9 | - | Fedora Core 10 | 2.6.27.5-117.fc10 | - | Fedora Core 11 | 2.6.29.4-167.fc11 | - | Fedora Core 12 | 2.6.31.5-127.fc12 | - | Fedora Core 13 | 2.6.33.3-85.fc13 | - | Fedora Core 14 | 2.6.35.6-45.fc14 | - | Fedora Core 15 | 2.6.38/2.6.40 | - | SUSE 10.1 | 2.6.16.13-4-default | - | SUSE 10.3 | 2.6.22.5-31-default | - | SUSE 11.2 | 2.6.31.5-0.1-desktop | - | SUSE 11.4 | 2.6.37 | - | Mandriva 2010 | 2.6.31.5-desktop-1mnb | - | Debian 5.0.4 | 2.6.26-2-686 | - | Debian 6.0.2 | 2.6.32 | - | Ubuntu 8.04 | 2.6.24-19-generic | - | ubuntu 9.04 | 2.6.28-11-generic | - | Ubuntu 9.10 | 2.6.31-14-generic | - | Ubuntu 10.04 | 2.6.32-21-generic | - | Ubuntu 11.10 | 3.0.2 | - +--------------------------+-------------------------+ - -3. Installation - -3.1. Login as 'root' before executing the following instructions. - -3.2. Uncompress the driver - # tar zxvf adv950_vM_NN.tar.gz - -3.3. Build the driver - a. Build driver for 2.4 kernel - # cd adv950_vM_NN/2.4 - # make - b. Build driver for 2.6 kernel - # cd adv950_vM_NN/2.6 - # make - Note: - To compile the source code, you must install kernel development header file package,"gcc" and "make" command. - In 2.4 kernel version, you should use "ln" command to make a link named "linux-2.4" in /usr/src/, it link to you kernel development header installed folder. - - -3.4. Install the driver module - # make install - to see whether ttyAP0~ttyAP7 exist in /dev/ folder, - if not,please execute the following command, - # make node - -3.5. Test driver and get serial port type configuration - # make test - -3.6. If you want the Linux bring up module at each boot, - please follow the steps showing below - a. Build driver - b. For 2.4 kernel, add "insmod /YOURLOCATION/adv950_vM_NN/2.4/adv950.o" to - to boot up shell script. - c. For 2.6 kernel, add "insmod /YOURLOCATION/adv950_vM_NN/2.6/adv950.ko" to - to boot up shell script. - Fedora core 6 for example: - add "insmod /YOURLOCATION/adv950_vM_NN/2.6/adv950.ko" to /etc/rc.d/rc.local - -3.7. Uninstall the driver module and clean - # make uninstall - # make clean +This is a port of the Advantech driver to modern (>=3.19) kernels. As such, +it should be noted that this driver comes with absolutely no warranty. + +Furthermore, I have given no consideration to support for older kernels, nor +has this been thoroughly tested. If it builds, consider yourself lucky. + +I'll be adding further notes here as I get more things working. Long term, +I'd like to see this code cleaned up and merged into the standard `8250` +serial driver from which it forked (a long time ago by the looks of things). + +Building procedures, get your kernel sources prepared (`make menuconfig`, +followed by perhaps `make bzImage modules` or maybe `make modules_prepare`), +then in the kernel source tree, run: + +``` +$ make modules M=/path/to/adv950/driver +``` + +With luck, you should find a `adv950.ko` file in `/path/to/adv950/driver`. + +Create the directory `/lib/modules/$( uname -r )/extra` and plop that `.ko` +file in it, then run `depmod -a`. Fingers crossed, you should be able to +`modprobe` the driver and it should work. I find the `udev` subsystem +autodetects the serial device and attempts to load the driver at boot. + +The devices appear as `/dev/ttyAPx` device nodes, and `dmesg` looks like this: + +``` +Mar 5 06:31:58 vk4msl-router kernel: adv950: loading out-of-tree module taints kernel. +Mar 5 06:31:58 vk4msl-router kernel: +Mar 5 06:31:58 vk4msl-router kernel: =============================================================== +Mar 5 06:31:58 vk4msl-router kernel: Advantech PCI-954/952/16C950 Device Drivers. V3.33 [11/07/2011] +Mar 5 06:31:58 vk4msl-router kernel: Supports: RS232/422/485 auto detection and setting +Mar 5 06:31:58 vk4msl-router kernel: Devices: UNO: UNO2050 [COM3/COM4] +Mar 5 06:31:58 vk4msl-router kernel: UNO2059 [COM1~COM4] +Mar 5 06:31:58 vk4msl-router kernel: UNOB-2201CB [COM1~COM8] +Mar 5 06:31:58 vk4msl-router kernel: UNOB-2176 [COM1~COM4] +Mar 5 06:31:58 vk4msl-router kernel: UNO-1150 [COM2/COM3] +Mar 5 06:31:58 vk4msl-router kernel: UNO-2679 [COM3~COM6] +Mar 5 06:31:58 vk4msl-router kernel: UNO-4672 [COM3~COM10] +Mar 5 06:31:58 vk4msl-router kernel: ICOM: PCI-1601, PCI-1602\x0a PCI-1603, PCI-1604\x0a + PCI-1610, PCI-1612\x0a PCI-1620, PCI-1622 +Mar 5 06:31:58 vk4msl-router kernel: MIC: MIC-3611, MIC-3612 +Mar 5 06:31:58 vk4msl-router kernel: MIC-3620, MIC-3621 +Mar 5 06:31:58 vk4msl-router kernel: PCM: PCM-3614P/I, PCM-3641P/I +Mar 5 06:31:58 vk4msl-router kernel: PCM-3618P/I, PCM-3681P/I +Mar 5 06:31:58 vk4msl-router kernel: General: A001, A002, A004 +Mar 5 06:31:58 vk4msl-router kernel: A101, A102, A104 +Mar 5 06:31:58 vk4msl-router kernel: F001, F002, F004 +Mar 5 06:31:58 vk4msl-router kernel: F101, F102, F104 +Mar 5 06:31:58 vk4msl-router kernel: A202, A304, A408 +Mar 5 06:31:58 vk4msl-router kernel: Advantech Industrial Automation Group. +Mar 5 06:31:58 vk4msl-router kernel: =============================================================== +Mar 5 06:31:58 vk4msl-router kernel: Serial: 8250/16550 driver, Max support 64 ports, IRQ sharing enabled +Mar 5 06:31:58 vk4msl-router kernel: Advantech General COM Port Device +Mar 5 06:31:58 vk4msl-router kernel: , function 0, port 0, RS232 +Mar 5 06:31:58 vk4msl-router kernel: +Mar 5 06:31:58 vk4msl-router kernel: ttyAP0 at I/O 0xef00 (irq = 7) is a 16C950/954 +Mar 5 06:31:58 vk4msl-router kernel: Advantech General COM Port Device +Mar 5 06:31:58 vk4msl-router kernel: , function 0, port 1, RS232 +Mar 5 06:31:58 vk4msl-router kernel: +Mar 5 06:31:58 vk4msl-router kernel: ttyAP1 at I/O 0xee00 (irq = 7) is a 16C950/954 +``` + +Status as of 2017-03-05: The driver loads, device nodes appear, but not much else. + + -- Stuart Longland + +The original README is below. + +----------------------------------------------------------------------------- + +============================================================================= + ADVANTECH industrial comunication cards device driver + Installation Guide + for Linux Kernel 2.4.x,2.6.x,3.x + Copyright (C) 2011, Advantech eAutomation Division. +============================================================================= + +This README file describes the HOW-TOs of driver installation. + +1. Change Logs + +Version 3.00 <2004-11-29> + - Moved code from 2.4.x +Version 3.01 <2004-12-02> + - Fixed UNO-2050 function 1 offset typing error +Version 3.02 <2004-12-03> + - Support FC3 +Version 3.03 <2004-12-15> + - Support UART types can be specified by each port to support + some kind of devices did not fully implement with auto detection +Version 3.04 <2004-12-30> + - Support serial port ioctl TIOCGSERIAL to get serial port jumper + setting and store at reserved_char[0]. If value is zero, that + means jumper switch to RS232. Otherwise, it would be RS422/485. + + struct serial_struct serinfo; + // get serial port information + serinfo.reserved_char[0] = 0; + if (ioctl(fd, TIOCGSERIAL, &serinfo) < 0) { + perror("Cannot get serial info"); + close(fd); + return; + } + + // get serial port type configuration + if (serinfo.reserved_char[0] == 0) + { + // RS232 + } + else + { + // RS422/485 + } +Version 3.05 <2005-2-17> + - Porting serial driver to 2.4 kernel + - Enhance 2.4 and 2.6 serial drivers, Makefile and script file +Version 3.06 <2005-4-25> + - Remove the folder of 'pclterm' from the package + - Test in SuSE 9.2, Mandrake 10.1 and Debian 3.0r2 +Version 3.07 <2005-5-31> + - Add ICOM cards support + PCI-1601A/B/AU/BU, PCI-1602A/B/AU/BU/UP, + PCI-1603, PCI-1604UP and PCI-1622CU +Version 3.08 <2005-6-14> + - Correct PCI-952 2nd port start base address(BAR1) +Version 3.09 <2005-6-22> + - Fix 2.4 driver which did not set auto DTR correctly +Version 3.10 <2005-6-24> + - Add code to setup auto DTR after detection +Version 3.11 <2005-6-29> + - Fix PCI-1622 ports on function 1 detection problem +Version 3.12 <2005-7-22> + - Add support for UNOB-2201CB carrier board + - Add MIC-3612 and MIC-3620 to 2.6 pci_serial_quirks table + - Change the value of UART_NR to 64 in the driver for 2.6 kernel +Version 3.13 <2005-8-9> + - Fix UNOB-2201CB ports on function 1 detection problem +Version 3.14 <2005-11-07> + - Add support for MIC-3611 +Version 3.15 <2006-2-16> + - Add support for Mandriva Linux 2006 +Version 3.16 <2006-2-16> + - Change the SERIAL_NAME to support devfs. +Version 3.17 <2006-5-24> + - Add support for Debian 3.1r0a (kernel version 2.6.8-2-686) +Version 3.18 <2006-6-8> + - Add support for SuSE LINUX 10.1 and Fedora Core 5 +Verson 3.19 <2006-11-10> + -Add support for UNO-2176 +Version 3.20 <2007-03-06> + - Fix bug in low active type for 485 mode(kernel 2.6) + - Support Ubuntu 6.06(add UBUNTU_2_6_15) and RedHat Enterprise Server 4(kernel 2.6) + - Support quick response(use setserial to change uart type) + - Enable 16C950 trigger level and hardware and software flow control +Version 3.21 <2007-05-21> + - Add support for PCM-3614P PCM-3618P PCM-3681P PCM-3641P +Version 3.22 <2007-09-14> + - Support FC6 +Version 3.23 <2007-09-30> + - Fix the bug in serial8250_get_mctrl +Version 3.24 <2007-12-06> + - Fix software flow control in 2.4 kernel version for MIC-3612 +Version 3.25 <2007-12-06> + - Fix bug about flow control in 2.6 kernel + - Fix bug about change_speed in 2.4 kernel +Version 3.26 <2008-07-07> + - to support FC7 and FC8 + - to support UNO-1150 + - to support MIC-3621 + - to support ubuntu 8.04 +Version 3.27 <2008-10-08> + - Source headers comply with GPL + - modify the driver readme +Version 3.28 <2008-12-08> + - to support UNO-2679, UNO-4672 +Version 3.29 <2009-06-03> + - to support debian 5.0 + - to support patch CONFIG_PREEMPT_RT in kernel + - to support A001 A002 A004 A101 A102 A104 devices + - to support F001 F002 F004 F101 F102 F104 deivces +Version 3.30 <2010-05-06> + - to support FC10,FC11,FC12,SUSE 11.2 Madriva 2010 + - to support Advantech General COM port +Version 3.31 <2010-08-11> + - updata to support kernel-2.6.32 and kernel-2.6.33 + - to support ubuntu 10.04 and Fedora core 13 +Version 3.32 <2010-08-11> + - updata to support redhat 7.2 + - fix bug for general COM port information + - add support Fedora 14 + - fix bug about stty +Version 3.33 <2010-11-07> + - support 2.6.37,2.6.38,2.6.39 and 3.x kernel + - support PCIe-1620 + + +2. Test environment + + +--------------------------+-------------------------+ + | Distribution | kernel version | + +--------------------------+-------------------------+ + | Red Hat 7.2 | 2.4.7-10 | + | Red Hat 9 | 2.4.20-8 | + | RedHat Enterprise 4 | 2.6.9-34.EL | + | Redhat Enterprise 5.4 | 2.6.18-164.el5 | + | Fedora Core 6 | 2.6.18-1.2798.fc6 | + | Fedora Core 8 | 2.6.23.1-42.fc8 | + | Fedora Core 9 | 2.6.25-14.fc9 | + | Fedora Core 10 | 2.6.27.5-117.fc10 | + | Fedora Core 11 | 2.6.29.4-167.fc11 | + | Fedora Core 12 | 2.6.31.5-127.fc12 | + | Fedora Core 13 | 2.6.33.3-85.fc13 | + | Fedora Core 14 | 2.6.35.6-45.fc14 | + | Fedora Core 15 | 2.6.38/2.6.40 | + | SUSE 10.1 | 2.6.16.13-4-default | + | SUSE 10.3 | 2.6.22.5-31-default | + | SUSE 11.2 | 2.6.31.5-0.1-desktop | + | SUSE 11.4 | 2.6.37 | + | Mandriva 2010 | 2.6.31.5-desktop-1mnb | + | Debian 5.0.4 | 2.6.26-2-686 | + | Debian 6.0.2 | 2.6.32 | + | Ubuntu 8.04 | 2.6.24-19-generic | + | ubuntu 9.04 | 2.6.28-11-generic | + | Ubuntu 9.10 | 2.6.31-14-generic | + | Ubuntu 10.04 | 2.6.32-21-generic | + | Ubuntu 11.10 | 3.0.2 | + +--------------------------+-------------------------+ + +3. Installation + +3.1. Login as 'root' before executing the following instructions. + +3.2. Uncompress the driver + # tar zxvf adv950_vM_NN.tar.gz + +3.3. Build the driver + a. Build driver for 2.4 kernel + # cd adv950_vM_NN/2.4 + # make + b. Build driver for 2.6 kernel + # cd adv950_vM_NN/2.6 + # make + Note: + To compile the source code, you must install kernel development header file package,"gcc" and "make" command. + In 2.4 kernel version, you should use "ln" command to make a link named "linux-2.4" in /usr/src/, it link to you kernel development header installed folder. + + +3.4. Install the driver module + # make install + to see whether ttyAP0~ttyAP7 exist in /dev/ folder, + if not,please execute the following command, + # make node + +3.5. Test driver and get serial port type configuration + # make test + +3.6. If you want the Linux bring up module at each boot, + please follow the steps showing below + a. Build driver + b. For 2.4 kernel, add "insmod /YOURLOCATION/adv950_vM_NN/2.4/adv950.o" to + to boot up shell script. + c. For 2.6 kernel, add "insmod /YOURLOCATION/adv950_vM_NN/2.6/adv950.ko" to + to boot up shell script. + Fedora core 6 for example: + add "insmod /YOURLOCATION/adv950_vM_NN/2.6/adv950.ko" to /etc/rc.d/rc.local + +3.7. Uninstall the driver module and clean + # make uninstall + # make clean