2008-09-01 13:36:59     System MMR Error

Document created by Aaronwu Employee on Aug 7, 2013
Version 1Show Document
  • View in full screen mode

2008-09-01 13:36:59     System MMR Error

Michael McTernan (UNITED KINGDOM)

Message: 61493   

 

Hi,

 

I'm trying MPU protection on a BF533 0.5 with 2008R1.5 + the recent fixes for interrupts.  Right after boot once the initial rc script completes I get a "System MMR Error" and it advises me that it maybe deferred and to build with CONFIG_DEBUG_HWERR.  If I build with that switch, the system hangs without any output and no response to the sysreq key where the Oops could be expected to start.

 

If I build without MPU protection, the system appears to boot into a shell normally and I can run apps and stuff.  If I take the same code and build for a BF537 EZKIT, it boots and runs okay, although there are a few differences in the config which I'm yet to rule out.

 

Finally, if I take the 2008R1.5 build wihtout the recent interrupt patches for MPU protection, the system hard hangs without any output at boot.  So the interrupt patch unexpectedly seems to have a positive effect in this case.

 

What should I be doing to try to find the broken write to the MMR?  Any ideas as to differences that could cause this to only happen when MPU protections are enabled under BF533?

 

U-Boot 1.1.6-svn7159 (ADI-2008R1.5) (Aug 28 2008 - 15:16:39)

 

CPU:   ADSP bf533-0.5 (Detected Rev: 0.5)

Board: ADI BF533 Stamp board

       Support: http://blackfin.uclinux.org/

Clock: VCO: 598 MHz, Core: 598 MHz, System: 119 MHz

RAM:   128 MB

Flash:  4 MB

In:    serial

Out:   serial

Err:   serial

Net:   Micrel KS8841 SH 32-bit 1.0.3 (June 26, 2007)

Net:   KS8841 Configured

Hit any key to stop autoboot:  5     0

hbs2_3_1>run mybootcmd

TFTP from server 192.168.10.1; our IP address is 192.168.10.2

Filename 'uImage'.

Load address: 0x1000000

Loading: * T #################################################################

     #################################################################

     #################################################################

     #################################################################

     #################################################################

     ###################################

done

Bytes transferred = 1839316 (1c10d4 hex)

## Booting image at 01000000 ...

   Image Name:   Linux-2.6.22.19-ADI-2008R1.5-svn

   Created:      2008-09-01  16:58:16 UTC

   Image Type:   Blackfin Linux Kernel Image (gzip compressed)

   Data Size:    1839252 Bytes =  1.8 MB

   Load Address: 00001000

   Entry Point:  00168000

   Verifying Checksum ... OK

   Uncompressing Kernel Image ... OK

Starting Kernel at = 168000

Linux version 2.6.22.19-ADI-2008R1.5-svn7123 (bagside@localhost.localdomain) (gcc version 4.1.2 (ADI svn)) #288 PREEMPT Mon Sep 1 17:58:12 BST 2008

early printk enabled on early_BFuart0

Hardware Trace Active and Enabled

Blackfin support (C) 2004-2007 Analog Devices, Inc.

Compiled for ADSP-BF533 Rev 0.5

Blackfin Linux support by http://blackfin.uclinux.org/

Processor Speed: 598 MHz core clock and 119 MHz System Clock

Board Memory: 128MB

Kernel Managed Memory: 128MB

Memory map:

  text      = 0x00001000-0x0010fd30

  rodata    = 0x00110000-0x00154554

  data      = 0x00155000-0x00168000

    stack   = 0x00156000-0x00158000

  init      = 0x00168000-0x0031a000

  bss       = 0x0031a000-0x003299d4

  available = 0x003299d4-0x07dff000

  DMA Zone  = 0x07e00000-0x08000000

MPU: setting up cplb tables with memory protection

Instruction Cache Enabled

Data Cache Enabled (write-back)

Built 1 zonelists.  Total pages: 32004

Kernel command line: root=/dev/mtdblock0 rw earlyprintk=serial,uart0,57600 console=ttyBF0,57600

Configuring Blackfin Priority Driven Interrupts

Hardware Trace expanded to 16k

PID hash table entries: 512 (order: 9, 2048 bytes)

