* [MPC8272ADS]Cannot start my Linux Kernel
@ 2009-01-15 11:42 Jean-Michel Hautbois
2009-01-15 12:52 ` Anatolij Gustschin
0 siblings, 1 reply; 28+ messages in thread
From: Jean-Michel Hautbois @ 2009-01-15 11:42 UTC (permalink / raw)
To: linuxppc-dev
[-- Attachment #1: Type: text/plain, Size: 1975 bytes --]
Hi everybody !
This my first (but not least :) ) message on that mailing list. I hope I
will find my solution.
Here is my problem:
I have a MPC8272ADS board, 64MB RAM, 8MB Flash.
I compiled u-boot using the existing config file, and compiled my linux
kernel successfully with the defconfig file too.
I have updated u-boot, downloaded my kernel file, and a ramdisk image from
the eldk distribution.
I have tried using a lot of bootargs (
bootargs root=/dev/ram rw console=ttyS0,115200
bootargs through nfs, etc.)
When I am resetting my card, it reboots:
bootargs=root=/dev/ram rw console=ttyS0,115200
bootcmd=bootm ff800000 ff980000
## Booting kernel from Legacy Image at ff800000 ...
Image Name: Linux-2.6.29-rc1-01197-g5a7b6e7-
Image Type: PowerPC Linux Kernel Image (gzip compressed)
Data Size: 1487167 Bytes = 1.4 MB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at ff980000 ...
Image Name: Simple Embedded Linux Framework
Image Type: PowerPC Linux RAMDisk Image (gzip compressed)
Data Size: 1730966 Bytes = 1.7 MB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
Uncompressing Kernel Image ... OK
Loading Ramdisk to 039d7000, end 03b7d996 ... OK
U-Boot 2009.01 (Jan 14 2009 - 18:38:32)
MPC8272 Reset Status: Check Stop, External Soft, External Hard
MPC8272 Clock Configuration
- Bus-to-Core Mult 4x, VCO Div 2, 60x Bus Freq 25-75 , Core Freq 100-300
- dfbrg 1, corecnf 0x1a, busdf 3, cpmdf 1, plldf 0, pllmf 3, pcidf 5
- vco_out 400000000, scc_clk 100000000, brg_clk 25000000
- cpu_clk 400000000, cpm_clk 200000000, bus_clk 100000000
- pci_clk 66666666
CPU: MPC8272 (HiP7 Rev 14, Mask 1.0 1K50M) at 400 MHz
Board: Motorola MPC8272ADS
DRAM: 64 MB
FLASH: 8 MB
In: serial
Out: serial
Err: serial
Net: FCC1 ETHERNET
Hit any key to stop autoboot: 0
=>
Thanks in advance for your help !
[-- Attachment #2: Type: text/html, Size: 2541 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-15 11:42 [MPC8272ADS]Cannot start my Linux Kernel Jean-Michel Hautbois
@ 2009-01-15 12:52 ` Anatolij Gustschin
2009-01-15 13:10 ` Jean-Michel Hautbois
0 siblings, 1 reply; 28+ messages in thread
From: Anatolij Gustschin @ 2009-01-15 12:52 UTC (permalink / raw)
To: Jean-Michel Hautbois; +Cc: linuxppc-dev
Jean-Michel Hautbois wrote:
> I have a MPC8272ADS board, 64MB RAM, 8MB Flash.
> I compiled u-boot using the existing config file, and compiled my linux
> kernel successfully with the defconfig file too.
>
> I have updated u-boot, downloaded my kernel file, and a ramdisk image
> from the eldk distribution.
> I have tried using a lot of bootargs (
> bootargs root=/dev/ram rw console=ttyS0,115200
> bootargs through nfs, etc.)
>
> When I am resetting my card, it reboots:
> bootargs=root=/dev/ram rw console=ttyS0,115200
> bootcmd=bootm ff800000 ff980000
you also need to build a device tree blob for mpc8272ads, load it
into RAM or flash and boot using "bootm" command as follows:
=> bootm ff800000 ff980000 %FDT_ADDR%"
See also http://www.denx.de/wiki/view/DULG/BootingEmbeddedLinux
Best regards,
Anatolij
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-15 12:52 ` Anatolij Gustschin
@ 2009-01-15 13:10 ` Jean-Michel Hautbois
2009-01-15 14:25 ` Anatolij Gustschin
0 siblings, 1 reply; 28+ messages in thread
From: Jean-Michel Hautbois @ 2009-01-15 13:10 UTC (permalink / raw)
To: Anatolij Gustschin; +Cc: linuxppc-dev
[-- Attachment #1: Type: text/plain, Size: 2348 bytes --]
2009/1/15 Anatolij Gustschin <agust@denx.de>
> Jean-Michel Hautbois wrote:
>
> > I have a MPC8272ADS board, 64MB RAM, 8MB Flash.
> > I compiled u-boot using the existing config file, and compiled my linux
> > kernel successfully with the defconfig file too.
> >
> > I have updated u-boot, downloaded my kernel file, and a ramdisk image
> > from the eldk distribution.
> > I have tried using a lot of bootargs (
> > bootargs root=/dev/ram rw console=ttyS0,115200
> > bootargs through nfs, etc.)
> >
> > When I am resetting my card, it reboots:
> > bootargs=root=/dev/ram rw console=ttyS0,115200
> > bootcmd=bootm ff800000 ff980000
>
> you also need to build a device tree blob for mpc8272ads, load it
> into RAM or flash and boot using "bootm" command as follows:
>
> => bootm ff800000 ff980000 %FDT_ADDR%"
>
> See also http://www.denx.de/wiki/view/DULG/BootingEmbeddedLinux
>
> Best regards,
> Anatolij
I just tried. I created a dtb from the file
arch/powerpc/boot/dst/mpc8272ads.dts file.
It is not rebboting, but handling (my "run" led is switching off).
=> tftp 2000000 mpc8272ads.dtb
Using FCC1 ETHERNET device
TFTP from server 10.0.0.1; our IP address is 10.0.0.2
Filename 'mpc8272ads.dtb'.
Load address: 0x2000000
Loading: #
done
Bytes transferred = 4442 (115a hex)
=> bootm FF800000 FF980000 2000000
## Booting kernel from Legacy Image at ff800000 ...
Image Name: Linux-2.6.29-rc1-01197-g5a7b6e7-
Image Type: PowerPC Linux Kernel Image (gzip compressed)
Data Size: 1487167 Bytes = 1.4 MB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at ff980000 ...
Image Name: Simple Embedded Linux Framework
Image Type: PowerPC Linux RAMDisk Image (gzip compressed)
Data Size: 1730966 Bytes = 1.7 MB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
## Flattened Device Tree blob at 02000000
Booting using the fdt blob at 0x2000000
Uncompressing Kernel Image ... OK
Loading Ramdisk to 039d7000, end 03b7d996 ... OK
Loading Device Tree to 007fb000, end 007ff159 ... OK
Unable to update property /cpus/cpu@0:bus-frequency, err=FDT_ERR_NOTFOUND
Unable to update property /cpus/cpu@0:timebase-frequency,
err=FDT_ERR_NOTFOUND
Unable to update property /cpus/cpu@0:clock-frequency, err=FDT_ERR_NOTFOUND
[-- Attachment #2: Type: text/html, Size: 3235 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-15 13:10 ` Jean-Michel Hautbois
@ 2009-01-15 14:25 ` Anatolij Gustschin
2009-01-15 15:06 ` Jean-Michel Hautbois
0 siblings, 1 reply; 28+ messages in thread
From: Anatolij Gustschin @ 2009-01-15 14:25 UTC (permalink / raw)
To: Jean-Michel Hautbois; +Cc: linuxppc-dev
Jean-Michel Hautbois wrote:
> I just tried. I created a dtb from the file
> arch/powerpc/boot/dst/mpc8272ads.dts file.
> It is not rebboting, but handling (my "run" led is switching off).
>
> => tftp 2000000 mpc8272ads.dtb
> Using FCC1 ETHERNET device
> TFTP from server 10.0.0.1; our IP address is 10.0.0.2
> Filename 'mpc8272ads.dtb'.
> Load address: 0x2000000
> Loading: #
> done
> Bytes transferred = 4442 (115a hex)
> => bootm FF800000 FF980000 2000000
> ## Booting kernel from Legacy Image at ff800000 ...
> Image Name: Linux-2.6.29-rc1-01197-g5a7b6e7-
> Image Type: PowerPC Linux Kernel Image (gzip compressed)
> Data Size: 1487167 Bytes = 1.4 MB
> Load Address: 00000000
> Entry Point: 00000000
> Verifying Checksum ... OK
> ## Loading init Ramdisk from Legacy Image at ff980000 ...
> Image Name: Simple Embedded Linux Framework
> Image Type: PowerPC Linux RAMDisk Image (gzip compressed)
> Data Size: 1730966 Bytes = 1.7 MB
> Load Address: 00000000
> Entry Point: 00000000
> Verifying Checksum ... OK
> ## Flattened Device Tree blob at 02000000
> Booting using the fdt blob at 0x2000000
> Uncompressing Kernel Image ... OK
> Loading Ramdisk to 039d7000, end 03b7d996 ... OK
> Loading Device Tree to 007fb000, end 007ff159 ... OK
> Unable to update property /cpus/cpu@0:bus-frequency, err=FDT_ERR_NOTFOUND
> Unable to update property /cpus/cpu@0:timebase-frequency,
> err=FDT_ERR_NOTFOUND
> Unable to update property /cpus/cpu@0:clock-frequency, err=FDT_ERR_NOTFOUND
try to fix "ft_cpu_setup()" in your u-boot source for mpc8272ads
and use "PowerPC,8272@0" as cpu_path instead of "cpu@0".
Best regards,
Anatolij
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-15 14:25 ` Anatolij Gustschin
@ 2009-01-15 15:06 ` Jean-Michel Hautbois
2009-01-16 12:06 ` Jean-Michel Hautbois
0 siblings, 1 reply; 28+ messages in thread
From: Jean-Michel Hautbois @ 2009-01-15 15:06 UTC (permalink / raw)
To: Anatolij Gustschin; +Cc: linuxppc-dev
[-- Attachment #1: Type: text/plain, Size: 1898 bytes --]
2009/1/15 Anatolij Gustschin <agust@denx.de>
> Jean-Michel Hautbois wrote:
> > I just tried. I created a dtb from the file
> > arch/powerpc/boot/dst/mpc8272ads.dts file.
> > It is not rebboting, but handling (my "run" led is switching off).
> >
> > => tftp 2000000 mpc8272ads.dtb
> > Using FCC1 ETHERNET device
> > TFTP from server 10.0.0.1; our IP address is 10.0.0.2
> > Filename 'mpc8272ads.dtb'.
> > Load address: 0x2000000
> > Loading: #
> > done
> > Bytes transferred = 4442 (115a hex)
> > => bootm FF800000 FF980000 2000000
> > ## Booting kernel from Legacy Image at ff800000 ...
> > Image Name: Linux-2.6.29-rc1-01197-g5a7b6e7-
> > Image Type: PowerPC Linux Kernel Image (gzip compressed)
> > Data Size: 1487167 Bytes = 1.4 MB
> > Load Address: 00000000
> > Entry Point: 00000000
> > Verifying Checksum ... OK
> > ## Loading init Ramdisk from Legacy Image at ff980000 ...
> > Image Name: Simple Embedded Linux Framework
> > Image Type: PowerPC Linux RAMDisk Image (gzip compressed)
> > Data Size: 1730966 Bytes = 1.7 MB
> > Load Address: 00000000
> > Entry Point: 00000000
> > Verifying Checksum ... OK
> > ## Flattened Device Tree blob at 02000000
> > Booting using the fdt blob at 0x2000000
> > Uncompressing Kernel Image ... OK
> > Loading Ramdisk to 039d7000, end 03b7d996 ... OK
> > Loading Device Tree to 007fb000, end 007ff159 ... OK
> > Unable to update property /cpus/cpu@0:bus-frequency,
> err=FDT_ERR_NOTFOUND
> > Unable to update property /cpus/cpu@0:timebase-frequency,
> > err=FDT_ERR_NOTFOUND
> > Unable to update property /cpus/cpu@0:clock-frequency,
> err=FDT_ERR_NOTFOUND
>
> try to fix "ft_cpu_setup()" in your u-boot source for mpc8272ads
> and use "PowerPC,8272@0" as cpu_path instead of "cpu@0".
>
> Best regards,
> Anatolij
>
I don't have the three errors relative to cpu@0, but it still handles...
[-- Attachment #2: Type: text/html, Size: 2690 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-15 15:06 ` Jean-Michel Hautbois
@ 2009-01-16 12:06 ` Jean-Michel Hautbois
2009-01-16 17:29 ` Scott Wood
0 siblings, 1 reply; 28+ messages in thread
From: Jean-Michel Hautbois @ 2009-01-16 12:06 UTC (permalink / raw)
To: linuxppc-dev
>> try to fix "ft_cpu_setup()" in your u-boot source for mpc8272ads
>> and use "PowerPC,8272@0" as cpu_path instead of "cpu@0".
>>
>> Best regards,
>> Anatolij
>
I am currently going until this step:
## Booting kernel from Legacy Image at 00400000 ...
Image Name: Linux-2.6.29-rc1-01197-g5a7b6e7-
Image Type: PowerPC Linux Kernel Image (gzip compressed)
Data Size: 1505515 Bytes = 1.4 MB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at ff980000 ...
Image Name: Simple Embedded Linux Framework
Image Type: PowerPC Linux RAMDisk Image (gzip compressed)
Data Size: 1730966 Bytes = 1.7 MB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
## Flattened Device Tree blob at 02000000
Booting using the fdt blob at 0x2000000
Uncompressing Kernel Image ... OK
Loading Ramdisk to 039d7000, end 03b7d996 ... OK
Loading Device Tree to 007fb000, end 007ff159 ... OK
Could it be a problem in my bootargs command line ?
I mean, maybe the console=ttyS0,11500 wrong ?
Because my "Run" LED is on...
I tried ttyS0, ttyCPM0, tty0.
And I don't have any "Starting kernel..." message.
Thx in advance.
Best Regards,
JM
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-16 12:06 ` Jean-Michel Hautbois
@ 2009-01-16 17:29 ` Scott Wood
2009-01-16 17:40 ` Jean-Michel Hautbois
2009-01-16 17:44 ` Jean-Michel Hautbois
0 siblings, 2 replies; 28+ messages in thread
From: Scott Wood @ 2009-01-16 17:29 UTC (permalink / raw)
To: Jean-Michel Hautbois; +Cc: linuxppc-dev
On Fri, Jan 16, 2009 at 01:06:06PM +0100, Jean-Michel Hautbois wrote:
> Could it be a problem in my bootargs command line ?
> I mean, maybe the console=ttyS0,11500 wrong ?
> Because my "Run" LED is on...
>
> I tried ttyS0, ttyCPM0, tty0.
It should be ttyCPM0, or just leave it out and make sure that
/chosen/linux,stdout-path is set properly.
Have you tried enabling early CPM debugging output?
-Scott
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-16 17:29 ` Scott Wood
@ 2009-01-16 17:40 ` Jean-Michel Hautbois
2009-01-16 17:44 ` Jean-Michel Hautbois
1 sibling, 0 replies; 28+ messages in thread
From: Jean-Michel Hautbois @ 2009-01-16 17:40 UTC (permalink / raw)
To: Scott Wood; +Cc: linuxppc-dev
2009/1/16 Scott Wood <scottwood@freescale.com>:
> On Fri, Jan 16, 2009 at 01:06:06PM +0100, Jean-Michel Hautbois wrote:
>> Could it be a problem in my bootargs command line ?
>> I mean, maybe the console=ttyS0,11500 wrong ?
>> Because my "Run" LED is on...
>>
>> I tried ttyS0, ttyCPM0, tty0.
>
> It should be ttyCPM0, or just leave it out and make sure that
> /chosen/linux,stdout-path is set properly.
>
> Have you tried enabling early CPM debugging output?
>
> -Scott
>
No, I haven't tried it... How can I do it :) ?
/chosen/linux,stdout-path is set to "/soc/cpm/serial@11a00"
JM
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-16 17:29 ` Scott Wood
2009-01-16 17:40 ` Jean-Michel Hautbois
@ 2009-01-16 17:44 ` Jean-Michel Hautbois
2009-01-16 17:53 ` Jean-Michel Hautbois
1 sibling, 1 reply; 28+ messages in thread
From: Jean-Michel Hautbois @ 2009-01-16 17:44 UTC (permalink / raw)
To: Scott Wood; +Cc: linuxppc-dev
2009/1/16 Scott Wood <scottwood@freescale.com>:
> On Fri, Jan 16, 2009 at 01:06:06PM +0100, Jean-Michel Hautbois wrote:
>> Could it be a problem in my bootargs command line ?
>> I mean, maybe the console=3DttyS0,11500 wrong ?
>> Because my "Run" LED is on...
>>
>> I tried ttyS0, ttyCPM0, tty0.
>
> It should be ttyCPM0, or just leave it out and make sure that
> /chosen/linux,stdout-path is set properly.
>
> Have you tried enabling early CPM debugging output?
>
> -Scott
>
Well, I have to say, yes, I tried:
CONFIG_PPC_EARLY_DEBUG_CPM=3Dy
CONFIG_PPC_EARLY_DEBUG_CPM_ADDR=3D0xf0001ff8
I have also tried without specifying the console outp=FBt:
setenv bootargs root=3D/dev/ram rw
Nothing more...
JM
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-16 17:44 ` Jean-Michel Hautbois
@ 2009-01-16 17:53 ` Jean-Michel Hautbois
2009-01-16 18:02 ` Scott Wood
0 siblings, 1 reply; 28+ messages in thread
From: Jean-Michel Hautbois @ 2009-01-16 17:53 UTC (permalink / raw)
To: Scott Wood; +Cc: linuxppc-dev
2009/1/16 Jean-Michel Hautbois <jhautbois@gmail.com>:
> 2009/1/16 Scott Wood <scottwood@freescale.com>:
>> On Fri, Jan 16, 2009 at 01:06:06PM +0100, Jean-Michel Hautbois wrote:
>>> Could it be a problem in my bootargs command line ?
>>> I mean, maybe the console=3DttyS0,11500 wrong ?
>>> Because my "Run" LED is on...
>>>
>>> I tried ttyS0, ttyCPM0, tty0.
>>
>> It should be ttyCPM0, or just leave it out and make sure that
>> /chosen/linux,stdout-path is set properly.
>>
>> Have you tried enabling early CPM debugging output?
>>
>> -Scott
>>
>
> Well, I have to say, yes, I tried:
> CONFIG_PPC_EARLY_DEBUG_CPM=3Dy
> CONFIG_PPC_EARLY_DEBUG_CPM_ADDR=3D0xf0001ff8
>
> I have also tried without specifying the console outp=FBt:
> setenv bootargs root=3D/dev/ram rw
>
> Nothing more...
>
> JM
>
OK, I just tried a make of my kernel (already compiled yesterday), and
it generated a cuImage.mpc8272ads kernel image (which it didn't do
yesterday).
I don't know why this image was generated, but I tried to reboot using this=
one.
And I am going further !
Hit any key to stop autoboot: 0
## Booting kernel from Legacy Image at 01000000 ...
Image Name: Linux-2.6.29-rc1-01197-g5a7b6e7-
Image Type: PowerPC Linux Kernel Image (gzip compressed)
Data Size: 1529877 Bytes =3D 1.5 MB
Load Address: 00400000
Entry Point: 00400b94
Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at ff980000 ...
Image Name: Simple Embedded Linux Framework
Image Type: PowerPC Linux RAMDisk Image (gzip compressed)
Data Size: 1730966 Bytes =3D 1.7 MB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
## Flattened Device Tree blob at 02000000
Booting using the fdt blob at 0x2000000
Uncompressing Kernel Image ... OK
Loading Ramdisk to 039d7000, end 03b7d996 ... OK
Loading Device Tree to 007fb000, end 007ff159 ... OK
Memory <- <0xd00dfeed 0x2000> (0MB)
ENET0: local-mac-address <- 00:00:00:00:00:7f
ENET1: local-mac-address <- 00:00:00:00:00:00
CPU clock-frequency <- 0x0 (0MHz)
CPU timebase-frequency <- 0x800 (0MHz)
CPU bus-frequency <- 0x2000 (0MHz)
zImage starting: loaded at 0x00400000 (sp: 0x03b7ebe0)
Allocating 0x329908 bytes for kernel ...
gunzipping (0x00000000 <- 0x0040d000:0x007591d8)...done 0x308b0c bytes
Linux/PowerPC load:
Finalizing device tree... flat tree at 0x767300
id mach(): done
MMU:enter
MMU:hw init
MMU:mapin
MMU:setio
MMU:exit
I am stuck there, with my eth LEDs blinking...
JM
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-16 17:53 ` Jean-Michel Hautbois
@ 2009-01-16 18:02 ` Scott Wood
2009-01-16 18:23 ` Jean-Michel Hautbois
2009-01-20 10:56 ` Jean-Michel Hautbois
0 siblings, 2 replies; 28+ messages in thread
From: Scott Wood @ 2009-01-16 18:02 UTC (permalink / raw)
To: Jean-Michel Hautbois; +Cc: linuxppc-dev
Jean-Michel Hautbois wrote:
> OK, I just tried a make of my kernel (already compiled yesterday), and
> it generated a cuImage.mpc8272ads kernel image (which it didn't do
> yesterday).
> I don't know why this image was generated, but I tried to reboot using this one.
Use uImage if you are providing a device tree from u-boot. cuImage is
for older u-boots that don't support this, though you could still try
using it on a modern u-boot with a one- or two-argument bootm command to
try to isolate the problem.
-Scott
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-16 18:02 ` Scott Wood
@ 2009-01-16 18:23 ` Jean-Michel Hautbois
2009-01-20 10:56 ` Jean-Michel Hautbois
1 sibling, 0 replies; 28+ messages in thread
From: Jean-Michel Hautbois @ 2009-01-16 18:23 UTC (permalink / raw)
To: Scott Wood; +Cc: linuxppc-dev
2009/1/16 Scott Wood <scottwood@freescale.com>:
> Jean-Michel Hautbois wrote:
>>
>> OK, I just tried a make of my kernel (already compiled yesterday), and
>> it generated a cuImage.mpc8272ads kernel image (which it didn't do
>> yesterday).
>> I don't know why this image was generated, but I tried to reboot using
>> this one.
>
> Use uImage if you are providing a device tree from u-boot. cuImage is for
> older u-boots that don't support this, though you could still try using it
> on a modern u-boot with a one- or two-argument bootm command to try to
> isolate the problem.
>
> -Scott
>
Well it seems to be a (very) bad idea to use ucImage, because I cannot
have my u-boot prompt after resetting my board...
My LEDs are blinking (LD4 and LD 9) and my LD20 is off (when it should be on).
I am blocked (without the prompt on my serial line !).
JM
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-16 18:02 ` Scott Wood
2009-01-16 18:23 ` Jean-Michel Hautbois
@ 2009-01-20 10:56 ` Jean-Michel Hautbois
2009-01-20 16:27 ` Jean-Michel Hautbois
2009-01-20 16:31 ` Scott Wood
1 sibling, 2 replies; 28+ messages in thread
From: Jean-Michel Hautbois @ 2009-01-20 10:56 UTC (permalink / raw)
To: Scott Wood; +Cc: linuxppc-dev
2009/1/16 Scott Wood <scottwood@freescale.com>:
> Jean-Michel Hautbois wrote:
>>
>> OK, I just tried a make of my kernel (already compiled yesterday), and
>> it generated a cuImage.mpc8272ads kernel image (which it didn't do
>> yesterday).
>> I don't know why this image was generated, but I tried to reboot using
>> this one.
>
> Use uImage if you are providing a device tree from u-boot. cuImage is fo=
r
> older u-boots that don't support this, though you could still try using i=
t
> on a modern u-boot with a one- or two-argument bootm command to try to
> isolate the problem.
>
> -Scott
>
OK, I just tried a cuImage and a ramdisk without a FDT. I am starting
to boot, but it freezes. Following is the boot evolution.
Thx & Regards,
JM
bootm 1000000 2000000
## Booting kernel from Legacy Image at 01000000 ...
Image Name: Linux-2.6.29-rc1-01197-g5a7b6e7-
Image Type: PowerPC Linux Kernel Image (gzip compressed)
Data Size: 1529877 Bytes =3D 1.5 MB
Load Address: 00400000
Entry Point: 00400b94
Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at 02000000 ...
Image Name: Sofrel RAM Disk
Image Type: PowerPC Linux RAMDisk Image (gzip compressed)
Data Size: 3130063 Bytes =3D 3 MB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
Uncompressing Kernel Image ... OK
Loading Ramdisk to 03882000, end 03b7e2cf ... OK
Memory <- <0x0 0x4000000> (64MB)
ENET0: local-mac-address <- 00:04:9f:11:22:33
ENET1: local-mac-address <- 00:00:00:00:00:00
CPU clock-frequency <- 0x17d78400 (400MHz)
CPU timebase-frequency <- 0x17d7840 (25MHz)
CPU bus-frequency <- 0x5f5e100 (100MHz)
zImage starting: loaded at 0x00400000 (sp: 0x03b7ebe8)
Allocating 0x329908 bytes for kernel ...
gunzipping (0x00000000 <- 0x0040d000:0x007591d8)...done 0x308b0c bytes
Using loader supplied ramdisk at 0x3882000-0x3b7e2cf
initrd head: 0x1f8b0800
Linux/PowerPC load: root=3D/dev/ram rw
Finalizing device tree... flat tree at 0x767300
id mach(): done
MMU:enter
MMU:hw init
MMU:mapin
MMU:setio
MMU:exit
Using Freescale MPC8272 ADS machine description
Linux version 2.6.29-rc1-01197-g5a7b6e7-dirty (dev@gforge) (gcc
version 4.2.2) #2 Thu Jan 15 18:31:04 CET 2009
Found initrd at 0xc3882000:0xc3b7e2cf
console [udbg0] enabled
setup_arch: bootmem
mpc8272_ads_setup_arch()
PCI host bridge /pci@f0010800 (primary) ranges:
MEM 0x0000000080000000..0x000000009fffffff -> 0x0000000080000000 Prefetch
MEM 0x00000000a0000000..0x00000000bfffffff -> 0x00000000a0000000
IO 0x00000000f6000000..0x00000000f7ffffff -> 0x0000000000000000
mpc8272_ads_setup_arch(), finish
arch: exit
Top of RAM: 0x4000000, Total RAM: 0x4000000
Memory hole size: 0MB
Zone PFN ranges:
DMA 0x00000000 -> 0x00004000
Normal 0x00004000 -> 0x00004000
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
0: 0x00000000 -> 0x00004000
On node 0 totalpages: 16384
free_area_init_node: node 0, pgdat c02ffc90, node_mem_map c0330000
DMA zone: 128 pages used for memmap
DMA zone: 0 pages reserved
DMA zone: 16256 pages, LIFO batch:3
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 16256
Kernel command line: root=3D/dev/ram rw
PID hash table entries: 256 (order: 8, 1024 bytes)
time_init: decrementer frequency =3D 25.000000 MHz
time_init: processor frequency =3D 400.000000 MHz
clocksource: timebase mult[a000000] shift[22] registered
clockevent: decrementer mult[666] sh=EF=BF=BD
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-20 10:56 ` Jean-Michel Hautbois
@ 2009-01-20 16:27 ` Jean-Michel Hautbois
2009-01-20 17:51 ` Scott Wood
2009-01-20 16:31 ` Scott Wood
1 sibling, 1 reply; 28+ messages in thread
From: Jean-Michel Hautbois @ 2009-01-20 16:27 UTC (permalink / raw)
To: Scott Wood; +Cc: linuxppc-dev
2009/1/20 Jean-Michel Hautbois <jhautbois@gmail.com>:
> OK, I just tried a cuImage and a ramdisk without a FDT. I am starting
> to boot, but it freezes.
[...]
> Built 1 zonelists in Zone order, mobility grouping on. Total pages: 1625=
6
> Kernel command line: root=3D/dev/ram rw
> PID hash table entries: 256 (order: 8, 1024 bytes)
> time_init: decrementer frequency =3D 25.000000 MHz
> time_init: processor frequency =3D 400.000000 MHz
> clocksource: timebase mult[a000000] shift[22] registered
> clockevent: decrementer mult[666] sh=EF=BF=BD
>
Having a look at the arch/powerpc/kernel/time.c file, where I am
getting halted, it seems that the kernel reads the CPU frequency. Here
is my question: My board has an OSC that is 100MHz (and not 400MHz !).
I think this could be my explanation, but I can't see how I could
solve this problem...
Has anyone an idea ?
Thx & Regards,
JM
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-20 10:56 ` Jean-Michel Hautbois
2009-01-20 16:27 ` Jean-Michel Hautbois
@ 2009-01-20 16:31 ` Scott Wood
2009-01-20 17:05 ` Jean-Michel Hautbois
` (3 more replies)
1 sibling, 4 replies; 28+ messages in thread
From: Scott Wood @ 2009-01-20 16:31 UTC (permalink / raw)
To: Jean-Michel Hautbois; +Cc: linuxppc-dev
On Tue, Jan 20, 2009 at 11:56:58AM +0100, Jean-Michel Hautbois wrote:
> Built 1 zonelists in Zone order, mobility grouping on. Total pages: 16256
> Kernel command line: root=/dev/ram rw
> PID hash table entries: 256 (order: 8, 1024 bytes)
> time_init: decrementer frequency = 25.000000 MHz
> time_init: processor frequency = 400.000000 MHz
> clocksource: timebase mult[a000000] shift[22] registered
> clockevent: decrementer mult[666] sh�
That looks like something is failing when the real (as opposed to early
debug) serial driver starts. Try commenting out the call to cpm_setbrg
in drivers/serial/cpm_uart/cpm_uart_cpm2.h; if that makes a difference,
there's something wrong with the brg node in the device tree.
-Scott
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-20 16:31 ` Scott Wood
@ 2009-01-20 17:05 ` Jean-Michel Hautbois
2009-01-20 17:16 ` Scott Wood
2009-01-21 15:42 ` jeff angielski
` (2 subsequent siblings)
3 siblings, 1 reply; 28+ messages in thread
From: Jean-Michel Hautbois @ 2009-01-20 17:05 UTC (permalink / raw)
To: Scott Wood; +Cc: linuxppc-dev
2009/1/20 Scott Wood <scottwood@freescale.com>:
> On Tue, Jan 20, 2009 at 11:56:58AM +0100, Jean-Michel Hautbois wrote:
>> Built 1 zonelists in Zone order, mobility grouping on. Total pages: 162=
56
>> Kernel command line: root=3D/dev/ram rw
>> PID hash table entries: 256 (order: 8, 1024 bytes)
>> time_init: decrementer frequency =3D 25.000000 MHz
>> time_init: processor frequency =3D 400.000000 MHz
>> clocksource: timebase mult[a000000] shift[22] registered
>> clockevent: decrementer mult[666] sh=EF=BF=BD
>
> That looks like something is failing when the real (as opposed to early
> debug) serial driver starts. Try commenting out the call to cpm_setbrg
> in drivers/serial/cpm_uart/cpm_uart_cpm2.h; if that makes a difference,
> there's something wrong with the brg node in the device tree.
>
> -Scott
>
It is *a lot* better !
I am finishing into a kernel panic, but it is a normal thing (bad initramfs=
).
Well, that was using the cuImage. When I try to use the uImage and the
FDT file, I am stopped here:
Uncompressing Kernel Image ... OK
Loading Ramdisk to 039d7000, end 03b7d996 ... OK
Loading Device Tree to 007fa000, end 007fffff ... OK
JM
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-20 17:05 ` Jean-Michel Hautbois
@ 2009-01-20 17:16 ` Scott Wood
2009-01-20 17:32 ` Jean-Michel Hautbois
0 siblings, 1 reply; 28+ messages in thread
From: Scott Wood @ 2009-01-20 17:16 UTC (permalink / raw)
To: Jean-Michel Hautbois; +Cc: linuxppc-dev
Jean-Michel Hautbois wrote:
> It is *a lot* better !
> I am finishing into a kernel panic, but it is a normal thing (bad initramfs).
>
> Well, that was using the cuImage. When I try to use the uImage and the
> FDT file, I am stopped here:
> Uncompressing Kernel Image ... OK
> Loading Ramdisk to 039d7000, end 03b7d996 ... OK
> Loading Device Tree to 007fa000, end 007fffff ... OK
The early debug address is probably different when not using cuImage;
you'll need to set it to wherever u-boot puts the transmit descriptor.
-Scott
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-20 17:16 ` Scott Wood
@ 2009-01-20 17:32 ` Jean-Michel Hautbois
2009-01-20 17:35 ` Scott Wood
0 siblings, 1 reply; 28+ messages in thread
From: Jean-Michel Hautbois @ 2009-01-20 17:32 UTC (permalink / raw)
To: Scott Wood; +Cc: linuxppc-dev
2009/1/20 Scott Wood <scottwood@freescale.com>:
> Jean-Michel Hautbois wrote:
>>
>> It is *a lot* better !
>> I am finishing into a kernel panic, but it is a normal thing (bad
>> initramfs).
>>
>> Well, that was using the cuImage. When I try to use the uImage and the
>> FDT file, I am stopped here:
>> Uncompressing Kernel Image ... OK
>> Loading Ramdisk to 039d7000, end 03b7d996 ... OK
>> Loading Device Tree to 007fa000, end 007fffff ... OK
>
> The early debug address is probably different when not using cuImage; you'll
> need to set it to wherever u-boot puts the transmit descriptor.
>
> -Scott
>
OK... And is there anywhere a description of how I can do that :s.
JM
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-20 17:32 ` Jean-Michel Hautbois
@ 2009-01-20 17:35 ` Scott Wood
0 siblings, 0 replies; 28+ messages in thread
From: Scott Wood @ 2009-01-20 17:35 UTC (permalink / raw)
To: Jean-Michel Hautbois; +Cc: linuxppc-dev
Jean-Michel Hautbois wrote:
> OK... And is there anywhere a description of how I can do that :s.
Hmm, if the old u-boot on my board is any indication, it doesn't use a
single descriptor, so it's not compatible with the early debug. Just
turn it off, and with the brg setting removed you should see output when
the real serial driver starts.
You should find out what's preventing the brg setting from working, though.
-Scott
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-20 16:27 ` Jean-Michel Hautbois
@ 2009-01-20 17:51 ` Scott Wood
0 siblings, 0 replies; 28+ messages in thread
From: Scott Wood @ 2009-01-20 17:51 UTC (permalink / raw)
To: Jean-Michel Hautbois; +Cc: linuxppc-dev
On Tue, Jan 20, 2009 at 05:27:09PM +0100, Jean-Michel Hautbois wrote:
> 2009/1/20 Jean-Michel Hautbois <jhautbois@gmail.com>:
> > OK, I just tried a cuImage and a ramdisk without a FDT. I am starting
> > to boot, but it freezes.
> [...]
> > Built 1 zonelists in Zone order, mobility grouping on. Total pages: 16256
> > Kernel command line: root=/dev/ram rw
> > PID hash table entries: 256 (order: 8, 1024 bytes)
> > time_init: decrementer frequency = 25.000000 MHz
> > time_init: processor frequency = 400.000000 MHz
> > clocksource: timebase mult[a000000] shift[22] registered
> > clockevent: decrementer mult[666] sh�
> >
>
> Having a look at the arch/powerpc/kernel/time.c file, where I am
> getting halted, it seems that the kernel reads the CPU frequency. Here
> is my question: My board has an OSC that is 100MHz (and not 400MHz !).
> I think this could be my explanation, but I can't see how I could
> solve this problem...
A multiplier is applied to the crystal to get the CPU's internal
frequency. Try printing out what the kernel thinks the BRG frequency is.
-Scott
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-20 16:31 ` Scott Wood
2009-01-20 17:05 ` Jean-Michel Hautbois
@ 2009-01-21 15:42 ` jeff angielski
2009-01-21 16:15 ` Jean-Michel Hautbois
2009-01-22 2:15 ` Daniel Ng99
2009-01-22 2:17 ` Daniel Ng99
3 siblings, 1 reply; 28+ messages in thread
From: jeff angielski @ 2009-01-21 15:42 UTC (permalink / raw)
To: Scott Wood; +Cc: linuxppc-dev, Jean-Michel Hautbois
On Tue, 2009-01-20 at 10:31 -0600, Scott Wood wrote:
> On Tue, Jan 20, 2009 at 11:56:58AM +0100, Jean-Michel Hautbois wrote:
> > Built 1 zonelists in Zone order, mobility grouping on. Total pages: 16256
> > Kernel command line: root=/dev/ram rw
> > PID hash table entries: 256 (order: 8, 1024 bytes)
> > time_init: decrementer frequency = 25.000000 MHz
> > time_init: processor frequency = 400.000000 MHz
> > clocksource: timebase mult[a000000] shift[22] registered
> > clockevent: decrementer mult[666] sh�
>
> That looks like something is failing when the real (as opposed to early
> debug) serial driver starts. Try commenting out the call to cpm_setbrg
> in drivers/serial/cpm_uart/cpm_uart_cpm2.h; if that makes a difference,
> there's something wrong with the brg node in the device tree.
I used the mpc8272ads as the basis for my mpc8265 port to 2.6 and found
that to get the serial ports to clock correctly, I needed to add
"clock-frequency" to the brg node in the DTS file.
Here is mine:
brg@119f0 {
compatible = "mpc8265-brg",
"fsl,cpm2-brg",
"fsl,cpm-brg";
reg = <0x119f0 0x10 0x115f0 0x10>;
clock-frequency = <0>;
};
Of course, you also need to update your ft_blob_update() in u-boot to
fill in the correct value.
The default values in the cpm2 code did not work for my system clock
configuration.
--
Jeff Angielski
The PTR Group
www.theptrgroup.com
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-21 15:42 ` jeff angielski
@ 2009-01-21 16:15 ` Jean-Michel Hautbois
0 siblings, 0 replies; 28+ messages in thread
From: Jean-Michel Hautbois @ 2009-01-21 16:15 UTC (permalink / raw)
To: jeff angielski; +Cc: Scott Wood, linuxppc-dev
I am now trying to use an initial RAM filesystem.
I have this:
"checking if image is initramfs... it is"
And then, after some hardware detections:
"List of all partitions:
1f00 8192 mtdblock0 (driver?)
No filesystem could mount root, tried: ext3 ext2 cramfs
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(1,0)
Rebooting in 180 seconds..."
When using a NFS root file system, it is ok.
I have passed these args to my kernel:
bootargs root=/dev/ram ro init=/linuxrc noapic acpi=off nofb
I tried also root=/dev/ram0 but it is not working better.
My kernel .config contains:
CONFIG_BLK_DEV_INITRD=y
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_BLK_DEV_RAM_SIZE=8192
Do I need to have MTD_RAM = y ?
Is there any other thing I should set to Y for it to work ?
Thx & Regards,
JM
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-20 16:31 ` Scott Wood
2009-01-20 17:05 ` Jean-Michel Hautbois
2009-01-21 15:42 ` jeff angielski
@ 2009-01-22 2:15 ` Daniel Ng99
2009-01-22 17:36 ` Scott Wood
2009-01-22 2:17 ` Daniel Ng99
3 siblings, 1 reply; 28+ messages in thread
From: Daniel Ng99 @ 2009-01-22 2:15 UTC (permalink / raw)
To: linuxppc-dev
I am using my own 8272-based board (it is similar to the 8272 ADS) with Lin=
ux
2.6.27 and u-boot-2009-Jan-rc1.
Scott Wood-2 wrote:
>=20
> On Tue, Jan 20, 2009 at 11:56:58AM +0100, Jean-Michel Hautbois wrote:
> That looks like something is failing when the real (as opposed to early
> debug) serial driver starts. Try commenting out the call to cpm_setbrg
> in drivers/serial/cpm_uart/cpm_uart_cpm2.h; if that makes a difference,
> there's something wrong with the brg node in the device tree.
>=20
This works- I can see the rest of the debug messages and it gets to booting
the rootfs.
So the brg node looks like this-
brg@119f0 {
compatible =3D "fsl,mpc8272-brg",
"fsl,cpm2-brg";
reg =3D <0x119f0 0x10 0x115f0 0x10>;
clock-frequency =3D <0>;
But aren't the BRG registers 32 bits, so shouldn't we use?:
reg =3D <0x119f0 0x20 0x115f0 0x20>;
-either way, changing these values doesn't seem to make a difference in my
board's behaviour. Why?
Regarding the following line in the serial@11a00 node:
fsl,cpm-brg =3D <1>;
-If I change the above number to anything other than 1 (even nonsense like
'99') then it also seems to work. Why? Does this mean the clock for BRG1 is
set incorrectly? Where do I set this?
Adding 'clock-frequency =3D <0>;' to the brg node doesn't seem to make a
difference to my board's behaviour.
What is actually happening here? Is it freezing up in the switch over from
the early boot console driver to the proper linux console driver? Which of
these drivers is cpm_uart_cpm2.h for? Why does it still work when we commen=
t
out the call to 'set_brg()'?
Here's the relevant part of the 'working' boot sequence. Notice there are
still some funny characters when the CPM serial driver kicks in (near the
bottom). Should this be of concern?-
time_init: decrementer frequency =3D 16.500000 MHz
time_init: processor frequency =3D 330.000000 MHz
clocksource: timebase mult[f26c9b2] shift[22] registered
clockevent: decrementer mult[439] shift[16] cpu[0]
Console: colour dummy device 80x25
cpm_uart_init_port()
OF: ** translation for device /soc@f0000000/cpm@119c0/serial@11a00 **
OF: bus is default (na=3D1, ns=3D1) on /soc@f0000000/cpm@119c0
OF: translating address: 00011a00
OF: parent bus is default (na=3D1, ns=3D1) on /soc@f0000000
OF: no ranges, 1:1 translation
OF: parent translation for: 00000000
OF: with offset: 11a00
OF: one level translation: 00011a00
OF: parent bus is default (na=3D1, ns=3D1) on /
OF: walking ranges...
OF: default map, cp=3D0, s=3D53000, da=3D11a00
OF: parent translation for: f0000000
OF: with offset: 11a00
OF: one level translation: f0011a00
OF: reached root node
OF: ** translation for device /soc@f0000000/cpm@119c0/serial@11a00 **
OF: bus is default (na=3D1, ns=3D1) on /soc@f0000000/cpm@119c0
OF: translating address: 00008000
OF: parent bus is default (na=3D1, ns=3D1) on /soc@f0000000
OF: no ranges, 1:1 translation
OF: parent translation for: 00000000
OF: with offset: 8000
OF: one level translation: 00008000
OF: parent bus is default (na=3D1, ns=3D1) on /
OF: walking ranges...
OF: default map, cp=3D0, s=3D53000, da=3D8000
OF: parent translation for: f0000000
OF: with offset: 8000
OF: one level translation: f0008000
OF: reached root node
of_irq_map_one: dev=3D/soc@f0000000/cpm@119c0/serial@11a00, index=3D0
intsize=3D2 intlen=3D2
of_irq_map_raw:
par=3D/soc@f0000000/interrupt-controller@10c00,intspec=3D[0x00000028 0x
00000008...],ointsize=3D2
of_irq_map_raw: ipar=3D/soc@f0000000/interrupt-controller@10c00, size=3D2
-> addrsize=3D1
-> got it !
irq: irq_create_mapping(0xc02d1320, 0x28)
irq: -> using host @c02d1320
irq: -> obtained virq 40
cpm2_pic_host_map(40, 0x28)
of_get_gpio exited with status -2
of_get_gpio exited with status -2
of_get_gpio exited with status -2
of_get_gpio exited with status -2
of_get_gpio exited with status -2
of_get_gpio exited with status -2
cpm_uart_request_port()
CPM uart[=C3=BEDentry cache hash table entries: 4096 (order: 2, 16384 bytes=
)
Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
Memory: 29840k/32768k available (2372k kernel code, 2928k reserved, 100k
data, 126k
bss, 116k init)
SLUB: Genslabs=3D12, HWalign=3D32, Order=3D0-3, MinObjects=3D0, CPUs=3D1, N=
odes=3D1
Calibrating delay loop... 32.89 BogoMIPS (lpj=3D65792)
Mount-cache hash table entries: 512
Cheers,
Daniel
=20
--=20
View this message in context: http://www.nabble.com/-MPC8272ADS-Cannot-star=
t-my-Linux-Kernel-tp21476017p21593750.html
Sent from the linuxppc-dev mailing list archive at Nabble.com.
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-20 16:31 ` Scott Wood
` (2 preceding siblings ...)
2009-01-22 2:15 ` Daniel Ng99
@ 2009-01-22 2:17 ` Daniel Ng99
3 siblings, 0 replies; 28+ messages in thread
From: Daniel Ng99 @ 2009-01-22 2:17 UTC (permalink / raw)
To: linuxppc-dev
I am using my own 8272-based board (it is similar to the 8272 ADS) with Lin=
ux
2.6.27 and u-boot-2009-Jan-rc1.
Scott Wood-2 wrote:
>=20
> On Tue, Jan 20, 2009 at 11:56:58AM +0100, Jean-Michel Hautbois wrote:
> That looks like something is failing when the real (as opposed to early
> debug) serial driver starts. Try commenting out the call to cpm_setbrg
> in drivers/serial/cpm_uart/cpm_uart_cpm2.h; if that makes a difference,
> there's something wrong with the brg node in the device tree.
>=20
This works- I can see the rest of the debug messages and it gets to booting
the rootfs.
So the brg node looks like this-
brg@119f0 {
compatible =3D "fsl,mpc8272-brg",
"fsl,cpm2-brg";
reg =3D <0x119f0 0x10 0x115f0 0x10>;
clock-frequency =3D <0>;
But aren't the BRG registers 32 bits, so shouldn't we use?:
reg =3D <0x119f0 0x20 0x115f0 0x20>;
-either way, changing these values doesn't seem to make a difference in my
board's behaviour. Why?
Regarding the following line in the serial@11a00 node:
fsl,cpm-brg =3D <1>;
-If I change the above number to anything other than 1 (even nonsense like
'99') then it also seems to work. Why? Does this mean the clock for BRG1 is
set incorrectly? Where do I set this?
Adding 'clock-frequency =3D <0>;' to the brg node doesn't seem to make a
difference to my board's behaviour.
What is actually happening here? Is it freezing up in the switch over from
the early boot console driver to the proper linux console driver? Which of
these drivers is cpm_uart_cpm2.h for? Why does it still work when we commen=
t
out the call to 'set_brg()'?
Here's the relevant part of the 'working' boot sequence. Notice there are
still some funny characters when the CPM serial driver kicks in (near the
bottom). Should this be of concern?-
time_init: decrementer frequency =3D 16.500000 MHz
time_init: processor frequency =3D 330.000000 MHz
clocksource: timebase mult[f26c9b2] shift[22] registered
clockevent: decrementer mult[439] shift[16] cpu[0]
Console: colour dummy device 80x25
cpm_uart_init_port()
OF: ** translation for device /soc@f0000000/cpm@119c0/serial@11a00 **
OF: bus is default (na=3D1, ns=3D1) on /soc@f0000000/cpm@119c0
OF: translating address: 00011a00
OF: parent bus is default (na=3D1, ns=3D1) on /soc@f0000000
OF: no ranges, 1:1 translation
OF: parent translation for: 00000000
OF: with offset: 11a00
OF: one level translation: 00011a00
OF: parent bus is default (na=3D1, ns=3D1) on /
OF: walking ranges...
OF: default map, cp=3D0, s=3D53000, da=3D11a00
OF: parent translation for: f0000000
OF: with offset: 11a00
OF: one level translation: f0011a00
OF: reached root node
OF: ** translation for device /soc@f0000000/cpm@119c0/serial@11a00 **
OF: bus is default (na=3D1, ns=3D1) on /soc@f0000000/cpm@119c0
OF: translating address: 00008000
OF: parent bus is default (na=3D1, ns=3D1) on /soc@f0000000
OF: no ranges, 1:1 translation
OF: parent translation for: 00000000
OF: with offset: 8000
OF: one level translation: 00008000
OF: parent bus is default (na=3D1, ns=3D1) on /
OF: walking ranges...
OF: default map, cp=3D0, s=3D53000, da=3D8000
OF: parent translation for: f0000000
OF: with offset: 8000
OF: one level translation: f0008000
OF: reached root node
of_irq_map_one: dev=3D/soc@f0000000/cpm@119c0/serial@11a00, index=3D0
intsize=3D2 intlen=3D2
of_irq_map_raw:
par=3D/soc@f0000000/interrupt-controller@10c00,intspec=3D[0x00000028 0x
00000008...],ointsize=3D2
of_irq_map_raw: ipar=3D/soc@f0000000/interrupt-controller@10c00, size=3D2
-> addrsize=3D1
-> got it !
irq: irq_create_mapping(0xc02d1320, 0x28)
irq: -> using host @c02d1320
irq: -> obtained virq 40
cpm2_pic_host_map(40, 0x28)
of_get_gpio exited with status -2
of_get_gpio exited with status -2
of_get_gpio exited with status -2
of_get_gpio exited with status -2
of_get_gpio exited with status -2
of_get_gpio exited with status -2
cpm_uart_request_port()
CPM uart[=C3=BEDentry cache hash table entries: 4096 (order: 2, 16384 bytes=
)
Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
Memory: 29840k/32768k available (2372k kernel code, 2928k reserved, 100k
data, 126k
bss, 116k init)
SLUB: Genslabs=3D12, HWalign=3D32, Order=3D0-3, MinObjects=3D0, CPUs=3D1, N=
odes=3D1
Calibrating delay loop... 32.89 BogoMIPS (lpj=3D65792)
Mount-cache hash table entries: 512
Cheers,
Daniel
=20
--=20
View this message in context: http://www.nabble.com/-MPC8272ADS-Cannot-star=
t-my-Linux-Kernel-tp21476017p21593752.html
Sent from the linuxppc-dev mailing list archive at Nabble.com.
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-22 2:15 ` Daniel Ng99
@ 2009-01-22 17:36 ` Scott Wood
2009-01-23 0:21 ` Daniel Ng99
0 siblings, 1 reply; 28+ messages in thread
From: Scott Wood @ 2009-01-22 17:36 UTC (permalink / raw)
To: Daniel Ng99; +Cc: linuxppc-dev
On Wed, Jan 21, 2009 at 06:15:26PM -0800, Daniel Ng99 wrote:
> So the brg node looks like this-
>
> brg@119f0 {
> compatible = "fsl,mpc8272-brg",
> "fsl,cpm2-brg";
> reg = <0x119f0 0x10 0x115f0 0x10>;
> clock-frequency = <0>;
>
> But aren't the BRG registers 32 bits, so shouldn't we use?:
>
> reg = <0x119f0 0x20 0x115f0 0x20>;
reg lengths are bytes, not bits.
> -either way, changing these values doesn't seem to make a difference in my
> board's behaviour. Why?
The change above told it that the system has 16 BRGs rather than 8.
However, this change did not affect the position of the BRG1 register.
> Regarding the following line in the serial@11a00 node:
>
> fsl,cpm-brg = <1>;
>
> -If I change the above number to anything other than 1 (even nonsense like
> '99') then it also seems to work. Why?
Because BRG1 is already set up by u-boot.
> Adding 'clock-frequency = <0>;' to the brg node doesn't seem to make a
> difference to my board's behaviour.
Try setting it to the actual BRG clock.
-Scott
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-22 17:36 ` Scott Wood
@ 2009-01-23 0:21 ` Daniel Ng99
2009-01-23 0:46 ` Daniel Ng99
2009-01-23 16:17 ` Scott Wood
0 siblings, 2 replies; 28+ messages in thread
From: Daniel Ng99 @ 2009-01-23 0:21 UTC (permalink / raw)
To: linuxppc-dev
Scott Wood-2 wrote:
>
> On Wed, Jan 21, 2009 at 06:15:26PM -0800, Daniel Ng99 wrote:
>> Adding 'clock-frequency = <0>;' to the brg node doesn't seem to make a
>> difference to my board's behaviour.
>
> Try setting it to the actual BRG clock.
>
My console runs at a baud rate of 115,200, so that means a BRGCLK of 35 for
a 66-MHz input clock (according to the PQ2 Reference Manual).
Then I realised u-boot reports the brg clock to be 33Mhz at boot-up:
MPC8247 Clock Configuration
- Bus-to-Core Mult 5x, VCO Div 2, 60x Bus Freq 20-60 , Core Freq 100-300
- dfbrg 1, corecnf 0x1b, busdf 7, cpmdf 1, plldf 0, pllmf 7, pcidf 7
- vco_out 528000000, scc_clk 132000000, brg_clk 33000000
- cpu_clk 330000000, cpm_clk 264000000, bus_clk 66000000
So maybe 35 x 2 = 70 is the correct value?
Anyway, I tried all these but still they made no difference:
clock-frequency = <35>
clock-frequency = <0x23>
clock-frequency = <115200>
clock-frequency = <1c200>
clock-frequency = <70>
clock-frequency = <17>
clock-frequency = <66>
clock-frequency = <33>
Can you suggest any other values?
What is the effect of just not calling set_brg()? I still get console
output, so am I setting myself up for some sort of problem in the future?
What is the effect of setting "fsl,cpm-brg = <0>" in the 'serial' device
tree node?
--
View this message in context: http://www.nabble.com/-MPC8272ADS-Cannot-start-my-Linux-Kernel-tp21476017p21616515.html
Sent from the linuxppc-dev mailing list archive at Nabble.com.
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-23 0:21 ` Daniel Ng99
@ 2009-01-23 0:46 ` Daniel Ng99
2009-01-23 16:17 ` Scott Wood
1 sibling, 0 replies; 28+ messages in thread
From: Daniel Ng99 @ 2009-01-23 0:46 UTC (permalink / raw)
To: linuxppc-dev
Daniel Ng99 wrote:
>
>
> clock-frequency = <35>
> clock-frequency = <0x23>
> clock-frequency = <115200>
> clock-frequency = <1c200>
> clock-frequency = <70>
> clock-frequency = <17>
> clock-frequency = <66>
> clock-frequency = <33>
>
I've also tried these:
clock-frequency = <33000000>
clock-frequency = <66000000>
--
View this message in context: http://www.nabble.com/-MPC8272ADS-Cannot-start-my-Linux-Kernel-tp21476017p21616798.html
Sent from the linuxppc-dev mailing list archive at Nabble.com.
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [MPC8272ADS]Cannot start my Linux Kernel
2009-01-23 0:21 ` Daniel Ng99
2009-01-23 0:46 ` Daniel Ng99
@ 2009-01-23 16:17 ` Scott Wood
1 sibling, 0 replies; 28+ messages in thread
From: Scott Wood @ 2009-01-23 16:17 UTC (permalink / raw)
To: Daniel Ng99; +Cc: linuxppc-dev
Daniel Ng99 wrote:
> MPC8247 Clock Configuration
> - Bus-to-Core Mult 5x, VCO Div 2, 60x Bus Freq 20-60 , Core Freq 100-300
> - dfbrg 1, corecnf 0x1b, busdf 7, cpmdf 1, plldf 0, pllmf 7, pcidf 7
> - vco_out 528000000, scc_clk 132000000, brg_clk 33000000
> - cpu_clk 330000000, cpm_clk 264000000, bus_clk 66000000
>
> So maybe 35 x 2 = 70 is the correct value?
>
> Anyway, I tried all these but still they made no difference:
>
> clock-frequency = <35>
> clock-frequency = <0x23>
> clock-frequency = <115200>
> clock-frequency = <1c200>
> clock-frequency = <70>
> clock-frequency = <17>
> clock-frequency = <66>
> clock-frequency = <33>
>
> Can you suggest any other values?
Don't set it to the BRG divider, set it to the BRG *input* clock, which
appears to be 33000000.
> What is the effect of just not calling set_brg()? I still get console
> output, so am I setting myself up for some sort of problem in the future?
You will not be able to change the baud rate from Linux.
> What is the effect of setting "fsl,cpm-brg = <0>" in the 'serial' device
> tree node?
You'll have an invalid device tree, which will cause the kernel to write
to a reserved register.
-Scott
^ permalink raw reply [flat|nested] 28+ messages in thread
end of thread, other threads:[~2009-01-23 16:18 UTC | newest]
Thread overview: 28+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-01-15 11:42 [MPC8272ADS]Cannot start my Linux Kernel Jean-Michel Hautbois
2009-01-15 12:52 ` Anatolij Gustschin
2009-01-15 13:10 ` Jean-Michel Hautbois
2009-01-15 14:25 ` Anatolij Gustschin
2009-01-15 15:06 ` Jean-Michel Hautbois
2009-01-16 12:06 ` Jean-Michel Hautbois
2009-01-16 17:29 ` Scott Wood
2009-01-16 17:40 ` Jean-Michel Hautbois
2009-01-16 17:44 ` Jean-Michel Hautbois
2009-01-16 17:53 ` Jean-Michel Hautbois
2009-01-16 18:02 ` Scott Wood
2009-01-16 18:23 ` Jean-Michel Hautbois
2009-01-20 10:56 ` Jean-Michel Hautbois
2009-01-20 16:27 ` Jean-Michel Hautbois
2009-01-20 17:51 ` Scott Wood
2009-01-20 16:31 ` Scott Wood
2009-01-20 17:05 ` Jean-Michel Hautbois
2009-01-20 17:16 ` Scott Wood
2009-01-20 17:32 ` Jean-Michel Hautbois
2009-01-20 17:35 ` Scott Wood
2009-01-21 15:42 ` jeff angielski
2009-01-21 16:15 ` Jean-Michel Hautbois
2009-01-22 2:15 ` Daniel Ng99
2009-01-22 17:36 ` Scott Wood
2009-01-23 0:21 ` Daniel Ng99
2009-01-23 0:46 ` Daniel Ng99
2009-01-23 16:17 ` Scott Wood
2009-01-22 2:17 ` Daniel Ng99
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).