s3c6410 arm移植实验一:nfs 无法挂载的问题。

ARM 130浏览

最近在学习嵌入式系统的移植,用的飞凌的6410的开发板。
最先依照飞凌的资料完成了一遍,可以通过nfs挂载系统。

接着自己着手移植3.6.6的系统,以及busybox,但是在nfs挂载的时候出现了问题。
具体情况如下:
服务端系统是Fedora18,关闭了firewalld,启动rpcbind和nfs-server(飞凌的2.6.28kernel可以挂载飞凌的系统文件)。

NFS-server:

点击(此处)折叠或打开

  1. [ZhShiH@localhost ~]$ cat /etc/exports
  2. /zhangsh *(rw,sync,no_root_squash)
  3. [ZhShiH@localhost ~]$

Uboot参数:

点击(此处)折叠或打开

  1. SMDK6410 # printenv
  2. bootdelay=3
  3. baudrate=115200
  4. ethaddr=00:40:5c:26:0a:5b
  5. bootm=
  6. filesize=207bb0
  7. fileaddr=C0008000
  8. gatewayip=192.168.1.1
  9. netmask=255.255.255.0
  10. serverip=192.168.1.108
  11. bootcmd=nand read 0xc0008000 0x100000 0x300000;bootm 0xc0008000
  12. ipaddr=192.168.1.109
  13. bootargs=root=/dev/nfs nfsroot=192.168.1.108:/zhangsh/rootfs,nolock ip=192.168.1.109:192.168.1.108:192.168.1.1:255.255.255.0::eth0:off console=ttySAC0,115200 init=/linuxrc
  14. stdin=serial
  15. stdout=serial
  16. stderr=serial
  17. Environment size: 460/16380 bytes
  18. SMDK6410 #

内核配置:

点击(此处)折叠或打开

  1. [ZhShiH@localhost linux-3.6.6]$ cat .config| grep PNP
  2. CONFIG_IP_PNP=y
  3. CONFIG_IP_PNP_DHCP=y
  4. CONFIG_IP_PNP_BOOTP=y
  5. CONFIG_IP_PNP_RARP=y
  6. [ZhShiH@localhost linux-3.6.6]$ cat .config| grep NFS
  7. CONFIG_NFS_FS=y
  8. CONFIG_NFS_V2=y
  9. CONFIG_NFS_V3=y
  10. CONFIG_NFS_V3_ACL=y
  11. CONFIG_NFS_V4=y
  12. CONFIG_NFS_SWAP=y
  13. # CONFIG_NFS_V4_1 is not set
  14. CONFIG_ROOT_NFS=y
  15. # CONFIG_NFS_USE_LEGACY_DNS is not set
  16. CONFIG_NFS_USE_KERNEL_DNS=y
  17. # CONFIG_NFSD is not set
  18. CONFIG_NFS_ACL_SUPPORT=y
  19. CONFIG_NFS_COMMON=y
  20. [ZhShiH@localhost linux-3.6.6]$

内核打印:

