Bootloader Set Up for TFTP and NFS; Diskless Boot Up from Amazon EC2

0

Currently, I have successfully boot up my wandboard with TFTP for kernel and NFS for rootfs locally.

Still, I want to achieve on booting it over the cloud set up in Amazon EC2. The machine could get the kernel files and boot up fine. However, it still could not mount the NFS rootfs.

Since TFTP is extremely slow, I have moved the files down to local and it worked. The rootfs is still in the cloud, and I have trouble connect to it. I could mount nfs to the Ubuntu machine and access the files without problem.

I have also open all the TCP and UDP ports in EC2, which is not good. what specific ports need to open for NFS? I believe TFTP uses UDP:69.

Please advice.

Kernel command line: console=ttymxc1,115200 root=/dev/nfs ip=192.168.0.154:192.168.0.227:192.168.0.1:255.255.255.0::eth0:off nfsroot=52.22.87.79:/nfsroot,v3,tcp video=mxcfb0:dev=hdmi,1280x720M@60,if=RGB24

IP-Config: Complete:
device=eth0, hwaddr=10:07:23:60:22:6c, ipaddr=192.168.0.154, mask=255.255.255.0, gw=192.168.0.1 host=192.168.0.154, domain=, nis-domain=(none) bootserver=192.168.0.227, rootserver=52.22.87.79, rootpath=

Q=1==SD2_DAT0 reg:3
MQ=1==SD2_DAT0 conf reg:130b0
MQ=1==SD2_DAT1 reg:3
MQ=1==SD2_DAT1 conf reg:130b0
MQ=1==SD2_DAT2 reg:3
MQ=1==SD2_DAT2 conf reg:110b0
MQ=1==SD2_DAT3 reg:3
MQ=1==SD2_DAT3 conf reg:130b0
ALSA device list:
MQ=1==GPIO_0 reg:0
MQ=1==CCOSR reg2:e017b
MQ=1==GPIO_0 config reg3:1f0b0
MQ=2==GPIO_0 reg:0
MQ=2==CCOSR reg2:10e0180
MQ=2==GPIO_0 config reg3:1f0b0
#0: imx6dl-rt5631 #1: imx-hdmi-soc VFS: Cannot open root device "nfs" or unknown-block(2,0): error -6
Please append a correct "root=" boot option; here are the available partitions:
b300 7634944 mmcblk0 driver: mmcblk
b301 7840 mmcblk0p1 00000000-01
b302 7840 mmcblk0p2 00000000-02
b303 1 mmcblk0p3
b304 5842080 mmcblk0p4 00000000-04
b305 500024 mmcblk0p5 00000000-05
b306 250040 mmcblk0p6 00000000-06
b307 1000024 mmcblk0p7 00000000-07
b318 2048 mmcblk0rpmb (driver?)
b310 2048 mmcblk0boot1 (driver?)
b308 2048 mmcblk0boot0 (driver?)
b320 7814144 mmcblk1 driver: mmcblk
b321 7711744 mmcblk1p1 000b6489-01
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)
CPU1: stopping
CPU: 1 PID: 0 Comm: swapper/1 Not tainted 3.10.17-1.0.0_ga+yocto #2
[<800138c0>] (unwind_backtrace+0x0/0xf4) from [<800114f8>] (show_stack+0x10/0x14)
[<800114f8>] (show_stack+0x10/0x14) from [<80012ae8>] (handle_IPI+0x108/0x118)
[<80012ae8>] (handle_IPI+0x108/0x118) from [<80008584>] (gic_handle_irq+0x58/0x5c)
[<80008584>] (gic_handle_irq+0x58/0x5c) from [<8000dc80>] (__irq_svc+0x40/0x70)
Exception stack(0xa8095f50 to 0xa8095f98)
5f40: a8095f98 0000007a bfcb6973 0000001c
5f60: bf633310 0000001c 815b1130 80cc8508 00000000 00000000 a8094000 a8094000
5f80: 00000017 a8095f98 80059784 8047c5d8 60000113 ffffffff
[<8000dc80>] (__irq_svc+0x40/0x70) from [<8047c5d8>] (cpuidle_enter_state+0x50/0xe0)
[<8047c5d8>] (cpuidle_enter_state+0x50/0xe0) from [<8047c718>] (cpuidle_idle_call+0xb0/0x148)
[<8047c718>] (cpuidle_idle_call+0xb0/0x148) from [<8000ec5c>] (arch_cpu_idle+0x10/0x54)
[<8000ec5c>] (arch_cpu_idle+0x10/0x54) from [<80059058>] (cpu_startup_entry+0x104/0x150)
[<80059058>] (cpu_startup_entry+0x104/0x150) from [<1067a604>] (0x1067a604)

