# D-Link DWA-566 on HEAD



## himay (Jun 4, 2013)

I have been trying to find a wireless card to get my FreeBSD server up and running with (new apartment, wifi included free so I have no control over hardline/router access). Doing some investigation, I decided to go with the DWA-566 card, as it was supposed to run on an Atheros chipset, which is fairly well supported in 9.1-RELEASE.

Alas, not quite. The card (an AR9300 chipset apparently) was a bit newer than 9.1 has reasonable support for. As per this mailing list thread, I have been trying to troubleshoot initialization of this card in FreeBSD-HEAD (10) right now.

Currently, the card reports as follows through `pciconf -lcv`:

```
none1@pci0:4:0:0:	class=0x028000 card=0x3a7e1186 chip=0x0030168c rev=0x01 hdr=0x00
    vendor     = 'Atheros Communications Inc.'
    device     = 'AR9300 Wireless LAN adaptor'
    class      = network
    cap 01[40] = powerspec 3  supports D0 D1 D3  current D0
    cap 05[50] = MSI supports 4 messages, 64 bit, vector masks 
    cap 10[70] = PCI-Express 2 endpoint max data 128(128) link x1(x1)
                 speed 2.5(2.5)
    ecap 0001[100] = AER 1 0 fatal 0 non-fatal 0 corrected
    ecap 0002[140] = VC 1 max VC0
    ecap 0003[300] = Serial 1 0000000000000000
```

Firing up the card with `if_ath` and respective partners compiled as modules (with a tweak in it) and loaded through loader.conf, `dmesg` reports the card as follows:

```
ath0: <Atheros AR938x> mem 0xfe800000-0xfe81ffff irq 47 at device 0.0 on pci4
ar9300_set_stub_functions: setting stub functions
ar9300_set_stub_functions: setting stub functions
ar9300_attach: calling ar9300_hw_attach
ar9300_hw_attach: calling ar9300_eeprom_attach
ar9300_flash_map: unimplemented for now
Restoring Cal data from DRAM
Restoring Cal data from EEPROM
ar9300_hw_attach: ar9300_eeprom_attach returned 0
ath0: RX status length: 48
ath0: RX buffer size: 4096
ath0: TX descriptor length: 128
ath0: TX status length: 36
ath0: TX buffers per descriptor: 4
ar9300_freebsd_setup_x_tx_desc: called, 0x0/0, 0x0/0, 0x0/0
ath_hal_init_channels: cc=0, regdmn=240
ath0: ath_getchannels: unable to collect channel list from hal, status 12
device_attach: ath0 attach returned 22
```

At this point, I'm a little unsure where I need to proceed. It _sounds_ as if the AR9300 is working in HEAD right now, but I don't know if I need to just play patient until the HAL is updated further, or if there's something I'm obviously missing during my installation.

I would graciously appreciate any advice members of this community may have!


----------