点击(此处)折叠或打开

  1. U-Boot 1.1.6 (Jul 8 2013 - 15:41:56) for SMDK6410
  2. ****************************************
  3. ** u-boot 1.1.6 **
  4. ** Updated for TE6410 Board **
  5. ** Version 1.0 (10-01-15) **
  6. ** OEM: Forlinx Embedded **
  7. ** Web: http://www.witech.com.cn **
  8. ****************************************
  9. CPU: S3C6410 @532MHz
  10. Fclk = 532MHz, Hclk = 133MHz, Pclk = 66MHz, Serial = CLKUART (SYNC Mode)
  11. Board: SMDK6410
  12. DRAM: 128 MB
  13. Flash: 0 kB
  14. NAND: 256 MB
  15. In: serial
  16. Out: serial
  17. Err: serial
  18. Hit any key to stop autoboot: 0
  19. NAND read: device 0 offset 0x100000, size 0x300000
  20. 3145728 bytes read: OK
  21. Boot with zImage
  22. Starting kernel ...
  23. Uncompressing Linux... done, booting the kernel.
  24. Booting Linux on physical CPU 0
  25. Linux version 3.6.6 (ZhShiH@localhost.localdomain) (gcc version 4.4.3 (ctng-1.6.1) ) #4 Mon Jul 15 15:09:07 CST 2013
  26. CPU: ARMv6-compatible processor [410fb766] revision 6 (ARMv7), cr=00c5387d
  27. CPU: PIPT / VIPT nonaliasing data cache, VIPT nonaliasing instruction cache
  28. Machine: SMDK6410
  29. Memory policy: ECC disabled, Data cache writeback
  30. CPU S3C6410 (id 0x36410101)
  31. S3C24XX Clocks, Copyright 2004 Simtec Electronics
  32. camera: no parent clock specified
  33. S3C64XX: PLL settings, A=532000000, M=532000000, E=24000000
  34. S3C64XX: HCLK2=266000000, HCLK=133000000, PCLK=66500000
  35. mout_apll: source is fout_apll (1), rate is 532000000
  36. mout_epll: source is epll (1), rate is 24000000
  37. mout_mpll: source is mpll (1), rate is 532000000
  38. usb-bus-host: source is clk_48m (0), rate is 48000000
  39. audio-bus: source is mout_epll (0), rate is 24000000
  40. audio-bus: source is mout_epll (0), rate is 24000000
  41. audio-bus: source is mout_epll (0), rate is 24000000
  42. irda-bus: source is mout_epll (0), rate is 24000000
  43. camera: no parent clock specified
  44. CPU: found DTCM0 8k @ 00000000, not enabled
  45. CPU: moved DTCM0 8k to fffe8000, enabled
  46. CPU: found DTCM1 8k @ 00000000, not enabled
  47. CPU: moved DTCM1 8k to fffea000, enabled
  48. CPU: found ITCM0 8k @ 00000000, not enabled
  49. CPU: moved ITCM0 8k to fffe0000, enabled
  50. CPU: found ITCM1 8k @ 00000000, not enabled
  51. CPU: moved ITCM1 8k to fffe2000, enabled
  52. Built 1 zonelists in Zone order, mobility grouping on. Total pages: 32512
  53. Kernel command line: root=/dev/nfs nfsroot=192.168.1.108:/zhangsh/rootfs ip=192.168.1.109:192.168.1.108:192.168.1.1:255.255.2c
  54. PID hash table entries: 512 (order: -1, 2048 bytes)
  55. Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
  56. Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
  57. Memory: 128MB = 128MB total
  58. Memory: 125504k/125504k available, 5568k reserved, 0K highmem
  59. Virtual kernel memory layout:
  60. vector : 0xffff0000 - 0xffff1000 ( 4 kB)
  61. DTCM : 0xfffe8000 - 0xfffec000 ( 16 kB)
  62. ITCM : 0xfffe0000 - 0xfffe4000 ( 16 kB)
  63. fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
  64. vmalloc : 0xc8800000 - 0xff000000 ( 872 MB)
  65. lowmem : 0xc0000000 - 0xc8000000 ( 128 MB)
  66. modules : 0xbf000000 - 0xc0000000 ( 16 MB)
  67. .text : 0xc0008000 - 0xc03b9c18 (3784 kB)
  68. .init : 0xc03ba000 - 0xc03dbcec ( 136 kB)
  69. .data : 0xc03dc000 - 0xc0411100 ( 213 kB)
  70. .bss : 0xc0412024 - 0xc04479ec ( 215 kB)
  71. SLUB: Genslabs=13, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
  72. NR_IRQS:246
  73. VIC @f6000000: id 0x00041192, vendor 0x41
  74. VIC @f6010000: id 0x00041192, vendor 0x41
  75. sched_clock: 32 bits at 100 Hz, resolution 10000000ns, wraps every 4294967286ms
  76. Console: colour dummy device 80x30
  77. Calibrating delay loop... 353.89 BogoMIPS (lpj=1769472)
  78. pid_max: default: 32768 minimum: 301
  79. Mount-cache hash table entries: 512
  80. CPU: Testing write buffer coherency: ok
  81. Setting up static identity map for 0x502d4698 - 0x502d46f4
  82. NET: Registered protocol family 16
  83. DMA: preallocated 256 KiB pool for atomic coherent allocations
  84. s3c64xx_dma_init: Registering DMA channels
  85. PL080: IRQ 73, at c8846000, channels 0..8
  86. PL080: IRQ 74, at c8848000, channels 8..16
  87. S3C6410: Initialising architecture
  88. bio: create slab at 0
  89. usbcore: registered new interface driver usbfs
  90. usbcore: registered new interface driver hub
  91. usbcore: registered new device driver usb
  92. s3c-i2c s3c2440-i2c.0: slave address 0x10
  93. s3c-i2c s3c2440-i2c.0: bus frequency set to c-i2c s3c2440-i2c.0: i2c-0: S3C I2C adapter
  94. s3c-i2c s3c2440-i2c.1: slave address 0x10
  95. s3c-i2c s3c2440-i2c.1: bus frequency set to 64 KHz
  96. s3c-i2c s3c2440-i2c.1: i2c-1: S3C I2C adapter
  97. NET: Registered protocol family 2
  98. TCP established hash table entries: 4096 (order: 3, 32768 bytes)
  99. TCP bind hash table entries: 4096 (order: 4, 81920 bytes)
  100. TCP: Hash tables configured (established 4096 bind 4096)
  101. TCP: reno registered
  102. UDP hash table entries: 256 (order: 1, 12288 bytes)
  103. UDP-Lite hash table entries: 256 (order: 1, 12288 bytes)
  104. RPC: Registered named UNIX socket transport module.
  105. RPC: Registered udp transport module.
  106. RPC: Registered tcp transport module.
  107. RPC: Registered tcp NFSv4.1 backchannel transport module.
  108. NFS: Registering the id_resolver key type
  109. Key type id_resolver registered
  110. Key type id_legacy registered
  111. ROMFS MTD (C) 2007 Red Hat, Inc.
  112. io scheduler noop registered
  113. io scheduler deadline registered
  114. io scheduler cfq registered (default)
  115. start plist test
  116. end plist test
  117. s3c-fb s3c-fb: window 0: fb
  118. Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
  119. s3c6400-uart.0: ttySAC0 at MMIO 0x7f005000 (irq = 69) is a S3C6400/10
  120. console [ttySAC0] enabled
  121. s3c6400-uart.1: ttySAC1 at MMIO 0x7f005400 (irq = 70) is a S3C6400/10
  122. s3c6400-uart.2: ttySAC2 at MMIO 0x7f005800 (irq = 71) is a S3C6400/10
  123. s3c6400-uart.3: ttySAC3 at MMIO 0x7f005c00 (irq = 72) is a S3C6400/10
  124. brd: module loaded
  125. loop: module loaded
  126. at24 0-0050: 1024 byte 24c08 EEPROM, writable, 1 bytes/write
  127. at24 1-0057: 16384 byte 24c128 EEPROM, writable, 1 bytes/write
  128. S3C24XX NAND Driver, (c) 2004 Simtec Electronics
  129. dm9000 Ethernet Driver, V1.31
  130. ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
  131. mousedev: PS/2 mouse device common for all mice
  132. s3c-rtc s3c64xx-rtc: rtc disabled, re-enabling
  133. s3c-rtc s3c64xx-rtc: rtc core: registered s3c as rtc0
  134. i2c /dev entries driver
  135. sdhci: Secure Digital Host Controller Interface driver
  136. sdhci: Copyright(c) Pierre Ossman
  137. s3c-sdhci s3c-sdhci.0: clock source 0: mmc_busclk.0 (133000000 Hz)
  138. s3c-sdhci s3c-sdhci.0: clock source 2: mmc_busclk.2 (24000000 Hz)
  139. mmc0: SDHCI controller on samsung-hsmmc [s3c-sdhci.0] using ADMA
  140. mmc0: mmc_rescan_try_freq: trying to init card at 400000 Hz
  141. Synopsys Designware Multimedia Card Interface Driver
  142. VUB300 Driver rom wait states = 1C irqpoll timeout = 0400usbcore: registered new interface driver vub300
  143. usbcore: registered new interface driver ushc
  144. usbcore: registered new interface driver usbhid
  145. usbhid: USB HID core driver
  146. TCP: cubic registered
  147. VFP support v0.3: implementor 41 architecture 1 part 20 variant b rev 5
  148. s3c-rtc s3c64xx-rtc: setting system clock to 2000-01-01 01:39:20 UTC (946690760)
  149. mmc0: new SD card at address 8974
  150. mmcblk0: mmc0:8974 SD02G 1.84 GiB
  151. mmcblk0: p1
  152. VFS: Unable to mount root fs via NFS, trying floppy.
  153. VFS: Cannot open root device "nfs" or unknown-block(2,0): error -6
  154. Please append a correct "root=" boot option; here are the available partitions:
  155. b300 1931264 mmcblk0 driver: mmcblk
  156. b301 1930240 mmcblk0p1 00000000-0000-0000-0000-000000000000
  157. Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)
  158. [] (unwind_backtrace+0x0/0xf4) from [] (panic+0x8c/0x1dc)
  159. [] (panic+0x8c/0x1dc) from [] (mount_block_root+0x174/0x228)
  160. [] (mount_block_root+0x174/0x228) from [] (mount_root+0xd4/0xf8)
  161. [] (mount_root+0xd4/0xf8) from [] (prepare_namespace+0x160/0x1b8)
  162. [] (prepare_namespace+0x160/0x1b8) from [] (kernel_init+0x164/0x1ac)
  163. [] (kernel_init+0x164/0x1ac) from [] (kernel_thread_exit+0x0/0x8)

