# Wifi PCI card issues



## Les Ferguson (Oct 29, 2016)

I have plugged in a PCI card which is labelled with:
[FONT=Courier New]NETGEAR 54 Mbps wireless PCI Adapter
32-bit PCI WG311 v2[/FONT]​
This suggests that it is supported by the ath driver.  However, when I run pciconf -lv it is recognized as:
[FONT=Courier New]none1@pci0:3:12:0: class=0x028000 card=0x4c001385 chip=0x9066104c rev=0x00 hdr=0x00
    vendor     = 'Texas Instruments'
    device     = 'ACX 111 54Mbps Wireless Interface'
    class      = network[/FONT]​
which I don't understand.  I don't know how to get this card recognized correctly or how to get if_ath assigned to it.  Have read a few varying instructions but they don't address this particular model.

Other things I have observed;  ath_pci seems to be loaded, and most of what I expect to see for wlan connection:
[FONT=Courier New]kldstat -v | grep ath
  97 pci/ath_pci

kldstat -v | grep wlan
  419 wlan_wep
  418 wlan_tkip
  417 wlan_ccmp
  416 wlan_amrr
  422 wlan_sta
  421 wlan_ratectl_none
  420 wlan[/FONT]​
But when I try to set it up as suggested, it fails:
[FONT=Courier New]ifconfig wlan0 create wlandev ath0
ifconfig: SIOCIFCREATE2: Device not configured[/FONT]​
Is there a wireless setup tool I am missing?  How can I get this device working?

Thnx,
Les.


----------



## tingo (Oct 30, 2016)

Hmm, there used to be a net/acx100 port, but it seems nobody cared for it, and it expired in 2014. Freshports have the details: https://www.freshports.org/net/acx100/
It might not be relevant.
The following WG311 cards are mentioned in ath_hal(4):

```
root@kg-v7# man ath_hal | grep WG311
     Netgear WG311 (aka WG311v1)
     Netgear WG311v2      AR5212    PCI        b/g
     Netgear WG311T       AR5212    PCI        b/g
```
so it should be supported. Is the if_ath module loaded?


----------



## Les Ferguson (Oct 31, 2016)

I added [FONT=Courier New]if_ath[/FONT] to[FONT=Courier New] loader.conf[/FONT], both with and without[FONT=Courier New] if_ath_pci[/FONT], it doesn't get associated with the PCI device.

kldload suggests that if_ath is already in the kernel, so not sure if I need to add it to loader.conf.

I'm wondering if ath_hal is logging anything, but haven't worked out where to look.


----------



## Atsuri (Oct 31, 2016)

I'm afraid that you're just like me, an unlucky receiver of the Netgear WG311v2 with the Texas Instruments wireless ACX100/111 chip. There used to be some drivers for GNU/Linux, though only for 32-bit architectures.
The net/acx100 port might provide the drivers you need, though . You could try pulling in an earlier revision of the Ports Tree for this port specifically and see if it compiles for you. Unfortunately, I have no means of testing this PCI card as it does not fit any of my PCs anymore .


----------



## Les Ferguson (Nov 1, 2016)

What are my chances of getting the windows drivers to work using ndisgen?  Will install kernel source and a few other requirements and try this.


----------



## Atsuri (Nov 1, 2016)

Some information on network cards and ndisgen specifically here. It might work, but the problem is that the Windows driver is ancient and supports only WAP encryption (no WEP or WEP2). You might try getting one of the TP-LINK USB wireless adapters. They usually come with a Realtek chip that's well supported on FreeBSD. I tried TL-WN725N and TL-WN823N. Both work very well.


----------



## T-Daemon (Nov 1, 2016)

Atsuri said:


> The net/acx100 port might provide the drivers you need, though ￼. You could try pulling in an earlier revision of the Ports Tree for this port specifically and see if it compiles for you.


The original port doesn’t work on newer FreeBSD versions, I’ve already tried. The port expired in 2014, to build successfully the ports Makefile needs to be revised.



Les Ferguson said:


> What are my chances of getting the windows drivers to work using ndisgen?  Will install kernel source and a few other requirements and try this.


Netgear provides only a 32-bit driver for that card, If you are running FreeBSD amd64 it won’t work. To quote the "Using Windows NDIS Drivers" part of the Handbook: "The driver bit width must match the version of FreeBSD. For FreeBSD/i386, use a Windows® 32-bit driver. For FreeBSD/amd64, a Windows® 64-bit driver is needed."

Anyway, I tried ndisgen on the windows driver on a amd64/11.0-R platform, it builds nicely, the driver module can be loaded, but the firmware module, FwRad16.bin.ko or FwRad17.bin.ko, won’t load, it aborts with the error massage "Object is not dynamically-linked". If you are running FreeBSD i386 it might work.

But as Atsuri mentioned: ancient driver (Windows 98/2000/ME/XP), no WEP/WEP2. Better get a newer card with full FreeBSD support.


----------



## Les Ferguson (Nov 1, 2016)

Thanks guys.  I created the module but couldn't get it to load.  Rugged determination to re-use parts from my old collection has faded away.
Will get a new wifi interface or maybe a router so I have a port to plug it into.


----------

