Atheros AR2427 in FreeBSD 8.1

Iván Zaera Avellón izaera at gmail.com
Mon Aug 2 07:14:55 UTC 2010


Hi there:

It's not only a problem of your card. I have an Eee PC 1005HA with another
atheros card (officially supporter) and I experience the same error. I have
open a PR, have a look at it here:

http://www.freebsd.org/cgi/query-pr.cgi?pr=148112

It seems to be a problem of the wireless or the ath driver.

Regards,
Ivan


2010/7/31 Макарук Роман Валерьевич <n_diablo_n_f at pochta.ru>

>     Hello! I have Asus Eee PC 1001PX wich Atheros AR2427. This Wi-Fi
> officially not supported by driver ath. But in OpenBSD and Linux this card
> supported.
>
>     I added to ath/ath_hal/ar9285_attath.c:
>
> ar9285Probe(uint16_t vendorid, uint16_t devid)
> tatic const char* ar9285Probe(uint16_t vendorid, uint16_t devid)
> {
>        if (vendorid == ATHEROS_VENDOR_ID &amp;&amp; devid ==
> AR9285_DEVID_PCIE)
>                return "Atheros 9285";
>        if (vendorid == ATHEROS_VENDOR_ID &amp;&amp; devid ==
> AR2427_DEVID_PCIE)
>                return "Atheros 2427";
>        return AH_NULL;
> }
>
>   And to /ath/ath_hal_ah_dev_id.h:
>
> #define AR2427_DEVID_PCIE    0x002c
>
>   I compile ath module witch debug. And the WiFi has to work. But then i
> try to connect tp AP witch WEP crypt i see next: "ath0: bb hang detected
> (0x80), reseting".
>
>   And my home AP DI-524 (WPA-PSK crypt) can not be found.
>
>   By this, I have a few questions. Can anyone help solve this problem and
> finish the driver. And will the official support for this card in the
> FreeBSD?
>
>   Appendix:
>
> #kldload if_ath
>
> pci0: driver added
> found->   vendor=0x8086, dev=0x27d8, revid=0x02
>   domain=0, bus=0, slot=27, func=0
>   class=04-03-00, hdrtype=0x00, mfdev=0
>   cmdreg=0x0006, statreg=0x0010, cachelnsz=8 (dwords)
>   lattimer=0x00 (0 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns)
>   intpin=a, irq=22
>   powerspec 2  supports D0 D3  current D0
>   MSI supports 1 message, 64 bit
> pci0:0:27:0: reprobing on driver added
> found->   vendor=0x8086, dev=0x27da, revid=0x02
>   domain=0, bus=0, slot=31, func=3
>   class=0c-05-00, hdrtype=0x00, mfdev=0
>   cmdreg=0x0001, statreg=0x0280, cachelnsz=0 (dwords)
>   lattimer=0x00 (0 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns)
>   intpin=b, irq=21
> pci0:0:31:3: reprobing on driver added
> pci1: driver added
> pci2: driver added
> found->   vendor=0x168c, dev=0x002c, revid=0x01
>   domain=0, bus=2, slot=0, func=0
>   class=02-80-00, hdrtype=0x00, mfdev=0
>   cmdreg=0x0407, statreg=0x0010, cachelnsz=8 (dwords)
>   lattimer=0x00 (0 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns)
>   intpin=a, irq=17
>   powerspec 3  supports D0 D1 D3  current D0
>   MSI supports 1 message
> pci0:2:0:0: reprobing on driver added
> ath0:  mem 0xfbff0000-0xfbffffff irq 17 at device 0.0 on pci2
> pcib2: ath0 requested memory range 0xfbff0000-0xfbffffff: good
> ioapic0: routing intpin 17 (PCI IRQ 17) to lapic 0 vector 59
> ath0: [MPSAFE]
> ath0: [ITHREAD]
> ar9285Attach: sc 0xc49ca000 st 0x1 sh 0xe678d000
> ar5416SetPowerMode: AWAKE -> AWAKE (set chip )
> ar9285Attach: AR_SREV 0xc02ff
> ar9285Attach: ID 0xc02ff VERSION 0x3 TYPE 0x0 REVISION 0x2
> ath_hal_v4kEepromAttach Eeprom Magic = 0xa55a
> ath_hal_v4kEepromAttach Eeprom Version 14.13
> v4kEepromReadCTLInfo Numctls = 6
> ar5416SetPowerMode: AWAKE -> AWAKE (set chip )
> ar9280RfAttach: attach AR9280 radio
> enableAniMIBCounters: Enable mib counters: OfdmPhyErrBase 0x0 cckPhyErrBase
> 0x0
> ar9285Attach: return
> getchannels: cc 0 regDmn 0xf0 mode 0xffffff ecm
> getregstate: EEPROM cc 0 rd 0x10
> getregstate: EEPROM rd 0x60
> getchannels: !avail mode 0x6800c (0x2) flags 0x2150
> getchannels: !avail mode 0x6800c (0x1) flags 0x140
> ar5416GetChipPowerLimits: no min/max power for 2412/0xa0
> Chan 2412: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2417/0xa0
> Chan 2417: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2422/0xa0
> Chan 2422: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2427/0xa0
> Chan 2427: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2432/0xa0
> Chan 2432: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2437/0xa0
> Chan 2437: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2442/0xa0
> Chan 2442: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2447/0xa0
> Chan 2447: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2452/0xa0
> Chan 2452: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2457/0xa0
> Chan 2457: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2462/0xa0
> Chan 2462: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2467/0xa0
> Chan 2467: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2472/0xa0
> Chan 2472: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2484/0xa0
> Chan 2484: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2412/0x480
> Chan 2412: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2417/0x480
> Chan 2417: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2422/0x480
> Chan 2422: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2427/0x480
> Chan 2427: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2432/0x480
> Chan 2432: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2437/0x480
> Chan 2437: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2442/0x480
> Chan 2442: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2447/0x480
> Chan 2447: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2452/0x480
> Chan 2452: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2457/0x480
> Chan 2457: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2462/0x480
> Chan 2462: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2467/0x480
> Chan 2467: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2472/0x480
> Chan 2472: MaxPow = 63 MinPow = 0
> getchannels: !avail mode 0x6800c (0x20) flags 0xd0
> getchannels: !avail mode 0x6800c (0x40) flags 0x150
> getchannels: !avail mode 0x6800c (0x400) flags 0x8140
> getchannels: !avail mode 0x6800c (0x200) flags 0x4140
> getchannels: !avail mode 0x6800c (0x1000) flags 0x8480
> getchannels: !avail mode 0x6800c (0x800) flags 0x4480
> ar5416GetChipPowerLimits: no min/max power for 2412/0x10480
> Chan 2412: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2417/0x10480
> Chan 2417: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2422/0x10480
> Chan 2422: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2427/0x10480
> Chan 2427: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2432/0x10480
> Chan 2432: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2437/0x10480
> Chan 2437: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2442/0x10480
> Chan 2442: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2447/0x10480
> Chan 2447: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2452/0x10480
> Chan 2452: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2457/0x10480
> Chan 2457: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2462/0x10480
> Chan 2462: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2467/0x10480
> Chan 2467: MaxPow = 63 MinPow = 0
> ar5416GetChipPowerLimits: no min/max power for 2472/0x10480
> Chan 2472: MaxPow = 63 MinPow = 0
> getchannels: !avail mode 0x6800c (0x10000) flags 0x10140
> getchannels: !avail mode 0x6800c (0x80000) flags 0x20140
> getchannels: !avail mode 0x6800c (0x100000) flags 0x40140
> assignPrivateChannels: private[  0] 2412/0xa0 -> channel 2412
> assignPrivateChannels: private[  1] 2417/0xa0 -> channel 2417
> assignPrivateChannels: private[  2] 2422/0xa0 -> channel 2422
> assignPrivateChannels: private[  3] 2427/0xa0 -> channel 2427
> assignPrivateChannels: private[  4] 2432/0xa0 -> channel 2432
> assignPrivateChannels: private[  5] 2437/0xa0 -> channel 2437
> assignPrivateChannels: private[  6] 2442/0xa0 -> channel 2442
> assignPrivateChannels: private[  7] 2447/0xa0 -> channel 2447
> assignPrivateChannels: private[  8] 2452/0xa0 -> channel 2452
> assignPrivateChannels: private[  9] 2457/0xa0 -> channel 2457
> assignPrivateChannels: private[ 10] 2462/0xa0 -> channel 2462
> assignPrivateChannels: private[ 11] 2467/0x2a0 -> channel 2467
> assignPrivateChannels: private[ 12] 2472/0x2a0 -> channel 2472
> assignPrivateChannels: private[ 13] 2484/0x2a0 -> channel 2484
> assignPrivateChannels: 40 public, 14 private channels
> ath_hal_init_channels: cc 0
> ath_getchannels: eeprom rd 96 cc 0 (mapped rd 96 cc 0) location I ecm
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_hal_computetxtime: unknown phy 4 (rate ix 8)
> ath_descdma_setup: rx DMA: 40 buffers 1 desc/buf
> ath_descdma_setup: rx DMA map: 0xe679e000 (3840) -> 0x2325e000 (3840)
> ath_descdma_setup: tx DMA: 200 buffers 10 desc/buf
> ath_descdma_setup: tx DMA map: 0xe67cd000 (192000) -> 0x20400000 (192000)
> ath_descdma_setup: beacon DMA: 4 buffers 1 desc/buf
> ath_descdma_setup: beacon DMA map: 0xe67fd000 (384) -> 0x1570d000 (384)
> ar5212SetupTxQueue: queue 9
> ar5212SetupTxQueue: queue 8
> ar5212SetupTxQueue: queue 0
> ar5212SetupTxQueue: queue 1
> ar5212SetupTxQueue: queue 2
> ar5212SetupTxQueue: queue 3
> ath0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps
> ath0: 11g rates: 1Mbps 2Mbps 5.5Mbps 11Mbps 6Mbps 9Mbps 12Mbps 18Mbps
> 24Mbps 36Mbps 48Mbps 54Mbps
> ath0: 11ng MCS: 15Mbps 30Mbps 45Mbps 60Mbps 90Mbps 120Mbps 135Mbps 150Mbps
> 30Mbps 60Mbps 90Mbps 120Mbps 180Mbps 240Mbps 270Mbps 300Mbps
> ath0: AR9285 mac 192.2 RF5133 phy 14.0
> ath0: Use hw queue 1 for WME_AC_BE traffic
> ath0: Use hw queue 0 for WME_AC_BK traffic
> ath0: Use hw queue 2 for WME_AC_VI traffic
> ath0: Use hw queue 3 for WME_AC_VO traffic
> ath0: Use hw queue 8 for CAB traffic
> ath0: Use hw queue 9 for beacons
> ath0: using multicast key search
> pci4: driver added
> pci5: driver added
>
>
> _______________________________________________
> freebsd-stable at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-stable
> To unsubscribe, send any mail to "freebsd-stable-unsubscribe at freebsd.org"
>



-- 
Ivan Zaera
http://www.factoria2.com/desde/correo


More information about the freebsd-stable mailing list