问题如上,查遍了google、baidu、bing,没遇见过类似的情况,先记下来,接着研究

另外不知道有没有同学遇到过类似的情况而解决的,望赐教,谢谢!

这个问题今天解决了!
原因是kernel的dm9000网卡驱动未移植。
移植操作可见:http://blog.csdn.net/acanoe/article/details/7516341
在这里,也转载一下这位同学的操作部分。

s3c6410的dm9000移植。
1. 添加头文件支持

点击(此处)折叠或打开

  1. #incude <linux/dm9000.h>

2. 添加宏定义和结构体:

点击(此处)折叠或打开

  1. //add by acanoe dm9000
  2.     /* Ethernet */
  3.     #define S3C64XX_PA_DM9000 (0x18000000)
  4.     #define S3C64XX_SZ_DM9000 SZ_1M
  5.     #define S3C64XX_VA_DM9000 S3C_ADDR(0x03b00300)
  6.       
  7.       
  8.     static struct resource dm9000_resources[] = {
  9.         [0] = {
  10.             .start = S3C64XX_PA_DM9000,
  11.             .end = S3C64XX_PA_DM9000 + 3,
  12.             .flags = IORESOURCE_MEM,
  13.         },
  14.         [1] = {
  15.             .start = S3C64XX_PA_DM9000 + 4,
  16.             .end = S3C64XX_PA_DM9000 + S3C64XX_SZ_DM9000 - 1,
  17.             .flags = IORESOURCE_MEM,
  18.         },
  19.         [2] = {
  20.             .start = IRQ_EINT(7),
  21.             .end = IRQ_EINT(7),
  22.             .flags = IORESOURCE_IRQ | IRQF_TRIGGER_HIGH,
  23.         },
  24.     };
  25.       
  26.       
  27.     static struct dm9000_plat_data dm9000_setup = {
  28.         .flags = DM9000_PLATF_16BITONLY,
  29.         .dev_addr = { 0x08, 0x90, 0x00, 0xa0, 0x90, 0x90 },
  30.     };
  31.       
  32.       
  33.     static struct platform_device s3c_device_dm9000 = {
  34.         .name = "dm9000",
  35.         .id = 0,
  36.         .num_resources = ARRAY_SIZE(dm9000_resources),
  37.         .resource = dm9000_resources,
  38.         .dev = {
  39.             .platform_data = &dm9000_setup,
  40.         }
  41.     };
  42.     //#ifdef CONFIG_DM9000
  43.     //add by acanoe dm9000

