The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/dev/puc/pucdata.c

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /*      $NetBSD: pucdata.c,v 1.25 2001/12/16 22:23:01 thorpej Exp $     */
    2 
    3 /*-
    4  * Copyright (c) 1998, 1999 Christopher G. Demetriou.  All rights reserved.
    5  *
    6  * Redistribution and use in source and binary forms, with or without
    7  * modification, are permitted provided that the following conditions
    8  * are met:
    9  * 1. Redistributions of source code must retain the above copyright
   10  *    notice, this list of conditions and the following disclaimer.
   11  * 2. Redistributions in binary form must reproduce the above copyright
   12  *    notice, this list of conditions and the following disclaimer in the
   13  *    documentation and/or other materials provided with the distribution.
   14  * 3. All advertising materials mentioning features or use of this software
   15  *    must display the following acknowledgement:
   16  *      This product includes software developed by Christopher G. Demetriou
   17  *      for the NetBSD Project.
   18  * 4. The name of the author may not be used to endorse or promote products
   19  *    derived from this software without specific prior written permission
   20  *
   21  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
   22  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
   23  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
   24  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
   25  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
   26  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
   27  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
   28  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
   29  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
   30  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
   31  */
   32 
   33 #include <sys/cdefs.h>
   34 __FBSDID("$FreeBSD$");
   35 
   36 /*
   37  * PCI "universal" communications card driver configuration data (used to
   38  * match/attach the cards).
   39  */
   40 
   41 #include <sys/param.h>
   42 
   43 #include <dev/pci/pcireg.h>
   44 #include <dev/pci/pcivar.h>
   45 #include <dev/sio/sioreg.h>
   46 #include <dev/puc/pucvar.h>
   47 
   48 #define COM_FREQ        DEFAULT_RCLK
   49 
   50 int puc_config_win877(struct puc_softc *);
   51 
   52 const struct puc_device_description puc_devices[] = {
   53 
   54         {   "Sunix SUN1889",
   55             {   0x0009, 0x7168, 0,      0       },
   56             {   0xffff, 0xffff, 0,      0       },
   57             {
   58                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8 },
   59                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8 },
   60             },
   61         },
   62 
   63         {   "Diva Serial [GSP] Multiport UART",
   64             {   0x103c, 0x1048, 0x103c, 0x1282  },
   65             {   0xffff, 0xffff, 0xffff, 0xffff  },
   66             {
   67                 { PUC_PORT_TYPE_UART, 0x10, 0x00, 0, PUC_FLAGS_MEMORY },
   68                 { PUC_PORT_TYPE_UART, 0x10, 0x10, 0, PUC_FLAGS_MEMORY },
   69                 { PUC_PORT_TYPE_UART, 0x10, 0x38, 0, PUC_FLAGS_MEMORY },
   70             },
   71         },
   72 
   73         {   "Comtrol RocketPort 550/4 RJ45",
   74             {   0x11fe, 0x8014, 0,      0       },
   75             {   0xffff, 0xffff, 0,      0       },
   76             {
   77                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 4 },
   78                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 4 },
   79                 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 4 },
   80                 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 4 },
   81             },
   82         },
   83 
   84         {   "Comtrol RocketPort 550/Quad",
   85             {   0x11fe, 0x8015, 0,      0       },
   86             {   0xffff, 0xffff, 0,      0       },
   87             {
   88                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 4 },
   89                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 4 },
   90                 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 4 },
   91                 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 4 },
   92             },
   93         },
   94 
   95         {   "Comtrol RocketPort 550/8 RJ11 part A",
   96             {   0x11fe, 0x8010, 0,      0       },
   97             {   0xffff, 0xffff, 0,      0       },
   98             {
   99                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 4 },
  100                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 4 },
  101                 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 4 },
  102                 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 4 },
  103             },
  104         },
  105         {   "Comtrol RocketPort 550/8 RJ11 part B",
  106             {   0x11fe, 0x8011, 0,      0       },
  107             {   0xffff, 0xffff, 0,      0       },
  108             {
  109                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 4 },
  110                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 4 },
  111                 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 4 },
  112                 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 4 },
  113             },
  114         },
  115 
  116         {   "Comtrol RocketPort 550/8 Octa part A",
  117             {   0x11fe, 0x8012, 0,      0       },
  118             {   0xffff, 0xffff, 0,      0       },
  119             {
  120                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 4 },
  121                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 4 },
  122                 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 4 },
  123                 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 4 },
  124             },
  125         },
  126         {   "Comtrol RocketPort 550/8 Octa part B",
  127             {   0x11fe, 0x8013, 0,      0       },
  128             {   0xffff, 0xffff, 0,      0       },
  129             {
  130                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 4 },
  131                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 4 },
  132                 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 4 },
  133                 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 4 },
  134             },
  135         },
  136 
  137         {   "Comtrol RocketPort 550/8 part A",
  138             {   0x11fe, 0x8018, 0,      0       },
  139             {   0xffff, 0xffff, 0,      0       },
  140             {
  141                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 4 },
  142                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 4 },
  143                 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 4 },
  144                 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 4 },
  145             },
  146         },
  147         {   "Comtrol RocketPort 550/8 part B",
  148             {   0x11fe, 0x8019, 0,      0       },
  149             {   0xffff, 0xffff, 0,      0       },
  150             {
  151                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 4 },
  152                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 4 },
  153                 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 4 },
  154                 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 4 },
  155             },
  156         },
  157 
  158         {   "Comtrol RocketPort 550/16 part A",
  159             {   0x11fe, 0x8016, 0,      0       },
  160             {   0xffff, 0xffff, 0,      0       },
  161             {
  162                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 4 },
  163                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 4 },
  164                 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 4 },
  165                 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 4 },
  166             },
  167         },
  168         {   "Comtrol RocketPort 550/16 part B",
  169             {   0x11fe, 0x8017, 0,      0       },
  170             {   0xffff, 0xffff, 0,      0       },
  171             {
  172                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 4 },
  173                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 4 },
  174                 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 4 },
  175                 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 4 },
  176                 { PUC_PORT_TYPE_COM, 0x10, 0x20, COM_FREQ * 4 },
  177                 { PUC_PORT_TYPE_COM, 0x10, 0x28, COM_FREQ * 4 },
  178                 { PUC_PORT_TYPE_COM, 0x10, 0x30, COM_FREQ * 4 },
  179                 { PUC_PORT_TYPE_COM, 0x10, 0x38, COM_FREQ * 4 },
  180                 { PUC_PORT_TYPE_COM, 0x10, 0x40, COM_FREQ * 4 },
  181                 { PUC_PORT_TYPE_COM, 0x10, 0x48, COM_FREQ * 4 },
  182                 { PUC_PORT_TYPE_COM, 0x10, 0x50, COM_FREQ * 4 },
  183                 { PUC_PORT_TYPE_COM, 0x10, 0x58, COM_FREQ * 4 },
  184             },
  185         },
  186 
  187         /*
  188          * XXX no entry because I have no data:
  189          * XXX Dolphin Peripherals 4006 (single parallel)
  190          */
  191 
  192         /*
  193          * Dolphin Peripherals 4014 (dual parallel port) card.  PLX 9050, with
  194          * a seemingly-lame EEPROM setup that puts the Dolphin IDs
  195          * into the subsystem fields, and claims that it's a
  196          * network/misc (0x02/0x80) device.
  197          */
  198         {   "Dolphin Peripherals 4014",
  199             {   0x10b5, 0x9050, 0xd84d, 0x6810  },
  200             {   0xffff, 0xffff, 0xffff, 0xffff  },
  201             {
  202                 { PUC_PORT_TYPE_LPT, 0x20, 0x00, 0x00 },
  203                 { PUC_PORT_TYPE_LPT, 0x24, 0x00, 0x00 },
  204             },
  205         },
  206 
  207         /*
  208          * XXX Dolphin Peripherals 4025 (single serial)
  209          * (clashes with Dolphin Peripherals  4036 (2s variant)
  210          */
  211 
  212         /*
  213          * Dolphin Peripherals 4035 (dual serial port) card.  PLX 9050, with
  214          * a seemingly-lame EEPROM setup that puts the Dolphin IDs
  215          * into the subsystem fields, and claims that it's a
  216          * network/misc (0x02/0x80) device.
  217          */
  218         {   "Dolphin Peripherals 4035",
  219             {   0x10b5, 0x9050, 0xd84d, 0x6808  },
  220             {   0xffff, 0xffff, 0xffff, 0xffff  },
  221             {
  222                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
  223                 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
  224             },
  225         },
  226 
  227         /*
  228          * Dolphin Peripherals 4036 (dual serial port) card.
  229          * (Dolpin 4025 has the same ID but only one port)
  230          */
  231         {   "Dolphin Peripherals 4036",
  232             {   0x1409, 0x7168, 0,      0       },
  233             {   0xffff, 0xffff, 0,      0       },
  234             {
  235                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8 },
  236                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8 },
  237             },
  238         },
  239 
  240         /*
  241          * XXX no entry because I have no data:
  242          * XXX Dolphin Peripherals 4078 (dual serial and single parallel)
  243          */
  244 
  245 
  246         /*
  247          * SIIG Boards.
  248          *
  249          * SIIG provides documentation for their boards at:
  250          * <URL:http://www.siig.com/driver.htm>
  251          *
  252          * Please excuse the weird ordering, it's the order they
  253          * use in their documentation.
  254          */
  255 
  256         /*
  257          * SIIG "10x" family boards.
  258          */
  259 
  260         /* SIIG Cyber Serial PCI 16C550 (10x family): 1S */
  261         {   "SIIG Cyber Serial PCI 16C550 (10x family)",
  262             {   0x131f, 0x1000, 0,      0       },
  263             {   0xffff, 0xffff, 0,      0       },
  264             {
  265                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
  266             },
  267         },
  268 
  269         /* SIIG Cyber Serial PCI 16C650 (10x family): 1S */
  270         {   "SIIG Cyber Serial PCI 16C650 (10x family)",
  271             {   0x131f, 0x1001, 0,      0       },
  272             {   0xffff, 0xffff, 0,      0       },
  273             {
  274                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
  275             },
  276         },
  277 
  278         /* SIIG Cyber Serial PCI 16C850 (10x family): 1S */
  279         {   "SIIG Cyber Serial PCI 16C850 (10x family)",
  280             {   0x131f, 0x1002, 0,      0       },
  281             {   0xffff, 0xffff, 0,      0       },
  282             {
  283                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
  284             },
  285         },
  286 
  287         /* SIIG Cyber I/O PCI 16C550 (10x family): 1S, 1P */
  288         {   "SIIG Cyber I/O PCI 16C550 (10x family)",
  289             {   0x131f, 0x1010, 0,      0       },
  290             {   0xffff, 0xffff, 0,      0       },
  291             {
  292                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
  293                 { PUC_PORT_TYPE_LPT, 0x1c, 0x00, 0x00 },
  294             },
  295         },
  296 
  297         /* SIIG Cyber I/O PCI 16C650 (10x family): 1S, 1P */
  298         {   "SIIG Cyber I/O PCI 16C650 (10x family)",
  299             {   0x131f, 0x1011, 0,      0       },
  300             {   0xffff, 0xffff, 0,      0       },
  301             {
  302                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
  303                 { PUC_PORT_TYPE_LPT, 0x1c, 0x00, 0x00 },
  304             },
  305         },
  306 
  307         /* SIIG Cyber I/O PCI 16C850 (10x family): 1S, 1P */
  308         {   "SIIG Cyber I/O PCI 16C850 (10x family)",
  309             {   0x131f, 0x1012, 0,      0       },
  310             {   0xffff, 0xffff, 0,      0       },
  311             {
  312                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
  313                 { PUC_PORT_TYPE_LPT, 0x1c, 0x00, 0x00 },
  314             },
  315         },
  316 
  317         /* SIIG Cyber Parallel PCI (10x family): 1P */
  318         {   "SIIG Cyber Parallel PCI (10x family)",
  319             {   0x131f, 0x1020, 0,      0       },
  320             {   0xffff, 0xffff, 0,      0       },
  321             {
  322                 { PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
  323             },
  324         },
  325 
  326         /* SIIG Cyber Parallel Dual PCI (10x family): 2P */
  327         {   "SIIG Cyber Parallel Dual PCI (10x family)",
  328             {   0x131f, 0x1021, 0,      0       },
  329             {   0xffff, 0xffff, 0,      0       },
  330             {
  331                 { PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
  332                 { PUC_PORT_TYPE_LPT, 0x20, 0x00, 0x00 },
  333             },
  334         },
  335 
  336         /* SIIG Cyber Serial Dual PCI 16C550 (10x family): 2S */
  337         {   "SIIG Cyber Serial Dual PCI 16C550 (10x family)",
  338             {   0x131f, 0x1030, 0,      0       },
  339             {   0xffff, 0xffff, 0,      0       },
  340             {
  341                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
  342                 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
  343             },
  344         },
  345 
  346         /* SIIG Cyber Serial Dual PCI 16C650 (10x family): 2S */
  347         {   "SIIG Cyber Serial Dual PCI 16C650 (10x family)",
  348             {   0x131f, 0x1031, 0,      0       },
  349             {   0xffff, 0xffff, 0,      0       },
  350             {
  351                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
  352                 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
  353             },
  354         },
  355 
  356         /* SIIG Cyber Serial Dual PCI 16C850 (10x family): 2S */
  357         {   "SIIG Cyber Serial Dual PCI 16C850 (10x family)",
  358             {   0x131f, 0x1032, 0,      0       },
  359             {   0xffff, 0xffff, 0,      0       },
  360             {
  361                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
  362                 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
  363             },
  364         },
  365 
  366         /* SIIG Cyber 2S1P PCI 16C550 (10x family): 2S, 1P */
  367         {   "SIIG Cyber 2S1P PCI 16C550 (10x family)",
  368             {   0x131f, 0x1034, 0,      0       },      /* XXX really? */
  369             {   0xffff, 0xffff, 0,      0       },
  370             {
  371                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
  372                 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
  373                 { PUC_PORT_TYPE_LPT, 0x20, 0x00, 0x00 },
  374             },
  375         },
  376 
  377         /* SIIG Cyber 2S1P PCI 16C650 (10x family): 2S, 1P */
  378         {   "SIIG Cyber 2S1P PCI 16C650 (10x family)",
  379             {   0x131f, 0x1035, 0,      0       },      /* XXX really? */
  380             {   0xffff, 0xffff, 0,      0       },
  381             {
  382                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
  383                 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
  384                 { PUC_PORT_TYPE_LPT, 0x20, 0x00, 0x00 },
  385             },
  386         },
  387 
  388         /* SIIG Cyber 2S1P PCI 16C850 (10x family): 2S, 1P */
  389         {   "SIIG Cyber 2S1P PCI 16C850 (10x family)",
  390             {   0x131f, 0x1036, 0,      0       },      /* XXX really? */
  391             {   0xffff, 0xffff, 0,      0       },
  392             {
  393                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
  394                 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
  395                 { PUC_PORT_TYPE_LPT, 0x20, 0x00, 0x00 },
  396             },
  397         },
  398 
  399         /* SIIG Cyber 4S PCI 16C550 (10x family): 4S */
  400         {   "SIIG Cyber 4S PCI 16C550 (10x family)",
  401             {   0x131f, 0x1050, 0,      0       },
  402             {   0xffff, 0xffff, 0,      0       },
  403             {
  404                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
  405                 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
  406                 { PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ },
  407                 { PUC_PORT_TYPE_COM, 0x24, 0x00, COM_FREQ },
  408             },
  409         },
  410 
  411         /* SIIG Cyber 4S PCI 16C650 (10x family): 4S */
  412         {   "SIIG Cyber 4S PCI 16C650 (10x family)",
  413             {   0x131f, 0x1051, 0,      0       },
  414             {   0xffff, 0xffff, 0,      0       },
  415             {
  416                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
  417                 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
  418                 { PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ },
  419                 { PUC_PORT_TYPE_COM, 0x24, 0x00, COM_FREQ },
  420             },
  421         },
  422 
  423         /* SIIG Cyber 4S PCI 16C850 (10x family): 4S */
  424         {   "SIIG Cyber 4S PCI 16C850 (10x family)",
  425             {   0x131f, 0x1052, 0,      0       },
  426             {   0xffff, 0xffff, 0,      0       },
  427             {
  428                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
  429                 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
  430                 { PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ },
  431                 { PUC_PORT_TYPE_COM, 0x24, 0x00, COM_FREQ },
  432             },
  433         },
  434 
  435         /*
  436          * SIIG "20x" family boards.
  437          */
  438 
  439         /* SIIG Cyber Parallel PCI (20x family): 1P */
  440         {   "SIIG Cyber Parallel PCI (20x family)",
  441             {   0x131f, 0x2020, 0,      0       },
  442             {   0xffff, 0xffff, 0,      0       },
  443             {
  444                 { PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
  445             },
  446         },
  447 
  448         /* SIIG Cyber Parallel Dual PCI (20x family): 2P */
  449         {   "SIIG Cyber Parallel Dual PCI (20x family)",
  450             {   0x131f, 0x2021, 0,      0       },
  451             {   0xffff, 0xffff, 0,      0       },
  452             {
  453                 { PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
  454                 { PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
  455             },
  456         },
  457 
  458         /* SIIG Cyber 2P1S PCI 16C550 (20x family): 1S, 2P */
  459         {   "SIIG Cyber 2P1S PCI 16C550 (20x family)",
  460             {   0x131f, 0x2040, 0,      0       },
  461             {   0xffff, 0xffff, 0,      0       },
  462             {
  463                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  464                 { PUC_PORT_TYPE_LPT, 0x14, 0x00, 0x00 },
  465                 { PUC_PORT_TYPE_LPT, 0x1c, 0x00, 0x00 },
  466             },
  467         },
  468 
  469         /* SIIG Cyber 2P1S PCI 16C650 (20x family): 1S, 2P */
  470         {   "SIIG Cyber 2P1S PCI 16C650 (20x family)",
  471             {   0x131f, 0x2041, 0,      0       },
  472             {   0xffff, 0xffff, 0,      0       },
  473             {
  474                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  475                 { PUC_PORT_TYPE_LPT, 0x14, 0x00, 0x00 },
  476                 { PUC_PORT_TYPE_LPT, 0x1c, 0x00, 0x00 },
  477             },
  478         },
  479 
  480         /* SIIG Cyber 2P1S PCI 16C850 (20x family): 1S, 2P */
  481         {   "SIIG Cyber 2P1S PCI 16C850 (20x family)",
  482             {   0x131f, 0x2042, 0,      0       },
  483             {   0xffff, 0xffff, 0,      0       },
  484             {
  485                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  486                 { PUC_PORT_TYPE_LPT, 0x14, 0x00, 0x00 },
  487                 { PUC_PORT_TYPE_LPT, 0x1c, 0x00, 0x00 },
  488             },
  489         },
  490 
  491         /* SIIG Cyber Serial PCI 16C550 (20x family): 1S */
  492         {   "SIIG Cyber Serial PCI 16C550 (20x family)",
  493             {   0x131f, 0x2000, 0,      0       },
  494             {   0xffff, 0xffff, 0,      0       },
  495             {
  496                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  497             },
  498         },
  499 
  500         /* SIIG Cyber Serial PCI 16C650 (20x family): 1S */
  501         {   "SIIG Cyber Serial PCI 16C650 (20x family)",
  502             {   0x131f, 0x2001, 0,      0       },
  503             {   0xffff, 0xffff, 0,      0       },
  504             {
  505                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  506             },
  507         },
  508 
  509         /* SIIG Cyber Serial PCI 16C850 (20x family): 1S */
  510         {   "SIIG Cyber Serial PCI 16C850 (20x family)",
  511             {   0x131f, 0x2002, 0,      0       },
  512             {   0xffff, 0xffff, 0,      0       },
  513             {
  514                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  515             },
  516         },
  517 
  518         /* SIIG Cyber I/O PCI 16C550 (20x family): 1S, 1P */
  519         {   "SIIG Cyber I/O PCI 16C550 (20x family)",
  520             {   0x131f, 0x2010, 0,      0       },
  521             {   0xffff, 0xffff, 0,      0       },
  522             {
  523                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  524                 { PUC_PORT_TYPE_LPT, 0x14, 0x00, 0x00 },
  525             },
  526         },
  527 
  528         /* SIIG Cyber I/O PCI 16C650 (20x family): 1S, 1P */
  529         {   "SIIG Cyber I/O PCI 16C650 (20x family)",
  530             {   0x131f, 0x2011, 0,      0       },
  531             {   0xffff, 0xffff, 0,      0       },
  532             {
  533                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  534                 { PUC_PORT_TYPE_LPT, 0x14, 0x00, 0x00 },
  535             },
  536         },
  537 
  538         /* SIIG Cyber I/O PCI 16C850 (20x family): 1S, 1P */
  539         {   "SIIG Cyber I/O PCI 16C850 (20x family)",
  540             {   0x131f, 0x2012, 0,      0       },
  541             {   0xffff, 0xffff, 0,      0       },
  542             {
  543                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  544                 { PUC_PORT_TYPE_LPT, 0x14, 0x00, 0x00 },
  545             },
  546         },
  547 
  548         /* SIIG Cyber Serial Dual PCI 16C550 (20x family): 2S */
  549         {   "SIIG Cyber Serial Dual PCI 16C550 (20x family)",
  550             {   0x131f, 0x2030, 0,      0       },
  551             {   0xffff, 0xffff, 0,      0       },
  552             {
  553                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  554                 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
  555             },
  556         },
  557 
  558         /* SIIG Cyber Serial Dual PCI 16C650 (20x family): 2S */
  559         {   "SIIG Cyber Serial Dual PCI 16C650 (20x family)",
  560             {   0x131f, 0x2031, 0,      0       },
  561             {   0xffff, 0xffff, 0,      0       },
  562             {
  563                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  564                 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
  565             },
  566         },
  567 
  568         /* SIIG Cyber Serial Dual PCI 16C850 (20x family): 2S */
  569         {   "SIIG Cyber Serial Dual PCI 16C850 (20x family)",
  570             {   0x131f, 0x2032, 0,      0       },
  571             {   0xffff, 0xffff, 0,      0       },
  572             {
  573                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  574                 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
  575             },
  576         },
  577 
  578         /* SIIG Cyber 2S1P PCI 16C550 (20x family): 2S, 1P */
  579         {   "SIIG Cyber 2S1P PCI 16C550 (20x family)",
  580             {   0x131f, 0x2060, 0,      0       },
  581             {   0xffff, 0xffff, 0,      0       },
  582             {
  583                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  584                 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
  585                 { PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
  586             },
  587         },
  588 
  589         /* SIIG Cyber 2S1P PCI 16C650 (20x family): 2S, 1P */
  590         {   "SIIG Cyber 2S1P PCI 16C650 (20x family)",
  591             {   0x131f, 0x2061, 0,      0       },
  592             {   0xffff, 0xffff, 0,      0       },
  593             {
  594                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  595                 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
  596                 { PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
  597             },
  598         },
  599 
  600         /* SIIG Cyber 2S1P PCI 16C850 (20x family): 2S, 1P */
  601         {   "SIIG Cyber 2S1P PCI 16C850 (20x family)",
  602             {   0x131f, 0x2062, 0,      0       },
  603             {   0xffff, 0xffff, 0,      0       },
  604             {
  605                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  606                 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
  607                 { PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
  608             },
  609         },
  610 
  611         /* SIIG Cyber 4S PCI 16C550 (20x family): 4S */
  612         {   "SIIG Cyber 4S PCI 16C550 (20x family)",
  613             {   0x131f, 0x2050, 0,      0       },
  614             {   0xffff, 0xffff, 0,      0       },
  615             {
  616                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  617                 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
  618                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
  619                 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
  620             },
  621         },
  622 
  623         /* SIIG Cyber 4S PCI 16C650 (20x family): 4S */
  624         {   "SIIG Cyber 4S PCI 16C650 (20x family)",
  625             {   0x131f, 0x2051, 0,      0       },
  626             {   0xffff, 0xffff, 0,      0       },
  627             {
  628                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  629                 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
  630                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
  631                 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
  632             },
  633         },
  634 
  635         /* SIIG Cyber 4S PCI 16C850 (20x family): 4S */
  636         {   "SIIG Cyber 4S PCI 16C850 (20x family)",
  637             {   0x131f, 0x2052, 0,      0       },
  638             {   0xffff, 0xffff, 0,      0       },
  639             {
  640                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  641                 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
  642                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
  643                 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
  644             },
  645         },
  646 
  647         /* VScom PCI-100L: 1S */
  648         {   "VScom PCI-100L",
  649             {   0x14d2, 0x8010, 0,      0       },
  650             {   0xffff, 0xffff, 0,      0       },
  651             {
  652                 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ * 8 },
  653             },
  654         },
  655 
  656         /* VScom PCI-200L: 2S */
  657         {   "VScom PCI-200L",
  658             {   0x14d2, 0x8020, 0,      0       },
  659             {   0xffff, 0xffff, 0,      0       },
  660             {
  661                 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ * 8 },
  662                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
  663             },
  664         },
  665 
  666         /* VScom PCI-200Li: 2S */
  667         {   "VScom PCI-200Li",
  668             {   0x14d2, 0x8028, 0,      0       },
  669             {   0xffff, 0xffff, 0,      0       },
  670             {
  671                 { PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ * 8 },
  672                 { PUC_PORT_TYPE_COM, 0x20, 0x08, COM_FREQ * 8 },
  673             },
  674         },
  675 
  676         /* VScom PCI-400: 4S */
  677         {   "VScom PCI-400",
  678             {   0x10b5, 0x1077, 0x10b5, 0x1077  },
  679             {   0xffff, 0xffff, 0xffff, 0xffff  },
  680             {
  681                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
  682                 { PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 8 },
  683                 { PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 8 },
  684                 { PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 8 },
  685             },
  686         },
  687 
  688         /* VScom PCI-800: 8S */
  689         {   "VScom PCI-800",
  690             {   0x10b5, 0x1076, 0x10b5, 0x1076  },
  691             {   0xffff, 0xffff, 0xffff, 0xffff  },
  692             {
  693                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
  694                 { PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 8 },
  695                 { PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 8 },
  696                 { PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 8 },
  697                 { PUC_PORT_TYPE_COM, 0x18, 0x20, COM_FREQ * 8 },
  698                 { PUC_PORT_TYPE_COM, 0x18, 0x28, COM_FREQ * 8 },
  699                 { PUC_PORT_TYPE_COM, 0x18, 0x30, COM_FREQ * 8 },
  700                 { PUC_PORT_TYPE_COM, 0x18, 0x38, COM_FREQ * 8 },
  701             },
  702         },
  703         /*
  704          * VScom PCI-800H. Uses 8 16950 UART, behind a PCI chips that offers
  705          * 4 com port on PCI device 0 and 4 on PCI device 1. PCI device 0 has
  706          * device ID 3 and PCI device 1 device ID 4.
  707          */
  708         {   "Titan PCI-800H",
  709             {   0x14d2, 0xa003, 0,      0       },
  710             {   0xffff, 0xffff, 0,      0       },
  711             {
  712                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8 },
  713                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8 },
  714                 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 8 },
  715                 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 8 },
  716             },
  717         },
  718         {   "Titan PCI-800H",
  719             {   0x14d2, 0xa004, 0,      0       },
  720             {   0xffff, 0xffff, 0,      0       },
  721             {
  722                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8 },
  723                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8 },
  724                 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 8 },
  725                 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 8 },
  726             },
  727         },
  728         {   "Titan PCI-200H",
  729             {   0x14d2, 0xa005, 0,      0       },
  730             {   0xffff, 0xffff, 0,      0       },
  731             {
  732                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8 },
  733                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8 },
  734             },
  735         },
  736 
  737         {   "Titan VScom PCI-200HV2",   /* 2S */
  738             {   0x14d2, 0xe020, 0,      0       },
  739             {   0xffff, 0xffff, 0,      0       },
  740             {
  741                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8 },
  742                 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ * 8 },
  743             },
  744         },
  745         /*
  746          * VScom (Titan?) PCI-800L.  More modern variant of the
  747          * PCI-800.  Uses 6 discrete 16550 UARTs, plus another
  748          * two of them obviously implemented as macro cells in
  749          * the ASIC.  This causes the weird port access pattern
  750          * below, where two of the IO port ranges each access
  751          * one of the ASIC UARTs, and a block of IO addresses
  752          * access the external UARTs.
  753          */
  754         {   "Titan VScom PCI-800L",
  755             {   0x14d2, 0x8080, 0,      0       },
  756             {   0xffff, 0xffff, 0,      0       },
  757             {
  758                 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ * 8 },
  759                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
  760                 { PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ * 8 },
  761                 { PUC_PORT_TYPE_COM, 0x20, 0x08, COM_FREQ * 8 },
  762                 { PUC_PORT_TYPE_COM, 0x20, 0x10, COM_FREQ * 8 },
  763                 { PUC_PORT_TYPE_COM, 0x20, 0x18, COM_FREQ * 8 },
  764                 { PUC_PORT_TYPE_COM, 0x20, 0x20, COM_FREQ * 8 },
  765                 { PUC_PORT_TYPE_COM, 0x20, 0x28, COM_FREQ * 8 },
  766             },
  767         },
  768 
  769         /*
  770          * NEC PK-UG-X001 K56flex PCI Modem card.
  771          * Uses NEC MARTH bridge chip and Rockwell RCVDL56ACF/SP.
  772          */
  773         {   "NEC PK-UG-X001 K56flex PCI Modem",
  774             {   0x1033, 0x0074, 0x1033, 0x8014  },
  775             {   0xffff, 0xffff, 0xffff, 0xffff  },
  776             {
  777                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  778             },
  779         },
  780 
  781         /* NEC PK-UG-X008 */
  782         {   "NEC PK-UG-X008",
  783             {   0x1033, 0x007d, 0x1033, 0x8012  },
  784             {   0xffff, 0xffff, 0xffff, 0xffff  },
  785             {
  786                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  787             },
  788         },
  789 
  790         /* Lava Computers 2SP-PCI */
  791         {   "Lava Computers 2SP-PCI parallel port",
  792             {   0x1407, 0x8000, 0,      0       },
  793             {   0xffff, 0xffff, 0,      0       },
  794             {
  795                 { PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
  796             },
  797         },
  798 
  799         /* Lava Computers 2SP-PCI and Quattro-PCI serial ports */
  800         {   "Lava Computers dual serial port",
  801             {   0x1407, 0x0100, 0,      0       },
  802             {   0xffff, 0xfffc, 0,      0       },
  803             {
  804                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  805                 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
  806             },
  807         },
  808 
  809         /* Lava Computers newer Quattro-PCI serial ports */
  810         {   "Lava Computers Quattro-PCI serial port",
  811             {   0x1407, 0x0120, 0,      0       },
  812             {   0xffff, 0xfffc, 0,      0       },
  813             {
  814                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  815                 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
  816             },
  817         },
  818 
  819         /* Lava Computers DSerial PCI serial ports */
  820         {   "Lava Computers serial port",
  821             {   0x1407, 0x0110, 0,      0       },
  822             {   0xffff, 0xfffc, 0,      0       },
  823             {
  824                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  825             },
  826         },
  827 
  828         /* Lava Computers Octopus-550 serial ports */
  829         {   "Lava Computers Octopus-550 8-port serial",
  830             {   0x1407, 0x0180, 0,      0       },
  831             {   0xffff, 0xfffc, 0,      0       },
  832             {
  833                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  834                 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
  835                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
  836                 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
  837             },
  838         },
  839 
  840         /* US Robotics (3Com) PCI Modems */
  841         {   "US Robotics (3Com) 3CP5609 PCI 16550 Modem",
  842             {   0x12b9, 0x1008, 0,      0       },
  843             {   0xffff, 0xffff, 0,      0       },
  844             {
  845                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  846             },
  847         },
  848 
  849         /* Actiontec 56K PCI Master */
  850         {   "Actiontec 56K PCI Master",
  851             {   0x11c1, 0x0480, 0,      0       },
  852             {   0xffff, 0xffff, 0,      0       },
  853             {
  854                 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
  855             },
  856         },
  857 
  858         /*
  859          * Boards with an Oxford Semiconductor chip.
  860          *
  861          * Oxford Semiconductor provides documentation for their chip at:
  862          * <URL:http://www.oxsemi.com/products/uarts/index.html>
  863          *
  864          * As sold by Kouwell <URL:http://www.kouwell.com/>.
  865          * I/O Flex PCI I/O Card Model-223 with 4 serial and 1 parallel ports.
  866          */
  867 
  868         /* Oxford Semiconductor OX12PCI840 PCI Parallel port */
  869         {   "Oxford Semiconductor OX12PCI840 Parallel port",
  870             {   0x1415, 0x8403, 0,      0       },
  871             {   0xffff, 0xffff, 0,      0       },
  872             {
  873                 { PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
  874             },
  875         },
  876 
  877         {   "SIIG Cyber 4S PCI 16C650 (20x family)",
  878             {   0x1415, 0x9501, 0x131f, 0x2051 },
  879             {   0xffff, 0xffff, 0xffff, 0xffff },
  880             {
  881                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 10 },
  882                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 10 },
  883                 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 10 },
  884                 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 10 },
  885             },
  886         },
  887 
  888         /* Oxford Semiconductor OX16PCI954 PCI UARTs */
  889         {   "Oxford Semiconductor OX16PCI954 UARTs",
  890             {   0x1415, 0x9501, 0,      0       },
  891             {   0xffff, 0xffff, 0,      0       },
  892             {
  893                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  894                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ },
  895                 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ },
  896                 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ },
  897             },
  898         },
  899 
  900         /* Oxford Semiconductor OX16PCI954 PCI UARTs */
  901         {   "Oxford Semiconductor OX16PCI954 UARTs",
  902             {   0x1415, 0x950a, 0,      0       },
  903             {   0xffff, 0xffff, 0,      0       },
  904             {
  905                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  906                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ },
  907                 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ },
  908                 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ },
  909             },
  910         },
  911 
  912         /* Oxford Semiconductor OXCB950 PCI/CardBus UARTs */
  913         {   "Oxford Semiconductor OXCB950 UART",
  914             {   0x1415, 0x950b, 0,      0       },
  915             {   0xffff, 0xffff, 0,      0       },
  916             {
  917                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  918             },
  919         },
  920 
  921         /*
  922          * Oxford Semiconductor OX9160/OX16PCI954 PCI UARTS
  923          * Second chip on Exsys EX-41098 8x cards
  924          */
  925         {   "Oxford Semiconductor OX9160/OX16PCI954 UARTs (function 1)",
  926             {   0x1415, 0x9511, 0,      0       },
  927             {   0xffff, 0xffff, 0,      0       },
  928             {
  929                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  930                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ },
  931                 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ },
  932                 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ },
  933             },
  934         },
  935 
  936         /* Oxford Semiconductor OX16PCI954 PCI Parallel port */
  937         {   "Oxford Semiconductor OX16PCI954 Parallel port",
  938             {   0x1415, 0x9513, 0,      0       },
  939             {   0xffff, 0xffff, 0,      0       },
  940             {
  941                 { PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
  942             },
  943         },
  944 
  945         /* NetMos 2S1P PCI 16C650 : 2S, 1P */
  946         {   "NetMos NM9835 Dual UART and 1284 Printer port",
  947             {   0x9710, 0x9835, 0,      0       },
  948             {   0xffff, 0xffff, 0,      0       },
  949             {
  950                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  951                 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
  952                 { PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
  953             },
  954         },
  955 
  956         /* NetMos 4S0P PCI: 4S, 0P */
  957         {   "NetMos NM9845 Quad UART",
  958             {   0x9710, 0x9845, 0,      0x0004  },
  959             {   0xffff, 0xffff, 0,      0xffff  },
  960             {
  961                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  962                 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
  963                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
  964                 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
  965             },
  966         },
  967 
  968         /* NetMos 6S0P PCI: 6S, 0P */
  969         {   "NetMos NM9845 Hex UART",
  970                 {   0x9710, 0x9845, 0,      0x0006  },
  971                 {   0xffff, 0xffff, 0,      0xffff  },
  972                 {
  973                         { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
  974                         { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
  975                         { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
  976                         { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
  977                         { PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ },
  978                         { PUC_PORT_TYPE_COM, 0x24, 0x00, COM_FREQ },
  979                 }, 
  980         },
  981 
  982         /* NetMos 0S1P PCI: 0S, 1P */
  983         {   "NetMos NM9805 1284 Printer port",
  984             {   0x9710, 0x9805, 0,      0       },
  985             {   0xffff, 0xffff, 0,      0       },
  986             {
  987                 { PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
  988             },
  989         },                            
  990 
  991         /*
  992          * This is the Middle Digital, Inc. PCI-Weasel, which
  993          * uses a PCI interface implemented in FPGA.
  994          */
  995         {   "Middle Digital, Inc. Weasel serial port",
  996             {   0xdeaf, 0x9051, 0,      0       },
  997             {   0xffff, 0xffff, 0,      0       },
  998             {
  999                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
 1000             },
 1001         },
 1002 
 1003         /* SD-LAB PCI I/O Card 4S2P */
 1004         {   "Syba Tech Ltd. PCI-4S2P-550-ECP",
 1005             {   0x1592, 0x0781, 0,      0       },
 1006             {   0xffff, 0xffff, 0,      0       },
 1007             {
 1008                 { PUC_PORT_TYPE_COM, 0x10, 0x2e8, COM_FREQ },
 1009                 { PUC_PORT_TYPE_COM, 0x10, 0x2f8, COM_FREQ },
 1010                 { PUC_PORT_TYPE_LPT, 0x10, 0x000, 0x00 },
 1011                 { PUC_PORT_TYPE_COM, 0x10, 0x3e8, COM_FREQ },
 1012                 { PUC_PORT_TYPE_COM, 0x10, 0x3f8, COM_FREQ },
 1013                 { PUC_PORT_TYPE_LPT, 0x10, 0x000, 0x00 },
 1014             },
 1015             .init = puc_config_win877,
 1016         },
 1017 
 1018         /* Moxa Technologies Co., Ltd. PCI I/O Card 4S RS232 */
 1019         {   "Moxa Technologies, Smartio C104H/PCI",
 1020             {   0x1393, 0x1040, 0,      0       },
 1021             {   0xffff, 0xffff, 0,      0       },
 1022             {
 1023                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
 1024                 { PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 8 },
 1025                 { PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 8 },
 1026                 { PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 8 },
 1027             },
 1028         },
 1029 
 1030         /* Moxa Technologies Co., Ltd. PCI I/O Card 4S RS232 */
 1031         {   "Moxa Technologies, Smartio CP-104UL/PCI",
 1032             {   0x1393, 0x1041, 0,      0       },
 1033             {   0xffff, 0xffff, 0,      0       },
 1034             {
 1035                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
 1036                 { PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 8 },
 1037                 { PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 8 },
 1038                 { PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 8 },
 1039             },
 1040         },
 1041 
 1042         /* Moxa Technologies Co., Ltd. PCI I/O Card 4S RS232/422/485 */
 1043         {   "Moxa Technologies, Industio CP-114",
 1044             {   0x1393, 0x1141, 0,      0       },
 1045             {   0xffff, 0xffff, 0,      0       },
 1046             {
 1047                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
 1048                 { PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 8 },
 1049                 { PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 8 },
 1050                 { PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 8 },
 1051             },
 1052         },
 1053 
 1054         /* Moxa Technologies Co., Ltd. PCI I/O Card 8S RS232 */
 1055         {   "Moxa Technologies, C168H/PCI",
 1056             {   0x1393, 0x1680, 0,      0       },
 1057             {   0xffff, 0xffff, 0,      0       },
 1058             {
 1059                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
 1060                 { PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 8 },
 1061                 { PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 8 },
 1062                 { PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 8 },
 1063                 { PUC_PORT_TYPE_COM, 0x18, 0x20, COM_FREQ * 8 },
 1064                 { PUC_PORT_TYPE_COM, 0x18, 0x28, COM_FREQ * 8 },
 1065                 { PUC_PORT_TYPE_COM, 0x18, 0x30, COM_FREQ * 8 },
 1066                 { PUC_PORT_TYPE_COM, 0x18, 0x38, COM_FREQ * 8 },
 1067             },
 1068         },
 1069 
 1070         /* Moxa Technologies Co., Ltd. PCI I/O Card 8S RS232 */
 1071         {   "Moxa Technologies, C168U/PCI",
 1072             {   0x1393, 0x1681, 0,      0       },
 1073             {   0xffff, 0xffff, 0,      0       },
 1074             {
 1075                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
 1076                 { PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 8 },
 1077                 { PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 8 },
 1078                 { PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 8 },
 1079                 { PUC_PORT_TYPE_COM, 0x18, 0x20, COM_FREQ * 8 },
 1080                 { PUC_PORT_TYPE_COM, 0x18, 0x28, COM_FREQ * 8 },
 1081                 { PUC_PORT_TYPE_COM, 0x18, 0x30, COM_FREQ * 8 },
 1082                 { PUC_PORT_TYPE_COM, 0x18, 0x38, COM_FREQ * 8 },
 1083             },
 1084         },
 1085 
 1086         {   "Avlab Technology, PCI IO 2S",
 1087             {   0x14db, 0x2130, 0,      0       },
 1088             {   0xffff, 0xfffc, 0,      0       },
 1089             {
 1090                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
 1091                 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
 1092             },
 1093         },
 1094 
 1095         /* Avlab Technology, Inc. Low Profile PCI 4 Serial: 4S */
 1096         {   "Avlab Low Profile PCI 4 Serial",
 1097             {   0x14db, 0x2150, 0,      0       },
 1098             {   0xffff, 0xffff, 0,      0       },
 1099             {
 1100                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
 1101                 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
 1102                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
 1103                 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
 1104             },
 1105         },
 1106 
 1107         {   "Avlab Low Profile PCI IO 4S-850 Serial",
 1108             {   0x14db, 0x2152, 0,      0       },
 1109             {   0xffff, 0xffff, 0,      0       },
 1110             {
 1111                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
 1112                 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
 1113                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
 1114                 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
 1115             },
 1116         },
 1117 
 1118         /* Decision Computer Inc, serial ports */
 1119         {   "Decision Computer Inc, PCCOM 4-port serial",
 1120             {   0x6666, 0x0001, 0,      0       },
 1121             {   0xffff, 0xffff, 0,      0       },
 1122             {
 1123                 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
 1124                 { PUC_PORT_TYPE_COM, 0x1c, 0x08, COM_FREQ },
 1125                 { PUC_PORT_TYPE_COM, 0x1c, 0x10, COM_FREQ },
 1126                 { PUC_PORT_TYPE_COM, 0x1c, 0x18, COM_FREQ },
 1127             },
 1128         },
 1129 
 1130         {   "Decision Computer Inc, PCCOM 4-port serial",
 1131             {   0x6666, 0x0002, 0,      0       },
 1132             {   0xffff, 0xffff, 0,      0       },
 1133             {
 1134                 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
 1135                 { PUC_PORT_TYPE_COM, 0x1c, 0x08, COM_FREQ },
 1136                 { PUC_PORT_TYPE_COM, 0x1c, 0x10, COM_FREQ },
 1137                 { PUC_PORT_TYPE_COM, 0x1c, 0x18, COM_FREQ },
 1138                 { PUC_PORT_TYPE_COM, 0x1c, 0x20, COM_FREQ },
 1139                 { PUC_PORT_TYPE_COM, 0x1c, 0x28, COM_FREQ },
 1140                 { PUC_PORT_TYPE_COM, 0x1c, 0x30, COM_FREQ },
 1141                 { PUC_PORT_TYPE_COM, 0x1c, 0x38, COM_FREQ },
 1142             },
 1143         },
 1144 
 1145         {   "PCCOM dual port RS232/422/485",
 1146             {   0x6666, 0x0004, 0,      0       },
 1147             {   0xffff, 0xffff, 0,      0       },
 1148             {
 1149                 { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
 1150                 { PUC_PORT_TYPE_COM, 0x1c, 0x08, COM_FREQ },
 1151             },
 1152         },
 1153 
 1154         {   "IC Book Labs Gunboat x2 Low Profile",
 1155             {   0xb00c, 0x0a1c, 0,      0       },
 1156             {   0xffff, 0xffff, 0,      0       },
 1157             {
 1158                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
 1159                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ },
 1160             },
 1161         },
 1162 
 1163         {   "IC Book Labs Gunboat x4 Lite",
 1164             {   0xb00c, 0x021c, 0,      0       },
 1165             {   0xffff, 0xffff, 0,      0       },
 1166             {
 1167                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
 1168                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ },
 1169                 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ },
 1170                 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ },
 1171             },
 1172             PUC_ILR_TYPE_DIGI, { 0x07 },
 1173         },
 1174 
 1175         {   "IC Book Labs Gunboat x4 Pro",
 1176             {   0xb00c, 0x031c, 0,      0       },
 1177             {   0xffff, 0xffff, 0,      0       },
 1178             {
 1179                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
 1180                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ },
 1181                 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ },
 1182                 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ },
 1183             },
 1184             PUC_ILR_TYPE_DIGI, { 0x07 },
 1185         },
 1186 
 1187         {   "IC Book Labs Gunboat x4 Low Profile",
 1188             {   0xb00c, 0x0b1c, 0,      0       },
 1189             {   0xffff, 0xffff, 0,      0       },
 1190             {
 1191                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
 1192                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ },
 1193                 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ },
 1194                 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ },
 1195             },
 1196             PUC_ILR_TYPE_DIGI, { 0x07 },
 1197         },
 1198 
 1199         {   "IC Book Labs Ironclad x8 Lite",
 1200             {   0xb00c, 0x041c, 0,      0       },
 1201             {   0xffff, 0xffff, 0,      0       },
 1202             {
 1203                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
 1204                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ },
 1205                 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ },
 1206                 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ },
 1207                 { PUC_PORT_TYPE_COM, 0x10, 0x20, COM_FREQ },
 1208                 { PUC_PORT_TYPE_COM, 0x10, 0x28, COM_FREQ },
 1209                 { PUC_PORT_TYPE_COM, 0x10, 0x30, COM_FREQ },
 1210                 { PUC_PORT_TYPE_COM, 0x10, 0x38, COM_FREQ },
 1211             },
 1212             PUC_ILR_TYPE_DIGI, { 0x07 },
 1213         },
 1214 
 1215         {   "IC Book Labs Ironclad x8 Pro",
 1216             {   0xb00c, 0x051c, 0,      0       },
 1217             {   0xffff, 0xffff, 0,      0       },
 1218             {
 1219                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
 1220                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ },
 1221                 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ },
 1222                 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ },
 1223                 { PUC_PORT_TYPE_COM, 0x10, 0x20, COM_FREQ },
 1224                 { PUC_PORT_TYPE_COM, 0x10, 0x28, COM_FREQ },
 1225                 { PUC_PORT_TYPE_COM, 0x10, 0x30, COM_FREQ },
 1226                 { PUC_PORT_TYPE_COM, 0x10, 0x38, COM_FREQ },
 1227             },
 1228             PUC_ILR_TYPE_DIGI, { 0x07 },
 1229         },
 1230 
 1231         {   "IC Book Labs Dreadnought x16 Lite",
 1232             {   0xb00c, 0x091c, 0,      0       },
 1233             {   0xffff, 0xffff, 0,      0       },
 1234             {
 1235                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
 1236                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ },
 1237                 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ },
 1238                 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ },
 1239                 { PUC_PORT_TYPE_COM, 0x10, 0x20, COM_FREQ },
 1240                 { PUC_PORT_TYPE_COM, 0x10, 0x28, COM_FREQ },
 1241                 { PUC_PORT_TYPE_COM, 0x10, 0x30, COM_FREQ },
 1242                 { PUC_PORT_TYPE_COM, 0x10, 0x38, COM_FREQ },
 1243                 { PUC_PORT_TYPE_COM, 0x10, 0x40, COM_FREQ },
 1244                 { PUC_PORT_TYPE_COM, 0x10, 0x48, COM_FREQ },
 1245                 { PUC_PORT_TYPE_COM, 0x10, 0x50, COM_FREQ },
 1246                 { PUC_PORT_TYPE_COM, 0x10, 0x58, COM_FREQ },
 1247                 { PUC_PORT_TYPE_COM, 0x10, 0x60, COM_FREQ },
 1248                 { PUC_PORT_TYPE_COM, 0x10, 0x68, COM_FREQ },
 1249                 { PUC_PORT_TYPE_COM, 0x10, 0x70, COM_FREQ },
 1250                 { PUC_PORT_TYPE_COM, 0x10, 0x78, COM_FREQ },
 1251             },
 1252             PUC_ILR_TYPE_DIGI, { 0x07, 0x47 },
 1253         },
 1254 
 1255         {   "IC Book Labs Dreadnought x16 Pro",
 1256             {   0xb00c, 0x081c, 0,      0       },
 1257             {   0xffff, 0xffff, 0,      0       },
 1258             {
 1259                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8, 0x200000 },
 1260                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8, 0x200000 },
 1261                 { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 8, 0x200000 },
 1262                 { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 8, 0x200000 },
 1263                 { PUC_PORT_TYPE_COM, 0x10, 0x20, COM_FREQ * 8, 0x200000 },
 1264                 { PUC_PORT_TYPE_COM, 0x10, 0x28, COM_FREQ * 8, 0x200000 },
 1265                 { PUC_PORT_TYPE_COM, 0x10, 0x30, COM_FREQ * 8, 0x200000 },
 1266                 { PUC_PORT_TYPE_COM, 0x10, 0x38, COM_FREQ * 8, 0x200000 },
 1267                 { PUC_PORT_TYPE_COM, 0x10, 0x40, COM_FREQ * 8, 0x200000 },
 1268                 { PUC_PORT_TYPE_COM, 0x10, 0x48, COM_FREQ * 8, 0x200000 },
 1269                 { PUC_PORT_TYPE_COM, 0x10, 0x50, COM_FREQ * 8, 0x200000 },
 1270                 { PUC_PORT_TYPE_COM, 0x10, 0x58, COM_FREQ * 8, 0x200000 },
 1271                 { PUC_PORT_TYPE_COM, 0x10, 0x60, COM_FREQ * 8, 0x200000 },
 1272                 { PUC_PORT_TYPE_COM, 0x10, 0x68, COM_FREQ * 8, 0x200000 },
 1273                 { PUC_PORT_TYPE_COM, 0x10, 0x70, COM_FREQ * 8, 0x200000 },
 1274                 { PUC_PORT_TYPE_COM, 0x10, 0x78, COM_FREQ * 8, 0x200000 },
 1275             },
 1276             PUC_ILR_TYPE_DIGI, { 0x07, 0x47 },
 1277         },
 1278 
 1279         {   "Cronyx Omega2-PCI",
 1280             {   0x13a8, 0x0158, 0,      0       },
 1281             {   0xffff, 0xffff, 0,      0       },
 1282             {
 1283                 { PUC_PORT_TYPE_UART, 0x010, 0x000, COM_FREQ * 8, PUC_FLAGS_MEMORY },
 1284                 { PUC_PORT_TYPE_UART, 0x010, 0x200, COM_FREQ * 8, PUC_FLAGS_MEMORY },
 1285                 { PUC_PORT_TYPE_UART, 0x010, 0x400, COM_FREQ * 8, PUC_FLAGS_MEMORY },
 1286                 { PUC_PORT_TYPE_UART, 0x010, 0x600, COM_FREQ * 8, PUC_FLAGS_MEMORY },
 1287                 { PUC_PORT_TYPE_UART, 0x010, 0x800, COM_FREQ * 8, PUC_FLAGS_MEMORY },
 1288                 { PUC_PORT_TYPE_UART, 0x010, 0xA00, COM_FREQ * 8, PUC_FLAGS_MEMORY },
 1289                 { PUC_PORT_TYPE_UART, 0x010, 0xC00, COM_FREQ * 8, PUC_FLAGS_MEMORY },
 1290                 { PUC_PORT_TYPE_UART, 0x010, 0xE00, COM_FREQ * 8, PUC_FLAGS_MEMORY },
 1291             },
 1292         },
 1293 
 1294         /*
 1295          * Boca Research Turbo Serial 654 (4 serial port) card.
 1296          * Appears to be the same as Chase Research PLC PCI-FAST4
 1297          * and Perle PCI-FAST4 Multi-Port serial cards.
 1298          */
 1299         {   "Boca Research Turbo Serial 654",
 1300         {   0x10b5, 0x9050, 0x12e0, 0x0031  },
 1301         {   0xffff, 0xffff, 0xffff, 0xffff  },
 1302         {
 1303                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 4 },
 1304                 { PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 4 },
 1305                 { PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 4 },
 1306                 { PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 4 },
 1307                 },
 1308         },
 1309 
 1310         /*
 1311          * Boca Research Turbo Serial 658 (8 serial port) card.
 1312          * Appears to be the same as Chase Research PLC PCI-FAST8
 1313          * and Perle PCI-FAST8 Multi-Port serial cards.
 1314          */
 1315         {   "Boca Research Turbo Serial 658",
 1316         {   0x10b5, 0x9050, 0x12e0, 0x0021  },
 1317         {   0xffff, 0xffff, 0xffff, 0xffff  },
 1318         {
 1319                 { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 4 },
 1320                 { PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 4 },
 1321                 { PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 4 },
 1322                 { PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 4 },
 1323                 { PUC_PORT_TYPE_COM, 0x18, 0x20, COM_FREQ * 4 },
 1324                 { PUC_PORT_TYPE_COM, 0x18, 0x28, COM_FREQ * 4 },
 1325                 { PUC_PORT_TYPE_COM, 0x18, 0x30, COM_FREQ * 4 },
 1326                 { PUC_PORT_TYPE_COM, 0x18, 0x38, COM_FREQ * 4 },
 1327                 },
 1328         },
 1329 
 1330         {   "Dell RAC III Virtual UART",
 1331             {   0x1028, 0x0008, 0,      0       },
 1332             {   0xffff, 0xffff, 0,      0       },
 1333             {
 1334                 { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ * 128 },
 1335             },
 1336         },
 1337 
 1338         {   "Dell RAC IV/ERA Virtual UART",
 1339             {   0x1028, 0x0012, 0,      0       },
 1340             {   0xffff, 0xffff, 0,      0       },
 1341             {
 1342                 { PUC_PORT_TYPE_COM, 0x14, 0x00, DEFAULT_RCLK * 128 },
 1343             },
 1344         },
 1345 
 1346         { 0 }
 1347 };

Cache object: 551d08133ac4bc0fba6a250fb9ca7ad2


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.