problem PCIe LSI detected at 32 device addresses (ppc460ex)

Benjamin Herrenschmidt benh at kernel.crashing.org
Mon Apr 4 07:52:39 EST 2011


> Ok, I've narrowed the scope of the problem some.  I moved forward
> to a more recent kernel (2.6.31 to 2.6.36) and that resolved the
> problem of the controller showing up as every device on the bus.
> However, from 2.6.37 to the current HEAD, I have not been able to
> build a kernel to run on the 460EX.  I tried 2.6.37, 2.6.38, and
> the HEAD and all result in the following kernel panic.  I am not
> sure how to proceed here.  I suppose we can stick with 2.6.36 since
> it works, but I'd like to understand what it might take to remedy
> this.

Smells like somebody changed something with the OF flash code... Josh,
Grant, any idea what's up there ?

Cheers,
Ben.

> Thanks
> 
> U-Boot 2008.10 (Mar 15 2011 - 18:44:08)
> 
> CPU:   AMCC PowerPC 460EX Rev. A at 800 MHz (PLB=200, OPB=100, EBC=100 MHz)
>        Security/Kasumi support
>        Bootstrap Option D - Boot ROM Location PCI
>        Internal PCI arbiter disabled
>        32 kB I-Cache 32 kB D-Cache
> Board: tanosx-slave - Tanisys SX Platform, 2*PCIeToggling PLX reset
> , Rev. 0
> I2C:   ready
> DRAM:  Auto calibration |*** --------------
> *** best_result window size: 231
> *** best_result WRDTR: 0x0001
> *** best_result CLKTR: 0x0001
> *** best_result RQFD: 0x002e
> *** best_result RFFD: 0x0230
> *** best_result RDCC: 0x40000000
> *** --------------
> 
> 512 MB (ECC enabled, 400 MHz, CL3)
> *** Warning - bad CRC, using default environment
> 
> PCIE0: successfully set as endpoint
> PCIE1: successfully set as root-complex
> ### Unknown PB ###
> Net:   No ethernet found.
> 
> Type run flash_nfs to mount root filesystem over NFS
> 
> Hit any key to stop autoboot:  0
> ## Booting kernel from Legacy Image at ff000000 ...
>    Image Name:   Linux-2.6.37-00000-v2.6.37
>    Image Type:   PowerPC Linux Kernel Image (gzip compressed)
>    Data Size:    2146637 Bytes =  2 MB
>    Load Address: 00000000
>    Entry Point:  00000000
>    Verifying Checksum ... OK
> ## Loading init Ramdisk from Legacy Image at ff400000 ...
>    Image Name:   Tanisys Ramdisk Image
>    Image Type:   PowerPC Linux RAMDisk Image (gzip compressed)
>    Data Size:    3830562 Bytes =  3.7 MB
>    Load Address: 00000000
>    Entry Point:  00000000
>    Verifying Checksum ... OK
> ## Flattened Device Tree blob at ff3e0000
>    Booting using the fdt blob at 0xff3e0000
>    Uncompressing Kernel Image ... OK
>    Loading Device Tree to 007fa000, end 007ffe96 ... OK
>    Loading Ramdisk to 1fabe000, end 1fe65322 ... OK
> Using PowerPC 44x Platform machine description
> Linux version 2.6.37-00000-v2.6.37 (aymane at lablinux) (gcc version 4.2.2) #16 Fri Apr 1 15:20:03 CDT
>  2011
> Found initrd at 0xdfabe000:0xdfe65322
> Zone PFN ranges:
>   DMA      0x00000000 -> 0x00020000
>   Normal   empty
>   HighMem  empty
> Movable zone start PFN for each node
> early_node_map[1] active PFN ranges
>     0: 0x00000000 -> 0x00020000
> MMU: Allocated 1088 bytes of context maps for 255 contexts
> Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 130048
> Kernel command line: root=/dev/ram rw mem=512M ip=::::tanosx-slave:eth0:off panic=1 console=ttyS0,5
> 7600
> PID hash table entries: 2048 (order: 1, 8192 bytes)
> Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
> Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
> Memory: 510452k/524288k available (4180k kernel code, 13836k reserved, 160k data, 1144k bss, 180k i
> nit)
> Kernel virtual memory layout:
>   * 0xfffcf000..0xfffff000  : fixmap
>   * 0xffc00000..0xffe00000  : highmem PTEs
>   * 0xff200000..0xffc00000  : consistent mem
>   * 0xff200000..0xff200000  : early ioremap
>   * 0xe1000000..0xff200000  : vmalloc & ioremap
> SLUB: Genslabs=13, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
> NR_IRQS:512
> UIC0 (32 IRQ sources) at DCR 0xc0
> UIC1 (32 IRQ sources) at DCR 0xd0
> UIC2 (32 IRQ sources) at DCR 0xe0
> UIC3 (32 IRQ sources) at DCR 0xf0
> clocksource: timebase mult[500000] shift[22] registered
> pid_max: default: 4096 minimum: 301
> Mount-cache hash table entries: 512
> xor: measuring software checksum speed
>    8regs     :   691.000 MB/sec
>    8regs_prefetch:   607.000 MB/sec
>    32regs    :   882.000 MB/sec
>    32regs_prefetch:   748.000 MB/sec
> xor: using function: 32regs (882.000 MB/sec)
> NET: Registered protocol family 16
> 256k L2-cache enabled
> PCIE0: Checking link...
> PCIE0: Device detected, waiting for link...
> PCIE0: link is up !
> PCI host bridge /plb/pciex at d00000000 (primary) ranges:
>  MEM 0x0000000e00000000..0x0000000e7fffffff -> 0x0000000080000000
>   IO 0x0000000f80000000..0x0000000f8000ffff -> 0x0000000000000000
> 4xx PCI DMA offset set to 0x00000000
> PCIE0: successfully set as endpoint
> PCIE1: Checking link...
> PCIE1: Device detected, waiting for link...
> PCIE1: link is up !
> PCI host bridge /plb/pciex at d20000000 (primary) ranges:
>  MEM 0x0000000e80000000..0x0000000effffffff -> 0x0000000080000000
>   IO 0x0000000f80010000..0x0000000f8001ffff -> 0x0000000000000000
> 4xx PCI DMA offset set to 0x00000000
> PCIE1: successfully set as root-complex
> PCI host bridge /plb/pci at c0ec00000 (primary) ranges:
>  MEM 0x0000000d80000000..0x0000000dffffffff -> 0x0000000080000000
>   IO 0x0000000c08000000..0x0000000c0800ffff -> 0x0000000000000000
> 4xx PCI DMA offset set to 0x00000000
> PCI: Probing PCI hardware
> PCI: Hiding 4xx host bridge resources 0000:40:00.0
> PCI: Hiding 4xx host bridge resources 0001:80:00.0
> pci 0001:80:00.0: PCI bridge to [bus 81-bf]
> pci 0001:81:00.0: PCI bridge to [bus 82-ff]
> pci 0001:82:01.0: PCI bridge to [bus 83-ff]
> pci 0001:82:04.0: PCI bridge to [bus 84-ff]
> pci 0001:82:05.0: PCI bridge to [bus 85-ff]
> pci 0001:80:00.0: BAR 8: assigned [mem 0xe80000000-0xe804fffff]
> pci 0001:80:00.0: BAR 9: assigned [mem 0xe80500000-0xe808fffff pref]
> pci 0001:80:00.0: BAR 7: assigned [io  0xfffe1000-0xfffe2fff]
> pci 0001:81:00.0: BAR 8: assigned [mem 0xe80000000-0xe803fffff]
> pci 0001:81:00.0: BAR 9: assigned [mem 0xe80500000-0xe808fffff pref]
> pci 0001:81:00.0: BAR 0: assigned [mem 0xe80400000-0xe8041ffff]
> pci 0001:81:00.0: BAR 0: set to [mem 0xe80400000-0xe8041ffff] (PCI address [0x80400000-0x8041ffff])
> pci 0001:81:00.0: BAR 7: assigned [io  0xfffe1000-0xfffe2fff]
> pci 0001:82:01.0: BAR 8: assigned [mem 0xe80000000-0xe801fffff]
> pci 0001:82:01.0: BAR 9: assigned [mem 0xe80500000-0xe806fffff pref]
> pci 0001:82:05.0: BAR 8: assigned [mem 0xe80200000-0xe803fffff]
> pci 0001:82:05.0: BAR 9: assigned [mem 0xe80700000-0xe808fffff 64bit pref]
> pci 0001:82:01.0: BAR 7: assigned [io  0xfffe1000-0xfffe1fff]
> pci 0001:82:05.0: BAR 7: assigned [io  0xfffe2000-0xfffe2fff]
> pci 0001:83:00.0: BAR 6: assigned [mem 0xe80500000-0xe8057ffff pref]
> pci 0001:83:00.0: BAR 3: assigned [mem 0xe80000000-0xe8003ffff 64bit]
> pci 0001:83:00.0: BAR 3: set to [mem 0xe80000000-0xe8003ffff 64bit] (PCI address [0x80000000-0x8003
> ffff])
> pci 0001:83:00.0: BAR 1: assigned [mem 0xe80040000-0xe80043fff 64bit]
> pci 0001:83:00.0: BAR 1: set to [mem 0xe80040000-0xe80043fff 64bit] (PCI address [0x80040000-0x8004
> 3fff])
> pci 0001:83:00.0: BAR 0: assigned [io  0xfffe1000-0xfffe10ff]
> pci 0001:83:00.0: BAR 0: set to [io  0xfffe1000-0xfffe10ff] (PCI address [0x1000-0x10ff])
> pci 0001:82:01.0: PCI bridge to [bus 83-83]
> pci 0001:82:01.0:   bridge window [io  0xfffe1000-0xfffe1fff]
> pci 0001:82:01.0:   bridge window [mem 0xe80000000-0xe801fffff]
> pci 0001:82:01.0:   bridge window [mem 0xe80500000-0xe806fffff pref]
> pci 0001:82:04.0: PCI bridge to [bus 84-84]
> pci 0001:82:04.0:   bridge window [io  disabled]
> pci 0001:82:04.0:   bridge window [mem disabled]
> pci 0001:82:04.0:   bridge window [mem pref disabled]
> pci 0001:82:05.0: PCI bridge to [bus 85-85]
> pci 0001:82:05.0:   bridge window [io  0xfffe2000-0xfffe2fff]
> pci 0001:82:05.0:   bridge window [mem 0xe80200000-0xe803fffff]
> pci 0001:82:05.0:   bridge window [mem 0xe80700000-0xe808fffff 64bit pref]
> pci 0001:81:00.0: PCI bridge to [bus 82-85]
> pci 0001:81:00.0:   bridge window [io  0xfffe1000-0xfffe2fff]
> pci 0001:81:00.0:   bridge window [mem 0xe80000000-0xe803fffff]
> pci 0001:81:00.0:   bridge window [mem 0xe80500000-0xe808fffff pref]
> pci 0001:80:00.0: PCI bridge to [bus 81-bf]
> pci 0001:80:00.0:   bridge window [io  0xfffe1000-0xfffe2fff]
> pci 0001:80:00.0:   bridge window [mem 0xe80000000-0xe804fffff]
> pci 0001:80:00.0:   bridge window [mem 0xe80500000-0xe808fffff pref]
> pci 0001:81:00.0: enabling device (0000 -> 0003)
> pci 0001:82:01.0: enabling device (0000 -> 0003)
> pci 0001:82:05.0: enabling device (0000 -> 0003)
> bio: create slab <bio-0> at 0
> raid6: int32x1    246 MB/s
> raid6: int32x2    303 MB/s
> raid6: int32x4    384 MB/s
> raid6: int32x8    202 MB/s
> raid6: using algorithm int32x4 (384 MB/s)
> vgaarb: loaded
> SCSI subsystem initialized
> Switching to clocksource timebase
> NET: Registered protocol family 2
> IP route cache hash table entries: 4096 (order: 2, 16384 bytes)
> TCP established hash table entries: 16384 (order: 5, 131072 bytes)
> Switched to NOHz mode on CPU #0
> TCP bind hash table entries: 16384 (order: 4, 65536 bytes)
> TCP: Hash tables configured (established 16384 bind 16384)
> TCP reno registered
> NET: Registered protocol family 1
> RPC: Registered udp transport module.
> RPC: Registered tcp transport module.
> RPC: Registered tcp NFSv4.1 backchannel transport module.
> Trying to unpack rootfs image as initramfs...
> rootfs image is not initramfs (no cpio magic); looks like an initrd
> Freeing initrd memory: 3740k freed
> JFFS2 version 2.2. (NAND) Ac 2001-2006 Red Hat, Inc.
> msgmni has been set to 1006
> Block layer SCSI generic (bsg) driver version 0.4 loaded (major 254)
> io scheduler noop registered
> io scheduler deadline registered (default)
> io scheduler cfq registered
> Serial: 8250/16550 driver, 1 ports, IRQ sharing enabled
> serial8250.0: ttyS0 at MMIO 0x4ef600300 (irq = 21) is a U6_16550A
> console [ttyS0] enabled
> serial8250 serial8250.0: unable to register port at index 1 (IO0 MEM4ef600400 IRQ22): -28
> 4ef600300.serial: ttyS0 at MMIO 0x4ef600300 (irq = 21) is a 16550
> of:of_serial: probe of 4ef600400.serial failed with error -28
> brd: module loaded
> Unable to handle kernel paging request for data at address 0x00000030
> Faulting instruction address: 0xc02010c4
> Oops: Kernel access of bad area, sig: 11 [#1]
> PowerPC 44x Platform
> last sysfs file:
> Modules linked in:
> NIP: c02010c4 LR: c01fe0e4 CTR: c020109c
> REGS: df431ce0 TRAP: 0300   Not tainted  (2.6.37-00000-v2.6.37)
> MSR: 00029000 <EE,ME,CE>  CR: 82f44d42  XER: 20000000
> DEAR: 00000030, ESR: 00000000
> TASK = df42e400[1] 'swapper' THREAD: df430000
> GPR00: 00000000 df431d90 df42e400 00000000 ded9d544 00000000 00000000 c07faa8c
> GPR08: 00000002 00000000 00000000 c0550000 24f44d42 805144f2 c03b1890 c0346a94
> GPR16: c03b14f8 c03b2428 c03b23ec c03b2374 c0419fa8 deda01a0 df431e10 ded9d544
> GPR24: c03c5984 00000000 ded9d544 00000000 00000000 c05564ac c042cf00 c042cb9c
> NIP [c02010c4] parse_cmdline_partitions+0x28/0x2ec
> LR [c01fe0e4] parse_mtd_partitions+0x78/0x114
> Call Trace:
> [df431d90] [df426e00] 0xdf426e00 (unreliable)
> [df431dd0] [c01fe0e4] parse_mtd_partitions+0x78/0x114
> [df431e00] [c031bb70] of_flash_probe+0x39c/0x6e8
> [df431e80] [c0277960] platform_driver_probe_shim+0x40/0x54
> [df431e90] [c01d1624] platform_drv_probe+0x20/0x30
> [df431ea0] [c01d0138] driver_probe_device+0x148/0x1ac
> [df431ec0] [c01d044c] __driver_attach+0xa4/0xa8
> [df431ee0] [c01cf274] bus_for_each_dev+0x60/0x9c
> [df431f10] [c01cfe8c] driver_attach+0x24/0x34
> [df431f20] [c01cfc1c] bus_add_driver+0x1b8/0x274
> [df431f50] [c01d06a8] driver_register+0x6c/0x160
> [df431f70] [c01d1994] platform_driver_register+0x68/0x78
> [df431f80] [c0277b2c] of_register_platform_driver+0xa8/0xc4
> [df431f90] [c0402f1c] of_flash_init+0x18/0x28
> [df431fa0] [c0001574] do_one_initcall+0x160/0x1a8
> [df431fd0] [c03e81e8] kernel_init+0xcc/0x174
> [df431ff0] [c000c588] kernel_thread+0x4c/0x68
> Instruction dump:
> 3ba00000 4bfffe74 9421ffc0 7c0802a6 bee1001c 90010044 3d60c055 3bab64ac
> 801d0004 7c791b78 2f800000 7c972378 <83830030> 409e00f0 83eb64ac 38000001
> ---[ end trace 6d92ab5ca4b92b20 ]---
> Kernel panic - not syncing: Attempted to kill init!
> Call Trace:
> [df431bd0] [c00063b8] show_stack+0x44/0x16c (unreliable)
> [df431c10] [c00204a4] panic+0xa4/0x1d4
> [df431c60] [c00242a0] do_exit+0x59c/0x5f0
> [df431ca0] [c0009ff8] kernel_bad_stack+0x0/0x4c
> [df431cc0] [c00102d0] bad_page_fault+0xc0/0x108
> [df431cd0] [c000cc7c] handle_page_fault+0x7c/0x80
> --- Exception: 300 at parse_cmdline_partitions+0x28/0x2ec
>     LR = parse_mtd_partitions+0x78/0x114
> [df431d90] [df426e00] 0xdf426e00 (unreliable)
> [df431dd0] [c01fe0e4] parse_mtd_partitions+0x78/0x114
> [df431e00] [c031bb70] of_flash_probe+0x39c/0x6e8
> [df431e80] [c0277960] platform_driver_probe_shim+0x40/0x54
> [df431e90] [c01d1624] platform_drv_probe+0x20/0x30
> [df431ea0] [c01d0138] driver_probe_device+0x148/0x1ac
> [df431ec0] [c01d044c] __driver_attach+0xa4/0xa8
> [df431ee0] [c01cf274] bus_for_each_dev+0x60/0x9c
> [df431f10] [c01cfe8c] driver_attach+0x24/0x34
> [df431f20] [c01cfc1c] bus_add_driver+0x1b8/0x274
> [df431f50] [c01d06a8] driver_register+0x6c/0x160
> [df431f70] [c01d1994] platform_driver_register+0x68/0x78
> [df431f80] [c0277b2c] of_register_platform_driver+0xa8/0xc4
> [df431f90] [c0402f1c] of_flash_init+0x18/0x28
> [df431fa0] [c0001574] do_one_initcall+0x160/0x1a8
> [df431fd0] [c03e81e8] kernel_init+0xcc/0x174
> [df431ff0] [c000c588] kernel_thread+0x4c/0x68
> Rebooting in 1 seconds..
> 
> _______________________________________________
> Linuxppc-dev mailing list
> Linuxppc-dev at lists.ozlabs.org
> https://lists.ozlabs.org/listinfo/linuxppc-dev




More information about the Linuxppc-dev mailing list