
Uncompressing Linux............................................................. ............. done, booting the kernel. Linux version 2.6.16 (root@second) (gcc version 4.0.0 (DENX ELDK 4.0
4.0.0))
#16 Thu Jun 8 03:40:10 AQTT 2006 CPU: ARM920Tid(wb) [41129200] revision 0 (ARMv4T) Machine: Atmel AT91RM9200-DK Memory policy: ECC disabled, Data cache writeback Clocks: CPU 179 MHz, master 59 MHz, main 18.432 MHz CPU0: D VIVT write-back cache CPU0: I cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets CPU0: D cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets Built 1 zonelists Kernel command line: root=/dev/nfs rw nfsroot=${serverip}:${rootpath} ip=${ipadd r}:${serverip}:${gatewayip}:${netmask}:${hostname}::off
Quite apart from the MAC address issue, you need to fix your kernel command line. The variables in the last line above do not make sense to the kernel, it needs to be passed actual IP addresses.
Note: if you don't know what the IP addresses will be (because they are delivered by a DHCP server, for example) you can do this:
setenv bootcmd setenv bootargs root=/dev/nfs rw nfsroot=${serverip}:${rootpath} ... ; bootm ...
Alex
Hi Alex, I tried with your way, it's not work.> U-Boot> printenv
bootdelay=3 baudrate=115200 serverip=192.168.0.182 ipaddr=192.168.0.66 netmask=255.255.255.0 ethaddr=00:10:ec:00:87:73 rootpath=/opt/eldk_arm/arm hostname=mqy gatewayip=192.168.0.182 bootfile=/tftpboot/uImage bootcmd=bootm 10080000 ok=ok macaddr=0010ec008773 stdin=serial stdout=serial stderr=serial bootargs=root=/dev/nfs rw nfsroot=192.168.0.182:/opt/eldk_arm/arm ip=192.168.0.66:192.168.0.182:192.168.0.182:255.255.255.0:mqy::off
Environment size: 433/65532 bytes U-Boot> bootm
## Booting image at 21000000 ... Image Name: Linux-2.6.16 Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 1103380 Bytes = 1.1 MB Load Address: 20008000 Entry Point: 20008000 Verifying Checksum ... OK OK
Starting kernel ...
Uncompressing Linux....................................................................... . done, booting the kernel.
Linux version 2.6.16 (root@second) (gcc version 4.0.0 (DENX ELDK 4.0 4.0.0)) #16 Thu Jun 8 03:40:10 AQTT 2006
CPU: ARM920Tid(wb) [41129200] revision 0 (ARMv4T)
Machine: Atmel AT91RM9200-DK
Memory policy: ECC disabled, Data cache writeback
Clocks: CPU 179 MHz, master 59 MHz, main 18.432 MHz
CPU0: D VIVT write-back cache
CPU0: I cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets
CPU0: D cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets
Built 1 zonelists
Kernel command line: root=/dev/nfs rw nfsroot=192.168.0.182:/opt/eldk_arm/arm ip=192.168.0.66:192.168.0.182:192.168.0.182:255.255.255.0:mqy::off
AT91: 128 gpio irqs in 4 banks
PID hash table entries: 256 (order: 8, 4096 bytes)
Console: colour dummy device 80x30
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory: 32MB = 32MB total
Memory: 30044KB available (1844K code, 402K data, 92K init)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
NET: Registered protocol family 16
usbcore: registered new driver usbfs
usbcore: registered new driver hub
NetWinder Floating Point Emulator V0.97 (double precision)
Initializing Cryptographic API
io scheduler noop registered
io scheduler anticipatory registered (default)
AT91 Real Time Clock driver.
AT91 SPI driver loaded
AT91 Watchdog Timer enabled (5 seconds, nowayout=1)
at91_usart.0: ttyS0 at MMIO 0xfefff200 (irq = 1) is a AT91_SERIAL
at91_usart.1: ttyS1 at MMIO 0xfffc4000 (irq = 7) is a AT91_SERIAL
RAMDISK driver initialized: 16 RAM disks of 32768K size 1024 blocksize
at91_ether: Your bootloader did not configure a MAC address.
eth0: Link down.
eth0: AT91 ethernet at 0xfefbc000 int=24 10-HalfDuplex (00:00:00:00:00:00)
eth0: Davicom 9196 PHY (Copper)
physmap flash device: 200000 at 10000000
phys_mapped_flash: Found 1 x16 devices at 0x0 in 16-bit bank
Amd/Fujitsu Extended Query Table at 0x0041
phys_mapped_flash: CFI does not contain boot bank location. Assuming top.
number of CFI chips: 1
cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.
RedBoot partition parsing not available
at91_cf: irqs det #64, io #0
at91_ohci at91_ohci: AT91 OHCI
at91_ohci at91_ohci: new USB bus registered, assigned bus number 1
at91_ohci at91_ohci: irq 23, io mem 0x00300000
usb usb1: Product: AT91 OHCI
usb usb1: Manufacturer: Linux 2.6.16 ohci_hcd
usb usb1: SerialNumber: at91
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
udc: at91_udc version 8 March 2005
mice: PS/2 mouse device common for all mice
i2c /dev entries driver
at91_i2c at91_i2c: AT91 i2c bus driver.
NET: Registered protocol family 2
IP route cache hash table entries: 512 (order: -1, 2048 bytes)
TCP established hash table entries: 2048 (order: 1, 8192 bytes)
TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
TCP: Hash tables configured (established 2048 bind 2048)
TCP reno registered
TCP bic registered
NET: Registered protocol family 1
NET: Registered protocol family 17
IP-Config: Failed to open eth0
IP-Config: No network devices available.
Looking up port of RPC 100003/2 on 192.168.0.182
portmap: RPC call returned error 101
Root-NFS: Unable to get nfsd port number from server, using default
Looking up port of RPC 100005/1 on 192.168.0.182
portmap: RPC call returned error 101
Root-NFS: Unable to get mountd port number from server, using default
mount: RPC call returned error 101
Root-NFS: Server returned error -101 while mounting /opt/eldk_arm/arm
VFS: Unable to mount root fs via NFS, trying floppy.
VFS: Cannot open root device "nfs" or unknown-block(2,0)
Please append a correct "root=" boot option
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)