📄 readme.txt
字号:
============================================================================= MOXA Intellio Family Device Driver Installation Guide for Linux Kernel 2.2.x and 2.0.3x and 2.4.x Copyright (C) 1999-2001, Moxa Technologies Co, Ltd.=============================================================================Date: 08/28/2001Content1. Introduction2. System Requirement3. Installation 3.1 Hardware installation 3.2 Driver files 3.3 Device naming convention 3.4 Module driver configuration 3.5 Static driver configuration for Linux kernel 2.2.14 or above, include 2.4.x. 3.6 Static driver configuration for Linux kernel 2.0.3x, and 2.2.14 before. 3.7 Custom configuration 3.8 Verify driver installation4. Utilities5. Setserial6. Troubleshooting7. Programming-----------------------------------------------------------------------------0. Note 0.1 For Linux kernel 2.2.14 or above user. The Moxa Smartio/Industio driver is ready in the Linux kernel version 2.2.14 or above. But to use this built-in driver, you still need more utilities which downloaded from Moxa ftp or CD-ROM. We suggest you backup this built-in driver (/usr/src/linux/drivers/char/mxser.c) and use the driver downloaded from Moxa or CD-ROM. We will describe this topic in this document. 0.2 Installation step summary. Hardware installation: Refer to the "3.1 Hardware installation". Software/driver installation: 0.2.1 Extract the Moxa driver: Refer to the "3.2 Driver files". 0.2.2 There are two methods to install Moxa driver: module & static. If you want to use module method, refer to the "3.4 Module driver configuration". If you want to use static method, refer to the "3.5 & 3.6 Static driver configuration".-----------------------------------------------------------------------------1. Introduction The Intellio family Linux driver supports following multiport boards. -C218Turbo, C218Turbo/PCI 8 port multiport board. -C320Turbo, C320Turbo/PCI 8~32 port multiport board. -CP-204J 4 port multiport board. This driver and installation procedure have been developed upon Linux Kernel 2.2.5 and compatible to 2.0.3x and 2.4.x. This driver supports Intel x86 hardware platform. In order to maintain compatibility, this version has also been properly tested with RedHat, OpenLinux, TurboLinux and S.u.S.E Linux. However, if compatibility problem occurs, please contact Moxa at support@moxa.com.tw. In addition to device driver, useful utilities are also provided in this version. They are - mxdiag Diagnostic program for displaying installed Moxa Intellio boards. - mxmon Monitor program to observe data count and line status signals. - mxterm A simple terminal program which is useful in testing serial ports. All the drivers and utilities are published in form of source code under GNU General Public License in this version. Please refer to GNU General Public License announcement in each source code file for more detail. In Moxa's ftp sites, you may always find latest driver at ftp://ftp.moxa.com or ftp://ftp.moxa.com.tw. This version of driver can be installed as Loadable Module (Module driver) or built-in into kernel (Static driver). You may refer to following installation procedure for suitable one. Before you install the driver, please refer to hardware installation procedure in the User's Manual. We assume the user should be familiar with following documents. - Serial-HOWTO - Kernel-HOWTO-----------------------------------------------------------------------------2. System Requirement - Hardware platform: Intel x86 machine - Kernel version: 2.0.3x or 2.2.x or 2.4.x - gcc version 2.72 or later - Maximum 4 boards can be installed in combination-----------------------------------------------------------------------------3. Installation 3.1 Hardware installation 3.2 Driver files 3.3 Device naming convention 3.4 Module driver configuration 3.5 Static driver configuration for Linux kernel 2.2.14 or above, include 2.4.x. 3.6 Static driver configuration for Linux kernel 2.0.3x, and 2.2.14 before. 3.7 Custom configuration 3.8 Verify driver installation 3.1 Hardware installation There are two types of buses, ISA and PCI, for Intellio family multiport board. ISA board --------- You'll have to manually assign the hardware configuration for base memory address via a jumper and a switch. Please refer to hardware installation procedure in User's Manual before proceed any further. PCI board --------- You may need to adjust IRQ usage in BIOS to avoid from IRQ conflict with other ISA devices. Please refer to hardware installation procedure in User's Manual in advance. 3.2 Driver files and device naming convention The driver file may be obtained from ftp, CD-ROM or floppy disk. The first step, anyway, is to copy driver file "mxdrv.tgz" into specified directory. e.g. /moxa. The execute commands as below. # cd / # mkdir moxa # cd /moxa # tar xvf /dev/fd0 or # cd / # mkdir moxa # cd /moxa # cp /mnt/cdrom/<driver directory>/mxdrv.tgz . # tar xvfz mxdrv.tgz 3.3 Device naming convention You may find all the driver and utilities files in /moxa/mxdrv. Following installation procedure depends on the model you'd like to run the driver. If you prefer module driver, please refer to 3.3. If static driver is required, please refer to 3.4. Dialin and callout port ----------------------- This driver remains traditional serial device properties. There're two special file name for each serial port. One is dial-in port which is named "tty[A-D][1-4][1-8]". For callout port, the naming convention is "tty[a-d][1-4][1-8]". Device naming when more than 2 boards installed ----------------------------------------------- Naming convention for each Intellio multiport board is pre-defined as below. Board Num. Dial-in Port Callout port 1st board ttyA11 - ttyA48 ttya11 - ttya48 2nd board ttyB11 - ttyB48 ttyb11 - ttyb48 3rd board ttyC11 - ttyC48 ttyc11 - ttyc48 4th board ttyD11 - ttyD48 ttyd11 - ttyd48 Board sequence -------------- This driver will activate ISA boards according to the parameter set in the driver. After all specified ISA board activated, PCI board will be installed in the system automatically driven. Therefore the board number is sorted by the memory address of ISA boards. For PCI boards, their sequence will be after ISA boards. 3.4 Module driver configuration Module driver is easiest way to install. If you prefer static driver installation, please skip this paragraph. ------------- Prepare to use the MOXA driver-------------------- 3.4.1 Create tty device with correct major number Before using MOXA driver, your system must have the tty devices which are created with driver's major number. We offer one shell script "mxmknod" to simplify the procedure. This step is only needed to be executed once. But you still need to do this procedure when: a. You change the driver's major number. Please refer the "3.5" section. b. Your total installed MOXA boards number is changed. Maybe you add/delete one MOXA board. c. You want to change the tty name. This needs to modify the shell script "mxmknod" The procedure is: # cd /moxa/mxdrv/driver # ./mxmknod This shell script will require the major number for dial-in device and callout device to create tty device. You also need to specify the total installed MOXA board number. Default major numbers for dial-in device and callout device are 31, 37. If you need to change to other number, please refer section "3.5" for more detailed procedure. Mxmknod will delete any special files occupying the same device naming. 3.4.2 Build the MOXA driver and utilities Before using the MOXA driver and utilities, you need compile the all the source code. This step is only need to be executed once. But you still re-compile the source code if you modify the source code. For example, if you change the driver's major number (see "3.5" section), then you need to do this step again. Find "Makefile" in /moxa/mxdrv, then run # make clean; make install The driver files "moxa.o" and utilities will be properly compiled and copied to system directories respectively. ------------- Load MOXA driver-------------------- 3.4.3 Load the MOXA driver # insmod moxa <argument> will activate the module driver. You may run "lsmod" to check if "moxa.o" is activated. If the MOXA board is ISA board, the <argument> is needed. Please refer to "6." section for more information. 3.4.4 Download firmware. Find "moxaload" in /moxa/mxdrv/driver, then run # cd /moxa/mxerv/driver # ./moxaload -y ------------- Load MOXA driver on boot -------------------- 3.4.5. For the above description, you may manually execute "insmod moxa" and "/moxa/mxdrv/driver/moxaload -y" to activate this driver and run "rmmod moxa" to remove it. However, it's better to have a boot time configuration to eliminate manual operation. Boot time configuration can be achieved by rc file. We offer one "rc.moxa" file to simplify the procedure under "moxa/mxdrv/driver". If you use ISA board, please modify the "insmod ..." command to add the argument (see "3.4.6" section). After modifying the rc.moxa, please try to execute "/moxa/mxdrv/driver/rc.moxa" manually to make sure the modification is ok. If any error encountered, please try to modify again. if the modification is completed, follow the below step. Run following command for setting rc files. # cd /moxa/mxdrv/driver # cp ./rc.moxa /etc/rc.d # cd /etc/rc.d Check "rc.serial" exist or not. If "rc.serial" doesn't exist, create it by vi, run "chmod 755 rc.serial" to change the permission. Add "/etc/rc.d/rc.moxa" in last line, Reboot and check if moxa.o activated by "lsmod" command. ------------- MOXA driver argument for ISA board -------------------- 3.4.6 If you'd like to drive Intellio ISA boards in the system, you'll have to provide parameter when loading module driver. The format of parameter is as follows. insmod moxa type=x,x,x,x baseaddr=0x?????,0x?????,0x?????,0x????? numports=y,y,y,y | | | | | | | +- 4th ISA board | | +------ 3rd ISA board | +------------ 2nd ISA board +------------------- 1st ISA board Where x=0 None y=0,8,16,24,32 ports x=2 C218Turbo/ISA x=4 C320Turbo/ISA Ex. There are 2 boards installed in your system. C218Turbo/ISA (Mem bank: dc000) to be first board(ttya11-ttya18). C218Turbo/PCI to be second board(ttyb11-ttyb18). Installation procedure is as follows. 1. # insmod moxa type=2,,, baseaddr=0xdc000,,, numports=8,,, 2. # /usr/lib/moxa/moxaload -y Intellio Series device driver (Ver. x.x) Downloading ....... Board 1: MOXA C218Turbo(MemBank=dc000) is found. Board 2: MOXA C218Turbo/PCI(BusNo=0, DevNo=10) is found. 3.5 Static driver configuration for Linux kernel 2.2.14 or above, include 2.4.x. Note: To use static driver, you must install the linux kernel source package. 3.5.1 Backup the built-in driver in the kernel. # cd /usr/src/linux/drivers/char # mv moxa.c moxa.c.old For Red Hat 7.x user, you need to create link: # cd /usr/src # ln -s linux-2.4 linux 3.5.2 Create link # cd /usr/src/linux/drivers/char # ln -s /moxa/mxdrv/driver/moxa.c moxa.c 3.5.3 Copy files and make tools # cd /usr/lib # mkdir moxa # cd /moxa/mxdrv/driver # make clean; make moxaload # cp *.cod /usr/lib/moxa # cp moxaload /usr/lib/moxa # cp mxmknod /usr/lib/moxa # cd /moxa/mxdrv/utility # make clean; make install 3.5.4 Create special file # cd /usr/lib/moxa # ./mxmknod 3.5.5 Add memory bank and port number list for ISA boards. In module mode, the memory bank and port number for ISA board is given by parameter. In static driver configuration, you'll have to assign it within driver's source code. If you will not install any ISA boards, you may skip to next portion "Modify tty_io.c". The instructions to modify driver source code are as below
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -