急!!!!!MIPS Exception code: 2

chenxb19831118   2009-5-15 10:31 楼主
xd 在debug MIPS 平台下的 一个问题, 麻烦xdjm们 看看, 死得莫名其妙的, 谢谢了。

Cause: Exception code: 2
Regs
r0: 0x801d57c8 0x801d0000 0x00000001 0x2748f376
r4: 0x801d7c60 0xd8d7f210 0x00000000 0x00000000
r8: 0x8044d9d8 0x801714bc 0x0000006e 0x803e0000
r12: 0x253bad3c 0x00000000 0x803e0000 0x7923f000
r16: 0x803f35c8 0x803eb5c8 0x801d7c60 0x00000001
r20: 0x801d7c60 0x00011ec8 0x00000000 0x804bd010
r24: 0x80450000 0x9cb4a750 0xff4bf7f6 0xe5cfbfff
r28: 0x806b2810 0x80ffff30 0xdfdfffff 0x800b0a54
MP May 10 04:23:17.642881 ALERT AP 20 AP Buffered Log (1): ba: 0x00000016 st: 0x10008003 ca:
0x10000008 e_epc: 0x9fc00508
, Exception PC: 0x800bc304

(gdb) disass 0x800bc304
Dump of assembler code for function atheros_handle_event:
0x800bc2f4 : lw s1,30712(a0)
0x800bc2f8 : li v0,0x8000
0x800bc2fc : addu s0,s1,v0
0x800bc300 : lw v0,30348(s0)
0x800bc304 : bnez v0,0x800bc35c

void

atheros_handle_event (RADIO_DATA *radio)

{

800bc2d8:       27bdffd0        addiu   sp,sp,-48

800bc2dc:       afbf0020        sw      ra,32(sp)

800bc2e0:       afb3001c        sw      s3,28(sp)

800bc2e4:       afb20018        sw      s2,24(sp)

800bc2e8:       afb10014        sw      s1,20(sp)

800bc2ec:       afb00010        sw      s0,16(sp)

800bc2f0:       00809021        move    s2,a0  

    WLAN_DEV_INFO *dev;

    atheros_radio_t *atheros;

    HAL_INT_TYPE masked_events;

    HAL_INT_TYPE unmasked_events;

    A_UINT32 queue_bit_mask;



    atheros = (atheros_radio_t *) radio->radio_hardware;

800bc2f4:       8c9177f8        lw      s1,30712(a0)   

    dev = &(atheros->driver_wlan_dev_info);

    /*

     * Let's see if any events have occurred recently.

     */

    if (!atheros->hal_attached) {

800bc2f8:       34028000        li      v0,0x8000

800bc2fc:       02228021        addu    s0,s1,v0

800bc300:       8e02768c        lw      v0,30348(s0)

800bc304:       14400015        bnez    v0,800bc35c

800bc308:       263302a8        addiu   s3,s1,680

        /*

         * The device is not attached.  Try to attach it again.

         */

        if (atheros->enable_failed_time < current_milliseconds()) {

800bc30c:       0c006163        jal     8001858c

800bc310:       00000000        nop

800bc314:       00402021        move    a0,v0

800bc318:       00602821        move    a1,v1

800bc31c:       8e0377c8        lw      v1,30664(s0)

800bc320:       0064102b        sltu    v0,v1,a0

800bc324:       14400007        bnez    v0,800bc344

800bc328:       00000000        nop

800bc32c:       146400e8        bne     v1,a0,800bc6d0

800bc330:       8fbf0020        lw      ra,32(sp)

800bc334:       8e0277cc        lw      v0,30668(s0)

800bc338:       0045102b        sltu    v0,v0,a1

800bc33c:       104000e4        beqz    v0,800bc6d0

800bc340:       00000000        nop

            hal_attach(radio, atheros, dev);

800bc344:       02402021        move    a0,s2

800bc348:       02202821        move    a1,s1

800bc34c:       0c02ca02        jal     800b2808

800bc350:       02603021        move    a2,s3

        }

        return;








回复评论

暂无评论,赶紧抢沙发吧
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复