Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 27 Jun 2013 09:20:23 +0000 (UTC)
From:      Marius Strobl <marius@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org
Subject:   svn commit: r252297 - stable/9/sys/dev/puc
Message-ID:  <201306270920.r5R9KNr3077245@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: marius
Date: Thu Jun 27 09:20:22 2013
New Revision: 252297
URL: http://svnweb.freebsd.org/changeset/base/252297

Log:
  MFC: r248340
  
  Add support for Exar XR17V358 8-port serial device to puc(4)

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

Modified: stable/9/sys/dev/puc/pucdata.c
==============================================================================
--- stable/9/sys/dev/puc/pucdata.c	Thu Jun 27 09:14:50 2013	(r252296)
+++ stable/9/sys/dev/puc/pucdata.c	Thu Jun 27 09:20:22 2013	(r252297)
@@ -50,6 +50,7 @@ __FBSDID("$FreeBSD$");
 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_exar_pcie;
 static puc_config_f puc_config_icbook;
 static puc_config_f puc_config_moxa;
 static puc_config_f puc_config_oxford_pcie;
@@ -630,6 +631,14 @@ const struct puc_cfg puc_pci_devices[] =
 	    PUC_PORT_8S, 0x10, 0, -1,
 	},
 
+	/* The XR17V358 uses the 125MHz PCIe clock as its reference clock. */
+	{   0x13a8, 0x0358, 0xffff, 0,
+	    "Exar XR17V358",
+	    125000000,
+	    PUC_PORT_8S, 0x10, 0, -1,
+	    .config_function = puc_config_exar_pcie
+	},
+
 	{   0x13fe, 0x1600, 0x1602, 0x0002,
 	    "Advantech PCI-1602",
 	    DEFAULT_RCLK * 8,
@@ -1186,6 +1195,17 @@ puc_config_exar(struct puc_softc *sc, en
 }
 
 static int
+puc_config_exar_pcie(struct puc_softc *sc, enum puc_cfg_cmd cmd, int port,
+    intptr_t *res)
+{
+	if (cmd == PUC_CFG_GET_OFS) {
+		*res = port * 0x400;
+		return (0);
+	}
+	return (ENXIO);
+}
+
+static int
 puc_config_icbook(struct puc_softc *sc, enum puc_cfg_cmd cmd, int port,
     intptr_t *res)
 {



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201306270920.r5R9KNr3077245>