linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* MPC8343 - "unable to handle paging request @ 0"
@ 2008-04-05  8:19 André Schwarz
  2008-04-07 16:10 ` Scott Wood
                   ` (2 more replies)
  0 siblings, 3 replies; 16+ messages in thread
From: André Schwarz @ 2008-04-05  8:19 UTC (permalink / raw)
  To: kim.phillips; +Cc: linuxppc-dev

Kim,

sorry for the general questions - but I'm running out of ideas.
We never ever had that many problems getting a PowerPC running during=20
the past 10 years.

I've cross-checked the hardware and design with Freescale FAE.=20
Everything looks fine and is approved.

We're running latest u-boot v1.3.2 and kernel 2.6.25-rc8 from Denx.

A MPC5200B System is up and running fine with this scenario, so=20
hopefully there are no basic problems.

The MPC8343B (rev.3.1) is working pretty fine with u-boot including=20
mtest. Only problem is a the TSECs not working with our RGMII phy - but=20
this can wait.

I've set up a dts based on the MPC834x_mds and removed the 2nd PCI bus=20
and local bus stuff.
Kernel has been build with a new platform "MVBLM7" which is the name of=20
our board - nothing special so far.
u-boot fills out all parameters (clocks, mem, initrd @ chosen, ...)=20
correctly and the kernel is started exactly the same way as the MPC5200B=20
system using "bootm kernel_add initrd_addr dtb_addr".

Kernel starts and crashes with "unable to handle kernel paging request @=20
00000000".

After turning debug on in some files I can see that the initrd memory=20
gets reserved and the dtb is parsed correctly.
PCI memory/io spaces are set up fine.

At first I thought this is a problem with the device tree since the call=20
trace always points to "of_"-functions and "strcmp".
So I removed nearly everything from the kernel and dts including PCI,=20
net, USB and peripherals leaving only a minimum (cpu, mem, soc-node with=20
ipic and serial).

Unfortunately the error is still the same !

I wonder if there are some basic issues regarding MPC8343 or=20
specialities from the Freescale boards not being present on our board.

Major difference is the CPU (MPC8343B), 512MB RAM (using 2 BATs of=20
course) and nothing else on the local bus besides the Nor-Flash.
Of course the MPC8343 has only a single PCI-32 and only one USB.

Do you have any hints on this ?
Do you suggest to wait for the 2.6.25 release ?
Do you know of any MPC8343 based boards already up and running ?

regards,
Andr=E9 Schwarz

MATRIX VISION GmbH, Talstra=DFe 16, DE-71570 Oppenweiler  - Registergeric=
ht: Amtsgericht Stuttgart, HRB 271090
Gesch=E4ftsf=FChrer: Gerhard Thullner, Werner Armingeon, Uwe Furtner

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: MPC8343 - "unable to handle paging request @ 0"
  2008-04-05  8:19 MPC8343 - "unable to handle paging request @ 0" André Schwarz
@ 2008-04-07 16:10 ` Scott Wood
  2008-04-08  8:51   ` Andre Schwarz
  2008-04-08 13:50   ` Andre Schwarz
  2009-12-04 22:55 ` MPC8343EA Linux DTS file agnel
  2009-12-04 22:56 ` agnel
  2 siblings, 2 replies; 16+ messages in thread
From: Scott Wood @ 2008-04-07 16:10 UTC (permalink / raw)
  To: André Schwarz; +Cc: linuxppc-dev

On Sat, Apr 05, 2008 at 10:19:49AM +0200, André Schwarz wrote:
> Kernel starts and crashes with "unable to handle kernel paging request @  
> 00000000".
>
> After turning debug on in some files I can see that the initrd memory  
> gets reserved and the dtb is parsed correctly.
> PCI memory/io spaces are set up fine.
>
> At first I thought this is a problem with the device tree since the call  
> trace always points to "of_"-functions and "strcmp".

Could you provide this call trace?

-Scott

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: MPC8343 - "unable to handle paging request @ 0"
  2008-04-07 16:10 ` Scott Wood
