2010-03-22 10:16:09 Kernel Panic when booting uClinux
Cedric Marin (FRANCE)
Message: 87565
Hi all,
I'm working with a TCM-BF537 module plugged on an EVAL-BF5xx card from Bluetechnix. I flashed U-Boot on the BF537 module (the TCM-BF537's u-boot.bin downloaded on blackfin.uclinux.org/gf/project/bluetechnix/frs/). I then downloaded the TCM-BF537's uImage of uClinux 2009-R1.1-RC4 on the same site.
When I turn on the EVAL card, U-boot 2009 starts. I then load the uClinux image in the RAM (with tftp) and boot on 0x1000000. The system starts and fails with a kernel panic after creating the partitions. The booting logs are the following:
bfin> bootm
## Booting kernel from Legacy Image at 01000000 ...
Image Name: Linux-2.6.28.10-ADI-2009R1.1
Created: 2010-03-22 10:13:46 UTC
Image Type: Blackfin Linux Kernel Image (gzip compressed)
Data Size: 2536857 Bytes = 2.4 MB
Load Address: 00001000
Entry Point: 001b031c
Verifying Checksum ... OK
Uncompressing Kernel Image ... OK
Starting Kernel at = 001b031c
Linux version 2.6.28.10-ADI-2009R1.1 (cedric@cedric-ubuntu) (gcc version 4.1.2 (ADI svn)) #2 Mon Mar 22 11:13:42 CET 2010
Warning: limiting memory to 31MB due to hardware anomaly 05000263
Board Memory: 32MB
Kernel Managed Memory: 32MB
Memory map:
fixedcode = 0x00000400-0x00000490
text = 0x00001000-0x00128790
rodata = 0x00128790-0x001819d8
bss = 0x00182000-0x00191d04
data = 0x00191d04-0x001a2000
stack = 0x001a0000-0x001a2000
init = 0x001a2000-0x00506000
available = 0x00506000-0x01eff000
DMA Zone = 0x01f00000-0x02000000
Hardware Trace Active and Enabled
Boot Mode: 0
Blackfin support (C) 2004-2009 Analog Devices, Inc.
Compiled for ADSP-BF537 Rev 0.2
Blackfin Linux support by blackfin.uclinux.org/
Processor Speed: 525 MHz core clock and 105 MHz System Clock
NOMPU: setting up cplb tables
Instruction Cache Enabled for CPU0
Data Cache Enabled for CPU0 (write-back)
Built 1 zonelists in Zone order, mobility grouping off. Total pages: 7873
Kernel command line: root=/dev/mtdblock0 rw clkin_hz=25000000 earlyprintk=serial,uart0,115200 console=ttyBF0,115200
Configuring Blackfin Priority Driven Interrupts
PID hash table entries: 128 (order: 7, 512 bytes)
console [ttyBF0] enabled
Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
Memory available: 26308k/32768k RAM, (3472k init code, 1181k kernel code, 487k data, 1024k dma, 296k reserved)
Calibrating delay loop... 1046.52 BogoMIPS (lpj=2093056)
Mount-cache hash table entries: 512
Blackfin Scratchpad data SRAM: 4 KB
Blackfin L1 Data A SRAM: 16 KB (9 KB free)
Blackfin L1 Data B SRAM: 16 KB (16 KB free)
Blackfin L1 Instruction SRAM: 48 KB (38 KB free)
net_namespace: 288 bytes
NET: Registered protocol family 16
Blackfin DMA Controller
tcm_bf537_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: 1024 (order: 1, 8192 bytes)
TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
TCP: Hash tables configured (established 1024 bind 1024)
TCP reno registered
NET: Registered protocol family 1
JFFS2 version 2.2. (NAND) 2001-2006 Red Hat, Inc.
msgmni has been set to 51
io scheduler noop registered (default)
io scheduler cfq registered
Serial: Blackfin serial driver
bfin-uart.1: ttyBF0 at MMIO 0xffc00400 (irq = 18) is a BFIN-UART
bfin-uart.1: ttyBF1 at MMIO 0xffc02000 (irq = 20) is a BFIN-UART
brd: module loaded
bfin_mii_bus: probed
bfin_mac: attached PHY driver [Generic PHY] (mii_bus:phy_addr=0:01, irq=-1, mdc_clk=2500000Hz(mdc_div=20)@sclk=105MHz)
bfin_mac bfin_mac.0: Blackfin on-chip Ethernet MAC driver, Version 1.1
gpio-addr-flash: probing 16-bit flash bus
gpio-addr-flash: Found 1 x16 devices at 0x0 in 16-bit bank
Intel/Sharp Extended Query Table at 0x010A
Intel/Sharp Extended Query Table at 0x010A
Intel/Sharp Extended Query Table at 0x010A
Intel/Sharp Extended Query Table at 0x010A
Intel/Sharp Extended Query Table at 0x010A
Using buffer write method
Using auto-unlock on power-up/resume
cfi_cmdset_0001: Erase suspend on write enabled
RedBoot partition parsing not available
gpio-addr-flash: Using board partition definition
Creating 3 MTD partitions on "gpio-addr-flash":
0x00000000-0x00040000 : "bootloader(nor)"
0x00040000-0x00140000 : "linux kernel(nor)"
0x00140000-0x00800000 : "file system(nor)"
bfin-spi bfin-spi.0: Blackfin on-chip SPI Controller Driver, Version 1.0, regs_base@ffc00500, dma channel@7
NULL pointer access
Kernel OOPS in progress
Deferred Exception context
CURRENT PROCESS:
COMM=swapper PID=1
CPU = 0
invalid mm
return address: [0x000c94c2]; contents of:
0x000c94a0: 0c08 1402 2219 0d88 1d27 0c18 1402 2349
0x000c94b0: 602a 0810 1402 2281 304e 3044 6461 e522
0x000c94c0: 0080 [ad12] 0062 0c80 1803 e2ff f9c9 0000
0x000c94d0: e5a0 0204 4a08 e6a0 0204 e2ff f9c1 0000
ADSP-BF537-0.2 525(MHz CCLK) 105(MHz SCLK) (mpu off)
Linux version 2.6.28.10-ADI-2009R1.1
Built with gcc version 4.1.2 (ADI svn)
SEQUENCER STATUS: Not tainted
SEQSTAT: 00000027 IPEND: 9030 SYSCFG: 0006
EXCAUSE : 0x27
interrupts disabled
physical IVG5 asserted : <0xffa00ba0> { _evt_ivhw + 0x0 }
physical IVG12 asserted : <0xffa00ce4> { _evt_evt12 + 0x0 }
physical IVG15 asserted : <0xffa00cfc> { _evt_system_call + 0x0 }
logical irq 6 mapped : <0xffa00380> { _timer_interrupt + 0x0 }
logical irq 24 mapped : <0x000bacac> { _bfin_mac_interrupt + 0x0 }
logical irq 79 mapped : <0x000c8758> { _net2272_irq + 0x0 }
RETE: <0x00000000> /* Maybe null pointer? */
RETN: <0x01ee9b78> /* kernel dynamic memory */
RETX: <0x00000480> /* Maybe fixed code section */
RETS: <0x0002688a> { _handle_IRQ_event + 0x36 }
PC : <0x000c94c2> { _net2272_irq + 0xd6a }
DCPLB_FAULT_ADDR: <0x00000010> /* Maybe null pointer? */
ICPLB_FAULT_ADDR: <0x000c94c2> { _net2272_irq + 0xd6a }
PROCESSOR STATE:
R0 : 00771800 R1 : 01ee9b84 R2 : 00000005 R3 : 0000001d
R4 : 000c8758 R5 : 000000de R6 : 00000000 R7 : 00771960
P0 : 000001fe P1 : 00771800 P2 : 00000000 P3 : 0077d280
P4 : 00771800 P5 : 00771940 FP : 0018fb54 SP : 01ee9a9c
LB0: ffa012e0 LT0: ffa012e0 LC0: 00000000
LB1: 0009e326 LT1: 0009e31a LC1: 00000000
B0 : 00000000 L0 : 00000000 M0 : 00000000 I0 : 00000002
B1 : 00000000 L1 : 00000000 M1 : 00000000 I1 : 00777d48
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 : 00000000 ASTAT: 00002000
Hardware Trace:
0 Target : <0x00004bc0> { _trap_c + 0x0 }
Source : <0xffa00628> { _exception_to_level5 + 0xa4 } CALL pcrel
1 Target : <0xffa00584> { _exception_to_level5 + 0x0 }
Source : <0xffa0045a> { _bfin_return_from_exception + 0xe } RTX
2 Target : <0xffa0044c> { _bfin_return_from_exception + 0x0 }
Source : <0xffa004e8> { _ex_trap_c + 0x6c } JUMP.S
3 Target : <0xffa0047c> { _ex_trap_c + 0x0 }
Source : <0xffa003b0> { _ex_workaround_261 + 0x1c } JUMP.S
4 Target : <0xffa00394> { _ex_workaround_261 + 0x0 }
Source : <0xffa006c0> { _trap + 0x38 } JUMP (P4)
5 Target : <0xffa006a6> { _trap + 0x1e }
Source : <0xffa006a2> { _trap + 0x1a } IF !CC JUMP
6 Target : <0xffa00688> { _trap + 0x0 }
Source : <0xffa0045a> { _bfin_return_from_exception + 0xe } RTX
7 Target : <0xffa0044c> { _bfin_return_from_exception + 0x0 }
Source : <0xffa003a6> { _ex_workaround_261 + 0x12 } IF !CC JUMP
8 Target : <0xffa00394> { _ex_workaround_261 + 0x0 }
Source : <0xffa006c0> { _trap + 0x38 } JUMP (P4)
9 Target : <0xffa006a6> { _trap + 0x1e }
Source : <0xffa006a2> { _trap + 0x1a } IF !CC JUMP
10 Target : <0xffa00688> { _trap + 0x0 }
Source : <0x000c94be> { _net2272_irq + 0xd66 } 0xe522
11 Target : <0x000c94b8> { _net2272_irq + 0xd60 }
Source : <0x000c94b4> { _net2272_irq + 0xd5c } IF CC JUMP
12 Target : <0x000c94b0> { _net2272_irq + 0xd58 }
Source : <0x000c94ac> { _net2272_irq + 0xd54 } IF CC JUMP
13 Target : <0x000c94a6> { _net2272_irq + 0xd4e }
Source : <0x000c94a2> { _net2272_irq + 0xd4a } IF CC JUMP
14 Target : <0x000c948e> { _net2272_irq + 0xd36 }
Source : <0x000c94e8> { _net2272_irq + 0xd90 } JUMP.S
15 Target : <0x000c94de> { _net2272_irq + 0xd86 }
Source : <0x000c947c> { _net2272_irq + 0xd24 } IF CC JUMP
Kernel Stack
Stack info:
SP: [0x01ee9cb8] <0x01ee9cb8> /* kernel dynamic memory */
FP: (0x01ee9d10)
Memory from 0x01ee9cb0 to 01eea000
01ee9cb0: 00000000 00777d48 [00000002] 00000000 0018fb54 0019645c 00196474 0077d280
01ee9cd0: 00192c7c 00128f78 00182b48 0000004f 0000ffff 00000000 000c8758 0000001d
01ee9cf0: 0000001d 0000000d 0000ffff 0000ffff 00182b48 00000006 00777d48 00000003
01ee9d10:(00000000)<01ee9d70><000270dc> 0019645c 00771800 0077d280 0000004f 00000008
01ee9d30: 0018fb50 00135ca0 00193298 <000ca22c> 00771800 00193290 0018fb50 00135ca0
01ee9d50: 00193298 0018fb58 0077181c 00000000 00193300 00000000 00135ca0 00771800
01ee9d70: 00199f44 <000b5110> 00193298 00199f44 0018f9f4 00193344 000000ac 00199f44
01ee9d90: 00000000 00000000 <00127004><0012702c> 001931ac <000b5268> 00193298 00199f44
01ee9db0: 001bed8c 00193344 001996b4 001bed8c 00000000 <000b4926> 000b51fc 001996b4
01ee9dd0: 00000000 01ee9de4 00754b40 <0009a9f0> 00182024 01efd5d8 001932e0 <000b4fbe>
01ee9df0: 00182024 00000000 00754b40 00000000 01ee9e24 01ee9e24 <000b4cd8> 000b51fc
01ee9e10:<000b4cf6> 00000000 <000b53b8> 00199ebc 00154558 00135ca0 00000000 <000b53b8>
01ee9e30: 00182024 00199f44 001bed8c 00000000 00000000 001b6b34 00000000 00000000
01ee9e50:<00001028> 00182024 001b6e80 00000000 00000000 00000000 01ee7b40 <0019ecbc>
01ee9e70: 00000010 00000020 000040d0 00000000 00000001 000240d0 00000000 00000000
01ee9e90:<0019ecbc> 00000001 00000044 01ee8000 01ee8000 01ee8000 000240d0 01ee8000
01ee9eb0: 00000010 00545860 00000000 00000000 00000000 00000000 00000000 00000000
01ee9ed0: 00000000 00000000 ffffffff 01ee9f0c <00099c80> 01ec34a0 01ec2300 0018d1d8
01ee9ef0:<00099cf4> 01efd6a4 00000000 000000d2 0018d1d8 000000d0 01ee9f0c 01ee6e10
01ee9f10: 00000000 00000000 <0015dac8><00099e5a> 0018d1d8 01ec2300 00000000 <00065190>
01ee9f30: 01ec34a0 01ec2300 001bed8c 01ee9f60 00004000 00000000 00000000 00000000
01ee9f50: 0018d1d8 01ee9f60 <000653b8> 00196894 000000d2 <000653c6> 00196894 0018c6e4
01ee9f70: 01ec34a0 01ec2300 01ee9f9c 7fffff00 00000001 <00028532> 01ee9f9c 00000061
01ee9f90: 0000000e <0006548a> 01ec2300 00003739 00000000 001b0000 <0002858e> 001951d4
01ee9fb0: 001beb64 00000061 00196894 <001a23b0> 001bed38 001beb64 00000000 00000000
01ee9fd0: 00000000 00000000 00000000 00000000 00000000 <0000145e> 00000000 00000000
01ee9ff0: 00000000 00000000 ffffffff 00000006
Return addresses in stack:
frame 1 : <0x01ee9d70> /* kernel dynamic memory */
address : <0x000270dc> { _request_irq + 0x84 }
address : <0x000ca22c> { _net2272_probe + 0x178 }
address : <0x000b5110> { _driver_probe_device + 0x80 }
address : <0x00127004> { _klist_next + 0x20 }
address : <0x0012702c> { _klist_next + 0x48 }
address : <0x000b5268> { ___driver_attach + 0x6c }
address : <0x000b4926> { _bus_for_each_dev + 0x3e }
address : <0x0009a9f0> { _kobject_init_and_add + 0x24 }
address : <0x000b4fbe> { _driver_attach + 0x1a }
address : <0x000b4cd8> { _bus_add_driver + 0x64 }
address : <0x000b4cf6> { _bus_add_driver + 0x82 }
address : <0x000b53b8> { _driver_register + 0x40 }
address : <0x000b53b8> { _driver_register + 0x40 }
address : <0x00001028> { _do_one_initcall + 0x28 }
address : <0x0019ecbc> /* kernel dynamic memory */
address : <0x0019ecbc> /* kernel dynamic memory */
address : <0x00099c80> { _ida_get_new_above + 0x94 }
address : <0x00099cf4> { _ida_get_new_above + 0x108 }
address : <0x0015dac8> /* kernel dynamic memory */
address : <0x00099e5a> { _ida_pre_get + 0xe }
address : <0x00065190> { _proc_register + 0x30 }
address : <0x000653b8> { _create_proc_entry + 0x3c }
address : <0x000653c6> { _create_proc_entry + 0x4a }
address : <0x00028532> { _register_irq_proc + 0x7e }
address : <0x0006548a> { _proc_mkdir_mode + 0x2e }
address : <0x0002858e> { _init_irq_proc + 0x42 }
address : <0x001a23b0> { _kernel_init + 0x84 }
address : <0x0000145e> { _kernel_thread_helper + 0x6 }
Modules linked in:
Kernel panic - not syncing: Kernel exception
I don't understand what is wrong. Is anyboady can help me ?
Thanks in advance.
Cedric
QuoteReplyEditDelete
2010-03-22 10:28:12 Kernel Panic when booting uClinux
Michael Hennerich (GERMANY)
Message: 87566 Does you development board / module feature an NET2272 USB Device Controller?
Is it properly connected and are all the switches properly setup?
If you don't use the net2272 driver disable it in your kernel config and rebuild your kernel image.
QuoteReplyEditDelete
2010-03-22 10:47:57 Re: Kernel Panic when booting uClinux
Cedric Marin (FRANCE)
Message: 87568
Thanks a lot Michael,
it works !
The NET2272 USB driver was activated in the kernel and desactivated in hardware...
Cedric