[#7122] buld kernel support for adxl i2c which makes kernel can't boot
Submitted By: Mingquan Pan
Open Date
2012-05-23 05:02:24 Close Date
2012-06-07 05:07:18
Priority:
Medium Assignee:
Sonic Zhang
Status:
Closed Fixed In Release:
N/A
Found In Release:
N/A Release:
Category:
N/A Board:
N/A
Processor:
BF548 Silicon Revision:
Is this bug repeatable?:
Yes Resolution:
Fixed
Uboot version or rev.:
Toolchain version or rev.:
ADI-2012r1-beta1
App binary format:
N/A
Summary: buld kernel support for adxl i2c which makes kernel can't boot
Details:
buld kernel support for dxl i2c which makes kernel can't boot on bf548.
# Booting kernel from Legacy Image at 02000000 ...
Image Name: bf548-0.2-3.3.0-ADI-2012R1-pre-0
Created: 2012-05-20 2:04:46 UTC
Image Type: Blackfin Linux Kernel Image (gzip compressed)
Data Size: 5387820 Bytes = 5.1 MiB
Load Address: 00001000
Entry Point: 00285e90
Verifying Checksum ... OK
Uncompressing Kernel Image ... OK
Starting Kernel at = 00285e90
Linux version 3.3.0-ADI-2012R1-pre-00662-gdf1f475 (test@uclinux61-bf548-std) (gcc version 4.3.5 (ADI-trunk/svn-5764) ) #36 Sun May 20 10:04:39 CST 2012
register early platform devices
bootconsole [early_shadow0] enabled
bootconsole [early_BFuart1] enabled
early printk enabled on early_BFuart1
Board Memory: 64MB
Kernel Managed Memory: 64MB
Memory map:
fixedcode = 0x00000400-0x00000490
text = 0x00001000-0x001b7a90
rodata = 0x001b7a90-0x0024cea4
bss = 0x0024d000-0x0025ec5c
data = 0x0025ec5c-0x0027c000
stack = 0x0027a000-0x0027c000
init = 0x0027c000-0x009fa000
available = 0x009fa000-0x03e00000
DMA Zone = 0x03e00000-0x04000000
Hardware Trace active and enabled
Boot Mode: 1
Reset caused by Software reset
Blackfin support (C) 2004-2010 Analog Devices, Inc.
Compiled for ADSP-BF548 Rev 0.2
Blackfin Linux support by http://blackfin.uclinux.org/
Processor Speed: 525 MHz core clock and 131 MHz System Clock
NOMPU: setting up cplb tables
Instruction Cache Enabled for CPU0
External memory: cacheable in instruction cache
L2 SRAM : uncacheable in instruction cache
Data Cache Enabled for CPU0
External memory: cacheable (write-through) in data cache
L2 SRAM : uncacheable in data cache
Built 1 zonelists in Zone order, mobility grouping off. Total pages: 15748
Kernel command line: root=/dev/mtdblock0 rw ip=10.100.4.50 earlyprintk=serial,uart1,57600 console=ttyBF1,57600 ip=10.100.4.50:10.100.4.174:10.100.4.174:255.255.255.0:bf548-ezkit:eth0:off
PID hash table entries: 256 (order: -2, 1024 bytes)
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory available: 52664k/65536k RAM, (7672k init code, 1754k kernel code, 786k data, 2048k dma, 612k reserved)
NR_IRQS:295
Configuring Blackfin Priority Driven Interrupts
Šconsole [ttyBF1] enabled, bootconsole disabledrly
console [ttyBF1] enabled, bootconsole disabled
Calibrating delay loop... 1044.48 BogoMIPS (lpj=2088960)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
Blackfin Scratchpad data SRAM: 4 KB
Blackfin L1 Data A SRAM: 16 KB (16 KB free)
Blackfin L1 Data B SRAM: 16 KB (16 KB free)
Blackfin L1 Instruction SRAM: 48 KB (41 KB free)
Blackfin L2 SRAM: 128 KB (128 KB free)
NET: Registered protocol family 16
gpiochip_add: registered GPIOs 0 to 159 on device: BFIN-GPIO
Blackfin DMA Controller
ezkit_init(): registering device resources
bio: create slab <bio-0> at 0
SCSI subsystem initialized
spi spi0.2: Warning: SPI CPHA not set: Slave Select not under software control!
See Documentation/blackfin/bfin-spi-notes.txt
bfin-spi bfin-spi.0: Blackfin on-chip SPI Controller Driver, Version 1.0, regs@ffc00500, dma channel@4
bfin-spi bfin-spi.1: Blackfin on-chip SPI Controller Driver, Version 1.0, regs@ffc02300, dma channel@5
i2c-bfin-twi i2c-bfin-twi.0: Blackfin BF5xx on-chip I2C TWI Contoller, regs_base@ffc00700
i2c-bfin-twi i2c-bfin-twi.1: Blackfin BF5xx on-chip I2C TWI Contoller, regs_base@ffc02200
Advanced Linux Sound Architecture Driver Version 1.0.24.
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 2048 (order: 2, 16384 bytes)
TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
TCP: Hash tables configured (established 2048 bind 2048)
TCP reno registered
UDP hash table entries: 256 (order: 0, 4096 bytes)
UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
NET: Registered protocol family 1
debug-mmrs: setting up Blackfin MMR debugfs
msgmni has been set to 102
io scheduler noop registered (default)
bf54x-lq043: FrameBuffer initializing...
dma_alloc_init: dma_page @ 0x029e7000 - 512 pages at 0x03e00000
bfin-uart: Blackfin serial driver
bfin-uart.1: ttyBF1 at MMIO 0xffc02000 (irq = 48) is a BFIN-UART
bfin-otp: initialized
brd: module loaded
register bfin atapi driver
scsi0 : pata-bf54x
ata1: PATA max UDMA/66 irq 68
physmap platform flash device: 02000000 at 20000000
physmap-flash.0: Found 1 x16 devices at 0x0 in 16-bit bank. Manufacturer ID 0x000089 Chip ID 0x00881e
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
Creating 5 MTD partitions on "physmap-flash.0":
0x000000000000-0x000000080000 : "bootloader(nor)"
0x000000080000-0x000000480000 : "linux kernel(nor)"
0x000000480000-0x000000fe0000 : "file system(nor)"
0x000000fe0000-0x000000ff8000 : "config(nor)"
0x000000ff8000-0x000001000000 : "u-boot env(nor)"
m25p80 spi0.1: m25p16 (2048 Kbytes)
Creating 2 MTD partitions on "m25p80":
0x000000000000-0x000000080000 : "bootloader(spi)"
0x000000080000-0x000000200000 : "linux kernel(spi)"
BF5xx on-chip NAND FLash Controller Driver, Version 1.2 (c) 2007 Analog Devices, Inc.
bf5xx-nand bf5xx-nand.0: data_width=8, wr_dly=3, rd_dly=3
NAND device: Manufacturer ID: 0x20, Chip ID: 0xda (ST Micro NAND 256MiB 3,3V 8-bit)
Creating 3 MTD partitions on "NAND 256MiB 3,3V 8-bit":
0x000000000000-0x000000080000 : "bootloader(nand)"
0x000000080000-0x000000480000 : "linux kernel(nand)"
0x000000480000-0x000010000000 : "file system(nand)"
smsc911x: Driver version 2008-10-21
smsc911x-mdio: probed
smsc911x smsc911x.0: eth0: attached PHY driver [Generic PHY] (mii_bus:phy_addr=smsc911x-0:01, irq=-1)
smsc911x smsc911x.0: eth0: MAC Address: 00:e0:22:fe:bf:4e
input: bf54x-keys as /devices/platform/bf54x-keys/input/input0
Illegal use of supervisor resource
<5> - Attempted to use a Supervisor register or instruction from User mode.
<5> Supervisor resources are registers and instructions that are reserved
<5> for Supervisor use: Supervisor only registers, all MMRs, and Supervisor
<5> only instructions.
Kernel OOPS in progress
Deferred Exception context
No Valid process in current context
return address: [0x0012e610]; contents of:
0x0012e5f0: e640 0040 a128 67f8 b128 e528 005f 483a
0x0012e600: 1c24 a0e8 0d00 1817 0000 0000 0000 acaa
0x0012e610: [e580] 0088 9b10 a168 0c18 194d 0000 0000
0x0012e620: 0000 acaa a0e9 3001 6c0a 67f8 bcaa b0e8
ADSP-BF548-0.2 525(MHz CCLK) 131(MHz SCLK) (mpu off)
Linux version 3.3.0-ADI-2012R1-pre-00662-gdf1f475 (test@uclinux61-bf548-std) (gcc version 4.3.5 (ADI-trunk/svn-5764) ) #36 Sun May 20 10:04:39 CST 2012
SEQUENCER STATUS: Not tainted
SEQSTAT: 0000202e IPEND: 8808 IMASK: 003f SYSCFG: 0006
Peripheral interrupts masked off
Kernel interrupts masked off
EXCAUSE : 0x2e
physical IVG3 asserted : <0xffa00774> { _trap + 0x0 }
physical IVG11 asserted : <0xffa00f0c> { _evt_evt11 + 0x0 }
physical IVG15 asserted : <0xffa00fc0> { _evt_system_call + 0x0 }
logical irq 6 mapped : <0xffa003b4> { _bfin_coretmr_interrupt + 0x0 }
logical irq 9 mapped : <0x000d5b10> { _bfin_bf54x_irq_error + 0x0 }
logical irq 52 mapped : <0x0012e59c> { _bfin_twi_interrupt_entry + 0x0 }
logical irq 53 mapped : <0x0012e59c> { _bfin_twi_interrupt_entry + 0x0 }
logical irq 68 mapped : <0x0010a744> { _bfin_ata_interrupt + 0x0 }
logical irq 76 mapped : <0x00128500> { _bfin_kpad_isr + 0x0 }
logical irq 175 mapped : <0x00124098> { _smsc911x_irqhandler + 0x0 }
RETE: <0x00000000> /* Maybe null pointer? */
RETN: <0x0027be20> /* kernel dynamic memory (maybe user-space) */
RETX: <0x00000480> /* Maybe fixed code section */
RETS: <0x0003590c> { _handle_irq_event_percpu + 0x38 }
PC : <0x0012e610> { _bfin_twi_interrupt_entry + 0x74 }
DCPLB_FAULT_ADDR: <0xffc02288> /* system mmrs */
ICPLB_FAULT_ADDR: <0x0012e610> { _bfin_twi_interrupt_entry + 0x74 }
PROCESSOR STATE:
R0 : 00000001 R1 : 02067a00 R2 : 0000c080 R3 : 00000000
R4 : 000000c0 R5 : 0000003f R6 : ffff8000 R7 : 00000181
P0 : ffc02200 P1 : ffc02200 P2 : 0201be18 P3 : 0025f658
P4 : ffffffc0 P5 : 02067a00 FP : 02067b60 SP : 0027bd44
LB0: 000c7fc8 LT0: 000c7fc6 LC0: 00000000
LB1: 00128b9e LT1: 00128b9e LC1: 00000000
B0 : 00000000 L0 : 00000000 M0 : 0000002c I0 : 00260220
B1 : 00000000 L1 : 00000000 M1 : 00000000 I1 : 00000000
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 : 0027c000 ASTAT: 00003004
Hardware Trace:
0 Target : <0x00004104> { _trap_c + 0x0 }
Source : <0xffa00708> { _exception_to_level5 + 0xa4 } JUMP.L
1 Target : <0xffa00664> { _exception_to_level5 + 0x0 }
Source : <0xffa0051c> { _bfin_return_from_exception + 0x18 } RTX
2 Target : <0xffa00504> { _bfin_return_from_exception + 0x0 }
Source : <0xffa005be> { _ex_trap_c + 0x72 } JUMP.S
3 Target : <0xffa0054c> { _ex_trap_c + 0x0 }
Source : <0xffa007ce> { _trap + 0x5a } JUMP (P4)
4 Target : <0xffa00774> { _trap + 0x0 }
FAULT : <0x0012e610> { _bfin_twi_interrupt_entry + 0x74 } R0 = B[P0 + 0x20](X)
Source : <0x0012e60e> { _bfin_twi_interrupt_entry + 0x72 } R2 = W[P5 + 2](X)
5 Target : <0x0012e5fe> { _bfin_twi_interrupt_entry + 0x62 }
Source : <0x0012e5da> { _bfin_twi_interrupt_entry + 0x3e } IF CC JUMP pcrel (BP)
6 Target : <0x0012e59c> { _bfin_twi_interrupt_entry + 0x0 }
Source : <0x0003590a> { _handle_irq_event_percpu + 0x36 } CALL (P2)
7 Target : <0x00035904> { _handle_irq_event_percpu + 0x30 }
Source : <0x000358ee> { _handle_irq_event_percpu + 0x1a } JUMP.S
8 Target : <0x000358d4> { _handle_irq_event_percpu + 0x0 }
Source : <0x00035a38> { _handle_irq_event + 0x18 } CALL pcrel
9 Target : <0x00035a20> { _handle_irq_event + 0x0 }
Source : <0x00037974> { _handle_simple_irq + 0x4c } JUMP.L
10 Target : <0x00037928> { _handle_simple_irq + 0x0 }
Source : <0x000355be> { _generic_handle_irq + 0x2a } CALL (P2)
11 Target : <0x00035594> { _generic_handle_irq + 0x0 }
Source : <0xffa00384> { _asm_do_IRQ + 0x64 } CALL pcrel
12 Target : <0xffa00382> { _asm_do_IRQ + 0x62 }
Source : <0xffa00342> { _asm_do_IRQ + 0x22 } IF CC JUMP pcrel (BP)
13 Target : <0xffa0033c> { _asm_do_IRQ + 0x1c }
Source : <0x00010828> { _irq_enter + 0x40 } RTS
14 Target : <0x00010812> { _irq_enter + 0x2a }
Source : <0x00010832> { _irq_enter + 0x4a } JUMP.S
15 Target : <0x00010832> { _irq_enter + 0x4a }
Source : <0x00010240> { ___local_bh_enable + 0x38 } RTS
Kernel Stack
Stack info:
SP: [0x0027bf50] <0x0027bf50> /* kernel dynamic memory (maybe user-space) */
Memory from 0x0027bf50 to 0027c000
0027bf50:[0000002c] 00000000 00000000 00000000 00260220 0027c000 0024d0a0 ffa00110
0027bf70: 0027a008 0027a008 00260220 0027a000 ffa009dc ffa00110 00000000 00000000
0027bf90: 03f00cfc 00000000 00000000 00000000 0000ffff 0000ffff ffa009dc 00000006
0027bfb0: 0024d009 0029644c 00000000 0027c000 0027c61a 0025889c 0024d000 0024d009
0027bfd0: 0029644c 001fe02c ffffffc0 00200b1f 00000043 0027c1d8 0029644c 00285fae
0027bff0: ffe00000 03e3fe60 03e3ffb0 ffb00000
Return addresses in stack:
Modules linked in:
Kernel panic - not skernel panic detected... trying to recover from ittest@ucl
Last pass found in:
root:/> ^[[6nversion^M
kernel: Linux release 3.3.0-ADI-2012R1-pre-00635-g56bbae6, build #18 Mon May 14 03:41:19 CST 2012^M
toolchain: bfin-uclinux-gcc release gcc version 4.3.5 (ADI-trunk/svn-5764) ^M
user-dist: release svn-10679, build #254 Mon May 14 03:40:25 CST 2012^M
root:/> ^[[6nsuccessful boot attempt
Follow-ups
--- Sonic Zhang 2012-06-05 02:09:57
Fixed. Always read/write 16 bit MMR by bfin 16 bit access Macro.
--- Mingquan Pan 2012-06-07 06:06:36
Yes, case pass again.
Close.event_test /dev/input/event1^M
Input driver version is 1.0.1^M
Input device ID: bus 0x18 vendor 0x0 product 0x159 version 0x0^M
Input device name: "ADXL34x accelerometer"^M
Supported events:^M
Event type 0 (Sync)^M
Event type 1 (Key)^M
Event code 330 (Touch)^M
Event type 3 (Absolute)^M
Event code 0 (X)^M
Value 0^M
Min -4096^M
Max 4096^M
Fuzz 3^M
Flat 3^M
Event code 1 (Y)^M
Value 0^M
Min -4096^M
Max 4096^M
Fuzz 3^M
Flat 3^M
Event code 2 (Z)^M
Value 0^M
Min -4096^M
Max 4096^M
Fuzz 3^M
Flat 3^M
Testing ... (interrupt to exit)^M
Event: time 1086015923.852000, type 3 (Absolute), code 0 (X), value -41
Case 4 ...PASS
Case 4 ...PASS
^M
Event: time 1086015923.852000, type 3 (Absolute), code 1 (Y), value 12^M
Event: time 1086015923.852000, type 3 (Absolute), code 2 (Z), value -254^M
Event: time 1086015923.852000, -------------- Report Sync ------------^M
Event: time 1086015923.892000, type 3 (Absolute), code 2 (Z), value -267^M
Event: time 1086015923.892000, -------------- Report Sync ------------^M
Event: time 1086015923.932000, type 3 (Absolute), code 1 (Y), value 14^M
Files
Changes
Commits
Dependencies
Duplicates
Associations
Tags
File Name File Type File Size Posted By
No Files Were Found