# Driver for this Atheros card (DWA-552)?



## rambetter (Mar 4, 2011)

I am trying a new PCI card in my router, it's a D-Link DWA-552.  Running GENERIC 7.4 i386 kernel.  Seems that no driver is "registered" for this chip.  I thought that ath would do it.

Output of "pciconf -lv":


```
none1@pci0:1:0:0:	class=0x028000 card=0x3a7d1186 chip=0x0029168c rev=0x01 hdr=0x00
    vendor     = 'Atheros Communications Inc.'
    class      = network
```

Relevant lines in GENERIC kernel:


```
device          ath             # Atheros pci/cardbus NIC's
device          ath_hal         # Atheros HAL (Hardware Access Layer)
options         AH_SUPPORT_AR5416       # enable AR5416 tx/rx descriptors
device          ath_rate_sample # SampleRate tx rate control for ath
```


Are some additional modules needed or something like that?  I read on forums and elsewhere that the AH_SUPPORT_AR5416 should do the trick for this particular card, but it seems still not to work.


----------



## SirDice (Mar 4, 2011)

I had a quick look at the source and it looks like this chip ID is supported on 7.4:

```
#define AR9280_DEVID_PCI	0x0029          /* AR9280 PCI Merlin */
```
http://www.freebsd.org/cgi/cvsweb.c..._devid.h?rev=1.1.2.1;only_with_tag=RELENG_7_4


----------



## rambetter (Mar 4, 2011)

So what magic do I need to perform to get a driver loaded for this piece of hardware?


----------



## richardpl (Mar 4, 2011)

Look in dmesg output, perhaps ath failed to attach....


----------



## rambetter (Mar 4, 2011)

Nothing interesting in dmesg.
I'm going to remove /usr/src/, get it again, recompile GENERIC and world, just as a sanity check.


----------



## rambetter (Mar 5, 2011)

Bad news.  I recompiled world and GENERIC kernel after deleting /usr/src/ and getting RELENG_7_4.  Still no worky.

Grepping for "ath" in the output of "dmesg -a" did not give any interesting hits.

How does this line:


```
#define AR9280_DEVID_PCI	0x0029          /* AR9280 PCI Merlin */
```

"enable" the driver for chip ID 0x0029168c?  Does it take the first 2 bytes of that number and do something with it?  Maybe it's time for me to read through this source code.  Yes it is in fact.


----------



## richardpl (Mar 5, 2011)

Ask on mailing list where devs are.


----------



## rambetter (Mar 6, 2011)

Just joined freebsd-current and svn-head, am about to set up a CURRENT machine.


----------



## SirDice (Mar 6, 2011)

rambetter said:
			
		

> How does this line:
> 
> 
> ```
> ...


The last 4 bytes (in this case 0x168c) point to Atheros. The other 4 bytes (0x0029) indicates the chip ID. 

If that driver doesn't work for you I suggest filing a PR or contact the freebsd-drivers mailinglist.


----------

