[ELDK] linux-2.6.24 on mpc8xx
Vishwanath Patil
patil.vishwanath at gmail.com
Wed Mar 3 07:58:18 CET 2010
Hello stefano,
I have got the new version linux-2.6.33 from the git repository
and noticed that there is no arch/ppc directory as u mentioned
compiled the kernel
noticed that the dtc in scripts/dtc is more intelligent than what i had
it takes the numbers converts to hexadecimal automatically
got the dtb file after using it
now the new dump is as follows
U-Boot 1.3.2 (Feb 21 2010 - 15:49:30) B2
CPU: MPC852TxxZPnnA at 66 MHz: 4 kB I-Cache 4 kB D-Cachebrgc1 set to 1008e
OR0 : fe000ff6
BR0 : 40000801
OR1 : 0
BR1 : 0
OR2 : f8000800
BR2 : c0
OR3 : 0
BR3 : 0
OR4 : 0
BR4 : 0
OR5 : 0
BR5 : 0
OR6 : 0
BR6 : 4000000
OR7 : 0
BR7 : 0
SCCR : 2020000
PLPRCR : 125d5000
RSR : c0000000
SMCMR : ff002e48
SMCE : ff002e58
SMCM : ff002e68
cp_simode set to 0
FEC present
<unknown> S/N <unknown>
CPU at 66 MHz, local bus at 33 MHz
DRAM: 128 MB
Top of RAM usable for U-Boot at: 08000000
Reserving 271k for U-Boot at: 07fbc000
Reserving 132k for malloc() at: 07f9b000
Reserving 60 Bytes for Board Info at: 07f9afc4
Reserving 56 Bytes for Global Data at: 07f9af8c
Stack Pointer at: 07f9af7c
Stack Pointer at: 07f9af70
Stack Pointer at: 07f9af68
relocating the code
Now running in RAM - U-Boot at: 07fbc000
FLASH: In: serial
Out: serial
Err: serial
U-Boot relocated to 07fbc000
Net: FEC ETHERNET
BEDBUG:ready
Hit any key to stop autoboot: 0
B2> tftp 0xa00000 uImage-2.6
Using FEC ETHERNET device
TFTP from server 192.168.53.13; our IP address is 192.168.53.112
Filename 'uImage-2.6'.
Load address: 0xa00000
Loading: #################################################################
###################################################
done
Bytes transferred = 1689919 (19c93f hex)
Abort commented eth_halt
B2> tftp 0xc00000 test8.UBoot
Using FEC ETHERNET device
TFTP from server 192.168.53.13; our IP address is 192.168.53.112
Filename 'test8.UBoot'.
Load address: 0xc00000
Loading: #################################################################
#######################################################
done
Bytes transferred = 1750328 (1ab538 hex)
Abort commented eth_halt
B2> tftp 0xe00000 mpc852t.dtb
Using FEC ETHERNET device
TFTP from server 192.168.53.13; our IP address is 192.168.53.112
Filename 'mpc852t.dtb'.
Load address: 0xe00000
Loading: #
done
Bytes transferred = 7406 (1cee hex)
Abort commented eth_halt
B2> bootm 0xa00000 0xc00000 0xe00000
## Booting image at 00a00000 ...
Image Name: Linux-2.6.33
Image Type: PowerPC Linux Kernel Image (gzip compressed)
Data Size: 1689855 Bytes = 1.6 MB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
Uncompressing Kernel Image ... OK
## Current stack ends at 0x07F9ACD0 => set upper limit to 0x00800000
## cmdline at 0x007FFF00 ... 0x007FFF14
memstart = 0x00000000
memsize = 0x08000000
flashstart = 0x40000000
flashsize = 0x00800000
flashoffset = 0x00000000
sramstart = 0x00000000
sramsize = 0x00000000
immr_base = 0xFF000000
bootflags = 0x00000001
intfreq = 66 MHz
busfreq = 33 MHz
ethaddr = 00:00:00:00:00:02
IP addr = 192.168.53.112
baudrate = 57600 bps
Not skipping initrd
## Loading RAMDisk Image at 00c00000 ...
Image Name: RamdiskImage
Image Type: PowerPC Linux RAMDisk Image (gzip compressed)
Data Size: 1750264 Bytes = 1.7 MB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
Booting using the fdt at 0xe00000
## initrd at 0x00C00040 ... 0x00DAB537 (len=1750264=0x1AB4F8)
Loading Ramdisk to 07dee000, end 07f994f8 ... OK
## device tree at 0x00E00000 ... 0x00E01CED (len=7406=0x1CEE)
Loading Device Tree to 007fe000, end 007ffced ... OK
## Transferring control to Linux (at address 00000000) ...
the dts file is as follows
/*
* MPC885 ADS Device Tree Source
*
* Copyright 2006 MontaVista Software, Inc.
* Copyright 2007,2008 Freescale Semiconductor, Inc.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation; either version 2 of the License, or (at your
* option) any later version.
*/
/dts-v1/;
/ {
model = "MPC852TADS";
compatible = "fsl,mpc885ads";
#address-cells = <1>;
#size-cells = <1>;
cpus {
#address-cells = <1>;
#size-cells = <0>;
PowerPC,852 at 0 {
device_type = "cpu";
reg = <0x0>;
d-cache-line-size = <16>;
i-cache-line-size = <16>;
d-cache-size = <4096>;
i-cache-size = <4096>;
timebase-frequency = <0>;
bus-frequency = <0>;
clock-frequency = <0>;
interrupts = <15 2>; // decrementer interrupt
interrupt-parent = <&PIC>;
};
};
memory {
device_type = "memory";
reg = <0x0 0x0>;
};
localbus at ff000100 {
compatible = "fsl,mpc885-localbus", "fsl,pq1-localbus";
#address-cells = <2>;
#size-cells = <1>;
reg = <0xff000100 0x40>;
ranges = <
0x0 0x0 0xfe000000 0x800000
0x1 0x0 0xff080000 0x8000
0x5 0x0 0xff0a0000 0x8000
>;
flash at 0,0 {
compatible = "jedec-flash";
reg = <0x0 0x0 0x800000>;
bank-width = <4>;
device-width = <1>;
};
board-control at 1,0 {
reg = <0x1 0x0 0x20 0x5 0x300 0x4>;
compatible = "fsl,mpc885ads-bcsr";
};
};
soc at ff000000 {
compatible = "fsl,mpc885", "fsl,pq1-soc";
#address-cells = <1>;
#size-cells = <1>;
device_type = "soc";
ranges = <0x0 0xff000000 0x4000>;
bus-frequency = <0>;
// Temporary -- will go away once kernel uses ranges for get_immrbase().
reg = <0xff000000 0x4000>;
mdio at e00 {
compatible = "fsl,mpc885-fec-mdio", "fsl,pq1-fec-mdio";
reg = <0xe00 0x188>;
#address-cells = <1>;
#size-cells = <0>;
PHY0: ethernet-phy at 0 {
reg = <0x0>;
device_type = "ethernet-phy";
};
/*
PHY1: ethernet-phy at 1 {
reg = <0x1>;
device_type = "ethernet-phy";
};
PHY2: ethernet-phy at 2 {
reg = <0x2>;
device_type = "ethernet-phy";
};
*/
};
ethernet at e00 {
device_type = "network";
compatible = "fsl,mpc885-fec-enet",
"fsl,pq1-fec-enet";
reg = <0xe00 0x188>;
local-mac-address = [ 00 00 00 00 00 00 ];
interrupts = <3 1>;
interrupt-parent = <&PIC>;
phy-handle = <&PHY0>;
linux,network-index = <0>;
};
/* ethernet at 1e00 {
device_type = "network";
compatible = "fsl,mpc885-fec-enet",
"fsl,pq1-fec-enet";
reg = <0x1e00 0x188>;
local-mac-address = [ 00 00 00 00 00 00 ];
interrupts = <7 1>;
interrupt-parent = <&PIC>;
phy-handle = <&PHY1>;
linux,network-index = <1>;
};
*/
PIC: interrupt-controller at 0 {
interrupt-controller;
#interrupt-cells = <2>;
reg = <0x0 0x24>;
compatible = "fsl,mpc885-pic", "fsl,pq1-pic";
};
pcmcia at 80 {
#address-cells = <3>;
#interrupt-cells = <1>;
#size-cells = <2>;
compatible = "fsl,pq-pcmcia";
device_type = "pcmcia";
reg = <0x80 0x80>;
interrupt-parent = <&PIC>;
interrupts = <13 1>;
};
cpm at 9c0 {
#address-cells = <1>;
#size-cells = <1>;
compatible = "fsl,mpc885-cpm", "fsl,cpm1";
command-proc = <0x9c0>;
interrupts = <0>; // cpm error interrupt
interrupt-parent = <&CPM_PIC>;
reg = <0x9c0 0x40>;
ranges;
muram at 2000 {
#address-cells = <1>;
#size-cells = <1>;
ranges = <0x0 0x2000 0x2000>;
data at 0 {
compatible = "fsl,cpm-muram-data";
reg = <0x0 0x1c00>;
};
};
brg at 9f0 {
compatible = "fsl,mpc885-brg",
"fsl,cpm1-brg",
"fsl,cpm-brg";
clock-frequency = <0>;
reg = <0x9f0 0x10>;
};
CPM_PIC: interrupt-controller at 930 {
interrupt-controller;
#interrupt-cells = <1>;
interrupts = <5 2 0 2>;
interrupt-parent = <&PIC>;
reg = <0x930 0x20>;
compatible = "fsl,mpc885-cpm-pic",
"fsl,cpm1-pic";
};
serial at a80 {
device_type = "serial";
compatible = "fsl,mpc885-smc-uart",
"fsl,cpm1-smc-uart";
reg = <0xa80 0x10 0x3e80 0x40>;
interrupts = <4>; interrupt-parent = <&CPM_PIC>;
fsl,cpm-brg = <1>;
fsl,cpm-command = <0x90>;
};
serial at a90 {
device_type = "serial";
compatible = "fsl,mpc885-smc-uart",
"fsl,cpm1-smc-uart";
reg = <0xa90 0x10 0x3f80 0x40>;
interrupts = <3>;
interrupt-parent = <&CPM_PIC>;
fsl,cpm-brg = <2>;
fsl,cpm-command = <0xd0>;
};
/*
ethernet at a40 {
device_type = "network";
compatible = "fsl,mpc885-scc-enet",
"fsl,cpm1-scc-enet";
reg = <0xa40 0x18 0x3e00 0x100>;
local-mac-address = [ 00 00 00 00 00 00 ];
interrupts = <28>;
interrupt-parent = <&CPM_PIC>;
phy-handle = <&PHY2>;
fsl,cpm-command = <0x80>;
linux,network-index = <2>;
};
*/
i2c at 860 {
compatible = "fsl,mpc885-i2c",
"fsl,cpm1-i2c";
reg = <0x860 0x20 0x3c80 0x30>;
interrupts = <16>;
interrupt-parent = <&CPM_PIC>;
fsl,cpm-command = <0x10>;
#address-cells = <1>;
#size-cells = <0>;
};
};
};
chosen {
linux,stdout-path = "/soc/cpm/serial at a80";
};
};
now, i notice that the memory is not completely given and the cpu
frequency is set to 0
why are these set to 0 in the example file
do we have to specify anything there
Please advice
regards
Vishwanath
On Wed, Mar 3, 2010 at 4:25 AM, stefano babic <sbabic at denx.de> wrote:
> Vishwanath Patil wrote:
>> thanks for that quick rebound.... will take the new kernel version...
>> is the dtc version okay?
>
> No, it is not, but do not worry. Take the last kernel version and you
> will get an updated dtc, too (under scripts/dtc).
>
> Regards,
> Stefano
>
> --
> =====================================================================
> DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
> Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: office at denx.de
> =====================================================================
>
More information about the eldk
mailing list