console handover: boot [early_BFuart0] -> real [ttyBF0]

Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)

Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)

Memory available: 123788k/131072k RAM, (1736k init code, 1083k kernel code, 415k data, 2048k dma, 2000k reserved)

Blackfin Scratchpad data SRAM: 4 KB

Blackfin Data A SRAM: 16 KB (10 KB free)

Blackfin Data B SRAM: 16 KB (16 KB free)

Blackfin Instruction SRAM: 64 KB (55 KB free)

Mount-cache hash table entries: 512

NET: Registered protocol family 16

Blackfin GPIO Controller

Blackfin DMA Controller

stamp_init(): registering device resources

NET: Registered protocol family 2

IP route cache hash table entries: 1024 (order: 0, 4096 bytes)

TCP established hash table entries: 4096 (order: 3, 32768 bytes)

TCP bind hash table entries: 4096 (order: 2, 16384 bytes)

TCP: Hash tables configured (established 4096 bind 4096)

TCP reno registered

JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.

io scheduler noop registered

io scheduler deadline registered (default)

bfin-wdt: initialized: timeout=20 sec (nowayout=0)

Serial: Blackfin serial driver

bfin-uart.1: ttyBF0 at MMIO 0xffc00400 (irq = 21) is a BFIN-UART

No NAND device found!!!

bfin-spi bfin-spi.0: Blackfin BF5xx on-chip SPI Contoller Driver, Version 1.0, regs_base@ffc00500, dma channel@5

nf_conntrack version 0.5.0 (1007 buckets, 8056 max)

ip_tables: (C) 2000-2006 Netfilter Core Team

TCP cubic registered

NET: Registered protocol family 1

 

 

System MMR Error

- An error occurred due to an invalid access to an System MMR location

   Possible reason: a 32-bit register is accessed with a 16-bit instruction

   or a 16-bit register is accessed with a 32-bit instruction.

Kernel OOPS in progress

HW Error context

CURRENT PROCESS:

COMM=sh PID=30

TEXT = 0x00700040-0x00745ae0        DATA = 0x00745ae4-0x00752544

BSS = 0x00752544-0x00758614  USER-STACK = 0x0075ffa0

 

return address: [0x00012612]; contents of:

0x000125f0:  9127  0000  b111  e14f  0015  e14b  0032  6056

0x00012600:  e10f  cec8  6004  e10b  1e70  600d  9324  9138

0x00012610:  0040 [e14d] 0032  e10d  03dc  2005  4e0f  0c07

0x00012620:  180b  6c45  4807  1ffb  916a  3045  4e0f  0062

Looks like this was a deferred error - sorry

The remaining message may be meaningless

You should enable CONFIG_DEBUG_HWERR to get a better idea where it came from

 

SEQUENCER STATUS:       Not tainted

SEQSTAT: 0000803f  IPEND: c030  SYSCFG: 0006

  HWERRCAUSE: 0x2

  EXCAUSE   : 0x3f

  physical IVG14 asserted : <0xffa00ec0> { _evt14_softirq + 0x0 }

  physical IVG15 asserted : <0xffa012a0> { _evt_system_call + 0x0 }

  logical irq   6 mapped  : <0xffa0034c> { _timer_interrupt + 0x0 }

  logical irq  21 mapped  : <0x000a1eb0> { _bfin_serial_rx_int + 0x0 }

  logical irq  22 mapped  : <0x000a20e4> { _bfin_serial_tx_int + 0x0 }

RETE: <0x00000000> /* Maybe null pointer? */

RETN: <0x07cf9d7c> /* unknown address */

RETX: <0x000125d2> { ___do_softirq + 0x2 }

RETS: <0x00012902> { _irq_exit + 0x4a }

PC  : <0x00012612> { ___do_softirq + 0x42 }

 

PROCESSOR STATE:

R0 : 0000ffff    R1 : 00000101    R2 : 00000100    R3 : 00522638

R4 : 00000000    R5 : 00000001    R6 : 0000000a    R7 : 00000020

P0 : 00000002    P1 : ffc00400    P2 : 07cf8000    P3 : 00321e70

P4 : 003203a0    P5 : 00000016    FP : 0015cec8    SP : 07cf9c70

LB0: 0070017d    LT0: 00700170    LC0: 00000000

