Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 07 Aug 2001 15:38:36 -0400
From:      "Eric M. Johnston" <emj@postal.net>
To:        freebsd-hackers <freebsd-hackers@freebsd.org>
Subject:   Re: Linksys WDT11/WPC11 Combo
Message-ID:  <3B7043BC.39926AD8@postal.net>
References:  <3B6DF2F2.9080302@nettek-llc.com>

next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format.
--------------030FF1D367CD8E619FBEF092
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

Steve,

Here's a patch I did against -STABLE circa mid-June.  It probably won't
apply cleanly today -- I think the 2x MAC address read has been MFC'd. 
Pretty minor changes, though; it works great for me.

Enjoy,

Eric

Steve Logue wrote:
> 
> Sorry if this is a duplicate....
> 
> Hello,
> 
> Does anyone have any patches for preliminary support of the Linksys
> WDT11/WPC11 wireless ethernet combo?  The WDT card uses the PLX PCI9052
> chipset and shows up under -STABLE's dmesg as:
> 
> pci0: <unknown card> (vendor=0x16ab, dev=0x1102) at 19.0 irq 12
> 
> With what I have been reading so far on the PLX thread, I appear to have
> a different dev number.  Most people have talked about dev=1101, but I
> have dev=1102.  Is this a new rev of the board?  How can I get this
> working?
> 
> Patches for -CURRENT or -STABLE would be appreciated.
> 
> -STEVEl
> 
> To Unsubscribe: send mail to majordomo@FreeBSD.org
> with "unsubscribe freebsd-hackers" in the body of the message
--------------030FF1D367CD8E619FBEF092
Content-Type: text/plain; charset=us-ascii;
 name="wi.patch"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="wi.patch"

--- share/man/man4/wi.save	Sun Jun 10 06:13:04 2001
+++ share/man/man4/wi.4	Sun Jun 10 06:09:01 2001
@@ -53,6 +53,12 @@ Both the original
 2Mbps WaveLAN/IEEE cards and the newer 6Mbps WaveLAN/IEEE Turbo
 adapters are supported.
 .Pp
+Additionally, the
+.Nm
+driver supports PCI adapters for the cards based PLX Techology's PCI 9052,
+such as the Linksys WDT11 Wireless PCI Adapter which works in conjunction
+with the WPC11 Wireless Network PC Card.
+.Pp
 The core of the WaveLAN/IEEE is the Lucent Hermes controller.
 All
 host/device interaction is via programmed I/O with the Hermes.


--- sys/i386/isa/if_wi.save	Sat Jun  9 23:51:31 2001
+++ sys/i386/isa/if_wi.c	Sun Jun 10 06:31:10 2001
@@ -230,6 +230,7 @@ wi_pci_probe(dev)
 	struct wi_softc		*sc;
 
 	sc = device_get_softc(dev);
+	/* XXX Getting a little unwieldy... */
 	if ((pci_get_vendor(dev) == WI_PCI_VENDOR_EUMITCOM) &&
 		(pci_get_device(dev) == WI_PCI_DEVICE_PRISM2STA)) {
 			sc->wi_prism2 = 1;
@@ -237,6 +238,20 @@ wi_pci_probe(dev)
 			    "PRISM2STA PCI WaveLAN/IEEE 802.11");
 			return (0);
 	}
+	if ((pci_get_vendor(dev) == WI_PCI_VENDOR_LINKSYS) &&
+		(pci_get_device(dev) == WI_PCI_DEVICE_WDT11)) {
+			sc->wi_prism2 = 1;
+			device_set_desc(dev,
+			    "Linksys WDT11 Wireless PCI Adapter");
+			return (0);
+	}
+	if ((pci_get_vendor(dev) == WI_PCI_VENDOR_GLOBALSUN) &&
+		(pci_get_device(dev) == WI_PCI_DEVICE_GL24110P)) {
+			sc->wi_prism2 = 1;
+			device_set_desc(dev,
+			    "Global Sun GL24110P Wireless PCI Adapter");
+			return (0);
+	}
 	return(ENXIO);
 }
 
@@ -399,9 +414,15 @@ wi_generic_attach(device_t dev)
 	/* Reset the NIC. */
 	wi_reset(sc);
 
-	/* Read the station address. */
+	/*
+	 * Read the station address.
+	 * And do it twice. I've seen PRISM-based cards that return
+	 * an error when trying to read it the first time, which causes
+	 * the probe to fail.
+	 */
 	mac.wi_type = WI_RID_MAC_NODE;
 	mac.wi_len = 4;
+	wi_read_record(sc, (struct wi_ltv_gen *)&mac);
 	if ((error = wi_read_record(sc, (struct wi_ltv_gen *)&mac)) != 0) {
 		device_printf(dev, "mac read failed %d\n", error);
 		wi_free(dev);


--- sys/i386/isa/if_wireg.save	Sat Jun  9 23:51:41 2001
+++ sys/i386/isa/if_wireg.h	Sun Jun 10 06:27:17 2001
@@ -147,7 +147,12 @@ struct wi_softc	{
 #define WI_PCI_IORES	0x1C
 
 #define WI_PCI_VENDOR_EUMITCOM		0x1638
-#define WI_PCI_DEVICE_PRISM2STA		0x1100
+#define WI_PCI_DEVICE_PRISM2STA		0x1100	/* Eumitcom PCI WL11000 */
+#define WI_PCI_VENDOR_LINKSYS		0x16AB
+#define WI_PCI_DEVICE_WDT11		0x1102	/* Linksys PCI WPC11 */
+#define WI_PCI_VENDOR_GLOBALSUN		0x16AB
+#define WI_PCI_DEVICE_GL24110P		0x1101	/* Global Sun GL24110P */
+
 #define WI_HFA384X_SWSUPPORT0_OFF	0x28
 #define WI_PRISM2STA_MAGIC		0x4A2D
 



--------------030FF1D367CD8E619FBEF092--


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3B7043BC.39926AD8>