This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Pandaboard NFS boot problem

Hi,

I running Android ICS on Pandaboard (OMAP4430).

I want to run Pandaboard with NFS.

So i have tried too boot my board with the steps given on the below blog site.

http://morschi.com/2011/08/17/booting-the-pandaboard-over-nfs/

My NFS and TFTP server is running on Ubuntu 10.04 Host.

My NFS connection is working fine as per the log i am getting but it stops during the start of some modules.

My file-system is working properly when i boot the board with SD card.

Here given below is the log i am getting from the board.

===================================================

8867.nfs.boot.not.working.log

===================================================

  • Hi Brijesh,

    Did you change the init.rc files to avoid mounting partitions?, you would need something like this:

    init.rc
    on post-fs

       # once everything is setup, no need to modify /
       mount rootfs rootfs / rw remount 
    

    init.omap4430.rc
    on fs

       #mount ext4 /dev/block/platform/mmci-omap-hs.1/by-name/system /system wait ro
       #mount ext4 /dev/block/platform/mmci-omap-hs.1/by-name/userdata /data wait noatime nosuid nodev
       #mount ext4 /dev/block/platform/mmci-omap-hs.1/by-name/cache /cache wait noatime nosuid nodev
    

    it might be different depending on the release you are trying to use, but the idea is to avoid look for partitions in the memory for the filesystem
  • Hi Israel,

    Thank you for your reply,

    I have tried the steps given by you and have modify init.rc and init.omap4430.rc but the problem is still same.

    After NFS server error (   [   17.113037] nfs: server 10.99.14.184 not responding, still trying  ) my file system is not working.

    If i connect any usb or HDMI device to the board it's giving me proper log as given below even after this NFS server error.

    So my kernel is running proper but having problem with file system.

    #####################################################################

    ################################# Log ################################

    #####################################################################

    [   17.113037] nfs: server 10.99.14.184 not responding, still trying
    [   34.660064] usb 1-1.2: new low speed USB device number 4 using ehci-omap
    [   34.789245] usb 1-1.2: New USB device found, idVendor=046d, idProduct=c05a
    [   34.796600] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
    [   34.804443] usb 1-1.2: Product: USB Optical Mouse
    [   34.809478] usb 1-1.2: Manufacturer: Logitech
    [   34.817810] input: Logitech USB Optical Mouse as /devices/platform/omap/usbhs_omap/ehci-omap.0/usb1/1-1/1-1.2/1-1.2:1.0/input/input1
    [   34.831115] generic-usb 0003:046D:C05A.0001: input: USB HID v1.11 Mouse [Logitech USB Optical Mouse] on usb-ehci-omap.0-1.2/input0
    [   40.906585] hpd 1
    [   40.909118] hpd 1
    [   40.949035] in hpd work 1, state=0
    [   40.953582] omapdss HDMI: ENTER hdmi_display_enable
    [   40.959960] omapdss HDMI: Set c-state constraint for HDMI
    [   40.959991]  
    [   41.027191] in hpd work 2, state=1
    [   41.173461] hpd 0
    [   41.422943] hpd 1
    [   41.433288] hpd 0
    [   41.682922] hpd 1
    [   41.685272] edid[000] = 00 ff ff ff ff ff ff 00 10 ac 2c a0 53 56 33 30
    [   41.692840] edid[010] = 0a 13 01 03 80 34 20 78 ea b3 25 ac 51 30 b4 26
    [   41.700195] hpd 0
    [   41.702331] edid[020] = 10 50 54 a5 4b 00 81 80 a9 40 71 4f 01 01 01 01
    [   41.709472] edid[030] = 01 01 01 01 01 01 28 3c 80 a0 70 b0 23 40 30 20
    [   41.716644] edid[040] = 36 00 07 44 21 00 00 1a 00 00 00 ff 00 47 32 39
    [   41.723724] edid[050] = 33 48 39 33 34 30 33 56 53 0a 00 00 00 fc 00 44
    [   41.730804] edid[060] = 45 4c 4c 20 32 34 30 38 57 46 50 0a 00 00 00 fd
    [   41.737823] edid[070] = 00 38 4c 1e 53 11 00 0a 20 20 20 20 20 20 01 1f
    [   41.744903] edid[080] = 02 03 1b f1 48 90 05 04 03 02 07 16 01 23 09 07
    [   41.752014] edid[090] = 07 65 03 0c 00 10 00 83 01 00 00 02 3a 80 18 71
    [   41.759338] edid[0a0] = 38 2d 40 58 2c 45 00 07 44 21 00 00 1e 01 1d 80
    [   41.766448] edid[0b0] = 18 71 1c 16 20 58 2c 25 00 07 44 21 00 00 9e 01
    [   41.773468] edid[0c0] = 1d 00 72 51 d0 1e 20 6e 28 55 00 07 44 21 00 00
    [   41.780548] edid[0d0] = 1e 8c 0a d0 8a 20 e0 2d 10 10 3e 96 00 07 44 21
    [   41.787597] edid[0e0] = 00 00 18 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   41.794677] edid[0f0] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 47
    [   41.801757] edid[100] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   41.808776] edid[110] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   41.816131] edid[120] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   41.823150] edid[130] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   41.830230] edid[140] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   41.837310] edid[150] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   41.844329] edid[160] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   41.851623] edid[170] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   41.858673] edid[180] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   41.865753] edid[190] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   41.872772] edid[1a0] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   41.879882] edid[1b0] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   41.886962] edid[1c0] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   41.893951] edid[1d0] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   41.901031] edid[1e0] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   41.908081] edid[1f0] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   41.915222] panel size 52 by 32
    [   41.918701] in hpd work 0, state=1
    [   41.929840] omapdss HDMI: Enter hdmi_display_disable
    [   41.943267] omapdss HDMI: Release c-state constraint for HDMI
    [   41.943267]  
    [   41.951141] hpd 1
    [   41.953277] hdmi: clearing EDID info
    [   41.995880] in hpd work 1, state=0
    [   41.999786] omapdss HDMI: ENTER hdmi_display_enable
    [   42.005554] omapdss HDMI: Set c-state constraint for HDMI
    [   42.005584]  
    [   42.113067] omapdss DISPC error: timeout waiting for EVSYNC
    [   42.175598] in hpd work 2, state=1
    [   42.833099] edid[000] = 00 ff ff ff ff ff ff 00 10 ac 2c a0 53 56 33 30
    [   42.840667] edid[010] = 0a 13 01 03 80 34 20 78 ea b3 25 ac 51 30 b4 26
    [   42.848419] edid[020] = 10 50 54 a5 4b 00 81 80 a9 40 71 4f 01 01 01 01
    [   42.855499] edid[030] = 01 01 01 01 01 01 28 3c 80 a0 70 b0 23 40 30 20
    [   42.862640] edid[040] = 36 00 07 44 21 00 00 1a 00 00 00 ff 00 47 32 39
    [   42.869720] edid[050] = 33 48 39 33 34 30 33 56 53 0a 00 00 00 fc 00 44
    [   42.876861] edid[060] = 45 4c 4c 20 32 34 30 38 57 46 50 0a 00 00 00 fd
    [   42.883911] edid[070] = 00 38 4c 1e 53 11 00 0a 20 20 20 20 20 20 01 1f
    [   42.890991] edid[080] = 02 03 1b f1 48 90 05 04 03 02 07 16 01 23 09 07
    [   42.898101] edid[090] = 07 65 03 0c 00 10 00 83 01 00 00 02 3a 80 18 71
    [   42.905120] edid[0a0] = 38 2d 40 58 2c 45 00 07 44 21 00 00 1e 01 1d 80
    [   42.912506] edid[0b0] = 18 71 1c 16 20 58 2c 25 00 07 44 21 00 00 9e 01
    [   42.919525] edid[0c0] = 1d 00 72 51 d0 1e 20 6e 28 55 00 07 44 21 00 00
    [   42.926605] edid[0d0] = 1e 8c 0a d0 8a 20 e0 2d 10 10 3e 96 00 07 44 21
    [   42.933624] edid[0e0] = 00 00 18 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   42.940704] edid[0f0] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 47
    [   42.947784] edid[100] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   42.954803] edid[110] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   42.961883] edid[120] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   42.968902] edid[130] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   42.975982] edid[140] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   42.983062] edid[150] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   42.990081] edid[160] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   42.997161] edid[170] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   43.004364] edid[180] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   43.011444] edid[190] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   43.018463] edid[1a0] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   43.025543] edid[1b0] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   43.032623] edid[1c0] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   43.039642] edid[1d0] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   43.046722] edid[1e0] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   43.053771] edid[1f0] = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    [   43.060882] panel size 52 by 32

    ########################### End of Log ################################

    #####################################################################

    ############################ Bootargs #################################

    #####################################################################

    usb start
    setenv ipaddr 10.99.14.155
    setenv serverip 10.99.14.184
    setenv gateway 10.99.13.1
    setenv netmask 255.255.252.0
    setenv bootcmd 'tftp 80c00000 /tftpboot/brijesh/pandaboard/uImage;bootm'
    setenv bootargs 'console=ttyO2,115200n8 androidboot.console=ttyO2 mem=456M@0x80000000 mem=512M@0xA0000000 noinitrd ip=10.99.14.155:10.99.14.184:10.99.13.1:255.255.252.0::eth0:off rw init=/init root=/dev/nfs nfsroot=10.99.14.184:/home/opencv/brijesh/workdir/pandaboard/pandaboard_android_4AI.1.4/out/target/product/panda/rootfs, wsize=1024, rsize=1024,  nolock, vers=3 rootwait earlyprintk vram=48M omapfb.vram=0:24M,1:24M'
    boot

    ######################### End of Bootargs ###############################

  • I see, then it seems to me that you have to check your NFS server configuration, because it is getting an error.

  • Hi Israel,

    I have double check there is not any kind of issue regarding NFS server configuration.

  • Hi all,

    Finally I tracked down this issue,and also found a work-around of this issue.

    By tracking all the services that starts from init.rc i found that there is a issue regarding "netd daemon"

    By disabling "service netd /system/bin/netd" from init.rc i found that my NFS boot issue resolved but i could not get any display.

    So by tracking "system/netd/NatController.cpp"  the issue was due to netd issues two ip commands.

    ========================================================

    ======================== Change =========================

    ========================================================

    int NatController::setDefaults() {

    if (runCmd(IPTABLES_PATH, "-P INPUT ACCEPT"))
    return -1;
    if (runCmd(IPTABLES_PATH, "-P OUTPUT ACCEPT"))
    return -1;
    if (runCmd(IPTABLES_PATH, "-P FORWARD DROP"))
    return -1;
    if (runCmd(IPTABLES_PATH, "-F FORWARD"))
    return -1;
    if (runCmd(IPTABLES_PATH, "-t nat -F"))
    return -1;

    // Added by BK

    // runCmd(IP_PATH, "rule flush");
    // runCmd(IP_PATH, "-6 rule flush");
    // runCmd(IP_PATH, "rule add from all lookup default prio 32767");
    // runCmd(IP_PATH, "rule add from all lookup main prio 32766");
    // runCmd(IP_PATH, "-6 rule add from all lookup default prio 32767");
    // runCmd(IP_PATH, "-6 rule add from all lookup main prio 32766");
    runCmd(IP_PATH, "route flush cache");

    natCount = 0;

    setupOemIptablesHook();
    return 0;
    }

    ========================================================

    I am using 4AI.1.4 OMAP4 Icecream Sandwich Panda Release.

    I had cross verified that this change is already done in 4AI.1.7 OMAP4 Icecream Sandwich Panda Release.

    Given below is a log of Android ICS successful boot on Pandaboard (OMAP4430) using NFS.

    ========================================================

    4276.panda4AI.1.4.nfs.full.working.log

    ========================================================

  • Hi Brijesh,

    Good to read you got it working, thanks for share the fix.