LB1: 0070a77d    LT1: 0070a77c    LC1: 00000000

B0 : 00000000    L0 : 00000000    M0 : 00000000    I0 : 00000001

B1 : 00000000    L1 : 00000000    M1 : 00000000    I1 : 00697ef8

B2 : 00000000    L2 : 00000000    M2 : 00000000    I2 : 00000000

B3 : 00000000    L3 : 00000000    M3 : 00000000    I3 : 00000000

A0.w: 00000000   A0.x: 00000000   A1.w: 00000000   A1.x: 00000000

USP : 0075fe2c  ASTAT: 02002000

 

Hardware Trace:

   0 Target : <0x00004894> { _trap_c + 0x0 }

     Source : <0xffa011d0> { _evt_ivhw + 0x8c }

   1 Target : <0xffa011b2> { _evt_ivhw + 0x6e }

     Source : <0xffa011ae> { _evt_ivhw + 0x6a }

   2 Target : <0xffa01144> { _evt_ivhw + 0x0 }

     Source : <0x00012610> { ___do_softirq + 0x40 }

   3 Target : <0x000128fe> { _irq_exit + 0x46 }

     Source : <0x000128fe> { _irq_exit + 0x46 }

   4 Target : <0x000128e8> { _irq_exit + 0x30 }

     Source : <0x000128b8> { _irq_exit + 0x0 }

   5 Target : <0xffa00504> { _asm_do_IRQ + 0x5c }

     Source : <0xffa00504> { _asm_do_IRQ + 0x5c }

   6 Target : <0xffa00ec6> { _evt14_softirq + 0x6 }

     Source : <0xffa00ec0> { _evt14_softirq + 0x0 }

   7 Target : <0xffa00ebe> { _lower_to_irq14 + 0x12 }

     Source : <0xffa00eac> { _lower_to_irq14 + 0x0 }

   8 Target : <0xffa00500> { _asm_do_IRQ + 0x58 }

     Source : <0xffa004da> { _asm_do_IRQ + 0x32 }

   9 Target : <0x0002bb06> { _handle_simple_irq + 0xa2 }

     Source : <0x0002bade> { _handle_simple_irq + 0x7a }

  10 Target : <0x0002bb10> { _handle_simple_irq + 0xac }

     Source : <0x0002bb10> { _handle_simple_irq + 0xac }

  11 Target : <0x0002b25e> { _note_interrupt + 0x14e }

     Source : <0x0002b246> { _note_interrupt + 0x136 }

  12 Target : <0x0002b130> { _note_interrupt + 0x20 }

     Source : <0x0002b110> { _note_interrupt + 0x0 }

  13 Target : <0x0002bb0c> { _handle_simple_irq + 0xa8 }

     Source : <0x0002bb08> { _handle_simple_irq + 0xa4 }

  14 Target : <0x0002bada> { _handle_simple_irq + 0x76 }

     Source : <0x0002bac8> { _handle_simple_irq + 0x64 }

  15 Target : <0x0002a776> { _handle_IRQ_event + 0x5a }

     Source : <0x0002a76c> { _handle_IRQ_event + 0x50 }

  16 Target : <0x0002a764> { _handle_IRQ_event + 0x48 }

     Source : <0x0002a750> { _handle_IRQ_event + 0x34 }

  17 Target : <0x000a212c> { _bfin_serial_tx_int + 0x48 }

     Source : <0x000a2118> { _bfin_serial_tx_int + 0x34 }

  18 Target : <0x000a2134> { _bfin_serial_tx_int + 0x50 }

     Source : <0x000a2134> { _bfin_serial_tx_int + 0x50 }

  19 Target : <0x000a0154> { _uart_write_wakeup + 0x34 }

     Source : <0x000a014c> { _uart_write_wakeup + 0x2c }

  20 Target : <0x000a013e> { _uart_write_wakeup + 0x1e }

     Source : <0x000a0120> { _uart_write_wakeup + 0x0 }

  21 Target : <0x000a1c74> { _bfin_serial_tx_chars + 0xcc }

     Source : <0x000a1c22> { _bfin_serial_tx_chars + 0x7a }

  22 Target : <0x000a1c12> { _bfin_serial_tx_chars + 0x6a }

     Source : <0x000a1bda> { _bfin_serial_tx_chars + 0x32 }

  23 Target : <0x000a1bca> { _bfin_serial_tx_chars + 0x22 }

     Source : <0x000a1ba8> { _bfin_serial_tx_chars + 0x0 }

  24 Target : <0x000a2130> { _bfin_serial_tx_int + 0x4c }

     Source : <0x000a212e> { _bfin_serial_tx_int + 0x4a }

  25 Target : <0x000a2112> { _bfin_serial_tx_int + 0x2e }

     Source : <0x000a20e4> { _bfin_serial_tx_int + 0x0 }

  26 Target : <0x0002a74e> { _handle_IRQ_event + 0x32 }

     Source : <0x0002a748> { _handle_IRQ_event + 0x2c }

  27 Target : <0x0002a73c> { _handle_IRQ_event + 0x20 }

     Source : <0x0002a738> { _handle_IRQ_event + 0x1c }

  28 Target : <0x0002a72a> { _handle_IRQ_event + 0xe }

     Source : <0x0002a71c> { _handle_IRQ_event + 0x0 }

  29 Target : <0x0002bac4> { _handle_simple_irq + 0x60 }

     Source : <0x0002ba64> { _handle_simple_irq + 0x0 }

  30 Target : <0xffa004d8> { _asm_do_IRQ + 0x30 }

     Source : <0xffa004ce> { _asm_do_IRQ + 0x26 }

  31 Target : <0x00012916> { _irq_enter + 0x12 }

     Source : <0x00012904> { _irq_enter + 0x0 }

  32 Target : <0xffa004ca> { _asm_do_IRQ + 0x22 }

     Source : <0xffa004a8> { _asm_do_IRQ + 0x0 }

  33 Target : <0xffa01386> { _do_irq + 0x7e }

     Source : <0xffa01382> { _do_irq + 0x7a }

  34 Target : <0xffa01356> { _do_irq + 0x4e }

     Source : <0xffa01351> { _do_irq + 0x49 }

  35 Target : <0xffa0135c> { _do_irq + 0x54 }

     Source : <0xffa01358> { _do_irq + 0x50 }

  36 Target : <0xffa0134c> { _do_irq + 0x44 }

     Source : <0xffa01308> { _do_irq + 0x0 }

  37 Target : <0xffa010d4> { __common_int_entry + 0x6c }

     Source : <0xffa010d0> { __common_int_entry + 0x68 }

  38 Target : <0xffa010cc> { __common_int_entry + 0x64 }

     Source : <0xffa01068> { __common_int_entry + 0x0 }

  39 Target : <0xffa0127a> { _evt_evt10 + 0xa }

     Source : <0xffa01270> { _evt_evt10 + 0x0 }

  40 Target : <0xffa008f2> { _ex_dcplb_miss + 0xca }

     Source : <0x00099b08> { _redirected_tty_write + 0x0 }

  41 Target : <0x0003b02c> { _vfs_write + 0x64 }

     Source : <0x0003b016> { _vfs_write + 0x4e }

  42 Target : <0x0003ab70> { _rw_verify_area + 0x84 }

     Source : <0x0003ab5c> { _rw_verify_area + 0x70 }

  43 Target : <0x0003ab34> { _rw_verify_area + 0x48 }

     Source : <0x0003aaec> { _rw_verify_area + 0x0 }

  44 Target : <0x0003b012> { _vfs_write + 0x4a }

     Source : <0x0003b002> { _vfs_write + 0x3a }

  45 Target : <0xffa00294> { __access_ok + 0xb4 }

     Source : <0xffa00284> { __access_ok + 0xa4 }

  46 Target : <0xffa0020a> { __access_ok + 0x2a }

     Source : <0xffa001e0> { __access_ok + 0x0 }

  47 Target : <0x0003affe> { _vfs_write + 0x36 }

     Source : <0x0003afea> { _vfs_write + 0x22 }

  48 Target : <0x0003afde> { _vfs_write + 0x16 }

     Source : <0x0003afc8> { _vfs_write + 0x0 }

  49 Target : <0x0003b406> { _sys_write + 0x2e }

     Source : <0x0003b3ea> { _sys_write + 0x12 }

  50 Target : <0x0003b9a4> { _fget_light + 0x40 }

     Source : <0x0003b964> { _fget_light + 0x0 }

  51 Target : <0x0003b3e6> { _sys_write + 0xe }

     Source : <0x0003b3d8> { _sys_write + 0x0 }

  52 Target : <0xffa00d1a> { _system_call + 0x66 }

     Source : <0xffa00cb4> { _system_call + 0x0 }

  53 Target : <0xffa01300> { _evt_system_call + 0x60 }

     Source : <0xffa012a0> { _evt_system_call + 0x0 }

  54 Target : <0xffa008fc> { _ex_syscall + 0x8 }

     Source : <0x007028b0> [ sh + 0x2870 ]

  55 Target : <0x00712074> [ sh + 0x12034 ]

     Source : <0x00712066> [ sh + 0x12026 ]

  56 Target : <0x0071205a> [ sh + 0x1201a ]

     Source : <0x00712048> [ sh + 0x12008 ]

  57 Target : <0x0070a032> [ sh + 0x9ff2 ]

     Source : <0x0070a01c> [ sh + 0x9fdc ]

  58 Target : <0x0070b5ae> [ sh + 0xb56e ]

     Source : <0x0070b5a4> [ sh + 0xb564 ]

 

