Power PC Build problem

Scott Wood scottwood at freescale.com
Wed Sep 11 08:40:22 EST 2013


On Wed, 2013-09-04 at 13:07 +1000, Jason Rennie wrote:
> But when I try building it with the latest buildroot (2013.08) and I
> configure the kernel (3.10.10) I get one of two things. If I don't
> include specific settings for physmap compat support (Device Drivers
> -> MTD Support -> Mapping drivers for chip access) then I get a kernel
> panic when it can't mount the root filesystem as follows 
[snip]
> ----------- 
> and when I do include the physmap settings 
> 
> <*> Flash device in physical memory map 
>  [*]   Physmap compat support 
>   (0xFF000000) Physical start address of flash mapping 
>   (0x1000000) Physical length of flash mapping 
>   (2)     Bank width in octets 
> 
> which I took from the earlier build and do seem to be right, it does
> the following. 
> -------------------- 
> f0011a00.serial: ttyCPM0 at MMIO 0xc505ea00 (irq = 40) is a CPM UART 
> f0011a60.serial: ttyCPM1 at MMIO 0xc5060a60 (irq = 43) is a CPM UART 
> brd: module loaded 
> physmap platform flash device: 01000000 at ff000000 
> Machine check in kernel mode. 
> Caused by (from SRR1=49030): Transfer error ack signal 
> Oops: Machine check, sig: 7 [#1] 
> PREEMPT Freescale MPC8272 ADS 
> Modules linked in: 
> CPU: 0 PID: 1 Comm: swapper Not tainted 3.10.10 #12 
> task: c3830000 ti: c3832000 task.ti: c3832000 
> NIP: c01a5da8 LR: c01a6200 CTR: c01a60cc 
> REGS: c3833c00 TRAP: 0200   Not tainted  (3.10.10) 
> MSR: 00049030 <EE,ME,IR,DR>  CR: 22000022  XER: 00000000 
> 
> GPR00: c01a59a0 c3833cb0 c3830000 00000000 c39c0e24 c3833cf8 00000002
> 00000aaa 
> GPR08: c5080000 0000aaaa 00000002 00000002 42000024 00000000 c000406c
> 00000000 
> GPR16: 00000000 00000000 c39c0e24 c02c9ff4 00000001 c02c8d30 c02c9fe8
> c0356e23 
> GPR24: c02c8d78 00000001 00000000 00000001 c03b89d8 00000000 c39c0e24
> c3833cf8 
> NIP [c01a5da8] jedec_reset+0x124/0x448 
> LR [c01a6200] jedec_probe_chip+0x134/0x1050 
> Call Trace: 
> [c3833cb0] [c002d900] call_usermodehelper_exec+0x154/0x160
> (unreliable) 
> [c3833cf0] [c01a59a0] mtd_do_chip_probe+0x78/0x34c 
> [c3833d70] [c01a73a8] physmap_flash_probe+0x1ec/0x30c 
> [c3833db0] [c01996c8] driver_probe_device+0xb8/0x1f4 
> [c3833dd0] [c0197a64] bus_for_each_drv+0x60/0xa8 
> [c3833e00] [c01995d8] device_attach+0x7c/0x94 
> [c3833e20] [c0198ac4] bus_probe_device+0x34/0xac 
> [c3833e40] [c0196f94] device_add+0x3d4/0x570 
> [c3833e80] [c019acd0] platform_device_add+0x164/0x1dc 
> [c3833ea0] [c039a438] physmap_init+0x34/0x50 
> [c3833ec0] [c0003acc] do_one_initcall+0xdc/0x180 
> [c3833ef0] [c0386bcc] kernel_init_freeable+0x11c/0x1c0 
> [c3833f30] [c0004088] kernel_init+0x1c/0xf4 
> [c3833f40] [c000d3a8] ret_from_kernel_thread+0x5c/0x64 
> Instruction dump: 
> 5529063e 7d2839ae 48000024 2f8a0002 40be0010 5529043e 7d283b2e
> 48000010 
> 2f8a0004 409e0324 7d28392e 7c0004ac <81250008> 8105000c 81440018
> 7d6849d6 
> ---[ end trace 06e97f39189bf8ef ]--- 
> 
> Kernel panic - not syncing: Attempted to kill init!
> exitcode=0x00000007 
> 
> Rebooting in 1 seconds.. 
> -------------------- 
> I assume it is crashing when it tries to probe the flash chips? 
> 
> I'm at a loss to work out what I am doing wrong here. Can anybody
> offer any pointers? 

It sounds like the address you're specifying for flash is incorrect.
You shouldn't need to specify it this way; the information is in the
device tree (and for mpc8272ads the device tree says it's at
0xff800000).

Do you have CONFIG_MTD_PHYSMAP_OF enabled?

BTW, I don't see how this is a "build problem".

-Scott






More information about the Linuxppc-dev mailing list