[U-Boot] having trouble booting a simple kernel on a TQM860 board
Wolfgang Denk
wd at denx.de
Sat Dec 3 01:16:03 CET 2011
Dear Robert,
In message <alpine.DEB.2.02.1112021750480.27686 at oneiric> you wrote:
>
> i'm using the 2.6.37 kernel for both and while the lite5200s have a
> fairly new version of u-boot (2010.12), the TQMs have an ancient
> version (0.4.0, possibly slightly newer), and i have no freedom to
> update those so don't even make the suggestion. i just have to live
> with that.
What you say boils down to: Please help me, but don't mention the
solution, because I'm not going to do that. In short, it's stupid.
You are wasting your time, and ours.
In the first step, please update your U-Boot. 0.4.0 has no support
for device tree.
Top of tree build and runs just fine (OK, this is a TQM855M instead of
a TQM860, but this is just an unimportant detail):
-> eldk-switch -r 5.1 powerpc
Setup for powerpc (using ELDK 5.1)
-> ./MAKEALL TQM855M
pwd
Configuring for TQM855M board...
text data bss dec hex filename
222242 4468 27536 254246 3e126 ./u-boot
--------------------- SUMMARY ----------------------------
Boards compiled: 1
----------------------------------------------------------
U-Boot 2011.09-01259-g7708d8b (Dec 03 2011 - 00:55:16)
CPU: XPC855xxZPnnD4 at 66 MHz: 4 kB I-Cache 4 kB D-Cache FEC present
Board: TQM855MDCBAB7-T66.102
I2C: ready
DRAM: 32 MiB
Flash: 8 MiB
In: serial
Out: serial
Err: serial
Net: SCC, FEC
PCMCIA: No Card found
Type run flash_nfs to mount root filesystem over NFS
Hit any key to stop autoboot: 0
Ditto for Linux:
-> git describe
v3.1.4
-> eldk-switch -r 5.1 powerpc
Setup for powerpc (using ELDK 5.1)
-> make tqm8xx_defconfig
-> make -j8 uImage
...
Image Name: Linux-3.1.4
Created: Fri Dec 2 23:54:09 2011
Image Type: PowerPC Linux Kernel Image (gzip compressed)
Data Size: 1297168 Bytes = 1266.77 kB = 1.24 MB
Load Address: 00000000
Entry Point: 00000000
-> make tqm8xx.dtb
DTC arch/powerpc/boot/tqm8xx.dtb
DTC: dts->dtb on file "arch/powerpc/boot/dts/tqm8xx.dts"
...
=> print bootcmd net_nfs kernel_addr_r bootfile fdt_addr_r fdt_file nfsargs addip addcons addmtd
bootcmd=run net_nfs
net_nfs=tftp ${kernel_addr_r} ${bootfile};tftp ${fdt_addr_r} ${fdt_file};run nfsargs addip addcons addmtd;bootm ${kernel_addr_r} - ${fdt_addr_r}
kernel_addr_r=400000
bootfile=TQM855M/uImage
fdt_addr_r=600000
fdt_file=TQM855M/tqm8xx.dtb
nfsargs=setenv bootargs root=/dev/nfs rw nfsroot=${serverip}:${rootpath}
addip=setenv bootargs ${bootargs} ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}:${netdev}:off panic=1
addcons=setenv bootargs ${bootargs} console=${console},${baudrate}
## Error: "addmtd" not defined
=> run net_nfs
Using SCC device
TFTP from server 192.168.1.1; our IP address is 192.168.1.71
Filename 'TQM855M/uImage'.
Load address: 0x400000
Loading: #################################################################
########################
done
Bytes transferred = 1297232 (13cb50 hex)
Using SCC device
TFTP from server 192.168.1.1; our IP address is 192.168.1.71
Filename 'TQM855M/tqm8xx.dtb'.
Load address: 0x600000
Loading: #
done
Bytes transferred = 4020 (fb4 hex)
## Error: "addmtd" not defined
## Booting kernel from Legacy Image at 00400000 ...
Image Name: Linux-3.1.4
Created: 2011-12-02 23:54:09 UTC
Image Type: PowerPC Linux Kernel Image (gzip compressed)
Data Size: 1297168 Bytes = 1.2 MiB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
## Flattened Device Tree blob at 00600000
Booting using the fdt blob at 0x00600000
Uncompressing Kernel Image ... OK
Loading Device Tree to 007fc000, end 007fffb3 ... OK
Using TQM8xx machine description
Linux version 3.1.4 (wd at pollux.denx.de) (gcc version 4.6.1 20110627 (prerelease) (GCC) ) #2 Sat Dec 3 00:53:34 CET 2011
Zone PFN ranges:
DMA 0x00000000 -> 0x00002000
Normal empty
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
0: 0x00000000 -> 0x00002000
MMU: Allocated 72 bytes of context maps for 16 contexts
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 8128
Kernel command line: root=/dev/nfs rw nfsroot=192.168.1.1:/opt/eldk/ppc_8xx ip=192.168.1.71:192.168.1.1::255.255.0.0:TQM855M:eth1:off panic=1 console=ttyCPM0,115200
PID hash table entries: 128 (order: -3, 512 bytes)
Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
Memory: 29688k/32768k available (2508k kernel code, 3080k reserved, 88k data, 89k bss, 100k init)
Kernel virtual memory layout:
* 0xfffdf000..0xfffff000 : fixmap
* 0xfde00000..0xfe000000 : consistent mem
* 0xfddfa000..0xfde00000 : early ioremap
* 0xc3000000..0xfddfa000 : vmalloc & ioremap
SLUB: Genslabs=14, HWalign=16, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
NR_IRQS:512 nr_irqs:512 16
Decrementer Frequency = 0x3ef148
clocksource: timebase mult[3c9b26ca] shift[22] registered
console [ttyCPM0] enabled
pid_max: default: 4096 minimum: 301
Mount-cache hash table entries: 512
NET: Registered protocol family 16
bio: create slab <bio-0> at 0
Switching to clocksource timebase
Switched to NOHz mode on CPU #0
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 1024 (order: 1, 8192 bytes)
TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
TCP: Hash tables configured (established 1024 bind 1024)
TCP reno registered
NET: Registered protocol family 1
RPC: Registered named UNIX socket transport module.
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
RPC: Registered tcp NFSv4.1 backchannel transport module.
msgmni has been set to 57
io scheduler noop registered
io scheduler deadline registered (default)
fff00a80.serial: ttyCPM0 at MMIO 0xc3014a80 (irq = 19) is a CPM UART
Generic RTC Driver v1.07
40000000.flash: Found 2 x16 devices at 0x0 in 32-bit bank. Manufacturer ID 0x000001 Chip ID 0x001d00
Amd/Fujitsu Extended Query Table at 0x0040
Amd/Fujitsu Extended Query version 1.3.
number of CFI chips: 1
Fixed MDIO Bus: probed
eth0: fs_enet: 00:d0:93:00:cb:3b
eth1: fs_enet: 00:d0:93:00:cb:3a
FEC MII Bus: probed
TCP cubic registered
NET: Registered protocol family 17
IP-Config: Complete:
device=eth1, addr=192.168.1.71, mask=255.255.0.0, gw=255.255.255.255,
host=TQM855M, domain=, nis-domain=(none),
bootserver=192.168.1.1, rootserver=192.168.1.1, rootpath=
VFS: Mounted root (nfs filesystem) on device 0:11.
Freeing unused kernel memory: 100k freed
...
TQM855M login: root
Last login: Sat Dec 3 01:14:08 on console
-bash-3.2#
> with the tqm860's, i'm following some documentation that was given
> to me that allegedly has worked in the past, so i run:
>
> $ make ARCH=powerpc tqm8xx_defconfig
> $ make ARCH=powerpc uImage
>
> what i get in arch/powerpc/boot is:
You fail to build a device tree blob.
> => tftp 400000 uImage.tqm860
You fail to pass the device tree - which is essential.
And device tree support is not present in your old version of U-Boot.
> am i just missing something obvious? what should i use for the
> kernel console setting? i'm open to suggestions.
Seems your documentation is a couple of years out of date. Please
update.
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
You can only live once, but if you do it right, once is enough.
More information about the U-Boot
mailing list