@ 2008-04-08  8:51   ` Andre Schwarz
  2008-04-08 16:43     ` Scott Wood
  2008-04-08 13:50   ` Andre Schwarz
  1 sibling, 1 reply; 16+ messages in thread
From: Andre Schwarz @ 2008-04-08  8:51 UTC (permalink / raw)
  To: Scott Wood; +Cc: linuxppc-dev

[-- Attachment #1: Type: text/plain, Size: 5222 bytes --]

Scott Wood schrieb:
> On Sat, Apr 05, 2008 at 10:19:49AM +0200, André Schwarz wrote:
>   
>> Kernel starts and crashes with "unable to handle kernel paging request @  
>> 00000000".
>>
>> After turning debug on in some files I can see that the initrd memory  
>> gets reserved and the dtb is parsed correctly.
>> PCI memory/io spaces are set up fine.
>>
>> At first I thought this is a problem with the device tree since the call  
>> trace always points to "of_"-functions and "strcmp".
>>     
>
> Could you provide this call trace?
>
> -Scott
>   

Scott,

thanks for your reply.

please find below the output after the bootm command in u-boot.

My System.map :

...
c00126b8 T strcpy
c00126d4 T strncpy
c0012714 T strcat
c0012740 T strcmp
c0012764 T strlen
c001277c T memcmp
...
c0140bc4 T of_find_property
c0140c74 T of_get_property
c0140ca8 T of_device_is_compatible
c0140d48 T of_match_node
c0140e68 T of_find_matching_node
c0140f20 T of_n_size_cells
c0140f9c T of_n_addr_cells



Log:


# Booting kernel from Legacy Image at ff810000 ...
   Image Name:   2.6.25 mvBL-M7 MPC8343 #1
   Image Type:   PowerPC Linux Kernel Image (uncompressed)
   Data Size:    2084636 Bytes =  2 MB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
   Loading Kernel Image ... OK
OK
## Flattened Device Tree blob at 00000000
   Booting using the fdt blob at 0x600000
## Loading init Ramdisk from Legacy Image at 01000000 ...
   Image Name:   mvBC-1G uInitrd #1.1.03
   Image Type:   PowerPC Linux RAMDisk Image (uncompressed)
   Data Size:    2654208 Bytes =  2.5 MB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
   Loading Ramdisk to 1fcb7000, end 1ff3f000 ... OK
 -> early_init_devtree(c0600000)
search "chosen", depth: 0, uname:
search "chosen", depth: 1, uname: chosen
Looking for initrd properties... <3>initrd_start=0xdfcb7000  
initrd_end=0xdff3f000
Command line is: root=/dev/ram ro rootfstype=squashfs
dt_root_size_cells = 1
dt_root_addr_cells = 1
memory scan node memory, reg size 8, data: 0 20000000 2 1,
 - 0 ,  20000000
reserving: 1fcb7000 -> 288001
Phys. mem: 20000000
-> move_device_tree
<- move_device_tree
Scanning CPUs ...
boot cpu: logical 0 physical 0
 <- early_init_devtree()
Using mvBlueLYNX-M7 machine description
Linux version 2.6.25-rc8-01197-g1de15bb-dirty (root@nova) (gcc version 
4.0.0 (DENX ELDK 4.1 4.0.0)) #1 PREEMPT Tue Apr 8 10:40:51 CEST 2008
 -> unflatten_device_tree()
  size is 1840, allocating...
  unflattening dfffe7bc...
fixed up name for  ->
fixed up name for chosen -> chosen
fixed up name for aliases -> aliases
fixed up name for cpus -> cpus
fixed up name for PowerPC,8343@0 -> PowerPC,8343
fixed up name for memory -> memory
fixed up name for soc8343@e0000000 -> soc8343
fixed up name for wdt@200 -> wdt
fixed up name for i2c@3000 -> i2c
fixed up name for rtc@68 -> rtc
fixed up name for i2c@3100 -> i2c
fixed up name for spi@7000 -> spi
fixed up name for usb@22000 -> usb
fixed up name for mdio@24520 -> mdio
fixed up name for ethernet-phy@0 -> ethernet-phy
fixed up name for ethernet-phy@1 -> ethernet-phy
fixed up name for ethernet@24000 -> ethernet
fixed up name for ethernet@25000 -> ethernet
fixed up name for serial@4500 -> serial
fixed up name for serial@4600 -> serial
fixed up name for pic@700 -> pic
fixed up name for localbus@e0005000 -> localbus
fixed up name for flash@0,0 -> flash
 <- unflatten_device_tree()
Found initrd at 0xdfcb7000:0xdff3f000
console [udbg0] enabled
setup_arch: bootmem
mvblm7_setup_arch()
Unable to handle kernel paging request for data at address 0x00000000
Faulting instruction address: 0xc0012748
Oops: Kernel access of bad area, sig: 11 [#1]
PREEMPT mvBlueLYNX-M7
Modules linked in:
NIP: c0012748 LR: c0140c10 CTR: 00000000
REGS: c01f9e40 TRAP: 0300   Not tainted  (2.6.25-rc8-01197-g1de15bb-dirty)
MSR: 00001032 <ME,IR,DR>  CR: 22008048  XER: 20000000
DAR: 00000000, DSISR: 20000000
TASK = c01e4510[0] 'swapper' THREAD: c01f8000
GPR00: c0140c84 c01f9ef0 c01e4510 00000000 c0197a7f ffffffff c01f9edc 
00000000
GPR08: c01f15e4 00000003 c0600b84 0000004d 22002048 ffffffdf 1fffd000 
00000000
GPR16: ffffffdf ffff7fdf 00000000 00000000 1fff8974 1ff426f8 00000004 
00288000
GPR24: 00000002 00000000 5f0fffff c01993e4 c01f9f28 c0197a80 c01f8000 
dffff9e4
Call Trace:
[c01f9ef0] [c001c190]  (unreliable)
[c01f9f10] [c0140c84]
[c01f9f20] [c0140ccc]
[c01f9f40] [c014145c]
[c01f9f60] [c0014014]
[c01f9fa0] [c01d1a40]
[c01f9fb0] [c01ce64c]
[c01f9fc0] [c01c55ac]
[c01f9ff0] [00003438]
Instruction dump:
3884ffff 8c050001 2c000000 4082fff8 38a5ffff 8c040001 2c000000 9c050001
4082fff4 4e800020 38a3ffff 3884ffff <8c650001> 2c830000 8c040001 7c601851
---[ end trace 8640abe69a316dee ]---
Kernel panic - not syncing: Attempted to kill the idle task!
Rebooting in 180 seconds..  






Please let me know if you need more information.


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

[-- Attachment #2: Type: text/html, Size: 6442 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: MPC8343 - "unable to handle paging request @ 0"
  2008-04-07 16:10 ` Scott Wood
  2008-04-08  8:51   ` Andre Schwarz
@ 2008-04-08 13:50   ` Andre Schwarz
  2008-04-08 16:48     ` Scott Wood
  1 sibling, 1 reply; 16+ messages in thread
From: Andre Schwarz @ 2008-04-08 13:50 UTC (permalink / raw)
  To: Scott Wood; +Cc: linuxppc-dev

[-- Attachment #1: Type: text/plain, Size: 9163 bytes --]

Scott Wood schrieb:
> On Sat, Apr 05, 2008 at 10:19:49AM +0200, André Schwarz wrote:
>   
>> Kernel starts and crashes with "unable to handle kernel paging request @  
>> 00000000".
>>
>> After turning debug on in some files I can see that the initrd memory  
>> gets reserved and the dtb is parsed correctly.
>> PCI memory/io spaces are set up fine.
>>
>> At first I thought this is a problem with the device tree since the call  
>> trace always points to "of_"-functions and "strcmp".
>>     
>
> Could you provide this call trace?
>
> -Scott
> _______________________________________________
> Linuxppc-dev mailing list
> Linuxppc-dev@ozlabs.org
> https://ozlabs.org/mailman/listinfo/linuxppc-dev
>   
Scott,

after building a debug kernel and attaching the bdi2000 it looks like 
the crash occurs during "console_init()" ...

Since we're using a dtb I omit the "console=..." argument for the 
kernel. Is this correct ?

If "console=/dev/ttyS0,115200N8" argument is given the serial console 
stops working after console_init....


On other PowerPC system I could see something like this during boot :

-> find_legacy_serial_port()
stdout is /soc8568@e0000000/serial@4600
legacy_serial_console = 1
default console speed = 115340
<- find_legacy_serial_port()


Should I see this message also ?
Have I misconfigured anything ?



u-boot prints the following dtb :

...
        aliases {
                name = "aliases";
                ethernet0 = "/soc8343@e0000000/ethernet@24000";
                ethernet1 = "/soc8343@e0000000/ethernet@25000";
                serial0 = "/soc8343@e0000000/serial@4500";
                serial1 = "/soc8343@e0000000/serial@4600";
                pci0 = "/pci@e0008500";
        };
        cpus {
                name = "cpus";
                #address-cells = <0x00000001>;
                #size-cells = <0x00000000>;
                PowerPC,8343@0 {
                        name = "PowerPC,8343";
                        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>;
                };
        };
        memory {
                name = "memory";
                device_type = "memory";
                reg = <0x00000000 0x20000000>;
        };
        soc8343@e0000000 {
                name = "soc8343";
                #address-cells = <0x00000001>;
                #size-cells = <0x00000001>;
                device_type = "soc";
                compatible = "soc";
                ranges = [00 00 00 00 e0 00 00 00 00 10 00 00];
                reg = <0xe0000000 0x00000200>;
                bus-frequency = <0x0fe502a8>;
                wdt@200 {
                        device_type = "watchdog";
                        compatible = "mpc83xx_wdt";
                        reg = <0x00000200 0x00000100>;
                };
                i2c@3000 {
                        name = "i2c";
                        #address-cells = <0x00000001>;
                        #size-cells = <0x00000000>;
                        cell-index = <0x00000000>;
                        compatible = "fsl-i2c";
                        reg = <0x00003000 0x00000100>;
                        interrupts = <0x0000000e 0x00000008>;
                        interrupt-parent = <0x00000001>;
                        dfsrr;
                };
                i2c@3100 {
                        name = "i2c";
                        #address-cells = <0x00000001>;
                        #size-cells = <0x00000000>;
                        cell-index = <0x00000001>;
                        compatible = "fsl-i2c";
                        reg = <0x00003100 0x00000100>;
                        interrupts = <0x0000000f 0x00000008>;
                        interrupt-parent = <0x00000001>;
                        dfsrr;
                };
                spi@7000 {
                        name = "spi";
                        cell-index = <0x00000000>;
                        compatible = "fsl,spi";
                        reg = <0x00007000 0x00001000>;
                        interrupts = <0x00000010 0x00000008>;
                        interrupt-parent = <0x00000001>;
                        mode = "cpu";
                };
                usb@22000 {
                        name = "usb";
                        compatible = "fsl-usb2-mph";
                        reg = <0x00022000 0x00001000>;
                        #address-cells = <0x00000001>;
                        #size-cells = <0x00000000>;
                        interrupt-parent = <0x00000001>;
                        interrupts = <0x00000027 0x00000008>;
                        phy_type = "ulpi";
                        port0;
                };
                mdio@24520 {
                        name = "mdio";
                        #address-cells = <0x00000001>;
                        #size-cells = <0x00000000>;
                        compatible = "fsl,gianfar-mdio";
                        reg = <0x00024520 0x00000020>;
                        ethernet-phy@0 {
                                cell-index = <0x00000000>;
                                interrupt-parent = <0x00000001>;
                                interrupts = <0x00000016 0x00000008>;
                                reg = <0x00000000>;
                                device_type = "ethernet-phy";
                                linux,phandle = <0x00000002>;
                        };
                        ethernet-phy@1 {
                                cell-index = <0x00000001>;
                                interrupt-parent = <0x00000001>;
                                interrupts = <0x00000017 0x00000008>;
                                reg = <0x00000001>;
                                device_type = "ethernet-phy";
                                linux,phandle = <0x00000003>;
                        };
                };
                ethernet@24000 {
                        cell-index = <0x00000000>;
                        device_type = "network";
                        model = "TSEC";
                        compatible = "gianfar";
                        reg = <0x00024000 0x00001000>;
                        local-mac-address = [b6 b4 45 eb fb c0];
                        interrupts = [00 00 00 20 00 00 00 08 00 00 00 
21 00 00 00 08 00 00 00 22 00 00 00 08];
                        interrupt-parent = <0x00000001>;
                        phy-handle = <0x00000002>;
                        linux,network-index = <0x00000000>;
                };
                ethernet@25000 {
                        cell-index = <0x00000001>;
                        device_type = "network";
                        model = "TSEC";
                        compatible = "gianfar";
                        reg = <0x00025000 0x00001000>;
                        local-mac-address = [b6 b4 45 eb fb c2];
                        interrupts = [00 00 00 23 00 00 00 08 00 00 00 
24 00 00 00 08 00 00 00 25 00 00 00 08];
                        interrupt-parent = <0x00000001>;
                        phy-handle = <0x00000003>;
                        linux,network-index = <0x00000001>;
                };
                serial@4500 {
                        cell-index = <0x00000000>;
                        device_type = "serial";
                        compatible = "ns16550";
                        reg = <0x00004500 0x00000100>;
                        clock-frequency = <0x0fe502a8>;
                        interrupts = <0x00000009 0x00000008>;
                        interrupt-parent = <0x00000001>;
                };
                serial@4600 {
                        cell-index = <0x00000001>;
                        device_type = "serial";
                        compatible = "ns16550";
                        reg = <0x00004600 0x00000100>;
                        clock-frequency = <0x0fe502a8>;
                        interrupts = <0x0000000a 0x00000008>;
                        interrupt-parent = <0x00000001>;
                };
                pic@700 {
                        interrupt-controller;
                        #address-cells = <0x00000000>;
                        #interrupt-cells = <0x00000002>;
                        reg = <0x00000700 0x00000100>;
                        device_type = "ipic";
                        linux,phandle = <0x00000001>;
                };
        };
....



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

[-- Attachment #2: Type: text/html, Size: 27183 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: MPC8343 - "unable to handle paging request @ 0"
  2008-04-08  8:51   ` Andre Schwarz
