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.

Linux/AM3351: Flashing Uboot-kernel on EMMC & uSD card

Part Number: AM3351
Other Parts Discussed in Thread: UNIFLASH

Tool/software: Linux

Hi,

I have a AM3351 custom board. I have made changes in U-boot and Kernel for my custom board. Also, flashed U-boot through UART. In U-boot, I am able to detect both EMMC and uSD card on my board. As next step, I am trying to flash u-boot, kernel, file system through Uniflash using EMAC1(in boot sequence). However, the flashing is not progressing beyond 0%. Any leads on this issue?

Also, i have a uSD card connector on the board. Can someone direct me to a relevant TI wiki link on how to partition and flash the code on uSD card for it to be bootable. Thank you!

  • Hi,

    After I changed the file names from u-boot.img to u-boot-restore.img and u-boot-spl.bin to u-boot-spl-restore.bin, I was able to proceed with the flash on Uniflash. However, it got stuck somewhere after proceeding further. Attaching UART logs. Any leads on the issue? 

    Thank you!

    U-Boot SPL 2018.01-00228-g4579b130f0-dirty (Jan 14 2019 - 20:59:36)
    Trying to boot from eth device
    
    ** Unable to use mmc 0:1 for loading the env **
    Using default environment
    
    <ethaddr> not set. Validating first E-fuse MAC
    cpsw, usb_ether
    Error: usb_ether address not set.
    
    cpsw Waiting for PHY auto negotiation to complete.... done
    link up on port 0, speed 100, full duplex
    BOOTP broadcast 1
    BOOTP broadcast 2
    BOOTP broadcast 3
    BOOTP broadcast 4
    BOOTP broadcast 5
    DHCP client bound to address 192.168.2.6 (3767 ms)
    Using cpsw device
    TFTP from server 192.168.2.1; our IP address is 192.168.2.6
    Filename 'u-boot-restore.img'.
    Load address: 0x82000000
    Loading: *#################################################################
    	 ###############################################
    	 622.1 KiB/s
    done
    Bytes transferred = 570860 (8b5ec hex)
    
    
    U-Boot 2018.01-00228-g4579b130f0-dirty (Jan 14 2019 - 20:59:36 +0530)
    
    CPU  : AM335X-GP rev 2.1
    Model: TI AM335x EVM
    I2C:   ready
    DRAM:  256 MiB
    MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1
    
    ** Unable to use mmc 0:1 for loading the env **
    Using default environment
    
    <ethaddr> not set. Validating first E-fuse MAC
    Net:   cpsw, usb_ether
    Hit any key to stop autoboot:  2  1  0 
    switch to partitions #0, OK
    mmc0 is current device
    SD/MMC found on device 0
    Failed to mount ext2 filesystem...
    ** Unrecognized filesystem type **
    ** Unrecognized filesystem type **
    switch to partitions #0, OK
    mmc0 is current device
    Failed to mount ext2 filesystem...
    ** Unrecognized filesystem type **
    switch to partitions #0, OK
    mmc0 is current device
    SD/MMC found on device 0
    ** Invalid partition 2 **
    switch to partitions #0, OK
    mmc1(part 0) is current device
    ** No partition table - mmc 1 **
    switch to partitions #0, OK
    mmc1(part 0) is current device
    SD/MMC found on device 1
    ** No partition table - mmc 1 **
    starting USB...
    USB0:   MUSB host is not registered
    Port not available.
    link up on port 0, speed 100, full duplex
    BOOTP broadcast 1
    BOOTP broadcast 2
    BOOTP broadcast 3
    BOOTP broadcast 4
    BOOTP broadcast 5
    DHCP client bound to address 192.168.2.6 (3766 ms)
    Using cpsw device
    TFTP from server 192.168.2.1; our IP address is 192.168.2.6
    Filename 'zImage'.
    Load address: 0x82000000
    Loading: *#################################################################
    	 #################################################################
    	 #################################################################
    	 #################################################################
    	 ##
    	 1.7 MiB/s
    done
    Bytes transferred = 3842560 (3aa200 hex)
    missing environment variable: pxeuuid
    Retrieving file: pxelinux.cfg/01-98-5d-ad-e1-ed-ed
    link up on port 0, speed 100, full duplex
    Using cpsw device
    TFTP from server 192.168.2.1; our IP address is 192.168.2.6
    Filename 'pxelinux.cfg/01-98-5d-ad-e1-ed-ed'.
    Load address: 0x80100000
    Loading: *
    TFTP error: 'File not found or No Access' (1)
    Not retrying...
    Retrieving file: pxelinux.cfg/C0A80206
    link up on port 0, speed 100, full duplex
    Using cpsw device
    TFTP from server 192.168.2.1; our IP address is 192.168.2.6
    Filename 'pxelinux.cfg/C0A80206'.
    Load address: 0x80100000
    Loading: *
    TFTP error: 'File not found or No Access' (1)
    Not retrying...
    Retrieving file: pxelinux.cfg/C0A8020
    link up on port 0, speed 100, full duplex
    Using cpsw device
    TFTP from server 192.168.2.1; our IP address is 192.168.2.6
    Filename 'pxelinux.cfg/C0A8020'.
    Load address: 0x80100000
    Loading: *
    TFTP error: 'File not found or No Access' (1)
    Not retrying...
    Retrieving file: pxelinux.cfg/C0A802
    link up on port 0, speed 100, full duplex
    Using cpsw device
    TFTP from server 192.168.2.1; our IP address is 192.168.2.6
    Filename 'pxelinux.cfg/C0A802'.
    Load address: 0x80100000
    Loading: *
    TFTP error: 'File not found or No Access' (1)
    Not retrying...
    Retrieving file: pxelinux.cfg/C0A80
    link up on port 0, speed 100, full duplex
    Using cpsw device
    TFTP from server 192.168.2.1; our IP address is 192.168.2.6
    Filename 'pxelinux.cfg/C0A80'.
    Load address: 0x80100000
    Loading: *
    TFTP error: 'File not found or No Access' (1)
    Not retrying...
    Retrieving file: pxelinux.cfg/C0A8
    link up on port 0, speed 100, full duplex
    Using cpsw device
    TFTP from server 192.168.2.1; our IP address is 192.168.2.6
    Filename 'pxelinux.cfg/C0A8'.
    Load address: 0x80100000
    Loading: *
    TFTP error: 'File not found or No Access' (1)
    Not retrying...
    Retrieving file: pxelinux.cfg/C0A
    link up on port 0, speed 100, full duplex
    Using cpsw device
    TFTP from server 192.168.2.1; our IP address is 192.168.2.6
    Filename 'pxelinux.cfg/C0A'.
    Load address: 0x80100000
    Loading: *
    TFTP error: 'File not found or No Access' (1)
    Not retrying...
    Retrieving file: pxelinux.cfg/C0
    link up on port 0, speed 100, full duplex
    Using cpsw device
    TFTP from server 192.168.2.1; our IP address is 192.168.2.6
    Filename 'pxelinux.cfg/C0'.
    Load address: 0x80100000
    Loading: *
    TFTP error: 'File not found or No Access' (1)
    Not retrying...
    Retrieving file: pxelinux.cfg/C
    link up on port 0, speed 100, full duplex
    Using cpsw device
    TFTP from server 192.168.2.1; our IP address is 192.168.2.6
    Filename 'pxelinux.cfg/C'.
    Load address: 0x80100000
    Loading: *
    TFTP error: 'File not found or No Access' (1)
    Not retrying...
    Retrieving file: pxelinux.cfg/default-arm-am33xx
    link up on port 0, speed 100, full duplex
    Using cpsw device
    TFTP from server 192.168.2.1; our IP address is 192.168.2.6
    Filename 'pxelinux.cfg/default-arm-am33xx'.
    Load address: 0x80100000
    Loading: *
    TFTP error: 'File not found or No Access' (1)
    Not retrying...
    Retrieving file: pxelinux.cfg/default-arm
    link up on port 0, speed 100, full duplex
    Using cpsw device
    TFTP from server 192.168.2.1; our IP address is 192.168.2.6
    Filename 'pxelinux.cfg/default-arm'.
    Load address: 0x80100000
    Loading: *
    TFTP error: 'File not found or No Access' (1)
    Not retrying...
    Retrieving file: pxelinux.cfg/default
    link up on port 0, speed 100, full duplex
    Using cpsw device
    TFTP from server 192.168.2.1; our IP address is 192.168.2.6
    Filename 'pxelinux.cfg/default'.
    Load address: 0x80100000
    Loading: *
    TFTP error: 'File not found or No Access' (1)
    Not retrying...
    Config file not found
    starting USB...
    USB0:   MUSB host is not registered
    Port not available.
    link up on port 0, speed 100, full duplex
    BOOTP broadcast 1
    DHCP client bound to address 192.168.2.6 (9 ms)
    Using cpsw device
    TFTP from server 192.168.2.1; our IP address is 192.168.2.6
    Filename 'zImage'.
    Load address: 0x80000000
    Loading: *#################################################################
    	 #################################################################
    	 #################################################################
    	 #################################################################
    	 ##
    	 1.4 MiB/s
    done
    Bytes transferred = 3842560 (3aa200 hex)
    ## Executing script at 80000000
    Wrong image format for "source" command
    link up on port 0, speed 100, full duplex
    BOOTP broadcast 1
    DHCP client bound to address 192.168.2.6 (9 ms)
    Using cpsw device
    TFTP from server 192.168.2.1; our IP address is 192.168.2.6
    Filename 'zImage'.
    Load address: 0x82000000
    Loading: *#################################################################
    	 #################################################################
    	 #################################################################
    	 #################################################################
    	 ##
    	 1.4 MiB/s
    done
    Bytes transferred = 3842560 (3aa200 hex)
    link up on port 0, speed 100, full duplex
    Using cpsw device
    TFTP from server 192.168.2.1; our IP address is 192.168.2.6
    Filename 'dtb/am335x-boneblack.dtb'.
    Load address: 0x88000000
    Loading: *###
    	 1.2 MiB/s
    done
    Bytes transferred = 34001 (84d1 hex)
    ## Starting EFI application at 82000000 ...
    Scanning disks on usb...
    Scanning disks on mmc...
    MMC Device 2 not found
    MMC Device 3 not found
    Found 7 disks
    EFI stub: Booting Linux Kernel...
    
    EFI stub: Using DTB from configuration table
    
    EFI stub: Exiting boot services and installing virtual address map...

  • Apurva,

    Based on the log, I believe you need to modify your U-Boot bootcmd to do boot from the network. It seems the code is trying several paths that never fully succeed.

    Once you get to the kernel, how do you have it configured to do the flashing? All Uniflash does is serve files and try to track progress. Your application really has to be configured to do the necessary flashing operations.

    For setting up the SD Card, I would use the sdcard-create.sh script in the /bin folder of the SDK as a reference.

    I hope this is helpful to you.

  • Hi Ron,

    Thanks for your response.

    RonB said:
    Based on the log, I believe you need to modify your U-Boot bootcmd to do boot from the network. It seems the code is trying several paths that never fully succeed.

    Is this part of /include/configs/am335x_evm.h file? What changes should I make for network boot?

    RonB said:
    Once you get to the kernel, how do you have it configured to do the flashing? All Uniflash does is serve files and try to track progress. Your application really has to be configured to do the necessary flashing operations.

    I only made changes in am335x_boneblack.dts file relevant for my custom board. Apart from this, I haven't made any change to support flashing operation in kernel. Kindly point me to a relevant TI wiki

    RonB said:
    For setting up the SD Card, I would use the sdcard-create.sh script in the /bin folder of the SDK as a reference.

    I am new to this. Kindly point me to a relevant TI wiki on how to use this script.

    Thank you very much!

  • Hi Ron,

    Also, please direct me to patches which enable seamless communication between Uniflash and target.

    Thanks
  • Apurva,

    I'm sorry, we do not provide patches as we consider this part your system design as many steps are dependent on your system goals.

    For the SD Card script, our documentation is here:

    software-dl.ti.com/.../Overview_Getting_Started_Guide.html

    This will tell you how to run the script to create an SD card from a computer. You can use this script as a guide on what needs to be done to properly set up an eMMC as well. Basically, you need to partition and format the drive then copy files over. The script will provide exact commands and ordering that should be helpful.

    Since you have made no other changes to Linux, you do not have a valid filesystem for Linux to mount as typically the SD Card or NFS is used to mount a filesystem. You can also use an initramfs which is common for flashing.

    Please see:

    processors.wiki.ti.com/.../Sitara_Linux_Program_the_eMMC_on_Beaglebone_Black

    This guide is a bit out of date and I am in the process of updating this document, but it should provide a good overview of the overall process you'll need to get through. You can ignore the patches that it is referring to as they are not longer needed for recent SDKs.

    The commands referenced below are the correct way to TFTP boot from the kernel once you have the filesystem issue resolved. These can all be run from a U-Boot prompt and should get you to a kernel:

    dhcp
    run findfdt
    tftp ${fdtaddr} ${fdtfile}
    bootz ${loadaddr} - ${fdtaddr}

    I hope this is helpful to you.
  • Hi Ron,

    I am not able to flash the first partition on SD card. I am getting this error while flashing SD card on linux:

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

    Copying files now... will take minutes

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

    Copying boot partition
    xz: /home/apurva/minnie/ti-processor-sdk-linux-am335x-evm-05.00.00.15/board-support/u-boot-2018.01+gitAUTOINC+131dc82830-g131dc82830/boot_partition.tar.xz: File format not recognized
    xz: (stdin): File format not recognized
    tar: Child returned status 1
    tar: Error is not recoverable: exiting now
    cp: cannot stat '/home/apurva/minnie/ti-processor-sdk-linux-am335x-evm-05.00.00.15/bin/tmp/*': No such file or directory


    Copying rootfs System partition

    Syncing...
    ls: cannot access '/zImage': No such file or directory
    Kernel image copied
    am335x-boneblack.dtb copied

    Un-mount the partitions

    Remove created temp directories

    Operation Finished

    Kindly assist. Thank you!

  • Apurva,

    I'm sorry, I can't follow what you are doing above. It looks like you are running these commands from a script? Could you please provide a little more insight into the script and what you expect it to do?

    Thank you.
  • Hi Ron,

    This is create-sdcard.sh script in /bin folder of the SDK
  • Apurva,

    OK, thanks for clarifying. Could you please provide a full capture of running this script. I need to see how you've set it up and the options you are passing it to see where it is going wrong.

    Also note that this script is developed for programming a SD card from a PC and has not been tested for this use case. It may very well need some adaptations to use it on the target to program an eMMC.
  • Hi Ron,

    I am trying to program SD card from a PC itself. By flashing SD card, the goal is to boot AM335 directly through SD card. Please find logs below:

    ################################################################################
    
    This script will create a bootable SD card from custom or pre-built binaries.
    
    The script must be run with root permissions and from the bin directory of
    the SDK
    
    Example:
     $ sudo ./create-sdcard.sh
    
    Formatting can be skipped if the SD card is already formatted and
    partitioned properly.
    
    ################################################################################
    
    
    Available Drives to write images to: 
    
    #  major   minor    size   name 
    1:   8        0   15558144 sda
     
    Enter Device Number or n to exit: 1
     
    sda was selected
    
    /dev/sda is an sdx device
    Current size of sda1 71680 bytes
    Current size of sda2 15469568 bytes
    
    ################################################################################
    
    	Select 2 partitions if only need boot and rootfs (most users).
    	Select 3 partitions if need SDK & other content on SD card.  This is
            usually used by device manufacturers with access to partition tarballs.
    
    	****WARNING**** continuing will erase all data on sda
    
    ################################################################################
    
    Number of partitions needed [2/3] : 2
    
     
    Now partitioning sda with 2 partitions...
     
    
    ################################################################################
    
    		Now making 2 partitions
    
    ################################################################################
    
    1024+0 records in
    1024+0 records out
    1048576 bytes (1.0 MB, 1.0 MiB) copied, 1.92194 s, 546 kB/s
    DISK SIZE - 15931539456 bytes
    
    ################################################################################
    
    		Partitioning Boot
    
    ################################################################################
    mkfs.fat 4.1 (2017-01-24)
    mkfs.fat: warning - lowercase labels might not work properly with DOS or Windows
    
    ################################################################################
    
    		Partitioning rootfs
    
    ################################################################################
    mke2fs 1.44.1 (24-Mar-2018)
    /dev/sda2 contains a ext3 file system labelled 'rootfs'
    	last mounted on Fri Jan 18 22:10:56 2019
    Proceed anyway? (y,N) y
    Creating filesystem with 3867392 4k blocks and 967232 inodes
    Filesystem UUID: e41e0352-9397-4ea4-94f9-77e9fe797b50
    Superblock backups stored on blocks: 
    	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208
    
    Allocating group tables: done                            
    Writing inode tables: done                            
    Creating journal (16384 blocks): done
    Writing superblocks and filesystem accounting information: done   
    
    
    
    ################################################################################
    
       Partitioning is now done
       Continue to install filesystem or select 'n' to safe exit
    
       **Warning** Continuing will erase files any files in the partitions
    
    ################################################################################
    
    
    Would you like to continue? [y/n] : y
    
     
     
    Mount the partitions 
     
    Emptying partitions 
     
    
    Syncing....
    
    ################################################################################
    
    	Choose file path to install from
    
    	1 ) Install pre-built images from SDK
    	2 ) Enter in custom boot and rootfs file paths
    
    ################################################################################
    
    Choose now [1/2] : 2
    
     
    
    ################################################################################
    
      For U-boot and MLO
    
      If files are located in Tarball write complete path including the file name.
          e.x. $:  /home/user/MyCustomTars/boot.tar.xz
    
      If files are located in a directory write the directory path
          e.x. $: /ti-sdk/board-support/prebuilt-images/
    
      NOTE: Not all platforms will have an MLO file and this file can
            be ignored for platforms that do not support an MLO.
    
      Update: The proper location for the kernel image and device tree
              files have moved from the boot partition to the root filesystem.
    
    ################################################################################
    
    Enter path for Boot Partition : /home/apurva/minnie/ti-processor-sdk-linux-am335x-evm-05.00.00.15/board-support/u-boot-2018.01+gitAUTOINC+131dc82830-g131dc82830/boot_partition.tar.xz
    
    File exists
    
    
    
    ################################################################################
    
       For Kernel Image and Device Trees files
    
        What would you like to do?
         1) Reuse kernel image and device tree files found in the selected rootfs.
         2) Provide a directory that contains the kernel image and device tree files
            to be used.
    
    ################################################################################
    
    Choose option 1 or 2 : 2
    
     
    Choosing a directory that contains the kernel files to be used
     
    ################################################################################
    
      For Kernel Image and Device Trees files
    
      The kernel image name should contain the image type uImage or zImage depending
      on which format is used.
    
      The device tree files must end with .dtb
          e.g    am335x-evm.dtb am43x-gp-evm.dtb
    
    
    ################################################################################
    
    Enter path for kernel image and device tree files : /home/apurva/minnie/ti-processor-sdk-linux-am335x-evm-05.00.00.15/board-support/linux-4.14.40+gitAUTOINC+4796173fc5-g4796173fc5/arch/arm/boot/
    
    Directory exists
    
    This directory contains:
    Image  Makefile  am335x-boneblack.dtb  bootp  compressed  dts  install.sh  sd_path  zImage
    
    Is this correct? [y/n] : y
    
    
    ################################################################################
    
       For Rootfs partition
    
       If files are located in Tarball write complete path including the file name.
          e.x. $:  /home/user/MyCustomTars/rootfs.tar.xz
    
      If files are located in a directory write the directory path
          e.x. $: /ti-sdk/targetNFS/
    
    ################################################################################
    
    Enter path for Rootfs Partition : /home/apurva/minnie/ti-processor-sdk-linux-am335x-evm-05.00.00.15/filesystem/tisdk-rootfs-image-am335x-evm.tar.xz
    
    File exists
    
    
    ################################################################################
    
    	Copying files now... will take minutes
    
    ################################################################################
    
    Copying boot partition
    xz: /home/apurva/minnie/ti-processor-sdk-linux-am335x-evm-05.00.00.15/board-support/u-boot-2018.01+gitAUTOINC+131dc82830-g131dc82830/boot_partition.tar.xz: File format not recognized
    xz: (stdin): File format not recognized
    tar: Child returned status 1                                                                                                                  
    tar: Error is not recoverable: exiting now
    cp: cannot stat '/home/apurva/minnie/ti-processor-sdk-linux-am335x-evm-05.00.00.15/bin/tmp/*': No such file or directory
    
    
    Copying rootfs System partition
                                                                                                                                                  
    
    Syncing...
    ls: cannot access '/zImage': No such file or directory
    Kernel image copied
    am335x-boneblack.dtb copied
     
    Un-mount the partitions 
     
    Remove created temp directories 
     
    Operation Finished
    

     

  • Apurva,

    Thank you for the detailed log. Just to clarify, you are now trying to create a bootable SD Card from a Linux PC? I am assuming this is true...

    I went through this myself just now and was not able to reproduce what you are seeing. Here's what you see as the first error:

    Apurva Ankleshwaria89 said:
    ################################################################################ Copying files now... will take minutes ################################################################################ Copying boot partition xz: /home/apurva/minnie/ti-processor-sdk-linux-am335x-evm-05.00.00.15/board-support/u-boot-2018.01+gitAUTOINC+131dc82830-g131dc82830/boot_partition.tar.xz: File format not recognized xz: (stdin): File format not recognized tar: Child returned status 1 tar: Error is not recoverable: exiting now cp: cannot stat '/home/apurva/minnie/ti-processor-sdk-linux-am335x-evm-05.00.00.15/bin/tmp/*': No such file or directory

    Here's what I see:

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

    Copying files now... will take minutes

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

    Copying boot partition
    Written 93%

    Copying rootfs System partition
    Written 100%

    Syncing...

    Un-mount the partitions

    Remove created temp directories

    Operation Finished


    As you can see, the difference seems to be in the tar command to decompress the boot partition. Here's the command I used to create mine:

    tar cfJ bootpart.tar.xz MLO u-boot.img

    Maybe you can compare it to the one you used or try this one?

    I hope this helps.

  • Hi Ron,

    I was able to flash the SD card this time with the change in tar command you mentioned. Thanks for providing that.

    Once flashed, I am trying to boot my board through SD card(MMC0 is part of boot sequence) and I am getting following logs on UART. The kernel is hanged at the last line. Kindly check and let me know your thoughts. Thank you!!

    U-Boot 2018.01 (Jan 18 2019 - 21:43:24 +0530)
    
    CPU  : AM335X-GP rev 2.1
    Model: TI AM335x EVM
    I2C:   ready
    DRAM:  256 MiB
    MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1
    *** Warning - bad CRC, using default environment
    
    <ethaddr> not set. Validating first E-fuse MAC
    Net:   cpsw, usb_ether
    Hit any key to stop autoboot:  2  1  0 
    switch to partitions #0, OK
    mmc0 is current device
    SD/MMC found on device 0
    ** Unable to read file boot.scr **
    reading uEnv.txt
    422 bytes read in 3 ms (136.7 KiB/s)
    Loaded env from uEnv.txt
    Importing environment from mmc0 ...
    Running uenvcmd ...
    reading zImage
    3842560 bytes read in 490 ms (7.5 MiB/s)
    reading am335x-boneblack.dtb
    34001 bytes read in 8 ms (4.1 MiB/s)
    ## Error: "mmcargs" not defined
    ## Flattened Device Tree blob at 80f80000
       Booting using the fdt blob at 0x80f80000
       Loading Device Tree to 8df15000, end 8df204d0 ... OK
    
    Starting kernel ...
    
    [    0.000000] Booting Linux on physical CPU 0x0
    [    0.000000] Linux version 4.14.40-g4796173fc5 (apurva@ubuntu) (gcc version 7.2.1 20171011 (Linaro GCC 7.2-2017.11)) #1 PREEMPT Thu Jan 17 01:20:02 IST 2019
    [    0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c5387d
    [    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
    [    0.000000] OF: fdt: Machine model: TI AM335x BeagleBone Black
    [    0.000000] Memory policy: Data cache writeback
    [    0.000000] efi: Getting EFI parameters from FDT:
    [    0.000000] efi: UEFI not found.
    [    0.000000] cma: Reserved 48 MiB at 0x8a800000
    [    0.000000] CPU: All CPU(s) started in SVC mode.
    [    0.000000] AM335X ES2.1 (neon)
    [    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 64960
    [    0.000000] Kernel command line: console=ttyO0,115200n8 root= rootfstype=ext4 rootwait
    [    0.000000] PID hash table entries: 1024 (order: 0, 4096 bytes)
    [    0.000000] Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
    [    0.000000] Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
    [    0.000000] Memory: 197288K/262144K available (8192K kernel code, 318K rwdata, 2428K rodata, 1024K init, 275K bss, 15704K reserved, 49152K cma-reserved, 0K highmem)
    [    0.000000] Virtual kernel memory layout:
    [    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    [    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
    [    0.000000]     vmalloc : 0xd0800000 - 0xff800000   ( 752 MB)
    [    0.000000]     lowmem  : 0xc0000000 - 0xd0000000   ( 256 MB)
    [    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
    [    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
    [    0.000000]       .text : 0xc0008000 - 0xc0900000   (9184 kB)
    [    0.000000]       .init : 0xc0c00000 - 0xc0d00000   (1024 kB)
    [    0.000000]       .data : 0xc0d00000 - 0xc0d4fb08   ( 319 kB)
    [    0.000000]        .bss : 0xc0d4fb08 - 0xc0d948bc   ( 276 kB)
    [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
    [    0.000000] Preemptible hierarchical RCU implementation.
    [    0.000000] 	Tasks RCU enabled.
    [    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
    [    0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
    [    0.000000] OMAP clockevent source: timer2 at 24000000 Hz
    [    0.000031] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns
    [    0.000079] clocksource: timer1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
    [    0.000104] OMAP clocksource: timer1 at 24000000 Hz
    [    0.000505] timer_probe: no matching timers found
    [    0.000935] Console: colour dummy device 80x30
    [    0.000991] WARNING: Your 'console=ttyO0' has been replaced by 'ttyS0'
    [    0.001011] This ensures that you still see kernel messages. Please
    [    0.001027] update your kernel commandline.
    [    0.001091] Calibrating delay loop... 298.59 BogoMIPS (lpj=1492992)
    [    0.067658] pid_max: default: 32768 minimum: 301
    [    0.068094] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [    0.068133] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [    0.069772] CPU: Testing write buffer coherency: ok
    [    0.071163] Setting up static identity map for 0x80100000 - 0x80100060
    [    0.071498] Hierarchical SRCU implementation.
    [    0.072290] EFI services will not be available.
    [    0.075670] devtmpfs: initialized
    [    0.095102] random: get_random_u32 called from bucket_table_alloc+0x8c/0x1ac with crng_init=0
    [    0.095941] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
    [    0.096554] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
    [    0.096603] futex hash table entries: 256 (order: -1, 3072 bytes)
    [    0.103935] pinctrl core: initialized pinctrl subsystem
    [    0.105405] DMI not present or invalid.
    [    0.106247] NET: Registered protocol family 16
    [    0.111502] DMA: preallocated 256 KiB pool for atomic coherent allocations
    [    0.142378] omap_hwmod: debugss: _wait_target_disable failed
    [    0.146619] omap_hwmod: d_can0: _wait_target_ready failed: -16
    [    0.146643] omap_hwmod: d_can0: cannot be enabled for reset (3)
    [    0.149996] omap_hwmod: d_can1: _wait_target_ready failed: -16
    [    0.150021] omap_hwmod: d_can1: cannot be enabled for reset (3)
    [    0.210025] cpuidle: using governor ladder
    [    0.210110] cpuidle: using governor menu
    [    0.220599] OMAP GPIO hardware version 0.1
    [    0.242594] No ATAGs?
    [    0.242628] hw-breakpoint: debug architecture 0x4 unsupported.
    [    0.275315] edma 49000000.edma: TI EDMA DMA engine driver
    [    0.282586] omap_i2c 44e0b000.i2c: could not find pctldev for node /ocp/l4_wkup@44c00000/scm@210000/pinmux@800/pinmux_i2c0_pins, deferring probe
    [    0.282902] media: Linux media interface: v0.10
    [    0.283018] Linux video capture interface: v2.00
    [    0.283267] pps_core: LinuxPPS API ver. 1 registered
    [    0.283289] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [    0.283346] PTP clock support registered
    [    0.283435] EDAC MC: Ver: 3.0.0
    [    0.284354] dmi: Firmware registration failed.
    [    0.285187] omap-mailbox 480c8000.mailbox: omap mailbox rev 0x400
    [    0.285894] Advanced Linux Sound Architecture Driver Initialized.
    [    0.288322] clocksource: Switched to clocksource timer1
    [    0.309091] NET: Registered protocol family 2
    [    0.310679] TCP established hash table entries: 2048 (order: 1, 8192 bytes)
    [    0.310770] TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
    [    0.310843] TCP: Hash tables configured (established 2048 bind 2048)
    [    0.311046] UDP hash table entries: 256 (order: 0, 4096 bytes)
    [    0.311098] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
    [    0.311433] NET: Registered protocol family 1
    [    0.312284] RPC: Registered named UNIX socket transport module.
    [    0.312315] RPC: Registered udp transport module.
    [    0.312333] RPC: Registered tcp transport module.
    [    0.312350] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    0.314068] hw perfevents: no interrupt-affinity property for /pmu, guessing.
    [    0.314315] hw perfevents: enabled with armv7_cortex_a8 PMU driver, 5 counters available
    [    0.317489] workingset: timestamp_bits=14 max_order=16 bucket_order=2
    [    0.328760] squashfs: version 4.0 (2009/01/31) Phillip Lougher
    [    0.330326] NFS: Registering the id_resolver key type
    [    0.330432] Key type id_resolver registered
    [    0.330452] Key type id_legacy registered
    [    0.330552] ntfs: driver 2.1.32 [Flags: R/O].
    [    0.334900] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 245)
    [    0.334939] io scheduler noop registered
    [    0.334960] io scheduler deadline registered
    [    0.335459] io scheduler cfq registered (default)
    [    0.335487] io scheduler mq-deadline registered
    [    0.335508] io scheduler kyber registered
    [    0.338932] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 size 568
    [    0.466186] Serial: 8250/16550 driver, 10 ports, IRQ sharing disabled
    [    0.473113] 44e09000.serial: ttyS0 at MMIO 0x44e09000 (irq = 30, base_baud = 3000000) is a 8250
    [    1.112159] console [ttyS0] enabled
    [    1.119398] omap_rng 48310000.rng: Random Number Generator ver. 20
    [    1.151151] brd: module loaded
    [    1.170087] loop: module loaded
    [    1.177816] libphy: Fixed MDIO Bus: probed
    [    1.258476] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6, bus freq 1000000
    [    1.266208] davinci_mdio 4a101000.mdio: detected phy mask fffffffe
    [    1.274372] libphy: 4a101000.mdio: probed
    [    1.278663] davinci_mdio 4a101000.mdio: phy[0]: device 4a101000.mdio:00, driver SMSC LAN8710/LAN8720
    [    1.289686] cpsw 4a100000.ethernet: Detected MACID = 98:5d:ad:e1:ed:ed
    [    1.296464] cpsw 4a100000.ethernet: initialized cpsw ale version 1.4
    [    1.303137] cpsw 4a100000.ethernet: ALE Table size 1024
    [    1.308599] cpsw 4a100000.ethernet: cpts: overflow check period 500 (jiffies)
    [    1.318932] i2c /dev entries driver
    [    1.323334] IR NEC protocol handler initialized
    [    1.327908] IR RC5(x/sz) protocol handler initialized
    [    1.333091] IR RC6 protocol handler initialized
    [    1.337657] IR JVC protocol handler initialized
    [    1.342257] IR Sony protocol handler initialized
    [    1.346907] IR SANYO protocol handler initialized
    [    1.351677] IR Sharp protocol handler initialized
    [    1.356414] IR MCE Keyboard/mouse protocol handler initialized
    [    1.362317] IR XMP protocol handler initialized
    [    1.370314] cpuidle: enable-method property 'ti,am3352' found operations
    [    1.377820] sdhci: Secure Digital Host Controller Interface driver
    [    1.384357] sdhci: Copyright(c) Pierre Ossman
    [    1.390094] omap_hsmmc 48060000.mmc: Got CD GPIO
    [    1.454931] sdhci-pltfm: SDHCI platform and OF driver helper
    [    1.466989] ledtrig-cpu: registered to indicate activity on CPUs
    [    1.480435] NET: Registered protocol family 10
    [    1.487666] Segment Routing with IPv6
    [    1.491811] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
    [    1.499634] NET: Registered protocol family 17
    [    1.504660] Key type dns_resolver registered
    [    1.509495] omap_voltage_late_init: Voltage driver support not added
    [    1.561942] vdcdc2: Bringing 3300000uV into 1150000-1150000uV
    [    1.572511] random: fast init done
    [    1.576048] mmc0: host does not support reading read-only switch, assuming write-enable
    [    1.591007] mmc0: new high speed SDHC card at address aaaa
    [    1.601369] tps65217 0-0024: TPS65217 ID 0xe version 1.2
    [    1.606924] omap_i2c 44e0b000.i2c: bus 0 rev0.11 at 400 kHz
    [    1.613248] mmcblk0: mmc0:aaaa SC16G 14.8 GiB 
    [    1.619546]  mmcblk0: p1 p2
    [    1.626397] cpufreq: cpufreq_online: CPU0: Running at unlisted freq: 600000 KHz
    [    1.634038] cpu cpu0: dev_pm_opp_set_rate: failed to find current OPP for freq 600000000 (-34)
    [    1.646087] cpufreq: cpufreq_online: CPU0: Unlisted initial frequency changed to: 300000 KHz
    [    1.720484] hctosys: unable to open rtc device (rtc0)
    [    1.727135] ALSA device list:
    [    1.730777]   No soundcards found.
    [    1.739969] Waiting for root device ...
    [    1.797191] mmc1: new high speed MMC card at address 0001
    [    1.804691] mmcblk1: mmc1:0001 M62704 3.53 GiB 
    [    1.810289] mmcblk1boot0: mmc1:0001 M62704 partition 1 2.00 MiB
    [    1.816976] mmcblk1boot1: mmc1:0001 M62704 partition 2 2.00 MiB
    [    1.823689] mmcblk1rpmb: mmc1:0001 M62704 partition 3 512 KiB
    [    1.840624]  mmcblk1: p1
    [  191.548552] random: crng init done
    

  • Apurva,

    Please notice this from your U-Boot output:

    Apurva Ankleshwaria89 said:
    ## Error: "mmcargs" not defined

    This is coming from your Uenv.txt, I believe. It is not setting up the Kernel command line properly for MMC boot.

    Apurva Ankleshwaria89 said:
    [ 0.000000] Kernel command line: console=ttyO0,115200n8 root= rootfstype=ext4 rootwait

    Here's what I'm using for a successful boot:

    console=ttyO0,115200n8 root=PARTUUID=0001292c-02 rw rootfstype=ext4 rootwait

    I think your issue is with "root" being populated correctly with the UUID of the SD Card rootfs partition.

    I hope this helps you.

  • Hi Ron,

    Thanks for the input. This worked for booting through SD card.

    Now, I am trying to boot through eMMC. Once kernel was loaded through SD card, I mount the eMMC and then created boot and rootfs partitions and copied the files on eMMC. Post, I remove the SD card and try to boot through eMMC. I am able to load SPL and U-boot, however not able to load kernel through eMMC. Attached UART logs and uEnv.txt file. Kindly let me know your thoughts.

    U-Boot SPL 2018.01 (Feb 02 2019 - 17:25:14)
    Trying to boot from MMC2
    ** Bad device mmc 0 **
    Using default environment
    
    reading u-boot.img
    reading u-boot.img
    reading u-boot.img
    reading u-boot.img
    
    
    U-Boot 2018.01 (Feb 02 2019 - 17:25:14 +0530)
    
    CPU  : AM335X-GP rev 2.1
    Model: TI AM335x EVM
    I2C:   ready
    DRAM:  256 MiB
    MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1
    ** Bad device mmc 0 **
    Using default environment
    
    <ethaddr> not set. Validating first E-fuse MAC
    Net:   cpsw, usb_ether
    Hit any key to stop autoboot:  2  1  0 
    switch to partitions #0, OK
    mmc1(part 0) is current device
    Scanning mmc 1:1...
    switch to partitions #0, OK
    mmc1(part 0) is current device
    SD/MMC found on device 1
    ** File not found /boot/zImage **
    starting USB...
    USB0:   MUSB host is not registered
    Port not available.
    cpsw Waiting for PHY auto negotiation to complete......... TIMEOUT !
    using musb-hdrc, OUT ep1out IN ep1in STATUS ep2in
    MAC 98:5d:ad:e1:ed:ed
    HOST MAC de:ad:be:ef:00:00
    RNDIS ready
    missing environment variable: pxeuuid
    Retrieving file: pxelinux.cfg/01-98-5d-ad-e1-ed-ed
    cpsw Waiting for PHY auto negotiation to complete......... TIMEOUT !
    using musb-hdrc, OUT ep1out IN ep1in STATUS ep2in
    MAC 98:5d:ad:e1:ed:ed
    HOST MAC de:ad:be:ef:00:00
    RNDIS ready
    Retrieving file: pxelinux.cfg/00000000
    cpsw Waiting for PHY auto negotiation to complete......... TIMEOUT !
    using musb-hdrc, OUT ep1out IN ep1in STATUS ep2in
    MAC 98:5d:ad:e1:ed:ed
    HOST MAC de:ad:be:ef:00:00
    RNDIS ready
    Retrieving file: pxelinux.cfg/0000000
    cpsw Waiting for PHY auto negotiation to complete......... TIMEOUT !
    using musb-hdrc, OUT ep1out IN ep1in STATUS ep2in
    MAC 98:5d:ad:e1:ed:ed
    HOST MAC de:ad:be:ef:00:00
    RNDIS ready
    Retrieving file: pxelinux.cfg/000000
    cpsw Waiting for PHY auto negotiation to complete......... TIMEOUT !
    using musb-hdrc, OUT ep1out IN ep1in STATUS ep2in
    MAC 98:5d:ad:e1:ed:ed
    HOST MAC de:ad:be:ef:00:00
    RNDIS ready
    Retrieving file: pxelinux.cfg/00000
    cpsw Waiting for PHY auto negotiation to complete......... TIMEOUT !
    using musb-hdrc, OUT ep1out IN ep1in STATUS ep2in
    MAC 98:5d:ad:e1:ed:ed
    HOST MAC de:ad:be:ef:00:00
    RNDIS ready
    Retrieving file: pxelinux.cfg/0000
    cpsw Waiting for PHY auto negotiation to complete......... TIMEOUT !
    using musb-hdrc, OUT ep1out IN ep1in STATUS ep2in
    MAC 98:5d:ad:e1:ed:ed
    HOST MAC de:ad:be:ef:00:00
    RNDIS ready
    Retrieving file: pxelinux.cfg/000
    cpsw Waiting for PHY auto negotiation to complete......... TIMEOUT !
    using musb-hdrc, OUT ep1out IN ep1in STATUS ep2in
    MAC 98:5d:ad:e1:ed:ed
    HOST MAC de:ad:be:ef:00:00
    RNDIS ready
    Retrieving file: pxelinux.cfg/00
    cpsw Waiting for PHY auto negotiation to complete......... TIMEOUT !
    using musb-hdrc, OUT ep1out IN ep1in STATUS ep2in
    MAC 98:5d:ad:e1:ed:ed
    HOST MAC de:ad:be:ef:00:00
    RNDIS ready
    Retrieving file: pxelinux.cfg/0
    cpsw Waiting for PHY auto negotiation to complete......... TIMEOUT !
    using musb-hdrc, OUT ep1out IN ep1in STATUS ep2in
    MAC 98:5d:ad:e1:ed:ed
    HOST MAC de:ad:be:ef:00:00
    RNDIS ready
    Retrieving file: pxelinux.cfg/default-arm-am33xx
    cpsw Waiting for PHY auto negotiation to complete......... TIMEOUT !
    using musb-hdrc, OUT ep1out IN ep1in STATUS ep2in
    MAC 98:5d:ad:e1:ed:ed
    HOST MAC de:ad:be:ef:00:00
    RNDIS ready
    Retrieving file: pxelinux.cfg/default-arm
    cpsw Waiting for PHY auto negotiation to complete......... TIMEOUT !
    using musb-hdrc, OUT ep1out IN ep1in STATUS ep2in
    MAC 98:5d:ad:e1:ed:ed
    HOST MAC de:ad:be:ef:00:00
    RNDIS ready
    Retrieving file: pxelinux.cfg/default
    cpsw Waiting for PHY auto negotiation to complete......... TIMEOUT !
    using musb-hdrc, OUT ep1out IN ep1in STATUS ep2in
    MAC 98:5d:ad:e1:ed:ed
    HOST MAC de:ad:be:ef:00:00
    RNDIS ready
    Config file not found
    starting USB...
    USB0:   MUSB host is not registered
    Port not available.
    cpsw Waiting for PHY auto negotiation to complete......... TIMEOUT !
    using musb-hdrc, OUT ep1out IN ep1in STATUS ep2in
    MAC 98:5d:ad:e1:ed:ed
    HOST MAC de:ad:be:ef:00:00
    RNDIS ready
    cpsw Waiting for PHY auto negotiation to complete......... TIMEOUT !
    using musb-hdrc, OUT ep1out IN ep1in STATUS ep2in
    MAC 98:5d:ad:e1:ed:ed
    HOST MAC de:ad:be:ef:00:00
    RNDIS ready
    => 
    bootdir= /boot
    bootfile=zImage
    fdtfile=am335x-boneblack.dtb
    loadfdt=fatload mmc 0:1 ${fdtaddr} ${fdtfile}
    loaduimage=fatload mmc 0:1 ${loadaddr} ${bootfile}
    mmcroot=/dev/mmcblk0p2 
    uenvcmd=mmc rescan; run loaduimage; run loadfdt; run fdtboot
    fdtboot=run mmc_args; bootz ${loadaddr} - ${fdtaddr}
    mmc_args=setenv bootargs console=${console} ${optargs} root=${mmcroot} rootfstype=${mmcrootfstype}

  • Apurva,

    From the logs it looks like your eMMC is on MMC1. Can you stop the boot at a U-Boot prompt and use mmc commands (help mmc at prompt) to learn more about the setup on a live board. Then, from this, see if you can use setenv to setup the environment appropriately to boot? If so, you can save that setup using saveenv.

    I don't believe you are ever loading uEnv.txt at this point.
  • Hi Ron,

    I was able to start loading of kernel from eMMC as well. However, the loading had an error and stopped in between. The kernel image is the same that i am using for SD card. However, in SD card, kernel is loading. Not able to understand the reason. Kindly look at the the logs and let me know your thoughts. Thanks

    U-Boot SPL 2018.01 (Feb 05 2019 - 16:14:34)
    Trying to boot from MMC2
    *** Warning - bad CRC, using default environment
    
    reading u-boot.img
    reading u-boot.img
    reading u-boot.img
    reading u-boot.img
    
    
    U-Boot 2018.01-00228-g4579b130f0-dirty (Feb 05 2019 - 17:37:40 +0530)
    
    CPU  : AM335X-GP rev 2.1
    Model: TI AM335x EVM
    I2C:   ready
    DRAM:  256 MiB
    MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1
    *** Warning - bad CRC, using default environment
    
    <ethaddr> not set. Validating first E-fuse MAC
    Net:   cpsw, usb_ether
    Hit any key to stop autoboot:  2  1  0 
    switch to partitions #0, OK
    mmc1(part 0) is current device
    Scanning mmc 1:1...
    reading /am335x-boneblack.dtb
    33942 bytes read in 9 ms (3.6 MiB/s)
    switch to partitions #0, OK
    mmc1(part 0) is current device
    SD/MMC found on device 1
    3842560 bytes read in 498 ms (7.4 MiB/s)
    33942 bytes read in 14 ms (2.3 MiB/s)
    ## Flattened Device Tree blob at 88000000
       Booting using the fdt blob at 0x88000000
       Loading Device Tree to 8df15000, end 8df20495 ... OK
    
    Starting kernel ...
    
    [    0.000000] Booting Linux on physical CPU 0x0
    [    0.000000] Linux version 4.14.40-g4796173fc5 (apurva@ubuntu) (gcc version 7.2.1 20171011 (Linaro GCC 7.2-2017.11)) #1 PREEMPT Tue Jan 29 21:20:12 IST 2019
    [    0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c5387d
    [    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
    [    0.000000] OF: fdt: Machine model: TI AM335x BeagleBone Black
    [    0.000000] Memory policy: Data cache writeback
    [    0.000000] efi: Getting EFI parameters from FDT:
    [    0.000000] efi: UEFI not found.
    [    0.000000] cma: Reserved 48 MiB at 0x8a800000
    [    0.000000] CPU: All CPU(s) started in SVC mode.
    [    0.000000] AM335X ES2.1 (neon)
    [    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 64960
    [    0.000000] Kernel command line: console=ttyO0,115200n8 root=PARTUUID=c70e59a8-02 rw rootfstype=ext4 rootwait
    [    0.000000] PID hash table entries: 1024 (order: 0, 4096 bytes)
    [    0.000000] Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
    [    0.000000] Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
    [    0.000000] Memory: 197288K/262144K available (8192K kernel code, 318K rwdata, 2428K rodata, 1024K init, 275K bss, 15704K reserved, 49152K cma-reserved, 0K highmem)
    [    0.000000] Virtual kernel memory layout:
    [    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    [    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
    [    0.000000]     vmalloc : 0xd0800000 - 0xff800000   ( 752 MB)
    [    0.000000]     lowmem  : 0xc0000000 - 0xd0000000   ( 256 MB)
    [    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
    [    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
    [    0.000000]       .text : 0xc0008000 - 0xc0900000   (9184 kB)
    [    0.000000]       .init : 0xc0c00000 - 0xc0d00000   (1024 kB)
    [    0.000000]       .data : 0xc0d00000 - 0xc0d4fb08   ( 319 kB)
    [    0.000000]        .bss : 0xc0d4fb08 - 0xc0d948bc   ( 276 kB)
    [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
    [    0.000000] Preemptible hierarchical RCU implementation.
    [    0.000000] 	Tasks RCU enabled.
    [    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
    [    0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
    [    0.000000] OMAP clockevent source: timer2 at 24000000 Hz
    [    0.000031] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns
    [    0.000077] clocksource: timer1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
    [    0.000103] OMAP clocksource: timer1 at 24000000 Hz
    [    0.000501] timer_probe: no matching timers found
    [    0.000932] Console: colour dummy device 80x30
    [    0.000992] WARNING: Your 'console=ttyO0' has been replaced by 'ttyS0'
    [    0.001012] This ensures that you still see kernel messages. Please
    [    0.001028] update your kernel commandline.
    [    0.001089] Calibrating delay loop... 298.59 BogoMIPS (lpj=1492992)
    [    0.067674] pid_max: default: 32768 minimum: 301
    [    0.068111] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [    0.068149] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [    0.069789] CPU: Testing write buffer coherency: ok
    [    0.071177] Setting up static identity map for 0x80100000 - 0x80100060
    [    0.071508] Hierarchical SRCU implementation.
    [    0.072298] EFI services will not be available.
    [    0.075674] devtmpfs: initialized
    [    0.095038] random: get_random_u32 called from bucket_table_alloc+0x8c/0x1ac with crng_init=0
    [    0.095905] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
    [    0.096522] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
    [    0.096573] futex hash table entries: 256 (order: -1, 3072 bytes)
    [    0.103902] pinctrl core: initialized pinctrl subsystem
    [    0.105375] DMI not present or invalid.
    [    0.106219] NET: Registered protocol family 16
    [    0.111508] DMA: preallocated 256 KiB pool for atomic coherent allocations
    [    0.142392] omap_hwmod: debugss: _wait_target_disable failed
    [    0.146620] omap_hwmod: d_can0: _wait_target_ready failed: -16
    [    0.146645] omap_hwmod: d_can0: cannot be enabled for reset (3)
    [    0.149998] omap_hwmod: d_can1: _wait_target_ready failed: -16
    [    0.150021] omap_hwmod: d_can1: cannot be enabled for reset (3)
    [    0.209951] cpuidle: using governor ladder
    [    0.210040] cpuidle: using governor menu
    [    0.220604] OMAP GPIO hardware version 0.1
    [    0.242511] No ATAGs?
    [    0.242546] hw-breakpoint: debug architecture 0x4 unsupported.
    [    0.275220] edma 49000000.edma: TI EDMA DMA engine driver
    [    0.282500] omap_i2c 44e0b000.i2c: could not find pctldev for node /ocp/l4_wkup@44c00000/scm@210000/pinmux@800/pinmux_i2c0_pins, deferring probe
    [    0.282814] media: Linux media interface: v0.10
    [    0.282925] Linux video capture interface: v2.00
    [    0.283171] pps_core: LinuxPPS API ver. 1 registered
    [    0.283193] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [    0.283251] PTP clock support registered
    [    0.283339] EDAC MC: Ver: 3.0.0
    [    0.284240] dmi: Firmware registration failed.
    [    0.285065] omap-mailbox 480c8000.mailbox: omap mailbox rev 0x400
    [    0.285771] Advanced Linux Sound Architecture Driver Initialized.
    [    0.288240] clocksource: Switched to clocksource timer1
    [    0.308906] NET: Registered protocol family 2
    [    0.310480] TCP established hash table entries: 2048 (order: 1, 8192 bytes)
    [    0.310568] TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
    [    0.310642] TCP: Hash tables configured (established 2048 bind 2048)
    [    0.310842] UDP hash table entries: 256 (order: 0, 4096 bytes)
    [    0.310894] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
    [    0.311230] NET: Registered protocol family 1
    [    0.312077] RPC: Registered named UNIX socket transport module.
    [    0.312108] RPC: Registered udp transport module.
    [    0.312126] RPC: Registered tcp transport module.
    [    0.312144] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    0.313869] hw perfevents: no interrupt-affinity property for /pmu, guessing.
    [    0.314121] hw perfevents: enabled with armv7_cortex_a8 PMU driver, 5 counters available
    [    0.317296] workingset: timestamp_bits=14 max_order=16 bucket_order=2
    [    0.328488] squashfs: version 4.0 (2009/01/31) Phillip Lougher
    [    0.330076] NFS: Registering the id_resolver key type
    [    0.330172] Key type id_resolver registered
    [    0.330193] Key type id_legacy registered
    [    0.330292] ntfs: driver 2.1.32 [Flags: R/O].
    [    0.334654] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 245)
    [    0.334697] io scheduler noop registered
    [    0.334718] io scheduler deadline registered
    [    0.335214] io scheduler cfq registered (default)
    [    0.335242] io scheduler mq-deadline registered
    [    0.335263] io scheduler kyber registered
    [    0.338644] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 size 568
    [    0.465671] Serial: 8250/16550 driver, 10 ports, IRQ sharing disabled
    [    0.472597] 44e09000.serial: ttyS0 at MMIO 0x44e09000 (irq = 30, base_baud = 3000000) is a 8250
    [    1.113677] console [ttyS0] enabled
    [    1.120905] omap_rng 48310000.rng: Random Number Generator ver. 20
    [    1.152630] brd: module loaded
    [    1.171566] loop: module loaded
    [    1.179586] libphy: Fixed MDIO Bus: probed
    [    1.258397] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6, bus freq 1000000
    [    1.266129] davinci_mdio 4a101000.mdio: detected phy mask fffffffe
    [    1.274313] libphy: 4a101000.mdio: probed
    [    1.278608] davinci_mdio 4a101000.mdio: phy[0]: device 4a101000.mdio:00, driver SMSC LAN8710/LAN8720
    [    1.289616] cpsw 4a100000.ethernet: Detected MACID = 98:5d:ad:e1:ed:ed
    [    1.296380] cpsw 4a100000.ethernet: initialized cpsw ale version 1.4
    [    1.303049] cpsw 4a100000.ethernet: ALE Table size 1024
    [    1.308536] cpsw 4a100000.ethernet: cpts: overflow check period 500 (jiffies)
    [    1.318852] i2c /dev entries driver
    [    1.323249] IR NEC protocol handler initialized
    [    1.327825] IR RC5(x/sz) protocol handler initialized
    [    1.333003] IR RC6 protocol handler initialized
    [    1.337569] IR JVC protocol handler initialized
    [    1.342169] IR Sony protocol handler initialized
    [    1.346818] IR SANYO protocol handler initialized
    [    1.351589] IR Sharp protocol handler initialized
    [    1.356327] IR MCE Keyboard/mouse protocol handler initialized
    [    1.362229] IR XMP protocol handler initialized
    [    1.370232] cpuidle: enable-method property 'ti,am3352' found operations
    [    1.377735] sdhci: Secure Digital Host Controller Interface driver
    [    1.384321] sdhci: Copyright(c) Pierre Ossman
    [    1.454410] sdhci-pltfm: SDHCI platform and OF driver helper
    [    1.464638] ledtrig-cpu: registered to indicate activity on CPUs
    [    1.477759] NET: Registered protocol family 10
    [    1.485231] Segment Routing with IPv6
    [    1.489357] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
    [    1.496813] NET: Registered protocol family 17
    [    1.501997] Key type dns_resolver registered
    [    1.506762] omap_voltage_late_init: Voltage driver support not added
    [    1.551423] vdcdc2: Bringing 3300000uV into 1150000-1150000uV
    [    1.563184] random: fast init done
    [    1.576552] tps65217 0-0024: TPS65217 ID 0xe version 1.2
    [    1.582222] omap_i2c 44e0b000.i2c: bus 0 rev0.11 at 400 kHz
    [    1.590003] cpufreq: cpufreq_online: CPU0: Running at unlisted freq: 600000 KHz
    [    1.597438] cpu cpu0: dev_pm_opp_set_rate: failed to find current OPP for freq 600000000 (-34)
    [    1.609598] cpufreq: cpufreq_online: CPU0: Unlisted initial frequency changed to: 300000 KHz
    [    1.680406] hctosys: unable to open rtc device (rtc0)
    [    1.687043] vmmcsd_fixed: disabling
    [    1.691113] ALSA device list:
    [    1.694319]   No soundcards found.
    [    1.703258] Waiting for root device PARTUUID=c70e59a8-02...
    [    1.757263] mmc1: new high speed MMC card at address 0001
    [    1.764728] mmcblk1: mmc1:0001 M62704 3.53 GiB 
    [    1.770276] mmcblk1boot0: mmc1:0001 M62704 partition 1 2.00 MiB
    [    1.776909] mmcblk1boot1: mmc1:0001 M62704 partition 2 2.00 MiB
    [    1.783757] mmcblk1rpmb: mmc1:0001 M62704 partition 3 512 KiB
    [    1.793028]  mmcblk1: p1 p2
    [    1.853248] EXT4-fs (mmcblk1p2): mounted filesystem with ordered data mode. Opts: (null)
    [    1.861976] VFS: Mounted root (ext4 filesystem) on device 179:2.
    [    1.884840] devtmpfs: mounted
    [    1.897430] Freeing unused kernel memory: 1024K
    [    2.311588] systemd[1]: System time before build time, advancing clock.
    [    2.469013] systemd[1]: systemd 234 running in system mode. (+PAM -AUDIT -SELINUX +IMA -APPARMOR +SMACK +SYSVINIT +UTMP -LIBCRYPTSETUP -GCRYPT -GNUTLS +ACL +XZ -LZ4 -SECCOMP +BLKID -ELFUTILS +KMOD -IDN2 -IDN default-hierarchy=hybrid)
    [    2.492869] systemd[1]: Detected architecture arm.
    
    Welcome to [1mArago 2018.04[0m!
    
    [    2.540853] systemd[1]: Set hostname to <am335x-evm>.
    [    3.752811] systemd[1]: /lib/systemd/system/gadget-init.service:15: Unknown lvalue 'ExecStopPre' in section 'Service'
    [    4.760912] random: systemd: uninitialized urandom read (16 bytes read)
    [    4.769682] systemd[1]: Listening on Syslog Socket.
    [[0;32m  OK  [0m] Listening on Syslog Socket.
    [    4.809693] random: systemd: uninitialized urandom read (16 bytes read)
    [    4.817779] systemd[1]: Listening on Journal Socket.
    [[0;32m  OK  [0m] Listening on Journal Socket.
    [    4.859714] random: systemd: uninitialized urandom read (16 bytes read)
    [    4.868031] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
    [[0;32m  OK  [0m] Started Forward Password Requests to Wall Directory Watch.
    [    4.909566] systemd[1]: Reached target Swap.
    [[0;32m  OK  [0m] Reached target Swap.
    [    4.961555] systemd[1]: Created slice System Slice.
    [[0;32m  OK  [0m] Created slice System Slice.
    [    5.006239] systemd[1]: Created slice system-getty.slice.
    [[0;32m  OK  [0m] Created slice system-getty.slice.
    [[0;32m  OK  [0m] Created slice system-serial\x2dgetty.slice.
             Mounting Temporary Directory (/tmp)...
    [[0;32m  OK  [0m] Listening on Network Service Netlink Socket.
             Mounting Kernel Debug File System...
    [[0;32m  OK  [0m] Listening on Journal Socket (/dev/log).
             Starting Journal Service...
    [[0;32m  OK  [0m] Listening on udev Kernel Socket.
             Starting Load Kernel Modules...
             Mounting POSIX Message Queue File System...
             Starting Remount Root and Kernel File Systems...
    [[0;32m  OK  [0m] Listening on /dev/initctl Compatibility Named Pipe.
    [[0;32m  OK  [0m] Created slice User and Session Slice.
    [[0;32m  OK  [0m] Listening on udev Control Socket.
    [[0;32m  OK  [0m] Reached target Remote File Systems.
    [    5.785439] cryptodev: loading out-of-tree module taints kernel.
    [[0;32m  OK  [0m] Reached target Slices.
    [    5.840593] cryptodev: driver 1.9 loaded.
    [[0;32m  OK  [0m] Started Dispatch Password Requests to Console Directory Watch.
    [[0;32m  OK  [0m] Reached target Paths.
    [    6.080195] usbcore: registered new interface driver usbfs
    [    6.086066] usbcore: registered new interface driver hub
    [    6.159386] usbcore: registered new device driver usb
    [[0;32m  OK  [0m] Listening on Process Core Dump Socket.
    [    6.251320] usbcore: registered new interface driver usbserial
    [[0;1;31mFAILED[0m] Failed to mount Temporary Directory (/tmp).
    See 'systemctl status tmp.mount' for details.
    [[0;1;33mDEPEND[0m] Dependency failed for Network Name Resolution.
    [[0;1;33mDEPEND[0m] Dependency failed for Network Time Synchronization.
    [[0;1;31mFAILED[0m] Failed to mount Kernel Debug File System.
    See 'systemctl status sys-kernel-debug.mount' for details.
    [[0;1;31mFAILED[0m] Failed to start Load Kernel Modules.
    See 'systemctl status systemd-modules-load.service' for details.
    [[0;1;31mFAILED[0m] Failed to mount POSIX Message Queue File System.
    See 'systemctl status dev-mqueue.mount' for details.
    [[0;1;31mFAILED[0m] Failed to start Remount Root and Kernel File Systems.
    See 'systemctl status systemd-remount-fs.service' for details.
    [[0;32m  OK  [0m] Started Journal Service.
             Starting Flush Journal to Persistent Storage...
             Starting Rebuild Hardware Database...
             Mounting Kernel Configuration File System...
             Starting Apply Kernel Variables...
    [[0;32m  OK  [0m] Reached target System Time Synchronized.
             Starting Create System Users...
    [[0;32m  OK  [0m] Reached target Host and Network Name Lookups.
    [[0;1;31mFAILED[0m] Failed to mount Kernel Configuration File System.
    See 'systemctl status sys-kernel-config.mount' for details.
    [[0;32m  OK  [0m] Started Apply Kernel Variables.
    [[0;32m  OK  [0m] Started Create System Users.
    [    8.097858] systemd-journald[62]: Received request to flush runtime journal from PID 1
             Starting Create Static Device Nodes in /dev...
    [[0;32m  OK  [0m] Started Flush Journal to Persistent Storage.
    [[0;32m  OK  [0m] Started Create Static Device Nodes in /dev.
    [[0;32m  OK  [0m] Reached target Local File Systems (Pre).
             Mounting /var/volatile...
             Mounting /media/ram...
             Starting udev Kernel Device Manager...
    [[0;1;31mFAILED[0m] Failed to mount /var/volatile.
    See 'systemctl status var-volatile.mount' for details.
    [[0;1;33mDEPEND[0m] Dependency failed for Bind mount volatile /var/cache.
    [[0;1;33mDEPEND[0m] Dependency failed for Bind mount volatile /var/lib.
    [[0;1;33mDEPEND[0m] Dependency failed for Bind mount volatile /srv.
    [[0;1;33mDEPEND[0m] Dependency failed for Bind mount volatile /var/spool.
    [[0;1;33mDEPEND[0m] Dependency failed for Local File Systems.
    [[0;1;31mFAILED[0m] Failed to mount /media/ram.
    See 'systemctl status media-ram.mount' for details.
    [[0;32m  OK  [0m] Reached target Login Prompts.
             Starting Synchronize System and HW clocks...
    [[0;32m  OK  [0m] Closed Syslog Socket.
    [[0;32m  OK  [0m] Reached target Timers.
    [[0;32m  OK  [0m] Started Emergency Shell.
             Starting Create Volatile Files and Directories...
             Starting Rebuild Dynamic Linker Cache...
    [[0;32m  OK  [0m] Reached target Emergency Mode.
             Starting Rebuild Journal Catalog...
    [[0;32m  OK  [0m] Reached target Sockets.
             Starting Load/Save Random Seed...
    [[0;1;31mFAILED[0m] Failed to start Synchronize System and HW clocks.
    See 'systemctl status sync-clocks.service' for details.
    [[0;32m  OK  [0m] Started Load/Save Random Seed.
    [[0;32m  OK  [0m] Started udev Kernel Device Manager.
    [[0;32m  OK  [0m] Started Create Volatile Files and Directories.
             Starting Update UTMP about System Boot/Shutdown...
             Starting Network Service...
    [[0;32m  OK  [0m] Started Rebuild Journal Catalog.
    [[0;32m  OK  [0m] Started Update UTMP about System Boot/Shutdown.
             Starting Update UTMP about System Runlevel Changes...
    [[0;32m  OK  [0m] Started Network Service.
             Starting Wait for Network to be Configured...
    [[0;32m  OK  [0m] Reached target Network.
    [[0;32m  OK  [0m] Started Rebuild Dynamic Linker Cache.
    [[0;32m  OK  [0m] Started Update UTMP about System Runlevel Changes.
    You are in emergency mode. After logging in, type "journalctl -xb" to view
    system logs, "systemctl reboot" to reboot, "systemctl default" or ^D to boot
    into default mode.
    Press Enter for maintenance
    (or press Control-D to continue): [   31.598141] omap_rtc 44e3e000.rtc: registered as rtc0
    [   31.681707] omap_wdt: OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec
    [   34.870423] omap_hwmod: pruss: _wait_target_ready failed: -16
    [   35.009696] pruss-soc-bus 4a326004.pruss-soc-bus: use pm_runtime_put_sync_suspend() in driver?
    [   35.127227] pruss-soc-bus 4a326004.pruss-soc-bus: couldn't enable module
    [   35.188899] pruss-soc-bus: probe of 4a326004.pruss-soc-bus failed with error -16
    [   35.199434] omap-sham 53100000.sham: hw accel on OMAP rev 4.3
    [   35.348102] omap-aes 53500000.aes: OMAP AES hw accel rev: 3.2
    [   35.390015] omap-aes 53500000.aes: will run requests pump with realtime priority
    [   35.583205] omap_hwmod: gfx: failed to hardreset
    [   35.811835] pvrsrvkm 56000000.sgx: Unable to reset SGX!
    [   35.943716] omap_hwmod: gfx: _wait_target_ready failed: -16
    [   36.071201] pvrsrvkm 56000000.sgx: use pm_runtime_put_sync_suspend() in driver?
    [   36.153981] wkup_m3_ipc 44e11324.wkup_m3_ipc: could not get rproc handle
    [   36.182945] remoteproc remoteproc0: wkup_m3 is available
    [   36.202420] remoteproc remoteproc0: powering up wkup_m3
    [   36.265036] remoteproc remoteproc0: Booting fw image am335x-pm-firmware.elf, size 224628
    [   36.265629] wkup_m3_ipc 44e11324.wkup_m3_ipc: CM3 Firmware Version = 0x192
    [   36.322883] PM: Cannot get wkup_m3_ipc handle
    [   36.326376] remoteproc remoteproc0: remote processor wkup_m3 is now up
    [   36.645372] PVR_K:(Error): EnableSGXClocks: pm_runtime_get_sync failed (16)
    [   36.838690] PVR_K:(Error): SysInitialise: Failed to Enable system clocks (175)
    [   36.980228] pvrsrvkm 56000000.sgx: Unable to register SGX DRM device
    [   40.208845] net eth0: initializing cpsw version 1.12 (0)
    [   40.450100] SMSC LAN8710/LAN8720 4a101000.mdio:00: attached PHY driver [SMSC LAN8710/LAN8720] (mii_bus:phy_addr=4a101000.mdio:00, irq=POLL)
    [   40.803701] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
    [   43.760465] cpsw 4a100000.ethernet eth0: Link is Up - 100Mbps/Full - flow control rx/tx
    [   43.889410] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
    [   54.543303] PM: bootloader does not support rtc-only!
    [   54.576543] am335x-phy-driver 47401300.usb-phy: 47401300.usb-phy supply vcc not found, using dummy regulator
    [   72.489677] random: crng init done
    [   72.493218] random: 7 urandom warning(s) missed due to ratelimiting
    

  • Apurva,

    This looks like a mismatch between you customized filesystem's init and the filesystem that is mounted on the eMMC. I would compare the SD Card and eMMC contents to see if there are any differences.

    I'm sorry, we can't help debug the customized FS. You might try the FS that comes with the SDK just to see if there are any differences.

    For example, I don't see messages like:

    You are in emergency mode. After logging in, type "journalctl -xb" to view
    system logs, "systemctl reboot" to reboot, "systemctl default" or ^D to boot
    into default mode.
    Press Enter for maintenance

    in the standard Arago FS.