Panie i Panowie!
Muszę się wam pochwalić :) Pamiętacie moje boje z ruterkiem na ARM-ie? Właśnie udało się na nim załadować linuksa :D Głównie dzięki wskazówkom stąd:
formatting link
Ale również dzięki pomocy Adama Dybkowskiego, Jacka Housemana i ::WiReFree::. Było ciekawie...
Software: openocd, arm-elf-gcc 2.95.3, uClinux 2.4.31, uClibc 0.9.19 (wiem, że przedpotopowe, ale działa). Sprzęt: wiggler.
Ładuję zImage do RAM pod adres 0x1000 i voila. Na razie rootsystem idzie po NFS. No, nie powstrzymam się i rzucę sesją :) Z góry przepraszam.
Uncompressing Linux...¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤.¤ done, booting the kernel. ¤[2J[Hboot no options Linux version 2.4.31-uc0 (User3@COS900) (gcc version 2.95.3 20010315 (release)(ColdFire patches - 20010318 from
formatting link
XIP and shared lib patches from
formatting link
#4 Wed Apr 26 16:44:58 2006 Processor: Conexant CX84200 revision 1 Architecture: cx84200 Reserving page zero for vector table hm, page 00000000 reserved twice. hm, page 00001000 reserved twice. hm, page 00002000 reserved twice. hm, page 00003000 reserved twice. hm, page 00004000 reserved twice. hm, page 00005000 reserved twice. hm, page 00006000 reserved twice. hm, page 00007000 reserved twice. On node 0 totalpages: 2048 zone(0): 0 pages. zone(1): 2048 pages. zone(2): 0 pages. Kernel command line: root=/dev/nfs nfsroot=192.168.0.22:/proj/nwr04b-0.3/nfsroot ip=192.168.0.31:192.168.0.1:::test:eth0:off Calibrating delay loop... 6.57 BogoMIPS Memory: 8MB = 8MB total Memory: 6336KB available (1258K code, 188K data, 52K init) Dentry cache hash table entries: 1024 (order: 1, 8192 bytes) Inode cache hash table entries: 512 (order: 0, 4096 bytes) Mount cache hash table entries: 512 (order: 0, 4096 bytes) Buffer cache hash table entries: 1024 (order: 0, 4096 bytes) Page-cache hash table entries: 2048 (order: 1, 8192 bytes) POSIX conformance testing by UNIFIX Linux NET4.0 for Linux 2.4 Based upon Swansea University Computer Society NET3.039 Initializing RT netlink socket Starting kswapd JFFS2 version 2.1. (C) 2001 Red Hat, Inc., designed by Axis Communications AB. RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize eth0: a0:98:76:54:32:10 cx84200 flash device: 200000 at 20000000 FIXME: About to unlock flash, I hope. reg == 0x40000000 FIXME: About to do GPIO twiddle FIXME: Made it to qry_present, and osf = 2 Amd/Fujitsu Extended Query Table v1.0 at 0x0040 number of CFI chips: 1 cfi_cmdset_0002: Disabling fast programming due to code brokenness. Creating 2 MTD partitions on "CX84200":
0x00000000-0x00020000 : "bootloader" mtd: Giving out device 0 to bootloader
0x000f0000-0x00130000 : "root_fs" mtd: Giving out device 1 to root_fs init_mtdchar: allocated major number 90. init_mtdblock: allocated major number 31. Linux Kernel Card Services 3.1.22 options: none NET4: Linux TCP/IP 1.0 for NET4.0 IP Protocols: ICMP, UDP, TCP IP: routing cache hash table of 512 buckets, 4Kbytes TCP: Hash tables configured (established 512 bind 512) IP-Config: Guessing netmask 255.255.255.0 IP-Config: Complete: device=eth0, addr=192.168.0.31, mask=255.255.255.0, gw=255.255.255.255, host=test, domain=, nis-domain=(none), bootserver=192.168.0.1, rootserver=192.168.0.22, rootpath= NetWinder Floating Point Emulator V0.95 (c) 1998-1999 Rebel.com ds: no socket drivers loaded! Looking up port of RPC 100003/2 on 192.168.0.22 Looking up port of RPC 100005/1 on 192.168.0.22 VFS: Mounted root (nfs filesystem). Freeing init memory: 52K
init started: BusyBox v1.00 (2006.04.27-16:55+0000) multi-call binary
init: Bummer, can't write to log on /dev/tty5!
Starting pid 12, console /dev/console: '/etc/init.d/rcS'
init: Bummer, can't write to log on /dev/tty5!
Bummer, could not run '/etc/init.d/rcS': No such file or directory
init: Bummer, can't write to log on /dev/tty5!
Starting pid 13, console /dev/console: '/bin/sh'
BusyBox v1.00 (2006.04.27-16:55+0000) Built-in shell (lash)
Enter 'help' for a list of built-in commands.
/ # busybox
BusyBox v1.00 (2006.04.27-16:55+0000) multi-call binary
Usage: busybox [function] [arguments]...
or: [function] [arguments]...
BusyBox is a multi-call binary that combines many common Unix
utilities into a single executable. Most people will create a
link to busybox for each function they wish to use, and BusyBox
will act like whatever it was invoked as.
Currently defined functions:
[, busybox, cat, cp, date, dd, dmesg, du, echo, egrep, false,
fgrep, find, free, getty, grep, halt, head, hexdump, ifconfig,
init, insmod, kill, lash, linuxrc, login, ls, lsmod, mkdir, mknod,
more, mount, mv, nc, netstat, passwd, ping, ping6, ps, pwd, reboot,
reset, rm, rmdir, rmmod, route, sed, sh, strings, stty, su, tail,
tee, telnetd, test, time, top, touch, traceroute, true, tty, umount,
uname, uptime, vi, xargs
/ # ifconfig
ifconfig: Warning: cannot open /proc/net/dev. Limited output.: No such file or directory
eth0 Link encap:Ethernet HWaddr A0:98:76:54:32:10
inet addr:192.168.0.31 Bcast:192.168.0.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:7
/ # upi^Htime
upitime: No such file or directory
/ # uptime
00:01:29 up 1 min, load average: 0.01, 0.00, 0.00
Marcin Stanisz