On Mon, Sep 19, 2005 at 04:27:09AM -0600, Reyk Floeter wrote:
> CVSROOT:      /cvs
> Module name:  src
> Changes by:   [EMAIL PROTECTED]       2005/09/19 04:27:08
> 
> Modified files:
>       sys/dev/ic     : ar5210.c ar5211.c ar5212.c ar5xxx.c ar5xxx.h 
>                        ath.c 
> 
> Log message:
> don't attach unsupported radio chipsets

Hi,

This seems to have broken my laptop entirely (dmesg at
<https://marc.theaimsgroup.com/?l=openbsd-misc&m=112667018017607&w=2>).

...
ath0 at pci1 dev 2 function 0 "Atheros AR5212" rev 0x01: irq 11
ath: AR5213 5.9 phy 4.3 rf2112a 4.6, WOR4W, address 00:0e:9b:b3:27:d1
uvm_fault(0xd05cd960, 0x4000, 0, 1) -> e
kernel: page fault trap, code=0
Stopped at      ar5k_ar5212_set_gpio_input+0x4d:        movl    0x4014(%ebx),%e
ax
ddb> trace
ar5k_ar5212_set_gpio_input(d1f81000,3,10,d1f80030,1) at ar5k_ar5212_set_gpio_in
put+0x4d
ath_gpio_attach(d1f80000,13,d0596a28,d1f80000) at ath_gpio_attach+0x4b
ath_attach(13,d1f80000,4,d057aeac) at ath_attach+0x50c
ath_pci_attach(d1f7dec0,d1f80000,d06f2cb0,0,0) at ath_pci_attach+0x123
config_attach(d1f7dec0,d057aeac,d06f2cb0,d0360808) at config_attach+0xef
pciattach(d1f7df00,d1f7dec0,d06f2d50,0,d05807e4) at pciattach+0x1c8
config_attach(d1f7df00,d0579fe8,d06f2d50,d03a1cb0,d0547d64) at config_attach+0x
ef
ppbattach(d1f60f40,d1f7df00,d06f2df0,0,0) at ppbattach+0x8e
config_attach(d1f60f40,d057a660,d06f2df0,d0360808) at config_attach+0xef
pciattach(d1f60fc0,d1f60f40,d06f2eb0,0,d0589b98) at pciattach+0x1c8
config_attach(d1f60fc0,d0579fe8,d06f2eb0,d03603d4) at config_attach+0xef
mainbus_attach(0,d1f60fc0,0,0,d06f2f10) at mainbus_attach+0x164
config_attach(0,d0579fc4,0,0,d05cda40) at config_attach+0xef
config_rootfound(d0514cbc,0,d06f2f58,d03373f8) at config_rootfound+0x27
cpu_configure(0,1,3,0,5f6e0000) at cpu_configure+0x1f
main(0,0,0,0,0) at main+0x339
ddb> ps
   PID   PPID   PGRP    UID  S       FLAGS  WAIT       COMMAND
*    0     -1      0      0  7     0x80204             swapper
ddb>
...

Following <http://www.benzedrine.cx/crashreport.html>, I have
narrowed down the crash point to line 122 of machine/pio.h:

...
/usr/src/sys/dev/ic/ar5212.c:1933
    34ac:       8b 59 14                mov    0x14(%ecx),%ebx
    34af:       ba 03 00 00 00          mov    $0x3,%edx
    34b4:       8d 0c 00                lea    (%eax,%eax,1),%ecx
    34b7:       d3 e2                   shl    $cl,$edx
machine/pio.h:122
    34b9:       9b 83 14 40 00 00       mov    0x4014(%ebx),%eax
/usr/src/sys/dev/ic/ar5212.c:1933
    34bf:       f7 d2                   not    %edx
...

And the actual C file:

...
        AR4K_REG_WRITE(AR4K_AR5212_GPIOCR,
            (AR5K_REG_READ(AR5K_AR5212_GPIOCR) &~ AR5K_AR5212_GPIOCR_ALL(gpio))
            | AR5K_AR5212_GPIOCR_NONE(gpio));
...

I hope I didn't copy anything wrong.  I still have the exact CVS
checkout that I built this kernel with, if it can be of any use.

-Ray-

Reply via email to