<Snip>

 

Stack from 07cf9c50:

        07cf9c4c ffa011d4 ffc00014 00000020 0000000a 00321e70 00000000 0000000a

        000125d2 0000c030 0000803f 00000000 07cf9d7c 000125d2 00012612 00012902

        0000ffff 02002000 0070a77d 0070017d 0070a77c 00700170 00000000 00000000

        00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

        00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

        00000000 00000000 00697ef8 00000001 0075fe2c 0015cec8 00000016 003203a0

 

Call Trace:

[<0000ffff>] _do_wait+0x663/0xb30

[<0000ffff>] _do_wait+0x663/0xb30

[<0002bb10>] _handle_simple_irq+0xac/0xd8

[<00012902>] _irq_exit+0x4a/0x4c

[<00099b1c>] _redirected_tty_write+0x14/0xa0

[<00099b1c>] _redirected_tty_write+0x14/0xa0

[<00099b1c>] _redirected_tty_write+0x14/0xa0

[<0003b02e>] _vfs_write+0x66/0x88

[<0003b02e>] _vfs_write+0x66/0x88

[<0003b02e>] _vfs_write+0x66/0x88

[<00003944>] _sys_mmap2+0x58/0x80

[<0003b40a>] _sys_write+0x32/0x64

[<00005401>] _set_gpio_polar+0x45/0x70

