MPC8343 PCI setup
All,
currently I'm trying to bring up a mpc8343 based system. Latest u-boot v1.3.2 is running fine.
The MPC8343 has a single 32-Bit PCI Bus running at 66MHz. Connected are a FPGA (IDSEL 11 + IRQ0) and a miniPCI Slot (IDSEL12 + IRQ1).
Unfortunately the kernel panics during/after PCI setup.
As always I expect my device tree to be wrong or at least is missing something.
I startet with "mpc834x_mds.dts", removed the 2nd PCI and switched to "PowerPC,8343 at 0".
u-boot shows this pci node :
pci at e0008500 {
cell-index = <0x00000001>;
interrupt-map-mask = [00 00 f8 00 00 00 00 00 00 00 00
00 00 00 00 07];
interrupt-map = [00 00 58 00 00 00 00 00 00 00 00 00 00
00 00 01 00 00 00 01 00 00 00 30 00 00 00 08 00 00
60 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 11 00 00
00 08];
interrupt-parent = <0x00000001>;
interrupts = <0x00000042 0x00000008>;
bus-range = <0x00000000 0x00000000>;
ranges = [02 00 00 00 00 00 00 00 90 00 00 00 90 00 00
00 00 00 00 00 10 00 00 00 42 00 00 00 00 00 00 00 8
0 00 00 00 80 00 00 00 00 00 00 00 10 00 00 00 01 00 00 00 00 00 00 00
00 00 00 00 e2 00 00 00 00 00 00 00 00 10 00 00];
clock-frequency = <0x03f940aa>;
#interrupt-cells = <0x00000001>;
#size-cells = <0x00000002>;
#address-cells = <0x00000003>;
reg = <0xe0008500 0x00000100>;
compatible = "fsl,mpc8349-pci";
device_type = "pci";
};Booting the kernel :
Using mvBlueLYNX-M7 machine description
Linux version 2.6.25-rc7-01000-ga1ba6f0-dirty (root at nova) (gcc version 4.0.0 (DENX ELDK 4.1 4.0.0)) #23 PREEMPT Thu Apr 3 1
6:46:17 CEST 2008
Found initrd at 0xc3978000:0xc3c00000
console [udbg0] enabledsetup_arch: bootmemmvblm7_setup_arch()
Adding PCI host bridge /pci at e0008500
Found MPC83xx PCI host bridge at 0x00000000e0008500. Firmware bus
number: 0->0
->Hose at 0xc02bf000, cfg_addr=0xfdffd300,cfg_data=0xfdffd304
PCI host bridge /pci at e0008500 (primary) ranges:
MEM 0x0000000090000000..0x000000009fffffff -> 0x0000000090000000 MEM 0x0000000080000000..0x000000008fffffff -> 0x0000000080000000 Prefetch
IO 0x00000000e2000000..0x00000000e20fffff -> 0x0000000000000000
Unable to handle kernel paging request for data at address 0x00000000
Call trace gives address last called function "of_device_is_compatible".
Any help is welcome !
regards,
Andre Schwarz
Matrix Vision
MATRIX VISION GmbH, Talstra?e 16, DE-71570 Oppenweiler - Registergericht: Amtsgericht Stuttgart, HRB 271090 Gesch?ftsf?hrer: Gerhard Thullner, Werner Armingeon, Uwe Furtner
Quoted 1 line · Andre Schwarz
All,
Hi Andre and others,
Quoted 8 lines
currently I'm trying to bring up a mpc8343 based system. Latest u-boot v1.3.2 is running fine.
The MPC8343 has a single 32-Bit PCI Bus running at 66MHz. Connected are a FPGA (IDSEL 11 + IRQ0) and a miniPCI Slot (IDSEL12 + IRQ1).
Unfortunately the kernel panics during/after PCI setup.
Not sure if this is related. But i got strange problems with PCI after the patch "Add CONFIG_PCI_SKIP_HOST_BRIDGE config option" (55774b512fdf63c..) was added.
My symptoms where missed interrupts on sata dma in Linux. U-boot where however fine. Adding the above config solved my problems. Not really sure why i experienced this. We have no PCI bridge on our board.
/Tor
Quoted 24 lines · Tor Krill
Quoted 2 lines · Andre Schwarz
All,
Hi Andre and others,
Quoted 9 lines
currently I'm trying to bring up a mpc8343 based system. Latest u-boot v1.3.2 is running fine.
The MPC8343 has a single 32-Bit PCI Bus running at 66MHz. Connected are a FPGA (IDSEL 11 + IRQ0) and a miniPCI Slot (IDSEL12 + IRQ1).
Unfortunately the kernel panics during/after PCI setup.
Not sure if this is related. But i got strange problems with PCI after the patch "Add
CONFIG_PCI_SKIP_HOST_BRIDGEconfig option" (55774b512fdf63c..) was added.
Quoted 6 lines
My symptoms where missed interrupts on sata dma in Linux. U-boot where however fine. Adding the above config solved my problems. Not really sure why i experienced this. We have no PCI bridge on our board.
/Tor
Tor,
thanks for your reply.
I'm also not sure if it's a PCI issue anymore ...
Kernel config has been reduced to a minimum : no PCI, no netwoking, i2c, spi ...
dts has been reduced to the CPU, soc and ipic.
U-Boot fills out dtb correctly - as far as I can see.
Kernel crashes on various "of_" functions.
There's also strange messages :
WARNING: Estimating decrementer frequency (not found)
WARNING: Estimating processor frequency (not found)
They're coming from "generic_calibrate_decr()" in kernel/time.c.
Looks like there something basically wrong with my dtb location/processing, since the "timebase-frequency" is present and valid :
cpus {
#address-cells = <0x00000001>;
#size-cells = <0x00000000>;
PowerPC,8343 at 0 {
device_type = "cpu";
reg = <0x00000000>;
d-cache-line-size = <0x00000020>;
i-cache-line-size = <0x00000020>;
d-cache-size = <0x00008000>;
i-cache-size = <0x00008000>;
timebase-frequency = <0x03f940aa>;
bus-frequency = <0x0fe502a8>;
clock-frequency = <0x17d783fc>;
};
};Any hints ?
regards,
Andre
MATRIX VISION GmbH, Talstra?e 16, DE-71570 Oppenweiler - Registergericht: Amtsgericht Stuttgart, HRB 271090 Gesch?ftsf?hrer: Gerhard Thullner, Werner Armingeon, Uwe Furtner
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.denx.de/pipermail/u-boot/attachments/20080404/9043ecbc/attachment.htm