Install and test PCI 2 Port RS422 Photo Isolator Card on FreeBSD.

PCCOM PCI HOWTO
 
Introduction
    This document covers basic information about how to configure 
    DCI(Decision Computer Inc.) PCCOM PCI 2/4/8-port cards for FreeBSD.
     
    The procedure can be achieved through the following steps:
    . To configure the FreeBSD to support DCI PCCOM PCI 2/4/8-port cards
    . To configure Terminals over DCI PCCOM PCI 2/4/8-port cards
     
    The procedure is exercised for FresBSD 4.6-RELEASE. I believe that the
    docuement can also be applied for other FreeBSD releases.
     
    Within this document, all necessary referenced documents useful to 
    this document are also listed.
 
     
Configuring the FreeBSD Kernel to support DCI PCCOM 2/4/8-ports
    DCI PCCOM PCI 2/4/8-port cards are PCI-type multiple RS-232 ports cards.
    The UART of these cards is compatible to NS16550A.
     
    According to the hardware configuration of DCI PCCOM PCI 2/4/8-port cards
    described above, to enable the support of these cards for the FreeBSD, the
    following kernel options have to be in the kernel configuration file (
    You may reference the document "Configuring the FreeBSD Kernel" to get how
    to customize, build, and install a kernel). 
     
    cd /usr/src/sys/i386/conf
    mkdir /root/kernels
    cp GENERIC /root/kernels/MYKERNEL20030807
    ln -s /root/kernels/MYKERNEL20030807
    vi MYKERNEL20030807
     
    device pci
    device puc
    device sio[4-11]
    options COM_MULTIPORT
 
    :wq
 
    For the current kernel releases, they just supports DCI PCCOM PCI 2-port
    4-port cards. If the cards you installed are DCI PCCOM PCI 8-ports card,
    you have to add the 8-port card configuration as follows into the file
    /usr/src/sys/dev/puc/pucdata.c(For most FreeBSD releases, the kernel 
    source directory is located in /usr/src/sys).
     
    cd /usr/src/sys/dev/puc
    vi pucdata.c
         
    {   "Decision Computer Inc, PCCOM 8-port serial",
            {   0x6666, 0x0002, 0,      0       },
            {   0xffff, 0xffff, 0,      0       },
            {
                { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
                { PUC_PORT_TYPE_COM, 0x1c, 0x08, COM_FREQ },
                { PUC_PORT_TYPE_COM, 0x1c, 0x10, COM_FREQ },
                { PUC_PORT_TYPE_COM, 0x1c, 0x18, COM_FREQ },
                { PUC_PORT_TYPE_COM, 0x1c, 0x20, COM_FREQ },
                { PUC_PORT_TYPE_COM, 0x1c, 0x28, COM_FREQ },
                { PUC_PORT_TYPE_COM, 0x1c, 0x30, COM_FREQ },
                { PUC_PORT_TYPE_COM, 0x1c, 0x38, COM_FREQ },
            },
        },
        
        :wq
     
    After the kernel configuration file is altered with necessary options
        and the 8-port card configuration data have been added, you may 
        configure, build, and install the new customized kernel which enables
        the support of DCI PCCOM PCI 2/4/8-port cards.
 
        
Configuring Terminals over DCI PCCOM PCI 2/4/8-port cards
    While the new kernel starting up, you should be able to see the kernel
    find your installed DCI PCCOM PCI multiport cards and namd and