[<0003b3d8>] _sys_write+0x0/0x64

[<00008000>] _l1_data_sram_alloc+0x10/0x24

 

Modules linked in:

Kernel panic - not syncing: Kernel exception

 

Mike

 

 

QuoteReplyEditDelete

 

 

2008-09-01 14:47:20     Re: System MMR Error

Robin Getz (UNITED STATES)

Message: 61495   

 

Michael:

 

Just to check - can you confirm:

 

rgetz@pinky:~/blackfin-2008R1/uClinux-dist> grep ANOMALY_05000281 linux-2.6.x/include/asm/mach-*/anomaly.h

linux-2.6.x/include/asm/mach-bf533/anomaly.h:#define ANOMALY_05000281 (1)

linux-2.6.x/include/asm/mach-bf537/anomaly.h:#define ANOMALY_05000281 (__SILICON_REVISION__ < 3)

linux-2.6.x/include/asm/mach-bf548/anomaly.h:#define ANOMALY_05000281 (__SILICON_REVISION__ < 1)

linux-2.6.x/include/asm/mach-bf561/anomaly.h:#define ANOMALY_05000281 (__SILICON_REVISION__ < 5)

 

 

-Robin

QuoteReplyEditDelete

 

 

2008-09-01 18:12:53     Re: System MMR Error

Michael McTernan (UNITED KINGDOM)

Message: 61500   

 

Yup - it's in there:

 

$ grep ANOMALY_05000281 linux-2.6.tot.x/include/asm/mach-*/anomaly.h

linux-2.6.tot.x/include/asm/mach-bf533/anomaly.h:#define ANOMALY_05000281 (1)

