Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 27 May 2011 15:33:03 -0400
From:      John Baldwin <jhb@freebsd.org>
To:        Mike Tancsa <mike@sentex.net>
Cc:        Marcel Moolenaar <marcel@freebsd.org>, freebsd-stable@freebsd.org, freebsd-hardware@freebsd.org
Subject:   Re: modem support MT9234ZPX-PCIE-NV
Message-ID:  <201105271533.03445.jhb@freebsd.org>
In-Reply-To: <4DDFE56E.3000406@sentex.net>
References:  <20110521092037.GB3271@vpn.offrom.nl> <201105271200.12062.jhb@freebsd.org> <4DDFE56E.3000406@sentex.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Friday, May 27, 2011 1:54:54 pm Mike Tancsa wrote:
> On 5/27/2011 12:00 PM, John Baldwin wrote:
> >>
> >> uart2@pci0:5:0:0:       class=0x070002 card=0x20282205 chip=0x015213a8
> >> rev=0x02 hdr=0x00
> >>     vendor     = 'Exar Corp.'
> >>     device     = 'XR17C/D152 Dual PCI UART'
> >>     class      = simple comms
> >>     subclass   = UART
> > 
> > Possibly.  Did you try adding it via puc instead?
> 
> Yes, same result. But I am not sure what values to plugin for some of
> the options.
> 
> I tried this is uart
> 
> 1(ich10)# diff -u uart_bus_pci.c.orig uart_bus_pci.c
> --- uart_bus_pci.c.orig 2011-05-24 17:10:21.000000000 -0400
> +++ uart_bus_pci.c      2011-05-27 10:49:05.000000000 -0400
> @@ -110,6 +110,8 @@
>  { 0x1415, 0x950b, 0xffff, 0, "Oxford Semiconductor OXCB950 Cardbus
> 16950 UART",
>         0x10, 16384000 },
>  { 0x151f, 0x0000, 0xffff, 0, "TOPIC Semiconductor TP560 56k modem", 0x10 },
> +{ 0x13a8, 0x0152, 0x2205, 0x2028, "MultiTech MultiModem ZPX", 0x10,
> +       8 * DEFAULT_RCLK },
>  { 0x9710, 0x9835, 0x1000, 1, "NetMos NM9835 Serial Port", 0x10 },
>  { 0x9710, 0x9865, 0xa000, 0x1000, "NetMos NM9865 Serial Port", 0x10 },
>  { 0x9710, 0x9901, 0xa000, 0x1000,
> 1(ich10)#
> 
> Then I removed the entry from uart and added the following for pucdata.c
> 
> 
>         {   0x13a8, 0x0152, 0xffff, 0,
>             "Exar Multitech",
>             DEFAULT_RCLK * 8,
>             PUC_PORT_2S, 0x10, 0, -1,
>         },
> 
> But it does not seem to want to attach ?

Actually, can you just try this:

Index: pucdata.c
===================================================================
--- pucdata.c	(revision 222364)
+++ pucdata.c	(working copy)
@@ -48,7 +48,6 @@ __FBSDID("$FreeBSD$");
 #include <dev/puc/puc_bfe.h>
 
 static puc_config_f puc_config_amc;
-static puc_config_f puc_config_cronyx;
 static puc_config_f puc_config_diva;
 static puc_config_f puc_config_icbook;
 static puc_config_f puc_config_quatech;
@@ -548,11 +547,22 @@ const struct puc_cfg puc_pci_devices[] = {
 	    PUC_PORT_8S, 0x18, 0, 8,
 	},
 
+	{   0x13a8, 0x0152, 0xffff, 0,
+	    "Exar XR17C/D152",
+	    DEFAULT_RCLK * 8,
+	    PUC_PORT_2S, 0x10, 0, 0x200,
+	},
+
+	{   0x13a8, 0x0154, 0xffff, 0,
+	    "Exar XR17C154",
+	    DEFAULT_RCLK * 8,
+	    PUC_PORT_4S, 0x10, 0, 0x200,
+	},
+
 	{   0x13a8, 0x0158, 0xffff, 0,
-	    "Cronyx Omega2-PCI",
+	    "Exar XR17C158",
 	    DEFAULT_RCLK * 8,
-	    PUC_PORT_8S, 0x10, 0, -1,
-	    .config_function = puc_config_cronyx
+	    PUC_PORT_8S, 0x10, 0, 0x200,
 	},
 
 	{   0x13a8, 0x0258, 0xffff, 0,
@@ -1014,17 +1024,6 @@ puc_config_amc(struct puc_softc *sc, enum puc_cfg_
 }
 
 static int
-puc_config_cronyx(struct puc_softc *sc, enum puc_cfg_cmd cmd, int port,
-    intptr_t *res)
-{
-	if (cmd == PUC_CFG_GET_OFS) {
-		*res = port * 0x200;
-		return (0);
-	}
-	return (ENXIO);
-}
-
-static int
 puc_config_diva(struct puc_softc *sc, enum puc_cfg_cmd cmd, int port,
     intptr_t *res)
 {

-- 
John Baldwin



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