@ 2008-04-08 16:43     ` Scott Wood
  0 siblings, 0 replies; 16+ messages in thread
From: Scott Wood @ 2008-04-08 16:43 UTC (permalink / raw)
  To: Andre Schwarz; +Cc: linuxppc-dev

On Tue, Apr 08, 2008 at 10:51:18AM +0200, Andre Schwarz wrote:
> Call Trace:
> [c01f9ef0] [c001c190]  (unreliable)
> [c01f9f10] [c0140c84]
> [c01f9f20] [c0140ccc]
> [c01f9f40] [c014145c]
> [c01f9f60] [c0014014]
> [c01f9fa0] [c01d1a40]
> [c01f9fb0] [c01ce64c]
> [c01f9fc0] [c01c55ac]
> [c01f9ff0] [00003438]

Please turn kallsyms on, which will produce an annotated call trace.  Not
all these addresses were in the System.map fragment.

-Scott

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: MPC8343 - "unable to handle paging request @ 0"
  2008-04-08 13:50   ` Andre Schwarz
@ 2008-04-08 16:48     ` Scott Wood
  2008-04-08 19:59       ` André Schwarz
  2008-04-09 12:54       ` Andre Schwarz
  0 siblings, 2 replies; 16+ messages in thread
From: Scott Wood @ 2008-04-08 16:48 UTC (permalink / raw)
  To: Andre Schwarz; +Cc: linuxppc-dev

On Tue, Apr 08, 2008 at 03:50:26PM +0200, Andre Schwarz wrote:
> after building a debug kernel and attaching the bdi2000 it looks like  
> the crash occurs during "console_init()" ...

Does your device tree have a /chosen node after u-boot is done with it? 
find_legacy_serial_ports() can crash otherwise (we really should fix that).

> Since we're using a dtb I omit the "console=..." argument for the  
> kernel. Is this correct ?

It's OK if you have /chosen/linux,stdout-path.

> If "console=/dev/ttyS0,115200N8" argument is given the serial console  
> stops working after console_init....
>
>
> On other PowerPC system I could see something like this during boot :
>
> -> find_legacy_serial_port()
> stdout is /soc8568@e0000000/serial@4600
> legacy_serial_console = 1
> default console speed = 115340
> <- find_legacy_serial_port()
>
>
> Should I see this message also ?

Only if you enable debug messages in legacy_serial.c.

> Have I misconfigured anything ?

One thing that sticks out from the above is that you ask for ttyS0, but the
stdout you list from the other system corresponds to ttyS1.  Is this just a
difference between the two systems?

-Scott

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: MPC8343 - "unable to handle paging request @ 0"
  2008-04-08 16:48     ` Scott Wood
@ 2008-04-08 19:59       ` André Schwarz
  2008-04-09 12:54       ` Andre Schwarz
  1 sibling, 0 replies; 16+ messages in thread
From: André Schwarz @ 2008-04-08 19:59 UTC (permalink / raw)
  To: Scott Wood; +Cc: linuxppc-dev

