Commit 729f0edbecd0c59c82ee9bf92009acc7e984c425
Committed by
Linus Torvalds
1 parent
72800df9ba
Exists in
master
and in
7 other branches
Char: mxser, update documentation
Update Documentation/moxa-smartio to the later document from the mxser package. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Acked-by: Alan Cox <alan@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Showing 1 changed file with 252 additions and 140 deletions Side-by-side Diff
Documentation/moxa-smartio
1 | 1 | ============================================================================= |
2 | - | |
3 | - MOXA Smartio Family Device Driver Ver 1.1 Installation Guide | |
4 | - for Linux Kernel 2.2.x and 2.0.3x | |
5 | - Copyright (C) 1999, Moxa Technologies Co, Ltd. | |
2 | + MOXA Smartio/Industio Family Device Driver Installation Guide | |
3 | + for Linux Kernel 2.4.x, 2.6.x | |
4 | + Copyright (C) 2008, Moxa Inc. | |
6 | 5 | ============================================================================= |
6 | +Date: 01/21/2008 | |
7 | + | |
7 | 8 | Content |
8 | 9 | |
9 | 10 | 1. Introduction |
10 | 11 | 2. System Requirement |
11 | 12 | 3. Installation |
13 | + 3.1 Hardware installation | |
14 | + 3.2 Driver files | |
15 | + 3.3 Device naming convention | |
16 | + 3.4 Module driver configuration | |
17 | + 3.5 Static driver configuration for Linux kernel 2.4.x and 2.6.x. | |
18 | + 3.6 Custom configuration | |
19 | + 3.7 Verify driver installation | |
12 | 20 | 4. Utilities |
13 | 21 | 5. Setserial |
14 | 22 | 6. Troubleshooting |
15 | 23 | |
16 | 24 | |
17 | 25 | |
18 | 26 | |
19 | 27 | |
... | ... | @@ -16,27 +24,48 @@ |
16 | 24 | ----------------------------------------------------------------------------- |
17 | 25 | 1. Introduction |
18 | 26 | |
19 | - The Smartio family Linux driver, Ver. 1.1, supports following multiport | |
27 | + The Smartio/Industio/UPCI family Linux driver supports following multiport | |
20 | 28 | boards. |
21 | 29 | |
22 | - -C104P/H/HS, C104H/PCI, C104HS/PCI, CI-104J 4 port multiport board. | |
23 | - -C168P/H/HS, C168H/PCI 8 port multiport board. | |
30 | + - 2 ports multiport board | |
31 | + CP-102U, CP-102UL, CP-102UF | |
32 | + CP-132U-I, CP-132UL, | |
33 | + CP-132, CP-132I, CP132S, CP-132IS, | |
34 | + CI-132, CI-132I, CI-132IS, | |
35 | + (C102H, C102HI, C102HIS, C102P, CP-102, CP-102S) | |
24 | 36 | |
25 | - This driver has been modified a little and cleaned up from the Moxa | |
26 | - contributed driver code and merged into Linux 2.2.14pre. In particular | |
27 | - official major/minor numbers have been assigned which are different to | |
28 | - those the original Moxa supplied driver used. | |
37 | + - 4 ports multiport board | |
38 | + CP-104EL, | |
39 | + CP-104UL, CP-104JU, | |
40 | + CP-134U, CP-134U-I, | |
41 | + C104H/PCI, C104HS/PCI, | |
42 | + CP-114, CP-114I, CP-114S, CP-114IS, CP-114UL, | |
43 | + C104H, C104HS, | |
44 | + CI-104J, CI-104JS, | |
45 | + CI-134, CI-134I, CI-134IS, | |
46 | + (C114HI, CT-114I, C104P) | |
47 | + POS-104UL, | |
48 | + CB-114, | |
49 | + CB-134I | |
29 | 50 | |
51 | + - 8 ports multiport board | |
52 | + CP-118EL, CP-168EL, | |
53 | + CP-118U, CP-168U, | |
54 | + C168H/PCI, | |
55 | + C168H, C168HS, | |
56 | + (C168P), | |
57 | + CB-108 | |
58 | + | |
30 | 59 | This driver and installation procedure have been developed upon Linux Kernel |
31 | - 2.2.5 and backward compatible to 2.0.3x. This driver supports Intel x86 and | |
32 | - Alpha hardware platform. In order to maintain compatibility, this version | |
33 | - has also been properly tested with RedHat, OpenLinux, TurboLinux and | |
34 | - S.u.S.E Linux. However, if compatibility problem occurs, please contact | |
35 | - Moxa at support@moxa.com.tw. | |
60 | + 2.4.x and 2.6.x. This driver supports Intel x86 hardware platform. In order | |
61 | + to maintain compatibility, this version has also been properly tested with | |
62 | + RedHat, Mandrake, Fedora and S.u.S.E Linux. However, if compatibility problem | |
63 | + occurs, please contact Moxa at support@moxa.com.tw. | |
36 | 64 | |
37 | 65 | In addition to device driver, useful utilities are also provided in this |
38 | 66 | version. They are |
39 | - - msdiag Diagnostic program for detecting installed Moxa Smartio boards. | |
67 | + - msdiag Diagnostic program for displaying installed Moxa | |
68 | + Smartio/Industio boards. | |
40 | 69 | - msmon Monitor program to observe data count and line status signals. |
41 | 70 | - msterm A simple terminal program which is useful in testing serial |
42 | 71 | ports. |
... | ... | @@ -47,8 +76,7 @@ |
47 | 76 | GNU General Public License in this version. Please refer to GNU General |
48 | 77 | Public License announcement in each source code file for more detail. |
49 | 78 | |
50 | - In Moxa's ftp sites, you may always find latest driver at | |
51 | - ftp://ftp.moxa.com or ftp://ftp.moxa.com.tw. | |
79 | + In Moxa's Web sites, you may always find latest driver at http://web.moxa.com. | |
52 | 80 | |
53 | 81 | This version of driver can be installed as Loadable Module (Module driver) |
54 | 82 | or built-in into kernel (Static driver). You may refer to following |
... | ... | @@ -61,8 +89,8 @@ |
61 | 89 | |
62 | 90 | ----------------------------------------------------------------------------- |
63 | 91 | 2. System Requirement |
64 | - - Hardware platform: Intel x86 or Alpha machine | |
65 | - - Kernel version: 2.0.3x or 2.2.x | |
92 | + - Hardware platform: Intel x86 machine | |
93 | + - Kernel version: 2.4.x or 2.6.x | |
66 | 94 | - gcc version 2.72 or later |
67 | 95 | - Maximum 4 boards can be installed in combination |
68 | 96 | |
69 | 97 | |
70 | 98 | |
... | ... | @@ -70,10 +98,19 @@ |
70 | 98 | 3. Installation |
71 | 99 | |
72 | 100 | 3.1 Hardware installation |
101 | + 3.2 Driver files | |
102 | + 3.3 Device naming convention | |
103 | + 3.4 Module driver configuration | |
104 | + 3.5 Static driver configuration for Linux kernel 2.4.x, 2.6.x. | |
105 | + 3.6 Custom configuration | |
106 | + 3.7 Verify driver installation | |
73 | 107 | |
74 | - There are two types of buses, ISA and PCI, for Smartio family multiport | |
75 | - board. | |
76 | 108 | |
109 | + 3.1 Hardware installation | |
110 | + | |
111 | + There are two types of buses, ISA and PCI, for Smartio/Industio | |
112 | + family multiport board. | |
113 | + | |
77 | 114 | ISA board |
78 | 115 | --------- |
79 | 116 | You'll have to configure CAP address, I/O address, Interrupt Vector |
80 | 117 | |
81 | 118 | |
82 | 119 | |
83 | 120 | |
84 | 121 | |
85 | 122 | |
86 | 123 | |
87 | 124 | |
88 | 125 | |
89 | 126 | |
90 | 127 | |
... | ... | @@ -81,47 +118,57 @@ |
81 | 118 | installation procedure in User's Manual before proceed any further. |
82 | 119 | Please make sure the JP1 is open after the ISA board is set properly. |
83 | 120 | |
84 | - PCI board | |
85 | - --------- | |
121 | + PCI/UPCI board | |
122 | + -------------- | |
86 | 123 | You may need to adjust IRQ usage in BIOS to avoid from IRQ conflict |
87 | 124 | with other ISA devices. Please refer to hardware installation |
88 | 125 | procedure in User's Manual in advance. |
89 | 126 | |
90 | - IRQ Sharing | |
127 | + PCI IRQ Sharing | |
91 | 128 | ----------- |
92 | 129 | Each port within the same multiport board shares the same IRQ. Up to |
93 | - 4 Moxa Smartio Family multiport boards can be installed together on | |
94 | - one system and they can share the same IRQ. | |
130 | + 4 Moxa Smartio/Industio PCI Family multiport boards can be installed | |
131 | + together on one system and they can share the same IRQ. | |
95 | 132 | |
96 | - 3.2 Driver files and device naming convention | |
97 | 133 | |
134 | + 3.2 Driver files | |
135 | + | |
98 | 136 | The driver file may be obtained from ftp, CD-ROM or floppy disk. The |
99 | 137 | first step, anyway, is to copy driver file "mxser.tgz" into specified |
100 | 138 | directory. e.g. /moxa. The execute commands as below. |
101 | 139 | |
140 | + # cd / | |
141 | + # mkdir moxa | |
102 | 142 | # cd /moxa |
103 | - # tar xvf /dev/fd0 | |
143 | + # tar xvf /dev/fd0 | |
144 | + | |
104 | 145 | or |
146 | + | |
147 | + # cd / | |
148 | + # mkdir moxa | |
105 | 149 | # cd /moxa |
106 | 150 | # cp /mnt/cdrom/<driver directory>/mxser.tgz . |
107 | 151 | # tar xvfz mxser.tgz |
108 | 152 | |
153 | + | |
154 | + 3.3 Device naming convention | |
155 | + | |
109 | 156 | You may find all the driver and utilities files in /moxa/mxser. |
110 | 157 | Following installation procedure depends on the model you'd like to |
111 | - run the driver. If you prefer module driver, please refer to 3.3. | |
112 | - If static driver is required, please refer to 3.4. | |
158 | + run the driver. If you prefer module driver, please refer to 3.4. | |
159 | + If static driver is required, please refer to 3.5. | |
113 | 160 | |
114 | 161 | Dialin and callout port |
115 | 162 | ----------------------- |
116 | - This driver remains traditional serial device properties. There're | |
163 | + This driver remains traditional serial device properties. There are | |
117 | 164 | two special file name for each serial port. One is dial-in port |
118 | 165 | which is named "ttyMxx". For callout port, the naming convention |
119 | 166 | is "cumxx". |
120 | 167 | |
121 | 168 | Device naming when more than 2 boards installed |
122 | 169 | ----------------------------------------------- |
123 | - Naming convention for each Smartio multiport board is pre-defined | |
124 | - as below. | |
170 | + Naming convention for each Smartio/Industio multiport board is | |
171 | + pre-defined as below. | |
125 | 172 | |
126 | 173 | Board Num. Dial-in Port Callout port |
127 | 174 | 1st board ttyM0 - ttyM7 cum0 - cum7 |
... | ... | @@ -129,6 +176,12 @@ |
129 | 176 | 3rd board ttyM16 - ttyM23 cum16 - cum23 |
130 | 177 | 4th board ttyM24 - ttym31 cum24 - cum31 |
131 | 178 | |
179 | + | |
180 | + !!!!!!!!!!!!!!!!!!!! NOTE !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
181 | + Under Kernel 2.6 the cum Device is Obsolete. So use ttyM* | |
182 | + device instead. | |
183 | + !!!!!!!!!!!!!!!!!!!! NOTE !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
184 | + | |
132 | 185 | Board sequence |
133 | 186 | -------------- |
134 | 187 | This driver will activate ISA boards according to the parameter set |
135 | 188 | |
136 | 189 | |
137 | 190 | |
138 | 191 | |
139 | 192 | |
140 | 193 | |
141 | 194 | |
142 | 195 | |
143 | 196 | |
144 | 197 | |
145 | 198 | |
146 | 199 | |
147 | 200 | |
148 | 201 | |
149 | 202 | |
150 | 203 | |
151 | 204 | |
... | ... | @@ -138,69 +191,131 @@ |
138 | 191 | For PCI boards, their sequence will be after ISA boards and C168H/PCI |
139 | 192 | has higher priority than C104H/PCI boards. |
140 | 193 | |
141 | - 3.3 Module driver configuration | |
194 | + 3.4 Module driver configuration | |
142 | 195 | Module driver is easiest way to install. If you prefer static driver |
143 | 196 | installation, please skip this paragraph. |
144 | - 1. Find "Makefile" in /moxa/mxser, then run | |
145 | 197 | |
146 | - # make install | |
147 | 198 | |
199 | + ------------- Prepare to use the MOXA driver-------------------- | |
200 | + 3.4.1 Create tty device with correct major number | |
201 | + Before using MOXA driver, your system must have the tty devices | |
202 | + which are created with driver's major number. We offer one shell | |
203 | + script "msmknod" to simplify the procedure. | |
204 | + This step is only needed to be executed once. But you still | |
205 | + need to do this procedure when: | |
206 | + a. You change the driver's major number. Please refer the "3.7" | |
207 | + section. | |
208 | + b. Your total installed MOXA boards number is changed. Maybe you | |
209 | + add/delete one MOXA board. | |
210 | + c. You want to change the tty name. This needs to modify the | |
211 | + shell script "msmknod" | |
212 | + | |
213 | + The procedure is: | |
214 | + # cd /moxa/mxser/driver | |
215 | + # ./msmknod | |
216 | + | |
217 | + This shell script will require the major number for dial-in | |
218 | + device and callout device to create tty device. You also need | |
219 | + to specify the total installed MOXA board number. Default major | |
220 | + numbers for dial-in device and callout device are 30, 35. If | |
221 | + you need to change to other number, please refer section "3.7" | |
222 | + for more detailed procedure. | |
223 | + Msmknod will delete any special files occupying the same device | |
224 | + naming. | |
225 | + | |
226 | + 3.4.2 Build the MOXA driver and utilities | |
227 | + Before using the MOXA driver and utilities, you need compile the | |
228 | + all the source code. This step is only need to be executed once. | |
229 | + But you still re-compile the source code if you modify the source | |
230 | + code. For example, if you change the driver's major number (see | |
231 | + "3.7" section), then you need to do this step again. | |
232 | + | |
233 | + Find "Makefile" in /moxa/mxser, then run | |
234 | + | |
235 | + # make clean; make install | |
236 | + | |
237 | + !!!!!!!!!! NOTE !!!!!!!!!!!!!!!!! | |
238 | + For Red Hat 9, Red Hat Enterprise Linux AS3/ES3/WS3 & Fedora Core1: | |
239 | + # make clean; make installsp1 | |
240 | + | |
241 | + For Red Hat Enterprise Linux AS4/ES4/WS4: | |
242 | + # make clean; make installsp2 | |
243 | + !!!!!!!!!! NOTE !!!!!!!!!!!!!!!!! | |
244 | + | |
148 | 245 | The driver files "mxser.o" and utilities will be properly compiled |
149 | - and copied to system directories respectively.Then run | |
246 | + and copied to system directories respectively. | |
150 | 247 | |
151 | - # insmod mxser | |
248 | + ------------- Load MOXA driver-------------------- | |
249 | + 3.4.3 Load the MOXA driver | |
152 | 250 | |
153 | - to activate the modular driver. You may run "lsmod" to check | |
154 | - if "mxser.o" is activated. | |
251 | + # modprobe mxser <argument> | |
155 | 252 | |
156 | - 2. Create special files by executing "msmknod". | |
157 | - # cd /moxa/mxser/driver | |
158 | - # ./msmknod | |
253 | + will activate the module driver. You may run "lsmod" to check | |
254 | + if "mxser" is activated. If the MOXA board is ISA board, the | |
255 | + <argument> is needed. Please refer to section "3.4.5" for more | |
256 | + information. | |
159 | 257 | |
160 | - Default major numbers for dial-in device and callout device are | |
161 | - 174, 175. Msmknod will delete any special files occupying the same | |
162 | - device naming. | |
163 | 258 | |
164 | - 3. Up to now, you may manually execute "insmod mxser" to activate | |
165 | - this driver and run "rmmod mxser" to remove it. However, it's | |
166 | - better to have a boot time configuration to eliminate manual | |
167 | - operation. | |
168 | - Boot time configuration can be achieved by rc file. Run following | |
169 | - command for setting rc files. | |
259 | + ------------- Load MOXA driver on boot -------------------- | |
260 | + 3.4.4 For the above description, you may manually execute | |
261 | + "modprobe mxser" to activate this driver and run | |
262 | + "rmmod mxser" to remove it. | |
263 | + However, it's better to have a boot time configuration to | |
264 | + eliminate manual operation. Boot time configuration can be | |
265 | + achieved by rc file. We offer one "rc.mxser" file to simplify | |
266 | + the procedure under "moxa/mxser/driver". | |
170 | 267 | |
268 | + But if you use ISA board, please modify the "modprobe ..." command | |
269 | + to add the argument (see "3.4.5" section). After modifying the | |
270 | + rc.mxser, please try to execute "/moxa/mxser/driver/rc.mxser" | |
271 | + manually to make sure the modification is ok. If any error | |
272 | + encountered, please try to modify again. If the modification is | |
273 | + completed, follow the below step. | |
274 | + | |
275 | + Run following command for setting rc files. | |
276 | + | |
171 | 277 | # cd /moxa/mxser/driver |
172 | 278 | # cp ./rc.mxser /etc/rc.d |
173 | 279 | # cd /etc/rc.d |
174 | 280 | |
175 | - You may have to modify part of the content in rc.mxser to specify | |
176 | - parameters for ISA board. Please refer to rc.mxser for more detail. | |
177 | - Find "rc.serial". If "rc.serial" doesn't exist, create it by vi. | |
178 | - Add "rc.mxser" in last line. Next, open rc.local by vi | |
179 | - and append following content. | |
281 | + Check "rc.serial" is existed or not. If "rc.serial" doesn't exist, | |
282 | + create it by vi, run "chmod 755 rc.serial" to change the permission. | |
283 | + Add "/etc/rc.d/rc.mxser" in last line, | |
180 | 284 | |
181 | - if [ -f /etc/rc.d/rc.serial ]; then | |
182 | - sh /etc/rc.d/rc.serial | |
183 | - fi | |
285 | + Reboot and check if moxa.o activated by "lsmod" command. | |
184 | 286 | |
185 | - 4. Reboot and check if mxser.o activated by "lsmod" command. | |
186 | - 5. If you'd like to drive Smartio ISA boards in the system, you'll | |
187 | - have to add parameter to specify CAP address of given board while | |
188 | - activating "mxser.o". The format for parameters are as follows. | |
287 | + 3.4.5. If you'd like to drive Smartio/Industio ISA boards in the system, | |
288 | + you'll have to add parameter to specify CAP address of given | |
289 | + board while activating "mxser.o". The format for parameters are | |
290 | + as follows. | |
189 | 291 | |
190 | - insmod mxser ioaddr=0x???,0x???,0x???,0x??? | |
292 | + modprobe mxser ioaddr=0x???,0x???,0x???,0x??? | |
191 | 293 | | | | | |
192 | 294 | | | | +- 4th ISA board |
193 | 295 | | | +------ 3rd ISA board |
194 | 296 | | +------------ 2nd ISA board |
195 | 297 | +------------------- 1st ISA board |
196 | 298 | |
197 | - 3.4 Static driver configuration | |
299 | + 3.5 Static driver configuration for Linux kernel 2.4.x and 2.6.x | |
198 | 300 | |
199 | - 1. Create link | |
301 | + Note: To use static driver, you must install the linux kernel | |
302 | + source package. | |
303 | + | |
304 | + 3.5.1 Backup the built-in driver in the kernel. | |
305 | + # cd /usr/src/linux/drivers/char | |
306 | + # mv mxser.c mxser.c.old | |
307 | + | |
308 | + For Red Hat 7.x user, you need to create link: | |
309 | + # cd /usr/src | |
310 | + # ln -s linux-2.4 linux | |
311 | + | |
312 | + 3.5.2 Create link | |
200 | 313 | # cd /usr/src/linux/drivers/char |
201 | 314 | # ln -s /moxa/mxser/driver/mxser.c mxser.c |
202 | 315 | |
203 | - 2. Add CAP address list for ISA boards | |
316 | + 3.5.3 Add CAP address list for ISA boards. For PCI boards user, | |
317 | + please skip this step. | |
318 | + | |
204 | 319 | In module mode, the CAP address for ISA board is given by |
205 | 320 | parameter. In static driver configuration, you'll have to |
206 | 321 | assign it within driver's source code. If you will not |
207 | 322 | |
208 | 323 | |
209 | 324 | |
210 | 325 | |
211 | 326 | |
212 | 327 | |
213 | 328 | |
214 | 329 | |
215 | 330 | |
216 | 331 | |
217 | 332 | |
218 | 333 | |
219 | 334 | |
... | ... | @@ -222,73 +337,55 @@ |
222 | 337 | static int mxserBoardCAP[] |
223 | 338 | = {0x280, 0x180, 0x00, 0x00}; |
224 | 339 | |
225 | - 3. Modify tty_io.c | |
226 | - # cd /usr/src/linux/drivers/char/ | |
227 | - # vi tty_io.c | |
228 | - Find pty_init(), insert "mxser_init()" as | |
340 | + 3.5.4 Setup kernel configuration | |
229 | 341 | |
230 | - pty_init(); | |
231 | - mxser_init(); | |
342 | + Configure the kernel: | |
232 | 343 | |
233 | - 4. Modify tty.h | |
234 | - # cd /usr/src/linux/include/linux | |
235 | - # vi tty.h | |
236 | - Find extern int tty_init(void), insert "mxser_init()" as | |
344 | + # cd /usr/src/linux | |
345 | + # make menuconfig | |
237 | 346 | |
238 | - extern int tty_init(void); | |
239 | - extern int mxser_init(void); | |
240 | - | |
241 | - 5. Modify Makefile | |
242 | - # cd /usr/src/linux/drivers/char | |
243 | - # vi Makefile | |
244 | - Find L_OBJS := tty_io.o ...... random.o, add | |
245 | - "mxser.o" at last of this line as | |
246 | - L_OBJS := tty_io.o ....... mxser.o | |
347 | + You will go into a menu-driven system. Please select [Character | |
348 | + devices][Non-standard serial port support], enable the [Moxa | |
349 | + SmartIO support] driver with "[*]" for built-in (not "[M]"), then | |
350 | + select [Exit] to exit this program. | |
247 | 351 | |
248 | - 6. Rebuild kernel | |
249 | - The following are for Linux kernel rebuilding,for your reference only. | |
352 | + 3.5.5 Rebuild kernel | |
353 | + The following are for Linux kernel rebuilding, for your | |
354 | + reference only. | |
250 | 355 | For appropriate details, please refer to the Linux document. |
251 | 356 | |
252 | - If 'lilo' utility is installed, please use 'make zlilo' to rebuild | |
253 | - kernel. If 'lilo' is not installed, please follow the following steps. | |
254 | - | |
255 | 357 | a. cd /usr/src/linux |
256 | - b. make clean /* take a few minutes */ | |
257 | - c. make bzImage /* take probably 10-20 minutes */ | |
258 | - d. Backup original boot kernel. /* optional step */ | |
259 | - e. cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz | |
358 | + b. make clean /* take a few minutes */ | |
359 | + c. make dep /* take a few minutes */ | |
360 | + d. make bzImage /* take probably 10-20 minutes */ | |
361 | + e. make install /* copy boot image to correct position */ | |
260 | 362 | f. Please make sure the boot kernel (vmlinuz) is in the |
261 | - correct position. If you use 'lilo' utility, you should | |
262 | - check /etc/lilo.conf 'image' item specified the path | |
263 | - which is the 'vmlinuz' path, or you will load wrong | |
264 | - (or old) boot kernel image (vmlinuz). | |
265 | - g. chmod 400 /vmlinuz | |
266 | - h. lilo | |
267 | - i. rdev -R /vmlinuz 1 | |
268 | - j. sync | |
363 | + correct position. | |
364 | + g. If you use 'lilo' utility, you should check /etc/lilo.conf | |
365 | + 'image' item specified the path which is the 'vmlinuz' path, | |
366 | + or you will load wrong (or old) boot kernel image (vmlinuz). | |
367 | + After checking /etc/lilo.conf, please run "lilo". | |
269 | 368 | |
270 | - Note that if the result of "make zImage" is ERROR, then you have to | |
271 | - go back to Linux configuration Setup. Type "make config" in directory | |
272 | - /usr/src/linux or "setup". | |
369 | + Note that if the result of "make bzImage" is ERROR, then you have to | |
370 | + go back to Linux configuration Setup. Type "make menuconfig" in | |
371 | + directory /usr/src/linux. | |
273 | 372 | |
274 | - Since system include file, /usr/src/linux/include/linux/interrupt.h, | |
275 | - is modified each time the MOXA driver is installed, kernel rebuilding | |
276 | - is inevitable. And it takes about 10 to 20 minutes depends on the | |
277 | - machine. | |
278 | 373 | |
279 | - 7. Make utility | |
280 | - # cd /moxa/mxser/utility | |
281 | - # make install | |
282 | - | |
283 | - 8. Make special file | |
374 | + 3.5.6 Make tty device and special file | |
284 | 375 | # cd /moxa/mxser/driver |
285 | 376 | # ./msmknod |
286 | 377 | |
287 | - 9. Reboot | |
378 | + 3.5.7 Make utility | |
379 | + # cd /moxa/mxser/utility | |
380 | + # make clean; make install | |
288 | 381 | |
289 | - 3.5 Custom configuration | |
382 | + 3.5.8 Reboot | |
383 | + | |
384 | + | |
385 | + | |
386 | + 3.6 Custom configuration | |
290 | 387 | Although this driver already provides you default configuration, you |
291 | - still can change the device name and major number.The instruction to | |
388 | + still can change the device name and major number. The instruction to | |
292 | 389 | change these parameters are shown as below. |
293 | 390 | |
294 | 391 | Change Device name |
295 | 392 | |
296 | 393 | |
297 | 394 | |
298 | 395 | |
299 | 396 | |
300 | 397 | |
301 | 398 | |
... | ... | @@ -306,33 +403,37 @@ |
306 | 403 | 2 free major numbers for this driver. There are 3 steps to change |
307 | 404 | major numbers. |
308 | 405 | |
309 | - 1. Find free major numbers | |
406 | + 3.6.1 Find free major numbers | |
310 | 407 | In /proc/devices, you may find all the major numbers occupied |
311 | 408 | in the system. Please select 2 major numbers that are available. |
312 | 409 | e.g. 40, 45. |
313 | - 2. Create special files | |
410 | + 3.6.2 Create special files | |
314 | 411 | Run /moxa/mxser/driver/msmknod to create special files with |
315 | 412 | specified major numbers. |
316 | - 3. Modify driver with new major number | |
413 | + 3.6.3 Modify driver with new major number | |
317 | 414 | Run vi to open /moxa/mxser/driver/mxser.c. Locate the line |
318 | 415 | contains "MXSERMAJOR". Change the content as below. |
319 | 416 | #define MXSERMAJOR 40 |
320 | 417 | #define MXSERCUMAJOR 45 |
321 | - 4. Run # make install in /moxa/mxser/driver. | |
418 | + 3.6.4 Run "make clean; make install" in /moxa/mxser/driver. | |
322 | 419 | |
323 | - 3.6 Verify driver installation | |
420 | + 3.7 Verify driver installation | |
324 | 421 | You may refer to /var/log/messages to check the latest status |
325 | 422 | log reported by this driver whenever it's activated. |
423 | + | |
326 | 424 | ----------------------------------------------------------------------------- |
327 | 425 | 4. Utilities |
328 | 426 | There are 3 utilities contained in this driver. They are msdiag, msmon and |
329 | 427 | msterm. These 3 utilities are released in form of source code. They should |
330 | 428 | be compiled into executable file and copied into /usr/bin. |
331 | 429 | |
430 | + Before using these utilities, please load driver (refer 3.4 & 3.5) and | |
431 | + make sure you had run the "msmknod" utility. | |
432 | + | |
332 | 433 | msdiag - Diagnostic |
333 | 434 | -------------------- |
334 | - This utility provides the function to detect what Moxa Smartio multiport | |
335 | - board exists in the system. | |
435 | + This utility provides the function to display what Moxa Smartio/Industio | |
436 | + board found by driver in the system. | |
336 | 437 | |
337 | 438 | msmon - Port Monitoring |
338 | 439 | ----------------------- |
339 | 440 | |
... | ... | @@ -353,12 +454,13 @@ |
353 | 454 | application, for example, sending AT command to a modem connected to the |
354 | 455 | port or used as a terminal for login purpose. Note that this is only a |
355 | 456 | dumb terminal emulation without handling full screen operation. |
457 | + | |
356 | 458 | ----------------------------------------------------------------------------- |
357 | 459 | 5. Setserial |
358 | 460 | |
359 | 461 | Supported Setserial parameters are listed as below. |
360 | 462 | |
361 | - uart set UART type(16450-->disable FIFO, 16550A-->enable FIFO) | |
463 | + uart set UART type(16450-->disable FIFO, 16550A-->enable FIFO) | |
362 | 464 | close_delay set the amount of time(in 1/100 of a second) that DTR |
363 | 465 | should be kept low while being closed. |
364 | 466 | closing_wait set the amount of time(in 1/100 of a second) that the |
365 | 467 | |
... | ... | @@ -366,7 +468,13 @@ |
366 | 468 | being closed, before the receiver is disable. |
367 | 469 | spd_hi Use 57.6kb when the application requests 38.4kb. |
368 | 470 | spd_vhi Use 115.2kb when the application requests 38.4kb. |
471 | + spd_shi Use 230.4kb when the application requests 38.4kb. | |
472 | + spd_warp Use 460.8kb when the application requests 38.4kb. | |
369 | 473 | spd_normal Use 38.4kb when the application requests 38.4kb. |
474 | + spd_cust Use the custom divisor to set the speed when the | |
475 | + application requests 38.4kb. | |
476 | + divisor This option set the custom divison. | |
477 | + baud_base This option set the base baud rate. | |
370 | 478 | |
371 | 479 | ----------------------------------------------------------------------------- |
372 | 480 | 6. Troubleshooting |
... | ... | @@ -375,8 +483,9 @@ |
375 | 483 | possible. If all the possible solutions fail, please contact our technical |
376 | 484 | support team to get more help. |
377 | 485 | |
378 | - Error msg: More than 4 Moxa Smartio family boards found. Fifth board and | |
379 | - after are ignored. | |
486 | + | |
487 | + Error msg: More than 4 Moxa Smartio/Industio family boards found. Fifth board | |
488 | + and after are ignored. | |
380 | 489 | Solution: |
381 | 490 | To avoid this problem, please unplug fifth and after board, because Moxa |
382 | 491 | driver supports up to 4 boards. |
... | ... | @@ -384,7 +493,7 @@ |
384 | 493 | Error msg: Request_irq fail, IRQ(?) may be conflict with another device. |
385 | 494 | Solution: |
386 | 495 | Other PCI or ISA devices occupy the assigned IRQ. If you are not sure |
387 | - which device causes the situation,please check /proc/interrupts to find | |
496 | + which device causes the situation, please check /proc/interrupts to find | |
388 | 497 | free IRQ and simply change another free IRQ for Moxa board. |
389 | 498 | |
390 | 499 | Error msg: Board #: C1xx Series(CAP=xxx) interrupt number invalid. |
391 | 500 | |
392 | 501 | |
393 | 502 | |
394 | 503 | |
... | ... | @@ -397,16 +506,18 @@ |
397 | 506 | Moxa ISA board needs an interrupt vector.Please refer to user's manual |
398 | 507 | "Hardware Installation" chapter to set interrupt vector. |
399 | 508 | |
400 | - Error msg: Couldn't install MOXA Smartio family driver! | |
509 | + Error msg: Couldn't install MOXA Smartio/Industio family driver! | |
401 | 510 | Solution: |
402 | 511 | Load Moxa driver fail, the major number may conflict with other devices. |
403 | - Please refer to previous section 3.5 to change a free major number for | |
512 | + Please refer to previous section 3.7 to change a free major number for | |
404 | 513 | Moxa driver. |
405 | 514 | |
406 | - Error msg: Couldn't install MOXA Smartio family callout driver! | |
515 | + Error msg: Couldn't install MOXA Smartio/Industio family callout driver! | |
407 | 516 | Solution: |
408 | 517 | Load Moxa callout driver fail, the callout device major number may |
409 | - conflict with other devices. Please refer to previous section 3.5 to | |
518 | + conflict with other devices. Please refer to previous section 3.7 to | |
410 | 519 | change a free callout device major number for Moxa driver. |
520 | + | |
521 | + | |
411 | 522 | ----------------------------------------------------------------------------- |