PCI/ISA/PCMCIA to Serial

ID #1012

Can I use the serial cards under Linux?

The driver 'serial' supplied with Linux already supports the VScom PCI cards. For installation caveats please read further.

In Linux systems based on Kernel 2.4 or earlier the installation of VScom PCI cards has been quite easy. This has changed since Kernel 2.6 came out. Not because the driver 'serial' was removed or could no longer support PCI serial ports. This happened because some smart programmers invented a limit to the maximum number of serial ports installed by driver 'serial'. And they selected a default value ridiculously low (typically 4), which causes problems again and again. So over time they have been forced to offer several methods of bypassing this limit.

Today the implementation of the limit is in a way which allows to raise the defined value at boot time. This is done via Kernel parameters. How this is done depends on the way you boot your system. Following is one example to do the task in Ubuntu 8.10 on AMD64 with Grub as boot loader, basically Debian should operate the same way. Other distributions or loaders may require modifications.

  1. In "/boot/grub/menu.lst" there is a commented line with "kopt="-Entry. It looks like this "# kopt=root=UUID=c34f73b4-20e6-4bc3-87b0-3b0c5eff918b ro". This line shall remain there as a comment, just append the new value "8250.nr_uarts=32". Or any number appropriate for the new configuration.
  2. Run update-grub. After that check if the above parameter is available as Kernel Entry in the file "menu.lst". The entries from the kopt-line shall appear as extension after running update-grub.
  3. Copy "vscardcfg64" for 64 bit systems to "/usr/local/bin".
  4. Program "/usr/local/bin/vscardcfg64" is added to "/etc/rc.local", to run it at boot time. You may add an "echo" to show an explaining text when the system boots.

On 32 bit systems the program is 'vscardcfg' of course. Additionaly steps 3 and 4 are only required if 'serial' does not identify the card. Most models have been submitted as patch information to 'serial', later models will get direct support later.

 

In kernels 2.2 up to 2.4 most PCI-Series cards are already supported by "serial". Depending on the distributions version (kernel version) this driver may need extensions for some cards. These Patches provide detection information about PCI-Cards, appearing later than the kernel. The early kernels up to 2.4.12 require some extensions to the operation mode. Later only Vendor-ID and Device-ID of some cards are added. The Patches are provided as diff-files, optimized for the distribution of SUSE. Of course they may be used in other distributions also.

In the older Kernel version 2.0 the PCI cards are configured with our tool vscardcfg. Just run it on startup as described above, it will establish all necessary settings.

To manually install PCI- or ISA-cards, there is a prepared documentation, describing the installation of serial ports. This is the option always possible, regardless of kernel version or distribution.

Tags: -

Related entries:

Last update: 2010-05-20 12:29
Author: Support
Revision: 1.1

Digg it! Print this record Send to a friend Show this as PDF file
Please rate this entry:

Average rating: 3.67 out of 5 (3 Votes )

completely useless 1 2 3 4 5 most valuable

You cannot comment on this entry