linux-2.6.tot.x/include/asm/mach-bf537/anomaly.h:#define ANOMALY_05000281 (__SILICON_REVISION__ < 3)

linux-2.6.tot.x/include/asm/mach-bf548/anomaly.h:#define ANOMALY_05000281 (__SILICON_REVISION__ < 1)

linux-2.6.tot.x/include/asm/mach-bf561/anomaly.h:#define ANOMALY_05000281 (__SILICON_REVISION__ < 5)

 

 

That's an interesting anomaly though.  Could it affect hardware exceptions too?  Looking through the code _ex_trap_c ends with a trap 5; rtx - I'm not sure if all context is restored at that point or not.  This doesn't appear to be executing in this case though, although the following looks funky:

 

  39 Target : <0xffa0127a> { _evt_evt10 + 0xa }

     Source : <0xffa01270> { _evt_evt10 + 0x0 }

  40 Target : <0xffa008f2> { _ex_dcplb_miss + 0xca }

     Source : <0x00099b08> { _redirected_tty_write + 0x0 }

 

 

QuoteReplyEditDelete

 

 

2008-09-01 20:41:08     Re: System MMR Error

Robin Getz (UNITED STATES)

Message: 61502   

 

Mike:

 

I think that is normal.

 

the way that trace expanding is done is when the trace buffer is full - it causes an exception. This means that exceptions are no longer traced - so you don't see the path between the return from dcplb_miss back to the kernel - where the intterupt happened.

 

It can only trace things in EVT5 or below.

 

But - yes - it can effect any RET path (RTI or RTX or RTN). - but the kernel should be doing full context restore on everything, or padding the RETI in these cases.

 

-robin

QuoteReplyEditDelete

 

 

2008-09-02 00:01:45     Re: System MMR Error

Mike Frysinger (UNITED STATES)

Message: 61512   

 

you arent actually running a BF533 STAMP board are you ?

QuoteReplyEditDelete

 

 

2008-09-02 04:28:26     Re: System MMR Error

Michael McTernan (UNITED KINGDOM)

Message: 61525   

 

Not at the moment, no.    What are you thinking?

 

PS: The BF533-STAMP I have only has 0.3 silicon, hence cannot run with the MPU due to anomoly 05000263.

QuoteReplyEditDelete

 

 

2008-09-02 09:38:45     Re: System MMR Error

Mike Frysinger (UNITED STATES)

Message: 61543   

 

just wondering what your hardware platform is and if it isnt a STAMP, why is the code identifying itself as a STAMP

 

i'm not sure we have any BF533-0.5 platforms around to check with (there were never any BF533-0.5 STAMP platforms) ... i'll have to rummage

QuoteReplyEditDelete

 

 

2008-09-02 09:58:40     Re: System MMR Error

Michael McTernan (UNITED KINGDOM)

Message: 61545   

 

Oh, ok - the board config is based on the STAMP as the peripherals and RAM selections are somewhat similar.

 

> i'm not sure we have any BF533-0.5 platforms around to check with

> (there were never any BF533-0.5 STAMP platforms) ... i'll have to rummage

 

Interesting.  So is MPU protection designed/tested to work on BF533, or do you guys test on some other board?

 

QuoteReplyEditDelete

 

 

2008-09-02 10:08:03     Re: System MMR Error

Mike Frysinger (UNITED STATES)

Message: 61546   

 

the MPU is designed to work on all Blackfin platforms.  it uses the CPLB architecture which is common to all Blackfins ... there is no variant-specific code in the implementation.  however, we have only tested it on the BF537-EZKIT and BF548-EZKIT because those are the only platforms we have readily available that are not affected by anomaly 263.  to test on a BF533/BF561, we have to use the inferior BF533/BF561 EZKIT platforms and we have to find one with 0.5 silicon.

QuoteReplyEditDelete

 

 

2008-09-03 11:23:26     Re: System MMR Error

Michael McTernan (UNITED KINGDOM)

Message: 61577   

 

I've been checking out the config differences and I think the use of CONFIG_SERIAL_BFIN_PIO is causing the problem.

 

If I build for BF533 0.5 + MPU protection + PIO the System MMR Error occurs.  If I change to DMA'd serial, the problem's gone.

 