[-- Attachment #1: Type: text/plain, Size: 1858 bytes --]

Scott Wood wrote:
> On Tue, Apr 08, 2008 at 03:50:26PM +0200, Andre Schwarz wrote:
>   
>> after building a debug kernel and attaching the bdi2000 it looks like  
>> the crash occurs during "console_init()" ...
>>     
>
> Does your device tree have a /chosen node after u-boot is done with it? 
> find_legacy_serial_ports() can crash otherwise (we really should fix that).
>
>   
latest u-boot does add the chosen node.
As far as I know it's for initrd setup ... don't know if it's complete.
>> Since we're using a dtb I omit the "console=..." argument for the  
>> kernel. Is this correct ?
>>     
>
> It's OK if you have /chosen/linux,stdout-path.
>
>   
that sounds promising ! Haven't seen this and will have a closer look.
>> If "console=/dev/ttyS0,115200N8" argument is given the serial console  
>> stops working after console_init....
>>
>>
>> On other PowerPC system I could see something like this during boot :
>>
>> -> find_legacy_serial_port()
>> stdout is /soc8568@e0000000/serial@4600
>> legacy_serial_console = 1
>> default console speed = 115340
>> <- find_legacy_serial_port()
>>
>>
>> Should I see this message also ?
>>     
>
> Only if you enable debug messages in legacy_serial.c.
>
>   
ok.
>> Have I misconfigured anything ?
>>     
>
> One thing that sticks out from the above is that you ask for ttyS0, but the
> stdout you list from the other system corresponds to ttyS1.  Is this just a
> difference between the two systems?
>
>   
Yes - the log from the MPC8568 is a copy&paste from another posting. 
It's not my system.
I want ttyS0.
> -Scott
>   
I appreciate your help !

Thanks,
André


MATRIX VISION GmbH, Talstraße 16, DE-71570 Oppenweiler  - Registergericht: Amtsgericht Stuttgart, HRB 271090
Geschäftsführer: Gerhard Thullner, Werner Armingeon, Uwe Furtner

[-- Attachment #2: Type: text/html, Size: 2914 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: MPC8343 - "unable to handle paging request @ 0"
  2008-04-08 16:48     ` Scott Wood
  2008-04-08 19:59       ` André Schwarz
@ 2008-04-09 12:54       ` Andre Schwarz
  2008-04-09 18:57         ` Scott Wood
  1 sibling, 1 reply; 16+ messages in thread
From: Andre Schwarz @ 2008-04-09 12:54 UTC (permalink / raw)
  To: Scott Wood; +Cc: linuxppc-dev

[-- Attachment #1: Type: text/plain, Size: 8893 bytes --]

Scott Wood schrieb:
> On Tue, Apr 08, 2008 at 03:50:26PM +0200, Andre Schwarz wrote:
>   
>> after building a debug kernel and attaching the bdi2000 it looks like  
>> the crash occurs during "console_init()" ...
>>     
>
> Does your device tree have a /chosen node after u-boot is done with it? 
> find_legacy_serial_ports() can crash otherwise (we really should fix that).
>
>   
>> Since we're using a dtb I omit the "console=..." argument for the  
>> kernel. Is this correct ?
>>     
>
> It's OK if you have /chosen/linux,stdout-path.
>
>   
>> If "console=/dev/ttyS0,115200N8" argument is given the serial console  
>> stops working after console_init....
>>
>>
>> On other PowerPC system I could see something like this during boot :
>>
>> -> find_legacy_serial_port()
>> stdout is /soc8568@e0000000/serial@4600
>> legacy_serial_console = 1
>> default console speed = 115340
>> <- find_legacy_serial_port()
>>
>>
>> Should I see this message also ?
>>     
>
> Only if you enable debug messages in legacy_serial.c.
>
>   
>> Have I misconfigured anything ?
>>     
>
> One thing that sticks out from the above is that you ask for ttyS0, but the
> stdout you list from the other system corresponds to ttyS1.  Is this just a
> difference between the two systems?
>
> -Scott
>   

Scott,

I've added kallsyms and the #debug in legacy_serial.
Obviously there's missing something
-> see error "can't find stdout package /soc8343@e0000000/serial@4500 !" 
below.


Can you help here ?

Thanks,
Andre


## Booting kernel from Legacy Image at ff810000 ...
   Image Name:   2.6.25 mvBL-M7 MPC8343 #12
   Image Type:   PowerPC Linux Kernel Image (uncompressed)
   Data Size:    2494236 Bytes =  2.4 MB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
   Loading Kernel Image ... OK
OK
## Flattened Device Tree blob at 00000000
   Booting using the fdt blob at 0x600000
## Loading init Ramdisk from Legacy Image at 01000000 ...
   Image Name:   mvBC-1G uInitrd #1.1.03
   Image Type:   PowerPC Linux RAMDisk Image (uncompressed)
   Data Size:    2654208 Bytes =  2.5 MB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
   Loading Ramdisk to 1fcb7000, end 1ff3f000 ... OK
 -> early_init_devtree(c0600000)
search "chosen", depth: 0, uname:
search "chosen", depth: 1, uname: chosen
Looking for initrd properties... <3>initrd_start=0xdfcb7000  
initrd_end=0xdff3f000
Command line is: root=/dev/ram ro rootfstype=squashfs
dt_root_size_cells = 1
dt_root_addr_cells = 1
memory scan node memory, reg size 8, data: 0 20000000 2 1,
 - 0 ,  20000000
reserving: 1fcb7000 -> 288001
Phys. mem: 20000000
-> move_device_tree
<- move_device_tree
Scanning CPUs ...
boot cpu: logical 0 physical 0
 <- early_init_devtree()
Using mvBlueLYNX-M7 machine description
Linux version 2.6.25-rc8-01197-g1de15bb-dirty (root@nova) (gcc version 
4.0.0 (DENX ELDK 4.1 4.0.0)) #12 PREEMPT Wed Apr 9 14:40:48 CEST 2008
 -> unflatten_device_tree()
  size is 192c, allocating...
  unflattening dfffe6d0...
fixed up name for  ->
fixed up name for chosen -> chosen
fixed up name for wdt@200 -> wdt
fixed up name for ethernet-phy@0 -> ethernet-phy
fixed up name for ethernet-phy@1 -> ethernet-phy
fixed up name for ethernet@24000 -> ethernet
fixed up name for ethernet@25000 -> ethernet
fixed up name for serial@4500 -> serial
fixed up name for serial@4600 -> serial
fixed up name for pic@700 -> pic
fixed up name for ppcboot_env@0 -> ppcboot_env
fixed up name for ppcboot_env_red@0x2000 -> ppcboot_env_red
fixed up name for u-boot_autoscript@0x4000 -> u-boot_autoscript
fixed up name for u-boot_autoscript_red@0x4000 -> u-boot_autoscript_red
fixed up name for dtb@0x8000 -> dtb
fixed up name for dtb_red@0xa000 -> dtb_red
fixed up name for kernel@0x10000 -> kernel
fixed up name for rfs@0x400000 -> rfs
fixed up name for u-boot@0x700000 -> u-boot
fixed up name for fpga@0x780000 -> fpga
 <- unflatten_device_tree()
Found initrd at 0xdfcb7000:0xdff3f000
 -> find_legacy_serial_port()
stdout is /soc8343@e0000000/serial@4500
legacy_serial_console = 0
default console speed = 115740
 <- find_legacy_serial_port()
console [udbg0] enabled
setup_arch: bootmem
mvblm7_setup_arch()
arch: exit
Zone PFN ranges:
  DMA             0 ->   131072
  Normal     131072 ->   131072
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
    0:        0 ->   131072
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 130048
Kernel command line: root=/dev/ram ro rootfstype=squashfs
PID hash table entries: 2048 (order: 11, 8192 bytes)
clocksource: timebase mult[3c00001] shift[22] registered

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 -> check_legacy_serial_console()
 can't find stdout package /soc8343@e0000000/serial@4500 !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
Memory: 514048k/524288k available (2328k kernel code, 9676k reserved, 
88k data, 126k bss, 140k init)
SLUB: Genslabs=12, HWalign=32, Order=0-1, MinObjects=4, CPUs=1, Nodes=1
Mount-cache hash table entries: 512
------------[ cut here ]------------
Badness at lib/kref.c:43
NIP: c00f5494 LR: c000d6b0 CTR: 00000000
REGS: c025de60 TRAP: 0700   Not tainted  (2.6.25-rc8-01197-g1de15bb-dirty)
MSR: 00029032 <EE,ME,IR,DR>  CR: 84000048  XER: 00000000
TASK = c0248510[0] 'swapper' THREAD: c025c000
GPR00: 00000001 c025df10 c0248510 dffff170 dffff050 00000009 df80fc6a 
00000000
GPR08: 0007ffff 00000000 df80b990 c06011cf 24000042 5fffffff 1fffd000 
00000000
GPR16: 1fffffff 9fffffff 00000000 00000000 1fff8910 1ff426f8 00000004 
00288000
GPR24: 00000000 00000000 c02630a0 c0260000 dfffefa0 c025c000 dffff050 
dffff13c
NIP [c00f5494] kref_get+0xc/0x24
LR [c000d6b0] of_node_get+0x20/0x38
Call Trace:
[c025df10] [c06011cf] 0xc06011cf (unreliable)
[c025df20] [c01571a4] of_get_next_child+0x40/0x9c
[c025df40] [c00bab5c] proc_device_tree_add_node+0x4c/0x144
[c025df60] [c00bab50] proc_device_tree_add_node+0x40/0x144
[c025df80] [c00bab50] proc_device_tree_add_node+0x40/0x144
[c025dfa0] [c00bacc8] proc_device_tree_init+0x74/0xa0
[c025dfb0] [c0235c70] proc_root_init+0xd4/0x10c
[c025dfc0] [c022374c] start_kernel+0x244/0x2cc
[c025dff0] [00003438] 0x3438
Instruction dump:
4bf289e1 7fa3eb78 3ba00000 4bfff3ad 4bffffd8 90830000 4e800020 38800001
4bfffff4 80030000 21200000 7c090114 <0f000000> 7d201828 31290001 7d20192d
WARNING: Bad of_node_put() on
Call Trace:
[c025ded0] [c00088fc] show_stack+0x50/0x190 (unreliable)
[c025df00] [c000de70] of_node_release+0xb0/0xcc
[c025df20] [c00f5500] kref_put+0x54/0x6c
[c025df30] [c000d6ec] of_node_put+0x24/0x34
[c025df40] [c00babc8] proc_device_tree_add_node+0xb8/0x144
[c025df60] [c00bab50] proc_device_tree_add_node+0x40/0x144
[c025df80] [c00bab50] proc_device_tree_add_node+0x40/0x144
[c025dfa0] [c00bacc8] proc_device_tree_init+0x74/0xa0
[c025dfb0] [c0235c70] proc_root_init+0xd4/0x10c
[c025dfc0] [c022374c] start_kernel+0x244/0x2cc
[c025dff0] [00003438] 0x3438
Unable to handle kernel paging request for data at address 0x00000000
Faulting instruction address: 0xc0014454
Oops: Kernel access of bad area, sig: 11 [#1]
PREEMPT mvBlueLYNX-M7
Modules linked in:
NIP: c0014454 LR: c00ba9e0 CTR: 00000000
REGS: c025de70 TRAP: 0300   Not tainted  (2.6.25-rc8-01197-g1de15bb-dirty)
MSR: 00009032 <EE,ME,IR,DR>  CR: 44000048  XER: 00000000
DAR: 00000000, DSISR: 20000000
TASK = c0248510[0] 'swapper' THREAD: c025c000
GPR00: c00bac0c c025df20 c0248510 00000023 ffffffff df80fd60 df80fd6e 
00000000
GPR08: 001fffff 00000002 df80b990 c06010f5 24000022 5fffffff 1fffd000 
00000000
GPR16: 1fffffff 9fffffff 00000000 00000000 1fff8910 1ff426f8 00000004 
00288000
GPR24: 00000000 00000000 c02630a0 c0260000 dfffefa0 00000000 c025c000 
df80fd00
NIP [c0014454] strcmp+0x10/0x24
LR [c00ba9e0] duplicate_name+0x3c/0x94
Call Trace:
[c025df20] [c00ba870] __proc_device_tree_add_prop+0x54/0xd4 (unreliable)
[c025df40] [c00bac0c] proc_device_tree_add_node+0xfc/0x144
[c025df60] [c00bab50] proc_device_tree_add_node+0x40/0x144
[c025df80] [c00bab50] proc_device_tree_add_node+0x40/0x144
[c025dfa0] [c00bacc8] proc_device_tree_init+0x74/0xa0
[c025dfb0] [c0235c70] proc_root_init+0xd4/0x10c
[c025dfc0] [c022374c] start_kernel+0x244/0x2cc
[c025dff0] [00003438] 0x3438
Instruction dump:
2c000000 4082fff8 38a5ffff 8c040001 2c000000 9c050001 4082fff4 4e800020
38a3ffff 3884ffff 8c650001 2c830000 <8c040001> 7c601851 4d860020 4182ffec
---[ end trace 8640abe69a316dee ]---
Kernel panic - not syncing: Attempted to kill the idle task!
Rebooting in 180 
seconds..                                                                                      



MATRIX VISION GmbH, Talstraße 16, DE-71570 Oppenweiler  - Registergericht: Amtsgericht Stuttgart, HRB 271090
Geschäftsführer: Gerhard Thullner, Werner Armingeon, Uwe Furtner

[-- Attachment #2: Type: text/html, Size: 11291 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: MPC8343 - "unable to handle paging request @ 0"
  2008-04-09 12:54       ` Andre Schwarz
@ 2008-04-09 18:57         ` Scott Wood
  2008-04-09 19:09           ` Andre Schwarz
  0 siblings, 1 reply; 16+ messages in thread
From: Scott Wood @ 2008-04-09 18:57 UTC (permalink / raw)
  To: Andre Schwarz; +Cc: linuxppc-dev

Andre Schwarz wrote:
>  -> find_legacy_serial_port()
> stdout is /soc8343@e0000000/serial@4500

It looks like you have some memory corruption between here...

> clocksource: timebase mult[3c00001] shift[22] registered
> 
> !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
>  -> check_legacy_serial_console()
>  can't find stdout package /soc8343@e0000000/serial@4500 !
> !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

...and here.

-Scott

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: MPC8343 - "unable to handle paging request @ 0"
  2008-04-09 18:57         ` Scott Wood
@ 2008-04-09 19:09           ` Andre Schwarz
  2008-04-09 19:15             ` Scott Wood
  0 siblings, 1 reply; 16+ messages in thread
From: Andre Schwarz @ 2008-04-09 19:09 UTC (permalink / raw)
  To: Scott Wood; +Cc: linuxppc-dev

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset=UTF-8; format=flowed, Size: 1355 bytes --]

Scott Wood schrieb:
> Andre Schwarz wrote:
>>  -> find_legacy_serial_port()
>> stdout is /soc8343@e0000000/serial@4500
>
> It looks like you have some memory corruption between here...
>
>> clocksource: timebase mult[3c00001] shift[22] registered
>>
>> !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
>>  -> check_legacy_serial_console()
>>  can't find stdout package /soc8343@e0000000/serial@4500 !
>> !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
>
> ...and here.
>
> -Scott

Scott,

are you talking about a possible hardware problem or misbehaving code ?

Does it look like something gets overwritten during initrd 
extraction/movement ?

The system has 512MB RAM which means that we need 2 BAT regs to map the 
memory. I've found comments in Freescale u-boot header files that 
currently a max of 256MB is supported. I never understood why ? Could 
this problem be related to this ?

Do I need to supply reserved memory regions ? I thought u-boot is doing 
so for initrd and the kernel don't need it ...


I'll rebuild u-boot with 256MB memory size and do an extra run with 
memory test - just to make sure.


Any hints where to look else ?


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

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: MPC8343 - "unable to handle paging request @ 0"
  2008-04-09 19:09           ` Andre Schwarz
@ 2008-04-09 19:15             ` Scott Wood
  2008-04-10  9:00               ` Andre Schwarz
  0 siblings, 1 reply; 16+ messages in thread
From: Scott Wood @ 2008-04-09 19:15 UTC (permalink / raw)
  To: Andre Schwarz; +Cc: linuxppc-dev

Andre Schwarz wrote:
> Scott Wood schrieb:
>> Andre Schwarz wrote:
>>>  -> find_legacy_serial_port()
>>> stdout is /soc8343@e0000000/serial@4500
>>
>> It looks like you have some memory corruption between here...
>>
>>> clocksource: timebase mult[3c00001] shift[22] registered
>>>
>>> !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
>>>  -> check_legacy_serial_console()
>>>  can't find stdout package /soc8343@e0000000/serial@4500 !
>>> !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
>>
>> ...and here.
>>
>> -Scott
> 
> Scott,
> 
> are you talking about a possible hardware problem or misbehaving code ?

Either.  The same OF call is done in both places with the same argument, 
but is getting different results.

> Does it look like something gets overwritten during initrd 
> extraction/movement ?

Don't know.

> The system has 512MB RAM which means that we need 2 BAT regs to map the 
> memory. I've found comments in Freescale u-boot header files that 
> currently a max of 256MB is supported. I never understood why ? Could 
> this problem be related to this ?

Kim's probably be the best one to answer u-boot questions.

-Scott

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: MPC8343 - "unable to handle paging request @ 0"
  2008-04-09 19:15             ` Scott Wood
@ 2008-04-10  9:00               ` Andre Schwarz
  0 siblings, 0 replies; 16+ messages in thread
From: Andre Schwarz @ 2008-04-10  9:00 UTC (permalink / raw)
  To: Scott Wood; +Cc: linuxppc-dev

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset=UTF-8; format=flowed, Size: 8888 bytes --]

Scott Wood schrieb:
> Andre Schwarz wrote:
>> Scott Wood schrieb:
>>> Andre Schwarz wrote:
>>>>  -> find_legacy_serial_port()
>>>> stdout is /soc8343@e0000000/serial@4500
>>>
>>> It looks like you have some memory corruption between here...
>>>
>>>> clocksource: timebase mult[3c00001] shift[22] registered
>>>>
>>>> !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
>>>>  -> check_legacy_serial_console()
>>>>  can't find stdout package /soc8343@e0000000/serial@4500 !
>>>> !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
>>>
>>> ...and here.
>>>
>>> -Scott
>>
>> Scott,
>>
>> are you talking about a possible hardware problem or misbehaving code ?
>
> Either.  The same OF call is done in both places with the same 
> argument, but is getting different results.
>
>> Does it look like something gets overwritten during initrd 
>> extraction/movement ?
>
> Don't know.
>
>> The system has 512MB RAM which means that we need 2 BAT regs to map 
>> the memory. I've found comments in Freescale u-boot header files that 
>> currently a max of 256MB is supported. I never understood why ? Could 
>> this problem be related to this ?
>
> Kim's probably be the best one to answer u-boot questions.
>
> -Scott
>

Scott + Kim,

as mentioned before I have re-built u-boot with the following 
modifications :

- Reduce Memsize from 512 to 256MB
- Skipped 2nd BAT setup

dtb looks the same but memory size set to 256MB.

System boots fine - this is weird !


I'm not really familiar with the powerpc tree of the kernel and far out 
of sync with the current development.


Could you have a look at this ?

Any ideas right now ?


Thanks,
Andre





## Booting kernel from Legacy Image at ff810000 ...
   Image Name:   2.6.25 mvBL-M7 MPC8343 #12
   Image Type:   PowerPC Linux Kernel Image (uncompressed)
   Data Size:    2494236 Bytes =  2.4 MB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
   Loading Kernel Image ... OK
OK
## Flattened Device Tree blob at 00000000
   Booting using the fdt blob at 0x600000
## Loading init Ramdisk from Legacy Image at 01000000 ...
   Image Name:   mvBC-1G uInitrd #1.1.03
   Image Type:   PowerPC Linux RAMDisk Image (uncompressed)
   Data Size:    2654208 Bytes =  2.5 MB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
   Loading Ramdisk to 0fcb7000, end 0ff3f000 ... OK
 -> early_init_devtree(c0600000)
search "chosen", depth: 0, uname:
search "chosen", depth: 1, uname: chosen
Looking for initrd properties... <3>initrd_start=0xcfcb7000  
initrd_end=0xcff3f000
Command line is: root=/dev/ram ro rootfstype=squashfs
dt_root_size_cells = 1
dt_root_addr_cells = 1
memory scan node memory, reg size 8, data: 0 10000000 2 1,
 - 0 ,  10000000
reserving: fcb7000 -> 288001
Phys. mem: 10000000
-> move_device_tree
<- move_device_tree
Scanning CPUs ...
boot cpu: logical 0 physical 0
 <- early_init_devtree()
Using mvBlueLYNX-M7 machine description
Linux version 2.6.25-rc8-01197-g1de15bb-dirty (root@nova) (gcc version 
4.0.0 (DENX ELDK 4.1 4.0.0)) #12 PREEMPT Wed Apr 9 14:40:48 CEST 2008
 -> unflatten_device_tree()
  size is 192c, allocating...
  unflattening cfffe6d0...
fixed up name for  ->
fixed up name for chosen -> chosen
fixed up name for wdt@200 -> wdt
fixed up name for ethernet-phy@0 -> ethernet-phy
fixed up name for ethernet-phy@1 -> ethernet-phy
fixed up name for ethernet@24000 -> ethernet
fixed up name for ethernet@25000 -> ethernet
fixed up name for serial@4500 -> serial
fixed up name for serial@4600 -> serial
fixed up name for pic@700 -> pic
fixed up name for ppcboot_env@0 -> ppcboot_env
fixed up name for ppcboot_env_red@0x2000 -> ppcboot_env_red
fixed up name for u-boot_autoscript@0x4000 -> u-boot_autoscript
fixed up name for u-boot_autoscript_red@0x4000 -> u-boot_autoscript_red
fixed up name for dtb@0x8000 -> dtb
fixed up name for dtb_red@0xa000 -> dtb_red
fixed up name for kernel@0x10000 -> kernel
fixed up name for rfs@0x400000 -> rfs
fixed up name for u-boot@0x700000 -> u-boot
fixed up name for fpga@0x780000 -> fpga
 <- unflatten_device_tree()
Found initrd at 0xcfcb7000:0xcff3f000
 -> find_legacy_serial_port()
stdout is /soc8343@e0000000/serial@4500
legacy_serial_console = 0
default console speed = 115740
 <- find_legacy_serial_port()
console [udbg0] enabled
setup_arch: bootmem
mvblm7_setup_arch()
Adding PCI host bridge /pci@e0008500
Found MPC83xx PCI host bridge at 0x00000000e0008500. Firmware bus 
number: 0->0
 ->Hose at 0xc0281000, cfg_addr=0xfdffd300,cfg_data=0xfdffd304
PCI host bridge /pci@e0008500 (primary) ranges:
 MEM 0x0000000090000000..0x000000009fffffff -> 0x0000000090000000
 MEM 0x0000000080000000..0x000000008fffffff -> 0x0000000080000000 Prefetch
  IO 0x00000000e2000000..0x00000000e20fffff -> 0x0000000000000000
arch: exit
Zone PFN ranges:
  DMA             0 ->    65536
  Normal      65536 ->    65536
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
    0:        0 ->    65536
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 65024
Kernel command line: root=/dev/ram ro rootfstype=squashfs
IPIC (128 IRQ sources) at fdefc700
PID hash table entries: 1024 (order: 10, 4096 bytes)
clocksource: timebase mult[3c00001] shift[22] registered
 -> check_legacy_serial_console()
stdout is /soc8343@e0000000/serial@4500
Found serial console at ttyS0
Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
Memory: 254396k/262144k available (2328k kernel code, 7428k reserved, 
88k data, 126k bss, 140k init)
SLUB: Genslabs=12, HWalign=32, Order=0-1, MinObjects=4, CPUs=1, Nodes=1
Mount-cache hash table entries: 512
net_namespace: 152 bytes
NET: Registered protocol family 16

PCI: Probing PCI hardware
Try to map irq for 0000:00:00.0...
pci_busdev_to_OF_node(0,0x0)
 parent is /pci@e0008500
 result is <NULL>
Try to map irq for 0000:00:0b.0...
pci_busdev_to_OF_node(0,0x58)
 parent is /pci@e0008500
 result is <NULL>
 -> got one, spec 2 cells (0x00000030 0x00000008...) on 
/soc8343@e0000000/pic@700
 -> mapped to linux irq 48
PCI->OF bus map:
0 -> 0
PCI: PHB (bus 0) bridge rsrc 0: 0000000000000000-00000000000fffff 
[0x100], parent c024a074 (PCI IO)
PCI: PHB (bus 0) bridge rsrc 1: 0000000090000000-000000009fffffff 
[0x200], parent c024a058 (PCI mem)
PCI: PHB (bus 0) bridge rsrc 2: 0000000080000000-000000008fffffff 
[0x1200], parent c024a058 (PCI mem)
PCI: Allocating 0000:00:0b.0: Resource 0: 
0000000090000000..0000000090007fff [200]
PCI: Assigning unassigned resouces...
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
checking if image is initramfs...it isn't (bad gzip magic numbers); 
looks like an initrd
Freeing initrd memory: 2592k freed
Fixing serial ports interrupts and IO ports ...
fixup_port_irq(0)
fixup_port_mmio(0)
fixup_port_irq(1)
fixup_port_mmio(1)
Registering platform serial ports
squashfs: version 3.3 (2007/10/31) Phillip Lougher
io scheduler noop registered
io scheduler anticipatory registered (default)
io scheduler deadline registered
io scheduler cfq registered
Serial: 8250/16550 driver $Revision: 1.90 $ 2 ports, IRQ sharing disabled
serial8250.0: ttyS0 at MMIO 0xe0004500 (irq = 18) is a 16550A
                                                             console 
handover: boot [udbg0] -> real [ttyS0]
serial8250.0: ttyS1 at MMIO 0xe0004600 (irq = 19) is a 16550A
brd: module loaded
loop: module loaded
fsl-ehci fsl-ehci.0: Freescale On-Chip EHCI Host Controller
fsl-ehci fsl-ehci.0: new USB bus registered, assigned bus number 1
fsl-ehci fsl-ehci.0: irq 39, io base 0xe0022000
fsl-ehci fsl-ehci.0: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
usbcore: registered new interface driver libusual
i2c /dev entries driver
24c01a EEPROM driver initialized
WDT driver for MPC83xx initialized. mode:reset timeout=65535 (16 seconds)
RAMDISK: squashfs filesystem found at block 0
RAMDISK: Loading 2591KiB [1 disk] into ram disk... done.
VFS: Mounted root (squashfs filesystem) readonly.
Freeing unused kernel memory: 140k init

Mounting /proc
Mounting /tmp
MATRIX VISION mvBlueCOUGAR-1G gcc 4.0.0 Version: 15.05.2007

*************************************************
         MATRIX VISION mvBlueCOUGAR-1G
*************************************************

executing /mnt/user/autostart ...
login[242]: root login on 'console'


BusyBox v1.4.2 (2007-05-15 09:04:24 CEST) Built-in shell (ash)
Enter 'help' for a list of built-in commands.

-sh: can't access tty; job control turned off
mvBC-1G:~ $
mvBC-1G:~ $      


MATRIX VISION GmbH, Talstraße 16, DE-71570 Oppenweiler  - Registergericht: Amtsgericht Stuttgart, HRB 271090
Geschäftsführer: Gerhard Thullner, Werner Armingeon, Uwe Furtner

^ permalink raw reply	[flat|nested] 16+ messages in thread

* MPC8343EA Linux DTS file
  2008-04-05  8:19 MPC8343 - "unable to handle paging request @ 0" André Schwarz
  2008-04-07 16:10 ` Scott Wood
@ 2009-12-04 22:55 ` agnel
  2009-12-04 22:56 ` agnel
  2 siblings, 0 replies; 16+ messages in thread
From: agnel @ 2009-12-04 22:55 UTC (permalink / raw)
  To: linuxppc-dev



Hi

We have an MPC8343EA based custom board.

I am not able to get Linux up and running in this. No serial output to debug
further.
 U-boot shows correct 'bdinfo' & 'clocks' output.

I doubt the DTS file in Linux. anyone has DTS file for MPC8343??

My current DTS file
/dts-v1/;

/ {
        model = "Silvus-SC3000";
        compatible = "MPC8349EMDS", "MPC834xMDS", "MPC83xxMDS";
        linux,phandle = <0x100>;
        #size-cells = <0x1>;
        #address-cells = <0x1>;

        aliases {
                ethernet0 = &enet0;
                ethernet1 = &enet1;
                serial0 = &serial0;
                serial1 = &serial1;
                pci0 = &pci0;
                pci1 = &pci1;
        };
         cpus {
                linux,phandle = <0x200>;
                #cpus = <0x1>;
                #address-cells = <1>;
                #size-cells = <0>;

 PowerPC,8343EA@0 {
                        device_type = "cpu";
                        reg = <0x0>;
                        d-cache-line-size = <20>;
                        i-cache-line-size = <20>;
                        d-cache-size = <8000>;
                        i-cache-size = <8000>;
                        timebase-frequency = <0>;       // from bootloader
                        bus-frequency = <0>;            // from bootloader
                        clock-frequency = <0>;          // from bootloader
                        32-bit;
                };
        };


        memory {
                device_type = "memory";
                reg = <0x00000000 0x10000000>;  // 256MB at 0
        };

        bcsr@e2400000 {
                device_type = "board-control";
                reg = <0xe2400000 0x8000>;
        };
        soc8343@e0000000 {
                bus-frequency = <0x1>;
                reg = <0xe0000000 0x200>;
                ranges = <0x0 0xe0000000 0x100000>;
                device_type = "soc";
                #interrupt-cells = <0x2>;
                #size-cells = <0x1>;
                #address-cells = <0x1>;

                wdt@200 {
                        device_type = "watchdog";
                        compatible = "mpc83xx_wdt";
                        reg = <0x200 0x100>;
                };

i2c@3000 {
                        #address-cells = <1>;
                        #size-cells = <0>;
                        cell-index = <0>;
                        compatible = "fsl-i2c";
                        reg = <0x3000 0x100>;
                        interrupts = <14 0x8>;
                        interrupt-parent = <&ipic>;
                        dfsrr;

                        rtc@68 {
                                compatible = "dallas,ds1374";
                                reg = <0x68>;
                        };
                };

                i2c@3100 {
                        #address-cells = <1>;
                        #size-cells = <0>;
                        cell-index = <1>;
                        compatible = "fsl-i2c";
                        reg = <0x3100 0x100>;
                        interrupts = <15 0x8>;
                        interrupt-parent = <&ipic>;
                        dfsrr;
                };

                spi@7000 {
                        cell-index = <0>;
                        compatible = "fsl,spi";
                        reg = <0x7000 0x1000>;
                        interrupts = <16 0x8>;
                        interrupt-parent = <&ipic>;
                        mode = "cpu";
                };

dma@82a8 {
                        #address-cells = <1>;
                        #size-cells = <1>;
                        compatible = "fsl,mpc8349-dma", "fsl,elo-dma";
                        reg = <0x82a8 4>;
                        ranges = <0 0x8100 0x1a8>;
                        interrupt-parent = <&ipic>;
                        interrupts = <71 8>;
                        cell-index = <0>;
                        dma-channel@0 {
                                compatible = "fsl,mpc8349-dma-channel",
"fsl,elo-dma-channel";
                                reg = <0 0x80>;
                                interrupt-parent = <&ipic>;
                                interrupts = <71 8>;
                        };
                        dma-channel@80 {
                                compatible = "fsl,mpc8349-dma-channel",
"fsl,elo-dma-channel";
                                reg = <0x80 0x80>;
                                interrupt-parent = <&ipic>;
                                interrupts = <71 8>;
                        };
                        dma-channel@100 {
                                compatible = "fsl,mpc8349-dma-channel",
"fsl,elo-dma-channel";
                                reg = <0x100 0x80>;
                                interrupt-parent = <&ipic>;
                                interrupts = <71 8>;
                        };
                        dma-channel@180 {
                                compatible = "fsl,mpc8349-dma-channel",
"fsl,elo-dma-channel";
                                reg = <0x180 0x28>;
                                interrupt-parent = <&ipic>;
                                interrupts = <71 8>;
                        };
                };
/* phy type (ULPI or SERIAL) are only types supported for MPH */
                /* port = 0 or 1 */
                usb@22000 {
                        compatible = "fsl-usb2-mph";
                        reg = <0x22000 0x1000>;
                        #address-cells = <1>;
                        #size-cells = <0>;
                        interrupt-parent = <&ipic>;
                        interrupts = <39 0x8>;
                        phy_type = "ulpi";
                        port1;
                };
                /* phy type (ULPI, UTMI, UTMI_WIDE, SERIAL) */
                usb@23000 {
                        compatible = "fsl-usb2-dr";
                        reg = <0x23000 0x1000>;
                        #address-cells = <1>;
                        #size-cells = <0>;
                        interrupt-parent = <&ipic>;
                        interrupts = <38 0x8>;
                        dr_mode = "otg";
                        phy_type = "ulpi";
                };

                mdio@24520 {
                        #address-cells = <1>;
                        #size-cells = <0>;
                        compatible = "fsl,gianfar-mdio";
                        reg = <0x24520 0x20>;

                        phy0: ethernet-phy@0 {
                                interrupt-parent = <&ipic>;
                                interrupts = <17 0x8>;
                                reg = <0x0>;
                                device_type = "ethernet-phy";
                        };
                        phy1: ethernet-phy@1 {
                                interrupt-parent = <&ipic>;
                                interrupts = <18 0x8>;
                                reg = <0x1>;
                                device_type = "ethernet-phy";
                        };
enet0: ethernet@24000 {
                        cell-index = <0>;
                        device_type = "network";
                        model = "TSEC";
                        compatible = "gianfar";
                        reg = <0x24000 0x1000>;
                        local-mac-address = [ 00 00 00 00 00 00 ];
                        interrupts = <32 0x8 33 0x8 34 0x8>;
                        interrupt-parent = <&ipic>;
                        phy-handle = <&phy0>;
                        linux,network-index = <0>;
                };

                enet1: ethernet@25000 {
                        cell-index = <1>;
                        device_type = "network";
                        model = "TSEC";
                        compatible = "gianfar";
                        reg = <0x25000 0x1000>;
                        local-mac-address = [ 00 00 00 00 00 00 ];
                        interrupts = <35 0x8 36 0x8 37 0x8>;
                        interrupt-parent = <&ipic>;
                        phy-handle = <&phy1>;
                        linux,network-index = <1>;
                };

serial0: serial@4500 {
                        cell-index = <0>;
                        device_type = "serial";
                        compatible = "ns16550";
                        reg = <0x4500 0x100>;
                        clock-frequency = <0>;
                        interrupts = <9 0x8>;
                        interrupt-parent = <&ipic>;
                };

                serial1: serial@4600 {
                        cell-index = <1>;
                        device_type = "serial";
                        compatible = "ns16550";
                        reg = <0x4600 0x100>;
                        clock-frequency = <0>;
                        interrupts = <10 0x8>;
                        interrupt-parent = <&ipic>;
                };

                crypto@30000 {
                        compatible = "fsl,sec2.0";
                        reg = <0x30000 0x10000>;
                        interrupts = <11 0x8>;
                        interrupt-parent = <&ipic>;
                        fsl,num-channels = <4>;
                        fsl,channel-fifo-len = <24>;
                        fsl,exec-units-mask = <0x7e>;
                        fsl,descriptor-types-mask = <0x01010ebf>;
                };

Thanks,
agnel



-- 
View this message in context: http://old.nabble.com/MPC8343---%22unable-to-handle-paging-request-%40-0%22-tp16510741p26645256.html
Sent from the linuxppc-dev mailing list archive at Nabble.com.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* MPC8343EA Linux DTS file
  2008-04-05  8:19 MPC8343 - "unable to handle paging request @ 0" André Schwarz
  2008-04-07 16:10 ` Scott Wood
  2009-12-04 22:55 ` MPC8343EA Linux DTS file agnel
@ 2009-12-04 22:56 ` agnel
  2009-12-04 23:39   ` Kim Phillips
  2 siblings, 1 reply; 16+ messages in thread
From: agnel @ 2009-12-04 22:56 UTC (permalink / raw)
  To: linuxppc-dev



Hi

We have an MPC8343EA based custom board.

I am not able to get Linux up and running in this. No serial output to debug
further.
 U-boot shows correct 'bdinfo' & 'clocks' output.

I doubt the DTS file in Linux. anyone has DTS file for MPC8343??

My current DTS file
/dts-v1/;

/ {
        model = "MPC8343";
        compatible = "MPC8349EMDS", "MPC834xMDS", "MPC83xxMDS";
        linux,phandle = <0x100>;
        #size-cells = <0x1>;
        #address-cells = <0x1>;

        aliases {
                ethernet0 = &enet0;
                ethernet1 = &enet1;
                serial0 = &serial0;
                serial1 = &serial1;
                pci0 = &pci0;
                pci1 = &pci1;
        };
         cpus {
                linux,phandle = <0x200>;
                #cpus = <0x1>;
                #address-cells = <1>;
                #size-cells = <0>;

 PowerPC,8343EA@0 {
                        device_type = "cpu";
                        reg = <0x0>;
                        d-cache-line-size = <20>;
                        i-cache-line-size = <20>;
                        d-cache-size = <8000>;
                        i-cache-size = <8000>;
                        timebase-frequency = <0>;       // from bootloader
                        bus-frequency = <0>;            // from bootloader
                        clock-frequency = <0>;          // from bootloader
                        32-bit;
                };
        };


        memory {
                device_type = "memory";
                reg = <0x00000000 0x10000000>;  // 256MB at 0
        };

        bcsr@e2400000 {
                device_type = "board-control";
                reg = <0xe2400000 0x8000>;
        };
        soc8343@e0000000 {
                bus-frequency = <0x1>;
                reg = <0xe0000000 0x200>;
                ranges = <0x0 0xe0000000 0x100000>;
                device_type = "soc";
                #interrupt-cells = <0x2>;
                #size-cells = <0x1>;
                #address-cells = <0x1>;

                wdt@200 {
                        device_type = "watchdog";
                        compatible = "mpc83xx_wdt";
                        reg = <0x200 0x100>;
                };

i2c@3000 {
                        #address-cells = <1>;
                        #size-cells = <0>;
                        cell-index = <0>;
                        compatible = "fsl-i2c";
                        reg = <0x3000 0x100>;
                        interrupts = <14 0x8>;
                        interrupt-parent = <&ipic>;
                        dfsrr;

                        rtc@68 {
                                compatible = "dallas,ds1374";
                                reg = <0x68>;
                        };
                };

                i2c@3100 {
                        #address-cells = <1>;
                        #size-cells = <0>;
                        cell-index = <1>;
                        compatible = "fsl-i2c";
                        reg = <0x3100 0x100>;
                        interrupts = <15 0x8>;
                        interrupt-parent = <&ipic>;
                        dfsrr;
                };

                spi@7000 {
                        cell-index = <0>;
                        compatible = "fsl,spi";
                        reg = <0x7000 0x1000>;
                        interrupts = <16 0x8>;
                        interrupt-parent = <&ipic>;
                        mode = "cpu";
                };

dma@82a8 {
                        #address-cells = <1>;
                        #size-cells = <1>;
                        compatible = "fsl,mpc8349-dma", "fsl,elo-dma";
                        reg = <0x82a8 4>;
                        ranges = <0 0x8100 0x1a8>;
                        interrupt-parent = <&ipic>;
                        interrupts = <71 8>;
                        cell-index = <0>;
                        dma-channel@0 {
                                compatible = "fsl,mpc8349-dma-channel",
"fsl,elo-dma-channel";
                                reg = <0 0x80>;
                                interrupt-parent = <&ipic>;
                                interrupts = <71 8>;
                        };
                        dma-channel@80 {
                                compatible = "fsl,mpc8349-dma-channel",
"fsl,elo-dma-channel";
                                reg = <0x80 0x80>;
                                interrupt-parent = <&ipic>;
                                interrupts = <71 8>;
                        };
                        dma-channel@100 {
                                compatible = "fsl,mpc8349-dma-channel",
"fsl,elo-dma-channel";
                                reg = <0x100 0x80>;
                                interrupt-parent = <&ipic>;
                                interrupts = <71 8>;
                        };
                        dma-channel@180 {
                                compatible = "fsl,mpc8349-dma-channel",
"fsl,elo-dma-channel";
                                reg = <0x180 0x28>;
                                interrupt-parent = <&ipic>;
                                interrupts = <71 8>;
                        };
                };
/* phy type (ULPI or SERIAL) are only types supported for MPH */
                /* port = 0 or 1 */
                usb@22000 {
                        compatible = "fsl-usb2-mph";
                        reg = <0x22000 0x1000>;
                        #address-cells = <1>;
                        #size-cells = <0>;
                        interrupt-parent = <&ipic>;
                        interrupts = <39 0x8>;
                        phy_type = "ulpi";
                        port1;
                };
                /* phy type (ULPI, UTMI, UTMI_WIDE, SERIAL) */
                usb@23000 {
                        compatible = "fsl-usb2-dr";
                        reg = <0x23000 0x1000>;
                        #address-cells = <1>;
                        #size-cells = <0>;
                        interrupt-parent = <&ipic>;
                        interrupts = <38 0x8>;
                        dr_mode = "otg";
                        phy_type = "ulpi";
                };

                mdio@24520 {
                        #address-cells = <1>;
                        #size-cells = <0>;
                        compatible = "fsl,gianfar-mdio";
                        reg = <0x24520 0x20>;

                        phy0: ethernet-phy@0 {
                                interrupt-parent = <&ipic>;
                                interrupts = <17 0x8>;
                                reg = <0x0>;
                                device_type = "ethernet-phy";
                        };
                        phy1: ethernet-phy@1 {
                                interrupt-parent = <&ipic>;
                                interrupts = <18 0x8>;
                                reg = <0x1>;
                                device_type = "ethernet-phy";
                        };
enet0: ethernet@24000 {
                        cell-index = <0>;
                        device_type = "network";
                        model = "TSEC";
                        compatible = "gianfar";
                        reg = <0x24000 0x1000>;
                        local-mac-address = [ 00 00 00 00 00 00 ];
                        interrupts = <32 0x8 33 0x8 34 0x8>;
                        interrupt-parent = <&ipic>;
                        phy-handle = <&phy0>;
                        linux,network-index = <0>;
                };

                enet1: ethernet@25000 {
                        cell-index = <1>;
                        device_type = "network";
                        model = "TSEC";
                        compatible = "gianfar";
                        reg = <0x25000 0x1000>;
                        local-mac-address = [ 00 00 00 00 00 00 ];
                        interrupts = <35 0x8 36 0x8 37 0x8>;
                        interrupt-parent = <&ipic>;
                        phy-handle = <&phy1>;
                        linux,network-index = <1>;
                };

serial0: serial@4500 {
                        cell-index = <0>;
                        device_type = "serial";
                        compatible = "ns16550";
                        reg = <0x4500 0x100>;
                        clock-frequency = <0>;
                        interrupts = <9 0x8>;
                        interrupt-parent = <&ipic>;
                };

                serial1: serial@4600 {
                        cell-index = <1>;
                        device_type = "serial";
                        compatible = "ns16550";
                        reg = <0x4600 0x100>;
                        clock-frequency = <0>;
                        interrupts = <10 0x8>;
                        interrupt-parent = <&ipic>;
                };

                crypto@30000 {
                        compatible = "fsl,sec2.0";
                        reg = <0x30000 0x10000>;
                        interrupts = <11 0x8>;
                        interrupt-parent = <&ipic>;
                        fsl,num-channels = <4>;
                        fsl,channel-fifo-len = <24>;
                        fsl,exec-units-mask = <0x7e>;
                        fsl,descriptor-types-mask = <0x01010ebf>;
                };

Thanks,
agnel



-- 
View this message in context: http://old.nabble.com/MPC8343---%22unable-to-handle-paging-request-%40-0%22-tp16510741p26645258.html
Sent from the linuxppc-dev mailing list archive at Nabble.com.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: MPC8343EA Linux DTS file
  2009-12-04 22:56 ` agnel
@ 2009-12-04 23:39   ` Kim Phillips
       [not found]     ` <72d214170912041543g207837a5v67c9bb157e0a2c8b@mail.gmail.com>
  0 siblings, 1 reply; 16+ messages in thread
From: Kim Phillips @ 2009-12-04 23:39 UTC (permalink / raw)
  To: agnel; +Cc: linuxppc-dev

On Fri, 4 Dec 2009 14:56:25 -0800
agnel <ajijuni@gmail.com> wrote:

> We have an MPC8343EA based custom board.
> 
> I am not able to get Linux up and running in this. No serial output to debug
> further.
>  U-boot shows correct 'bdinfo' & 'clocks' output.
> 
> I doubt the DTS file in Linux. anyone has DTS file for MPC8343??
> 
> My current DTS file

well, for one, the dts you provide doesn't include a node for the ipic
interrupt controller.

Kim

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: MPC8343EA Linux DTS file
       [not found]     ` <72d214170912041543g207837a5v67c9bb157e0a2c8b@mail.gmail.com>
@ 2009-12-05  1:47       ` Kim Phillips
  0 siblings, 0 replies; 16+ messages in thread
From: Kim Phillips @ 2009-12-05  1:47 UTC (permalink / raw)
  To: Junita Ajith; +Cc: linuxppc-dev

On Fri, 4 Dec 2009 15:43:18 -0800
Junita Ajith <ajijuni@gmail.com> wrote:

please keep the list on the cc:, and don't top-post.

> This is the entire DTS file:
> /dts-v1/;
> 
> / {
>         model = "SC3000";
>         compatible = "MPC8349EMDS", "MPC834xMDS", "MPC83xxMDS";

you don't mention the u-boot and kernel version numbers: does your
linux kernel check for these compatibles?  If yes, then use a debugger
to find out exactly where else the kernel could be dying.

Kim

^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2009-12-05  1:44 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-04-05  8:19 MPC8343 - "unable to handle paging request @ 0" André Schwarz
2008-04-07 16:10 ` Scott Wood
2008-04-08  8:51   ` Andre Schwarz
2008-04-08 16:43     ` Scott Wood
2008-04-08 13:50   ` Andre Schwarz
2008-04-08 16:48     ` Scott Wood
2008-04-08 19:59       ` André Schwarz
2008-04-09 12:54       ` Andre Schwarz
2008-04-09 18:57         ` Scott Wood
2008-04-09 19:09           ` Andre Schwarz
2008-04-09 19:15             ` Scott Wood
2008-04-10  9:00               ` Andre Schwarz
2009-12-04 22:55 ` MPC8343EA Linux DTS file agnel
2009-12-04 22:56 ` agnel
2009-12-04 23:39   ` Kim Phillips
     [not found]     ` <72d214170912041543g207837a5v67c9bb157e0a2c8b@mail.gmail.com>
2009-12-05  1:47       ` Kim Phillips

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).