3. 修改smdk6410_devices结构体

点击(此处)折叠或打开

  1. static struct platform_device *smdk6410_devices[] __initdata = {
  2. ...
  3. ...
  4. #ifdef CONFIG_DM9000
  5. &s3c_device_dm9000, // dm9000 driver add by acanoe
  6. #endif
  7. // add by acanoe 2
  8. // &smdk6410_smsc911x,// Canceled by acanoe 对于OK6410 的网卡实验来说,这一项一定要注释掉。
  9. ...
  10. ...
  11. };

OK,编译成功。启动如下:

点击(此处)折叠或打开

  1. U-Boot 1.1.6 (Jul 8 2013 - 15:41:56) for SMDK6410
  2. ****************************************
  3. ** u-boot 1.1.6 **
  4. ** Updated for TE6410 Board **
  5. ** Version 1.0 (10-01-15) **
  6. ** OEM: Forlinx Embedded **
  7. ** Web: http://www.witech.com.cn **
  8. ****************************************
  9. CPU: S3C6410 @532MHz
  10. Fclk = 532MHz, Hclk = 133MHz, Pclk = 66MHz, Serial = CLKUART (SYNC Mode)
  11. Board: SMDK6410
  12. DRAM: 128 MB
  13. Flash: 0 kB
  14. NAND: 256 MB
  15. In: serial
  16. Out: serial
  17. Err: serial
  18. Hit any key to stop autoboot: 0
  19. NAND read: device 0 offset 0x100000, size 0x300000
  20. 3145728 bytes read: OK
  21. Boot with zImage
  22. Starting kernel ...
  23. Uncompressing Linux... done, booting the kernel.
  24. Booting Linux on physical CPU 0
  25. Linux version 3.6.6 (ZhShiH@localhost.localdomain) (gcc version 4.4.3 (ctng-1.6.1) ) #10 Fri Jul 19 16:21:29 CST 2013
  26. S3C24XX Clocks, Copyright 2004 Simtec Electronics
  27. camera: no parent clock specified
  28. S3C64XX: PLL settings, A=532000000, M=532000000, E=24000000
  29. S3C64XX: HCLK2=266000000, HCLK=133000000, PCLK=66500000
  30. mout_apll: source is fout_apll (1), rate is 532000000
  31. mout_epll: source is epll (1), rate is 24000000
  32. mout_mpll: source is mpll (1), rate is 532000000
  33. usb-bus-host: source is clk_48m (0), rate is 48000000
  34. audio-bus: source is mout_epll (0), rate is 24000000
  35. audio-bus: source is mout_epll (0), rate is 24000000
  36. audio-bus: source is mout_epll (0), rate is 24000000
  37. irda-bus: source is mout_epll (0), rate is 24000000
  38. camera: no parent clock specified
  39. CPU: found DTCM0 8k @ 00000000, not enabled
  40. CPU: moved DTCM0 8k to fffe8000, enabled
  41. CPU: found DTCM1 8k @ 00000000, not enabled
  42. CPU: moved DTCM1 8k to fffea000, enabled
  43. CPU: found ITCM0 8k @ 00000000, not enabled
  44. CPU: moved ITCM0 8k to fffe0000, enabled
  45. CPU: found ITCM1 8k @ 00000000, not enabled
  46. CPU: moved ITCM1 8k to fffe2000, enabled
  47. Kernel command line: root=/dev/nfs nfsroot=192.168.1.108:/zhangsh/rootfs,nolock ip=192.168.1.109:192.168.1.108:192.168.1.1:25c
  48. PID hash table entries: 512 (order: -1, 2048 bytes)
  49. Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
  50. Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
  51. Memory: 128MB = 128MB total
  52. Memory: 125332k/125332k available, 5740k reserved, 0K highmem
  53. Virtual kernel memory layout:
  54. vector : 0xffff0000 - 0xffff1000 ( 4 kB)
  55. DTCM : 0xfffe8000 - 0xfffec000 ( 16 kB)
  56. ITCM : 0xfffe0000 - 0xfffe4000 ( 16 kB)
  57. fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
  58. vmalloc : 0xc8800000 - 0xff000000 ( 872 MB)
  59. lowmem : 0xc0000000 - 0xc8000000 ( 128 MB)
  60. modules : 0xbf000000 - 0xc0000000 ( 16 MB)
  61. .text : 0xc0008000 - 0xc03e17e0 (3942 kB)
  62. .init : 0xc03e2000 - 0xc0404bc4 ( 139 kB)
  63. .data : 0xc0406000 - 0xc043ce40 ( 220 kB)
  64. .bss : 0xc043d024 - 0xc0472f94 ( 216 kB)
  65. SLUB: Genslabs=13, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
  66. NR_IRQS:246
  67. VIC @f6000000: id 0x00041192, vendor 0x41
  68. VIC @f6010000: id 0x00041192, vendor 0x41
  69. sched_clock: 32 bits at 100 Hz, resolution 10000000ns, wraps every 4294967286ms
  70. Console: colour dummy device 80x30
  71. Calibrating delay loop... 353.89 BogoMIPS (lpj=1769472)
  72. pid_max: default: 32768 minimum: 301
  73. Mount-cache hash table entries: 512
  74. CPU: Testing write buffer coherency: ok
  75. Setting up static identity map for 0x502f65e0 - 0x502f663c
  76. NET: Registered protocol family 16
  77. DMA: preallocated 256 KiB pool for atomic coherent allocations
  78. s3c64xx_dma_init: Registering DMA channels
  79. PL080: IRQ 73, at c8846000, channels 0..8
  80. PL080: IRQ 74, at c8848000, channels 8..16
  81. bio: create slab at 0
  82. usbcore: registered new interface driver usbfs
  83. usbcore: registered new interface driver hub
  84. usbcore: registered new device driver usb
  85. s3c-i2c s3c2440-i2c.0: slave address 0x10
  86. s3c-i2c s3c2440-i2c.0: bus frequency set to 64 KHz
  87. s3c-i2c s3c2440-i2c.0: i2c-0: S3C I2C adapter
  88. s3c-i2c s3c2440-i2c.1: slave address 0x10
  89. s3c-i2c s3c2440-i2c.1: bus frequency set to 64 KHz
  90. s3c-i2c s3c2440-i2c.1: i2c-1: S3C I2C adapter
  91. NET: Registered protocol family 2
  92. TCP established hash table entries: 4096 (order: 3, 32768 bytes)
  93. TCP bind hash table entries: 4096 (order: 4, 81920 bytes)
  94. TCP: Hash tables configured (established 4096 bind 4096)
  95. TCP: reno registered
  96. UDP hash table entries: 256 (order: 1, 12288 bytes)
  97. UDP-Lite hash table entries: 256 (order: 1, 12288 bytes)
  98. RPC: Registered named UNIX socket transport module.
  99. RPC: Registered udp transport module.
  100. RPC: Registered tcp transport module.
  101. RPC: Registered tcp NFSv4.1 backchannel transport module.
  102. NFS: Registering the id_resolver key type
  103. Key type id_resolver registered
  104. Key type id_legacy registered
  105. ROMFS MTD (C) 2007 Red Hat, Inc.
  106. io scheduler noop registered
  107. io scheduler deadline registered
  108. io scheduler cfq registered (default)
  109. start plist test
  110. end plist test
  111. s3c-fb s3c-fb: window 0: fb
  112. Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
  113. s3c6400-uart.0: ttySAC0 at MMIO 0x7f005000 (irq = 69) is a S3C6400/10
  114. console [ttySAC0] enabled
  115. s3c6400-uart.1: ttySAC1 at MMIO 0x7f005400 (irq = 70) is a S3C6400/10
  116. s3c6400-uart.2: ttySAC2 at MMIO 0x7f005800 (irq = 71) is a S3C6400/10
  117. s3c6400-uart.3: ttySAC3 at MMIO 0x7f005c00 (irq = 72) is a S3C6400/10
  118. brd: module loaded
  119. loop: module loaded
  120. at24 0-0050: 1024 byte 24c08 EEPROM, writable, 1 bytes/write
  121. at24 1-0057: 16384 byte 24c128 EEPROM, writable, 1 bytes/write
  122. dm9000 Ethernet Driver, V1.31
  123. eth0: dm9000b at c885a000,c8c00004 IRQ 108 MAC: 08:90:00:a0:90:90 (platform data)
  124. ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
  125. mousedev: PS/2 mouse device common for all mice
  126. s3c-rtc s3c64xx-rtc: rtc disabled, re-enabling
  127. s3c-rtc s3c64xx-rtc: rtc core: registered s3c as rtc0
  128. i2c /dev entries driver
  129. sdhci: Secure Digital Host Controller Interface driver
  130. sdhci: Copyright(c) Pierre Ossman
  131. s3c-sdhci s3c-sdhci.0: clock source 0: mmc_busclk.0 (133000000 Hz)
  132. s3c-sdhci s3c-sdhci.0: clock source 2: mmc_busclk.2 (24000000 Hz)
  133. mmc0: SDHCI controller on samsung-hsmmc [s3c-sdhci.0] using ADMA
  134. mmc0: mmc_rescan_try_freq: trying to init card at 400000 Hz
  135. mmc0: mmc_rescan_try_freq: trying to init card at 300000 Hz
  136. Synopsys Designware Multimedia Card Interface Driver
  137. VUB300 Driver rom wait states = 1C irqpoll timeout = 0400usbcore: registered new interface driver vub300
  138. usbcore: registered new interface driver ushc
  139. usbcore: registered new interface driver usbhid
  140. usbhid: USB HID core driver
  141. TCP: cubic registered
  142. NET: Registered protocol family 10
  143. sit: IPv6 over IPv4 tunneling driver
  144. Key type dns_resolver registered
  145. VFP support v0.3: implementor 41 architecture 1 part 20 variant b rev 5
  146. mmc0: mmc_rescan_try_freq: trying to init card at 200000 Hz
  147. s3c-rtc s3c64xx-rtc: setting system clock to 2000-01-01 02:19:34 UTC (946693174)
  148. mmc0: mmc_rescan_try_freq: trying to init card at 100000 Hz
  149. dm9000 dm9000.0: eth0: link down
  150. IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
  151. dm9000 dm9000.0: eth0: link up, 100Mbps, full-duplex, no LPA
  152. IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
  153. IP-Config: Complete:
  154. device=eth0, addr=192.168.1.109, mask=255.255.255.0, gw=192.168.1.1
  155. host=192.168.1.109, domain=, nis-domain=(none)
  156. bootserver=192.168.1.108, rootserver=192.168.1.108, rootpath=
  157. VFS: Mounted root (nfs filesystem) on device 0:9.
  158. Freeing init memory: 136K
  159. Please press Enter to activate this console.

终于看到了久违的console!!!
感谢木易小舟同学。

后续使用过程的问题:
某一次,不小心弄坏了服务端的rootfs,一时手贱就把rootfs删掉。不过幸好有个不完全版的备份。
再次解压出rootfs之后,启动出现如下错误:

点击(此处)折叠或打开

  1. Failed to execute /linuxrc. Attempting defaults...
  2. Kernel panic - not syncing: No init found. Try passing init= option to kernel. See Linux Documentation/init.txt for guidance.

检查rootfs文件系统:
1,存在linuxrc,链接到/bin/busybox;

2,linuxrc有可执行权限。

找了很久的原因,后来发现,需要将交叉编译器目录下的lib文件拷贝到nfs系统中。
如:

  1. yes | cp /opt/FriendlyARM/toolschain/4.4.3/arm-none-linux-gnueabi/lib/* /zhangsh/rootfs/lib/ -avf


注意,是/opt/FriendlyARM/toolschain/4.4.3/arm-none-linux-gnueabi/lib而不是/opt/FriendlyARM/toolschain/4.4.3/lib/