I tried a build for BF537 0.3 + MPU + PIO, it's okay though.

 

Robin knows about this though, so worth checking with him too.

QuoteReplyEditDelete

 

 

2008-09-04 02:49:11     Re: System MMR Error

Mike Frysinger (UNITED STATES)

Message: 61600   

 

that behavior i can confirm.  BF533-EZKIT + 0.5 + MPU + UART PIO results in system mmr error:

IP-Config: Complete:

     device=eth0, addr=192.168.0.15, mask=255.255.255.0, gw=192.168.0.1,

     host=bf533-ezkit, domain=, nis-domain=(none),

     bootserver=192.168.0.2, rootserver=192.168.0.2, rootpath=

eth0: link up, 100Mbps, full-duplex, lpa 0x45E1

                           _____________________________________

        System MMR Error

- An error occurred due to an invalid access to an System MMR location

   Possible reason: a 32-bit register is accessed with a 16-bit instruction

   or a 16-bit register is accessed with a 32-bit instruction.

Kernel OOPS in progress

HW Error context

CURRENT PROCESS:

COMM=sh PID=128

TEXT = 0x00000000-0x00000000        DATA = 0x00000000-0x00000000

BSS = 0x00000000-0x00000000  USER-STACK = 0x00000000

 

return address: [0xffa01524]; contents of:

0xffa01500:  ????  ????  ????  ????  ????  ????  ????  ????

0xffa01510:  ????  ????  ????  ????  ????  ????  ????  ????

0xffa01520:  ????  ???? [????] ????  ????  ????  ????  ????

0xffa01530:  ????  ????  ????  ????  ????  ????  ????  ????

 

SEQUENCER STATUS:               Not tainted

SEQSTAT: 0000a03f  IPEND: 8030  SYSCFG: 0006

  HWERRCAUSE: 0x2

  EXCAUSE   : 0x3f

  physical IVG15 asserted : <0xffa00d88> { _evt_system_call + 0x0 }

  logical irq   6 mapped  : <0xffa0036c> { _timer_interrupt + 0x0 }

  logical irq  14 mapped  : <0x000a9350> { _bfin_rtc_interrupt + 0x0 }

  logical irq  21 mapped  : <0x0009b158> { _bfin_serial_rx_int + 0x0 }

  logical irq  22 mapped  : <0x0009b2ec> { _bfin_serial_tx_int + 0x0 }

  logical irq  42 mapped  : <0x000a21e4> { _smc_interrupt + 0x0 }

RETE: <0x00000000> { _run_init_process + 0xfffff000 }

RETN: <0x01b9fd80> /* kernel dynamic memory */

RETX: <0xffa01524> { _memset + 0x28 }

RETS: <0x0003b096> { _do_mmap_pgoff + 0x7a2 }

PC  : <0xffa01524> { _memset + 0x28 }

 

PROCESSOR STATE:

R0 : 01180000    R1 : 00000000    R2 : 00000000    R3 : 011e9000

R4 : 01180000    R5 : 00000000    R6 : 00000002    R7 : 00000004

P0 : 01181d68    P1 : 0001a400    P2 : 011e9000    P3 : 01b99ec0

P4 : 00069000    P5 : 00069000    FP : 00069000    SP : 01b9fca4

LB0: ffa01524    LT0: ffa01524    LC0: 00019ca6

LB1: 00016816    LT1: 00016800    LC1: 00000000

B0 : 00000000    L0 : 00000000    M0 : 00000000    I0 : 00000001

B1 : 00000000    L1 : 00000000    M1 : 00000000    I1 : 01e79080

B2 : 00000000    L2 : 00000000    M2 : 00000000    I2 : 00000000

B3 : 00000000    L3 : 00000000    M3 : 00000000    I3 : 00000000

A0.w: 00000000   A0.x: 00000000   A1.w: 00000000   A1.x: 00000000

USP : 01bb8d28  ASTAT: 00002021

 