(Re)start USB...                                                                                                                                                                                              
USB0:   lowlevel init failed                                                                                                                                                                                  
USB1:   USB EHCI 1.00                                                                                                                                                                                         
scanning bus 1 for devices... 3 USB Device(s) found                                                                                                                                                           
       scanning usb for storage devices... 0 Storage Device(s) found                                                                                                                                          
       scanning usb for ethernet devices... 0 Ethernet Device(s) found                                                                                                                                        
No storage devices, perhaps not 'usb start'ed..?                                                                                                                                                              
no usb storege founded!                                                                                                                                                                                       
EHCI failed to shut down host controller.                                                                                                                                                                     
(Re)start USB...                                                                                                                                                                                              
USB0:   lowlevel init failed                                                                                                                                                                                  
USB1:   USB EHCI 1.00                                                                                                                                                                                         
scanning bus 1 for devices... 3 USB Device(s) found                                                                                                                                                           
       scanning usb for storage devices... 0 Storage Device(s) found                                                                                                                                          
       scanning usb for ethernet devices... 0 Ethernet Device(s) found                                                                                                                                        
No storage devices, perhaps not 'usb start'ed..?                                                                                                                                                              
not detect usb storage                                                                                                                                                                                        
Hit any key to stop autoboot:  0                                                                                                                                                                              
=>           printenv                                                                                                                                                                                         
baudrate=115200                                                                                                                                                                                               
boot_fdt=try                                                                                                                                                                                                  
bootargs=console=ttymxc1,115200 root=/dev/nfs ip=192.168.0.154:52.22.87.79:192.168.0.1:255.255.255.0::eth0:off nfsroot=52.11.87.79:/nfsroot,v3,tcp video=mxcfb0:dev=hdmi,1280x720M@60,if=RGB24                
bootcmd=hdcp;run netboot                                                                                                                                                                                      
bootdelay=1                                                                                                                                                                                                   
bootscript=echo Running bootscript from mmc ...; source                                                                                                                                                       
box_console_conf=console=ttymxc1,115200                                                                                                                                                                       
box_recovery=console=tty0 console=ttymxc1,115200 root=/dev/mmcblk0p6 init=/linuxrc rootwait                                                                                                                   
boxargs=setenv bootargs ${box_console_conf} root=${boxroot} ${hdmi} splash vt.handoff=7 ubootver=${ubootver}                                                                                                  
boxcmd=run boxargs;tftp ${loadaddr_box} ${uimage_box};bootm                                                                                                                                                   
boxroot=/dev/mmcblk0p3 rootwait rw                                                                                                                                                                            
checkimg=fatload usb 0:1 0x84000000 dtbcheckupdate= echo start checking update...;usb start;if test run checkimg; thensetenv mmcroot=/dev/mmcblk1p2 rootwait rw;fi;                                           
console=ttymxc1                                                                                                                                                                                               
emmcdev=2                                                                                                                                                                                                     
ethact=FEC                                                                                                                                                                                                    
ethprime=FEC                                                                                                                                                                                                  
fdt_addr=0x18000000                                                                                                                                                                                           
fdt_file=hio-imx6dl-board.dtb                                                                                                                                                                                 
fdt_high=0xffffffff                                                                                                                                                                                           
gatewayip=192.168.0.250                                                                                                                                                                                       
get_cmd=tftp                                                                                                                                                                                                  
hdmi=video=mxcfb0:dev=hdmi,1280x720M@60,if=RGB24                                                                                                                                                              
initrd_high=0xffffffff                                                                                                                                                                                        
ip_dyn=no                                                                                                                                                                                                     
ipaddr=192.168.0.154                                                                                                                                                                                          
load_box=mmc read ${loadaddr} 0x800 0x2800                                                                                                                                                                    
loadaddr=0x12000000                                                                                                                                                                                           
loadaddr_box=0x10800000                                                                                                                                                                                       
loadbootscript=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};                                                                                                                                        
loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}                                                                                                                                              
loaduimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${uimage}                                                                                                                                             
mmcargs=setenv bootargs console=${console},${baudrate} root=${mmcroot} ${hdmi}                                                                                                                                
mmcboot=echo Booting from mmc ...; run mmcargs; if test ${boot_fdt} = yes || test ${boot_fdt} = try; then if run loadfdt; then bootm ${loadaddr} - ${fdt_addr}; else if test ${boot_fdt} = try; then bootm; el
se echo WARN: Cannot load the DT; fi; fi; else bootm; fi;                                                                                                                                                     
mmcdev=2                                                                                                                                                                                                      
mmcpart=1                                                                                                                                                                                                     
mmcroot=/dev/mmcblk1p2 rootwait rw                                                                                                                                                                            
netargs=setenv bootargs console=${console},${baudrate} root=/dev/nfs ip=${nfs_ip} nfsroot=${rootpathip}:${nfsroot},v3,tcp ${hdmi}                                                                             
netboot=run netargs;${get_cmd} ${loadaddr} ${uimage};${get_cmd} ${fdt_addr} ${fdt_file};bootm ${loadaddr} - ${fdt_addr}                                                                                       
netmask=255.255.255.0                                                                                                                                                                                         
nfs_ip=192.168.0.154:192.168.0.227:192.168.0.1:255.255.255.0::eth0:off                                                                                                                                        
nfsroot=/nfsroot                                                                                                                                                                                              
rootpathip=52.22.87.79                                                                                                                                                                                        
script=boot.scr                                                                                                                                                                                               
serverip=192.168.0.227                                                                                                                                                                                        
ubootver=U-Boot 2014.01 (Aug 24 2015 - 22:25:05)                                                                                                                                                              
uimage=uImage                                                                                                                                                                                                 
uimage_box=uImage_box                                                                                                                                                                                         
update_emmc_firmware=if test ${ip_dyn} = yes; then setenv get_cmd dhcp; else setenv get_cmd tftp; fi; if ${get_cmd} ${update_sd_firmware_filename}; then if mmc dev ${emmcdev} && mmc open ${emmcdev} 1; then 
setexpr fw_sz ${filesize} / 0x200; setexpr fw_sz ${fw_sz} + 1; mmc write ${loadaddr} 0x2 ${fw_sz}; mmc close ${emmcdev} 1; fi; fi                                                                             
update_sd_firmware=if test ${ip_dyn} = yes; then setenv get_cmd dhcp; else setenv get_cmd tftp; fi; if mmc dev ${mmcdev}; then if ${get_cmd} ${update_sd_firmware_filename}; then setexpr fw_sz ${filesize} / 
0x200; setexpr fw_sz ${fw_sz} + 1; mmc write ${loadaddr} 0x2 ${fw_sz}; fi; fi                                                                                                                                 

Environment size: 2985/8188 bytes                                                                  
amazon-ec2
embedded-linux
bootloader
nfs
tftp
asked on Stack Overflow Feb 11, 2016 by Charles C. • edited Feb 11, 2016 by Charles C.

0 Answers

Nobody has answered this question yet.


User contributions licensed under CC BY-SA 3.0