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.

DM8148-AM387x EVM Booting from NFS

Other Parts Discussed in Thread: PCF8575, TPS65910, PMP

I have followed the DM814x AM387x EZ Software Developers Guide in configuring the EVM to boot using NFS. The note following the instructions on page 3 states that "To boot from NFS, you may need to change the boot switch settings on your EVM. The DM81XX PSP U-Boot document does not mention NFS as a configuration. The options are NAND, SPI, NOR, SD, UART and EMAC.

After executing the setup.sh script, I cannot see files or directories from the target disw that were created in the targetfs directory on the host.

In a previous post with a similiar title, the poster was told to flash the ULOADERS (stage 1 and 2)  into NAND in order to be able to boot from NFS. I am very confused by this. Do I flash the SD boot loaders into NAND and then change the switch settings to boot from NAND? Is so, where is this documented?

Any assistance you can give me on this matter would be greatly appreciated.

Best regards,

Doug

 

 

  • Hi Doug,

    NFS stands for Network File System, which means that you can use root file system from your network (Ethernet/EMAC).

    To boot the DM814x EVM from Ethernet, you need to follow :

    http://processors.wiki.ti.com/index.php/TI81XX_PSP_EMAC_Boot

    You can boot from any other source (MMC/SD card, UART, NAND, NOR, SPI) and then use the NFS for root filesystem.

    For example, you can use:

    1. u-boot (1st stage and 2nd stage) from UART

    2. linux kernel (uImage) from MMC/SD card

    3. root filesystem from Ethernet (NFS)

    Best regards,
    Pavel

  • Hi Pavel,

    Thanks for your quick response and concise explanation.

    The configuration I would like to start with is the following:

    1 . U-boot (1st and 2nd stages from MMC/SD)

    2. linux kernel from (uImage) from MMC/SD) and

    3. root file system from Ethernet (NFS)

    Is this a matter of setting environment variables (bootargs??) and/or do the boot images need to be rebuilt. I am a little vague on the details on how to accomplish this.

    Any assistance you can provide would be greatly appreciated.

    Best regards,  

  • Hi Pavel,

    I am now attempting to use the setup.sh script that came with the EVM. Following the prompts, I configured it to boot from the SD card, obtain the Linux OS from the SD card and used the file system via NFS.  Have serial and ethernet connections to the EVM.  

    First I get the "No NAND Device Found!!" message and then

    Saving environment to Nand

    Erasing Nand... and then it just hangs.

    I have SW 2 set to NAND as described in the UBOOT manual. SW1 is set to boot from SD. I have tried SW1[8] in both positions to set the NAND width as suggested in other TI posts. 

    At this point I am unsure as to what to try next. Any assistance would be greatly appreciated.

    best regards,

  • Douglas,

    Douglas Robinson said:
    I configured it to boot from the SD card, obtain the Linux OS from the SD card and used the file system via NFS.

    Douglas Robinson said:
    Saving environment to Nand

    When booting from SD card, your environments are contained in the SD card, not in NAND. You should use the mksdboot.sh script to create boot-able SD card. This script will create two partitions: BOOT and ROOTFS. And the environments will be contained in the BOOT partition, see files boot.cmd and boot.scr. boot.scr is build from boot.cmd.

    If you need to use NAND for boot or data storage, this is another topic.

    BR,
    Pavel

  • Douglas,

    Douglas Robinson said:

    The configuration I would like to start with is the following:

    1 . U-boot (1st and 2nd stages from MMC/SD)

    2. linux kernel from (uImage) from MMC/SD) and

    3. root file system from Ethernet (NFS)

    For the above configuration, you need to create boot-able MMC/SD card. See {EZSDK}/docs/DM814x_EZ_Software_Developers_Guide.pdf, section 6.6 How to create an SD card

    Then you need to connect your DM814x board to your host platform (desktop PC) through ethernet switch.

    Use your MMC/SD card to boot the bootloaders and interrupt the countdown to enter the 2nd stage u-boot prompt


    Hit any key to stop autoboot:  0
    TI8148_EVM#

    Then you need to manually load the linux kernel (uImage) from the MMC/SD card to DDR memory (i.e. addr 0x80009000):

    TI8148_EVM#mmc rescan 0
    TI8148_EVM#fatload mmc 0 0x80009000 uImage
    reading uImage

    2722036 bytes read

    Then you need to configure the NFS. I am using DHCP:

    TI8148_EVM#setenv autoload no
    TI8148_EVM#dhcp
    link up on port 0, speed 100, full duplex
    BOOTP broadcast 1
    DHCP client bound to address 172.20.1.30
    TI8148_EVM#setenv bootargs 'console=ttyO0,115200n8 root=/dev/nfs nfsroot=172.20.0.170:/home/users/pbotev/targetfs,nolock rw mem=364M@0x80000000 mem=320M@0x9FC00000 vmalloc=500M notifyk.vpssm3_sva=0xBF900000 ip=dhcp noinitrd'
    TI8148_EVM#bootm 0x80009000
    ## Booting kernel from Legacy Image at 80009000 ...
       Image Name:   Linux-2.6.37
       Image Type:   ARM Linux Kernel Image (uncompressed)
       Data Size:    2721972 Bytes = 2.6 MiB
       Load Address: 80008000
       Entry Point:  80008000
       Verifying Checksum ... OK
       Loading Kernel Image ... OK
    OK

    Starting kernel ...

    Uncompressing Linux... done, booting the kernel.
    ....................................................

    Thus your root filesystem will be ~/targetfs/ created from the setup.sh script.

    BR
    Pavel

  • Hi Pavel,

     

    Thanks for your response. I followed you instructions. I created an SD per the Software Developer's Guide. The log of the session follows:

    git@git-laptop:~$ minicom -w


    Welcome to minicom 2.4

    OPTIONS: I18n
    Compiled on Jan 25 2010, 06:49:09.
    Port /dev/ttyUSB0

    Press CTRL-A Z for help on special keys

     

    U-Boot 2010.06 (Apr 30 2012 - 01:02:37)

    TI8148-GP rev 2.1

    ARM clk: 600MHz
    DDR clk: 400MHz

    DRAM:  2 GiB
    MMC:   OMAP SD/MMC: 0
    Using default environment

    The 2nd stage U-Boot will now be auto-loaded
    Please do not interrupt the countdown till TI8148_EVM prompt if 2nd stage is already flashed
    Hit any key to stop autoboot:  0
    reading u-boot.bin

    210384 bytes read
    ## Starting application at 0x80800000 ...


    U-Boot 2010.06 (Apr 30 2012 - 00:57:34)

    TI8148-GP rev 2.1

    ARM clk: 600MHz
    DDR clk: 400MHz

    I2C:   ready
    DRAM:  2 GiB
    NAND:  HW ECC BCH8 Selected
    No NAND device found!!!
    0 MiB
    MMC:   OMAP SD/MMC: 0
    *** Warning - bad CRC or NAND, using default environment

                              .:;rrr;;.                  
                        ,5#@@@@#####@@@@@@#2,            
                     ,A@@@hi;;;r5;;;;r;rrSG@@@A,         
                   r@@#i;:;s222hG;rrsrrrrrr;ri#@@r       
                 :@@hr:r;SG3ssrr2r;rrsrsrsrsrr;rh@@:     
                B@H;;rr;3Hs;rrr;sr;;rrsrsrsrsrsr;;H@B    
               @@s:rrs;5#;;rrrr;r#@H:;;rrsrsrsrsrr:s@@   
              @@;;srs&X#9;r;r;;,2@@@rrr:;;rrsrsrsrr;;@@  
             @@;;rrsrrs@MB#@@@@@###@@@@@@#rsrsrsrsrr;;@@ 
            G@r;rrsrsr;#X;SX25Ss#@@#M@#9H9rrsrsrsrsrs;r@G
            @9:srsrsrs;2@;:;;:.X@@@@@H::;rrsrsrsrsrsrr:3@
           X@;rrsrsrsrr;XAi;;:&@@#@Bs:rrsrsrsrsrsrsrsrr;@X
           @#;rsrsrsrsrr;r2ir@@@###::rrsrsrsrsrsrsrsrsr:@@
           @A:rrsrsrsrr;:2@29@@M@@@;:;rrrrsrsrsrsrsrsrs;H@
           @&;rsrsrsrr;A@@@@@@###@@@s::;:;;rrsrsrsrsrsr;G@
           @#:rrsrsrsr;G@5Hr25@@@#@@@#9XG9s:rrrrsrsrsrs:#@
           M@;rsrsrsrs;r@&#;::S@@@@@@@M@@@@Grr:;rsrsrsr;@#
           :@s;rsrsrsrr:M#Msrr;;&#@@@@@@@@@@H@@5;rsrsr;s@,
            @@:rrsrsrsr;S@rrrsr;:;r3MH@@#@M5,S@@irrsrr:@@
             @A:rrsrsrsrrrrrsrsrrr;::;@##@r:;rH@h;srr:H@ 
             ;@9:rrsrsrsrrrsrsrsrsr;,S@Hi@i:;s;MX;rr:h@; 
              r@B:rrrrsrsrsrsrsrr;;sA@#i,i@h;r;S5;r:H@r  
               ,@@r;rrrsrsrsrsrr;2BM3r:;r:G@:rrr;;r@@,   
                 B@Mr;rrrrsrsrsr@@S;;;rrr:5M;rr;rM@H     
                  .@@@i;;rrrrsrs2i;rrrrr;r@M:;i@@@.      
                    .A@@#5r;;;r;;;rrr;r:r#AsM@@H.        
                       ;&@@@@MhXS5i5SX9B@@@@G;           
                           :ihM#@@@@@##hs,               

    Net:   <ethaddr> not set. Reading from E-fuse
    Detected MACID:40:5f:c2:6f:42:2e
    cpsw
    Hit any key to stop autoboot:  0
    TI8148_EVM#mmc rescan 0
    TI8148_EVM#fatload mmc 0 0x80009000 uImage
    reading uImage

    2796536 bytes read
    TI8148_EVM#setenv autoload no
    TI8148_EVM#dhcp
    link up on port 0, speed 100, full duplex
    BOOTP broadcast 1
    DHCP client bound to address 192.168.1.108
    TI8148_EVM#setenv bootargs 'console=ttyO0,115200n8 root=/dev/nfs nfsroot=192.168.1.101:/home/git/targetfs/,nolock rw mem=364M@0x80000000 mem=320M@0x9FC00000 vmalloc=500M notifyk.vpssm3_sva=0xBF900000
    \
    > ip=dhcp noinitrd rootdelay=5'
    TI8148_EVM#bootm 0x80009000
    ## Booting kernel from Legacy Image at 80009000 ...
       Image Name:   Arago/2.6.37-psp04.04.00.01/dm81
       Image Type:   ARM Linux Kernel Image (uncompressed)
       Data Size:    2796472 Bytes = 2.7 MiB
       Load Address: 80008000
       Entry Point:  80008000
       Verifying Checksum ... OK
       Loading Kernel Image ... OK
    OK

    Starting kernel ...

    Uncompressing Linux... done, booting the kernel.
    Linux version 2.6.37 (x0029463@swubn01) (gcc version 4.3.3 (Sourcery G++ Lite 2009q1-203) ) #1 Mon Apr 30 01:00:10 IST 2012
    CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c53c7f
    CPU: VIPT nonaliasing data cache, VIPT aliasing instruction cache
    Machine: ti8148evm
    reserved size = 52428800 at 0x0
    FB: Reserving 52428800 bytes SDRAM for VRAM
    Memory policy: ECC disabled, Data cache writeback
    OMAP chip is TI8148 2.0
    SRAM: Mapped pa 0x402f1000 to va 0xfe400000 size: 0xf000
    Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 160648
    Kernel command line: console=ttyO0,115200n8 root=/dev/nfs nfsroot=192.168.1.101:/home/git/targetfs/,nolock rw mem=364M@0x80000000 mem=320M@0x9FC00000 vmalloc=500M notifyk.vpssm3_sva=0xBF900000 
    ip=dhcp noinitrd rootdelay=5
    PID hash table entries: 2048 (order: 1, 8192 bytes)
    Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
    Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
    Memory: 364MB 270MB = 634MB total
    Memory: 637324k/637324k available, 63092k reserved, 276480K highmem
    Virtual kernel memory layout:
        vector  : 0xffff0000 - 0xffff1000   (   4 kB)
        fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
        DMA     : 0xffc00000 - 0xffe00000   (   2 MB)
        vmalloc : 0xd7000000 - 0xf8000000   ( 528 MB)
        lowmem  : 0xc0000000 - 0xd6c00000   ( 364 MB)
        pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
        modules : 0xbf000000 - 0xbfe00000   (  14 MB)
          .init : 0xc0008000 - 0xc003d000   ( 212 kB)
          .text : 0xc003d000 - 0xc0549000   (5168 kB)
          .data : 0xc054a000 - 0xc0597200   ( 309 kB)
    SLUB: Genslabs=11, HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
    NR_IRQS:407
    IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
    Total of 128 interrupts on 1 active controller
    GPMC revision 6.0
    Trying to install interrupt handler for IRQ400
    Trying to install interrupt handler for IRQ401
    Trying to install interrupt handler for IRQ402
    Trying to install interrupt handler for IRQ403
    Trying to install interrupt handler for IRQ404
    Trying to install interrupt handler for IRQ405
    Trying to install interrupt handler for IRQ406
    Trying to install type control for IRQ407
    Trying to set irq flags for IRQ407
    OMAP clockevent source: GPTIMER1 at 20000000 Hz
    Console: colour dummy device 80x30
    Calibrating delay loop... 599.65 BogoMIPS (lpj=2998272)
    pid_max: default: 32768 minimum: 301
    Security Framework initialized
    Mount-cache hash table entries: 512
    CPU: Testing write buffer coherency: ok
    devtmpfs: initialized
    omap_voltage_early_init: voltage driver support not added
    regulator: core version 0.5
    regulator: dummy:
    NET: Registered protocol family 16
    omap_voltage_domain_lookup: Voltage driver init not yet happened.Faulting!
    omap_voltage_add_dev: VDD specified does not exist!
    OMAP GPIO hardware version 0.1
    OMAP GPIO hardware version 0.1
    OMAP GPIO hardware version 0.1
    OMAP GPIO hardware version 0.1
    omap_mux_init: Add partition: #1: core, flags: 4
    NOR: Can't request GPMC CS
    Debugfs: Only enabling/disabling deep sleep and wakeup timer is supported now
    registered ti81xx_vpss device
    registered ti81xx_vidout device
    registered ti81xx on-chip HDMI device
    registered ti81xx_fb device
    registered ti81xx_vin device
    ti81xx_pcie: Invoking PCI BIOS...
    ti81xx_pcie: Setting up Host Controller...
    ti81xx_pcie: Register base mapped @0xd7020000
    ti81xx_pcie: Starting PCI scan...
    PCI: bus0: Fast back to back transfers enabled
    bio: create slab <bio-0> at 0
    vgaarb: loaded
    SCSI subsystem initialized
    usbcore: registered new interface driver usbfs
    usbcore: registered new interface driver hub
    usbcore: registered new device driver usb
    USBSS revision 4ea2080b
    registerd cppi-dma Intr @ IRQ 17
    Cppi41 Init Done
    omap_i2c omap_i2c.1: bus 1 rev4.0 at 100 kHz
    pcf857x 1-0021: gpios 128..143 on a pcf8575
    regulator: VRTC: 1800 mV
    regulator: VIO: 1500 mV
    regulator: VDD1: 600 <--> 1500 mV at 1200 mV
    regulator: VDD2: 600 <--> 1500 mV at 1200 mV
    regulator: VDDCTRL: 600 <--> 1400 mV at 1200 mV
    regulator: LDO1: 1100 <--> 3300 mV at 1800 mV
    regulator: LDO2: 1100 <--> 3300 mV at 1800 mV
    regulator: LDO3: 1100 <--> 3300 mV at 3300 mV
    regulator: LDO4: 1100 <--> 3300 mV at 1800 mV
    regulator: LDO5: 1100 <--> 3300 mV at 3300 mV
    regulator: LDO6: 1100 <--> 3300 mV at 3300 mV
    regulator: LDO7: 1100 <--> 3300 mV at 3300 mV
    regulator: LDO8: 1100 <--> 3300 mV at 1800 mV
    tps65910 1-002d: No interrupt support, no core IRQ
    omap_i2c omap_i2c.3: bus 3 rev4.0 at 100 kHz
    Advanced Linux Sound Architecture Driver Version 1.0.23.
    Switching to clocksource gp timer
    musb-hdrc: version 6.0, host, debug=0
    musb-hdrc musb-hdrc.0: dma type: dma-cppi41
    MUSB controller-0 revision 4ea20800
    musb-hdrc musb-hdrc.0: MUSB HDRC host driver
    musb-hdrc musb-hdrc.0: new USB bus registered, assigned bus number 1
    usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
    usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    usb usb1: Product: MUSB HDRC host driver
    usb usb1: Manufacturer: Linux 2.6.37 musb-hcd
    usb usb1: SerialNumber: musb-hdrc.0
    hub 1-0:1.0: USB hub found
    hub 1-0:1.0: 1 port detected
    musb-hdrc musb-hdrc.0: USB Host mode controller at d701e000 using DMA, IRQ 18
    musb-hdrc musb-hdrc.1: dma type: dma-cppi41
    MUSB controller-1 revision 4ea20800
    musb-hdrc musb-hdrc.1: MUSB HDRC host driver
    musb-hdrc musb-hdrc.1: new USB bus registered, assigned bus number 2
    usb usb2: New USB device found, idVendor=1d6b, idProduct=0002
    usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    usb usb2: Product: MUSB HDRC host driver
    usb usb2: Manufacturer: Linux 2.6.37 musb-hcd
    usb usb2: SerialNumber: musb-hdrc.1
    hub 2-0:1.0: USB hub found
    hub 2-0:1.0: 1 port detected
    musb-hdrc musb-hdrc.1: USB Host mode controller at d7026800 using DMA, IRQ 19
    NET: Registered protocol family 2
    IP route cache hash table entries: 16384 (order: 4, 65536 bytes)
    TCP established hash table entries: 65536 (order: 7, 524288 bytes)
    TCP bind hash table entries: 65536 (order: 6, 262144 bytes)
    TCP: Hash tables configured (established 65536 bind 65536)
    TCP reno registered
    UDP hash table entries: 256 (order: 0, 4096 bytes)
    UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
    NET: Registered protocol family 1
    RPC: Registered udp transport module.
    RPC: Registered tcp transport module.
    RPC: Registered tcp NFSv4.1 backchannel transport module.
    NetWinder Floating Point Emulator V0.97 (double precision)
    PMU: registered new PMU device of type 0
    omap-iommu omap-iommu.0: ducati registered
    omap-iommu omap-iommu.1: sys registered
    highmem bounce pool size: 64 pages
    JFFS2 version 2.2. (NAND) �© 2001-2006 Red Hat, Inc.
    msgmni has been set to 704
    io scheduler noop registered
    io scheduler deadline registered
    io scheduler cfq registered (default)
    Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
    omap_uart.0: ttyO0 at MMIO 0x48020000 (irq = 72) is a OMAP UART0
    console [ttyO0] enabled
    omap_uart.1: ttyO1 at MMIO 0x48022000 (irq = 73) is a OMAP UART1
    omap_uart.2: ttyO2 at MMIO 0x48024000 (irq = 74) is a OMAP UART2
    omap_uart.3: ttyO3 at MMIO 0x481a6000 (irq = 44) is a OMAP UART3
    omap_uart.4: ttyO4 at MMIO 0x481a8000 (irq = 45) is a OMAP UART4
    omap_uart.5: ttyO5 at MMIO 0x481aa000 (irq = 46) is a OMAP UART5
    brd: module loaded
    loop: module loaded
    ahci ahci.0: forcing PORTS_IMPL to 0x1
    ahci ahci.0: AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl platform mode
    ahci ahci.0: flags: ncq sntf pm led clo only pmp pio slum part ccc apst
    scsi0 : ahci_platform
    ata1: SATA max UDMA/133 mmio [mem 0x4a140000-0x4a150fff] port 0x100 irq 16
    omap2-nand driver initializing
    No NAND device found.
    No NAND device found.
    davinci_mdio davinci_mdio.0: davinci mdio revision 1.6
    davinci_mdio davinci_mdio.0: detected phy mask fffffffc
    davinci_mdio.0: probed
    davinci_mdio davinci_mdio.0: phy[0]: device 0:00, driver unknown
    davinci_mdio davinci_mdio.0: phy[1]: device 0:01, driver unknown
    CAN device driver interface
    CAN bus driver for Bosch D_CAN controller 1.0
    d_can d_can: d_can device registered (irq=52, irq_obj=53)
    usbcore: registered new interface driver cdc_ether
    usbcore: registered new interface driver dm9601
    usbcore: registered new interface driver cdc_acm
    cdc_acm: v0.26:USB Abstract Control Model driver for USB modems and ISDN adapters
    Initializing USB Mass Storage driver...
    usbcore: registered new interface driver usb-storage
    USB Mass Storage support registered.
    mice: PS/2 mouse device common for all mice
    ata1: SATA link down (SStatus 0 SControl 300)
    qt602240_ts 1-004a: Family ID: 128 Variant ID: 1 Version: 22 Build: 171
    qt602240_ts 1-004a: Matrix X Size: 18 Matrix Y Size: 12 Object Num: 17
    input: AT42QT602240/ATMXT224 Touchscreen as /devices/platform/omap/omap_i2c.1/i2c-1/1-004a/input/input0
    omap_rtc omap_rtc: rtc core: registered omap_rtc as rtc0
    i2c /dev entries driver
    Linux video capture interface: v2.00
    usbcore: registered new interface driver uvcvideo
    USB Video Class driver (v1.0.0)
    OMAP Watchdog Timer Rev 0x00: initial timeout 60 sec
    usbcore: registered new interface driver usbhid
    usbhid: USB HID core driver
    notify_init : notify drivercreated  for  remote proc id 2 at physical Address 0xbf900000
    usbcore: registered new interface driver snd-usb-audio
    asoc: tlv320aic3x-hifi <-> davinci-mcasp.2 mapping ok
    ALSA device list:
      #0: TI81XX EVM
    nf_conntrack version 0.5.0 (9958 buckets, 39832 max)
    ip_tables: (C) 2000-2006 Netfilter Core Team
    TCP cubic registered
    NET: Registered protocol family 17
    can: controller area network core (rev 20090105 abi 8)
    NET: Registered protocol family 29
    can: raw protocol (rev 20090105)
    can: broadcast manager protocol (rev 20090105 t)
    Registering the dns_resolver key type
    VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
    omap_voltage_late_init: Voltage driver support not added
    Power Management for TI81XX.
    Detected MACID=40:5f:c2:6f:42:2e
    omap_rtc omap_rtc: setting system clock to 2000-01-01 00:00:00 UTC (946684800)
    mmc1: new high speed SDHC card at address 1234
    mmcblk0: mmc1:1234 SA08G 7.21 GiB
     mmcblk0: p1 p2

    CPSW phy found : id is : 0x4dd074

    CPSW phy found : id is : 0x4dd074
    Sending DHCP requests .
    PHY: 0:01 - Link is Up - 0/Half
    PHY: 0:01 - Link is Down
    PHY: 0:00 - Link is Up - 100/Full
    ., OK
    IP-Config: Got DHCP answer from 192.168.1.1, my address is 192.168.1.108
    IP-Config: Complete:
         device=eth0, addr=192.168.1.108, mask=255.255.255.0, gw=192.168.1.1,
         host=192.168.1.108, domain=, nis-domain=(none),
         bootserver=192.168.1.1, rootserver=192.168.1.101, rootpath=
    Waiting 5sec before mounting root device...
    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; here are the available partitions:
    b300         7561216 mmcblk0  driver: mmcblk
      b301           40131 mmcblk0p1 00000000-0000-0000-0000-000000000mmcblk0p1
      b302         7518420 mmcblk0p2 00000000-0000-0000-0000-000000000mmcblk0p2
    Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)
    Backtrace:
    [<c004bbd0>] (dump_backtrace+0x0/0x110) from [<c03ef62c>] (dump_stack+0x18/0x1c)
     r7:d5c28000 r6:00000000 r5:c002fe9c r4:c0597a10
    [<c03ef614>] (dump_stack+0x0/0x1c) from [<c03ef690>] (panic+0x60/0x17c)
    [<c03ef630>] (panic+0x0/0x17c) from [<c00092b4>] (mount_block_root+0x1e0/0x220)
     r3:00000000 r2:00000000 r1:d643bf58 r0:c04c2c5c
    [<c00090d4>] (mount_block_root+0x0/0x220) from [<c00093a0>] (mount_root+0xac/0xcc)
    [<c00092f4>] (mount_root+0x0/0xcc) from [<c0009530>] (prepare_namespace+0x170/0x1d4)
     r4:c0597264
    [<c00093c0>] (prepare_namespace+0x0/0x1d4) from [<c00087c4>] (kernel_init+0x114/0x154)
     r5:c00086b0 r4:c0597200
    [<c00086b0>] (kernel_init+0x0/0x154) from [<c00728d4>] (do_exit+0x0/0x5e4)
     r5:c00086b0 r4:00000000

    As you can see from the log, I was Unable to mount root fs via NFS. I am also using DHCP and have the host computer conneced to the EVM via ethernet (via a linksys router) and a serial port. I also noticed that the boot.cmd file that was created on the boot partition of SD card contains the following:

    fatload mmc 0 0x81000000 ti_logo.bmp
    bmp display 0x81000000
    setenv bootargs 'console=ttyO0,115200n8 rootwait root=/dev/mmcblk0p2 rw mem=364M@0x80000000 324M@0x9F900000 notifyk.vpssm3_sva=0xBF900000 ip=off noinitrd'
    fatload mmc 0 0x80009000 uImage
    bootm 0x80009000

    I added the 5 second wait to the boot args from a suggestion from another  poster but it did not seem to matter.

    Any ideas on what the issue is? Any assistance  with this would be greatly appreciated.

    Best regards

  • Douglas,

    Douglas Robinson said:
    TI8148_EVM#setenv bootargs 'console=ttyO0,115200n8 root=/dev/nfs nfsroot=192.168.1.101:/home/git/targetfs/,nolock rw mem=364M@0x80000000 mem=320M@0x9FC00000 vmalloc=500M notifyk.vpssm3_sva=0xBF900000
    \
    > ip=dhcp noinitrd rootdelay=5'

    Remove this slash "nfsroot=192.168.1.101:/home/git/targetfs/,nolock rw" 

    The correct format is: "nfsroot=192.168.1.101:/home/git/targetfs,nolock rw"

    Best regards,
    Pavel

  • Hi Pavel,

    Thanks once again for your response. You were correct, I had an extra /. So I elimnated that and then got the "syslink: disagrees about version of symbol module_layout" error. After searching through the forum I corrected this error by performed the following steps:

    1. make clean

    2. make all

    3. make install

    4. Re-created the SD disk using the instructions from section 6.6 of the Software Developer's manual.

    5. Re-ran the ./set.sh script to recreate the targetfs and /tftpboot directories on the host.

    6. Performed the steps you defined previously..

    The EVM successfully booted and was able to use the filesystem via NFS (home/git/targetfs). .......Great!!!

    However, after power down I restarted the EVM and it appeared to use the bootargs from  the /media/mmcblk0p1/boot.cmd which are as follows:

    setenv bootargs 'console=ttyO0,115200n8 rootwait root=/dev/mmcblk0p2 rw mem=256M earlyprint notifyk.vpssm3_sva=0xBF900000 vram=50M ti814xfb.vram=0:16M,1:1:16M,2:6M   ip=off noinitrd'

    fatload mmc 0 0x80009000 uImage

    bootm 0x80009000

    How do I make the changes you specified in your previous post permanent? Do I have to perform those steps each time I reboot the EVM? Can I modify the boot.cmd file on the SD card with these changes?

    Any assistance on this matter would be greatly appreciated.

    Best regards and thanks for your continued support.

  • Douglas,

    Douglas Robinson said:
    How do I make the changes you specified in your previous post permanent?

    You can use the NAND flash to store/save parameters and boot arguments with the setenv and saveenv commands.

    See the below wiki pages for more info:

    http://processors.wiki.ti.com/index.php/TI81XX_PSP_UBOOT_User_Guide#U-Boot_Network_configuration

    http://processors.wiki.ti.com/index.php/TI81XX_PSP_UBOOT_User_Guide#Environment_Settings_for_NFS_Filesystem

    http://processors.wiki.ti.com/index.php/TI81XX_PSP_User_Guide#Boot_over_Network_.28Ethernet.29_2

    Best regards,
    Pavel