Hardware Trace:

   0 Target : <0x0000476c> { _trap_c + 0x0 }

     Source : <0xffa00cb8> { _evt_ivhw + 0x8c } CALL pcrel

   1 Target : <0xffa00c9a> { _evt_ivhw + 0x6e }

     Source : <0xffa00c96> { _evt_ivhw + 0x6a } IF !CC JUMP

   2 Target : <0xffa00c2c> { _evt_ivhw + 0x0 }

     Source : <0xffa00c28> { __common_int_entry + 0xd8 } RTI

   3 Target : <0xffa00bc6> { __common_int_entry + 0x76 }

     Source : <0xffa00a14> { _return_from_int + 0x58 } RTS

   4 Target : <0xffa00a14> { _return_from_int + 0x58 }

     Source : <0xffa009ea> { _return_from_int + 0x2e } IF !CC JUMP

   5 Target : <0xffa009bc> { _return_from_int + 0x0 }

     Source : <0xffa00bc2> { __common_int_entry + 0x72 } CALL pcrel

   6 Target : <0xffa00bc0> { __common_int_entry + 0x70 }

     Source : <0xffa00338> { _asm_do_IRQ + 0x6c } RTS

   7 Target : <0xffa00330> { _asm_do_IRQ + 0x64 }

     Source : <0x00013058> { _irq_exit + 0x2c } RTS

   8 Target : <0x0001303e> { _irq_exit + 0x12 }

     Source : <0xffa0045c> { _ex_dcplb_miss + 0xdc } RTX

   9 Target : <0xffa003ee> { _ex_dcplb_miss + 0x6e }

     Source : <0x00009b64> { _dcplb_miss + 0x1d0 } RTS

  10 Target : <0x00009acc> { _dcplb_miss + 0x138 }

     Source : <0x00009ada> { _dcplb_miss + 0x146 } IF CC JUMP

  11 Target : <0x00009acc> { _dcplb_miss + 0x138 }

     Source : <0x00009ada> { _dcplb_miss + 0x146 } IF CC JUMP

  12 Target : <0x00009acc> { _dcplb_miss + 0x138 }

     Source : <0x00009ada> { _dcplb_miss + 0x146 } IF CC JUMP

  13 Target : <0x00009acc> { _dcplb_miss + 0x138 }

     Source : <0x00009ada> { _dcplb_miss + 0x146 } IF CC JUMP

  14 Target : <0x00009acc> { _dcplb_miss + 0x138 }

     Source : <0x00009ada> { _dcplb_miss + 0x146 } IF CC JUMP

  15 Target : <0x00009acc> { _dcplb_miss + 0x138 }

     Source : <0x00009ada> { _dcplb_miss + 0x146 } IF CC JUMP

 

Kernel Stack

Stack info:

SP: [0x01b9ff24] <0x01b9ff24> /* kernel dynamic memory */

Memory from 0x01b9ff20 to 01ba0000

01b9ff20: ffffffff [01ba26ce] 00008000  00002000  00000000  01ba0000  01ba26ce  01ba26ce

01b9ff40:<01ba0ab0><ffa00dec> 00003004  00000001  01ba35ad  00000000  01ba35aa  00000000

01b9ff60: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

01b9ff80: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

01b9ffa0: 00000000  00000000  00000000  01bb7fa8  01bb8ccd  01bb8d28  01bb8d34  00000000

01b9ffc0: 01bb7fa4  01bb7fa8  01ba6269  01b9c884  0000000b  01bb8de8  140548d3  ffffffff

01b9ffe0: 00000000  00001cb1  01bb8e10  01b9c884  01ba6269  01ba6269  0000000b  00000006

01ba0000: 544c4662

Return addresses in stack:

    address : <0x01ba0ab0> [ init + 0xab0 ]

    address : <0xffa00dec> { _evt_system_call + 0x64 }

Modules linked in:

Kernel panic - not syncing: Kernel exception

QuoteReplyEditDelete

 

 

2008-09-05 09:55:19     Re: System MMR Error

Michael McTernan (UNITED KINGDOM)

Message: 61701   

 

Cool - I guess that is confirmed then; can this go in the bug tracker?

QuoteReplyEditDelete

 

 

2008-09-05 13:06:16     Re: System MMR Error

Mike Frysinger (UNITED STATES)

Message: 61711   

 

sorry, i thought i had filed it, but i guess i forgot ...

 

http://blackfin.uclinux.org/gf/tracker/4412

Attachments

    Outcomes