Author: fjoe
Date: Wed Jul 25 17:42:57 2012
New Revision: 238775
URL: http://svn.freebsd.org/changeset/base/238775

Log:
  MFC: r227457, r237350, r237357
  
  Add support for the following Moxa PCIe multiport serial boards:
  - CP102E
  - CP102EL
  - CP104EL-A
  - CP104JU
  - CP114EL
  - CP118EL-A
  - CP168EL-A

Modified:
  stable/8/sys/dev/puc/puc_cfg.h
  stable/8/sys/dev/puc/pucdata.c
Directory Properties:
  stable/8/   (props changed)
  stable/8/sys/   (props changed)
  stable/8/sys/dev/   (props changed)

Modified: stable/8/sys/dev/puc/puc_cfg.h
==============================================================================
--- stable/8/sys/dev/puc/puc_cfg.h      Wed Jul 25 17:25:44 2012        
(r238774)
+++ stable/8/sys/dev/puc/puc_cfg.h      Wed Jul 25 17:42:57 2012        
(r238775)
@@ -79,7 +79,7 @@ struct puc_cfg {
        int8_t          ports;
        int8_t          rid;            /* Rid of first port */
        int8_t          d_rid;          /* Delta rid of next ports */
-       int8_t          d_ofs;          /* Delta offset of next ports */
+       int16_t         d_ofs;          /* Delta offset of next ports */
        puc_config_f    *config_function;
 };
 

Modified: stable/8/sys/dev/puc/pucdata.c
==============================================================================
--- stable/8/sys/dev/puc/pucdata.c      Wed Jul 25 17:25:44 2012        
(r238774)
+++ stable/8/sys/dev/puc/pucdata.c      Wed Jul 25 17:42:57 2012        
(r238775)
@@ -51,6 +51,7 @@ static puc_config_f puc_config_amc;
 static puc_config_f puc_config_diva;
 static puc_config_f puc_config_exar;
 static puc_config_f puc_config_icbook;
+static puc_config_f puc_config_moxa;
 static puc_config_f puc_config_oxford_pcie;
 static puc_config_f puc_config_quatech;
 static puc_config_f puc_config_syba;
@@ -506,6 +507,18 @@ const struct puc_cfg puc_pci_devices[] =
            .config_function = puc_config_quatech
        },
 
+       {   0x1393, 0x1024, 0xffff, 0,
+           "Moxa Technologies, Smartio CP-102E/PCIe",
+           DEFAULT_RCLK * 8,
+           PUC_PORT_2S, 0x14, 0, 0x200
+       },
+
+       {   0x1393, 0x1025, 0xffff, 0,
+           "Moxa Technologies, Smartio CP-102EL/PCIe",
+           DEFAULT_RCLK * 8,
+           PUC_PORT_2S, 0x14, 0, 0x200,
+       },
+
        {   0x1393, 0x1040, 0xffff, 0,
            "Moxa Technologies, Smartio C104H/PCI",
            DEFAULT_RCLK * 8,
@@ -518,12 +531,25 @@ const struct puc_cfg puc_pci_devices[] =
            PUC_PORT_4S, 0x18, 0, 8,
        },
 
+       {   0x1393, 0x1042, 0xffff, 0,
+           "Moxa Technologies, Smartio CP-104JU/PCI",
+           DEFAULT_RCLK * 8,
+           PUC_PORT_4S, 0x18, 0, 8,
+       },
+
        {   0x1393, 0x1043, 0xffff, 0,
            "Moxa Technologies, Smartio CP-104EL/PCIe",
            DEFAULT_RCLK * 8,
            PUC_PORT_4S, 0x18, 0, 8,
        },
 
+       {   0x1393, 0x1045, 0xffff, 0,
+           "Moxa Technologies, Smartio CP-104EL-A/PCIe",
+           DEFAULT_RCLK * 8,
+           PUC_PORT_4S, 0x14, 0, -1,
+               .config_function = puc_config_moxa
+       },
+
        {   0x1393, 0x1120, 0xffff, 0,
            "Moxa Technologies, CP-112UL",
            DEFAULT_RCLK * 8,
@@ -536,6 +562,19 @@ const struct puc_cfg puc_pci_devices[] =
            PUC_PORT_4S, 0x18, 0, 8,
        },
 
+       {   0x1393, 0x1144, 0xffff, 0,
+           "Moxa Technologies, Smartio CP-114EL/PCIe",
+           DEFAULT_RCLK * 8,
+           PUC_PORT_4S, 0x14, 0, -1,
+               .config_function = puc_config_moxa
+       },
+
+       {   0x1393, 0x1182, 0xffff, 0,
+           "Moxa Technologies, Smartio CP-118EL-A/PCIe",
+           DEFAULT_RCLK * 8,
+           PUC_PORT_8S, 0x14, 0, 0x200,
+       },
+
        {   0x1393, 0x1680, 0xffff, 0,
            "Moxa Technologies, C168H/PCI",
            DEFAULT_RCLK * 8,
@@ -554,6 +593,12 @@ const struct puc_cfg puc_pci_devices[] =
            PUC_PORT_8S, 0x18, 0, 8,
        },
 
+       {   0x1393, 0x1683, 0xffff, 0,
+           "Moxa Technologies, Smartio CP-168EL-A/PCIe",
+           DEFAULT_RCLK * 8,
+           PUC_PORT_8S, 0x14, 0, 0x200,
+       },
+
        {   0x13a8, 0x0152, 0xffff, 0,
            "Exar XR17C/D152",
            DEFAULT_RCLK * 8,
@@ -1104,6 +1149,17 @@ puc_config_icbook(struct puc_softc *sc, 
 }
 
 static int
+puc_config_moxa(struct puc_softc *sc, enum puc_cfg_cmd cmd, int port,
+    intptr_t *res)
+{
+       if (cmd == PUC_CFG_GET_OFS) {
+               *res = ((port == 3) ? 7 : port) * 0x200;
+               return 0;
+       }
+       return (ENXIO);
+}
+
+static int
 puc_config_quatech(struct puc_softc *sc, enum puc_cfg_cmd cmd, int port,
     intptr_t *res)
 {
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to