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.

AM3352: Ramdisk Image generation for am3352

Part Number: AM3352


Hi ,

I would like to know  how can we generate ramdisk rootfs image for am3352 processer.

Do you have any step for the same, If Yes can you please share the step.

Thank You,

Jitendra 

  • Hi Jitendra,

    our SDK is able to generate a "tiny" image (bitbake target tisdk-tiny-image) that you can use for this purpose, specifically the cpio archive that is being generated. You can search the E2E forum, this has been asked a few times already. Another way to do it is to actually package the files you want to be in the ramdisk directly together with the Linux Kernel, see https://e2e.ti.com/support/processors-group/processors/f/processors-forum/825622/compiler-am3352-ramdisk-error/3059053#3059053

    Regards, Andreas

  • Hi Andreas,

    Thank you for your reply, 

    we are planning to update rootfs from web but while updating it is taking around 10 min.

    currently we are using core-image-minimal-am335x-evm.tar.xz image which content rootfs, dtb and zimg  .

    To reduce the time we are planning to use ramdisk image.   

    Is it possible to update rootfs file system using this?

    Is there any way how we can do this ?

    Thank You,

    Jitendra

  • Hi Jitendra,

    this is a little bit out of the scope what we support directly but here are some pointers for your consideration/review:

    https://wiki.yoctoproject.org/wiki/System_Update

    https://www.youtube.com/watch?v=j4o5TzMdOL4

    I have used 'swupdate' in the past for block/media-based updates and it was generally a good experience. But as always there are different solutions/approaches, so something else may fit better for your use case.

    But I did take a note, this may be a good project for a demo/application note for us to work on to provide to our customers like yourself.

    Regards, Andreas

  • Hi Andreas,

    we are planning separate kernel and dtb images from  core-image-minimal-am335x-evm.tar.xz

    while doing this we are updating EMMC partition  like bellow

    mmcblk1 179:0 0 3.6G 0 disk
    |-mmcblk1p1 179:1 0 32M 0 part /boot/uboot
    |-mmcblk1p2 179:2 0 512M 0 part /
    |-mmcblk1p3 179:3 0 512M 0 part
    |-mmcblk1p4 179:4 0 1K 0 part
    |-mmcblk1p5 179:5 0 64M 0 part /_opt_application
    |-mmcblk1p6 179:6 0 64M 0 part
    |-mmcblk1p7 179:7 0 32M 0 part /_opt_kernel
    |-mmcblk1p8 179:8 0 32M 0 part
    |-mmcblk1p9 179:9 0 5M 0 part /_factry
    |-mmcblk1p10 179:10 0 512M 0 part /_home_upgrade
    `-mmcblk1p11 179:11 0 1.9G 0 part /_opt_data
    mmcblk1boot0 179:16 0 2M 1 disk
    mmcblk1boot1 179:32 0 2M 1 disk

    I am able to load the kernel image using changing the environment variables.

    devtype=mmc
    loadaddr=0x82000000
    bootfile=zImage
    fdtaddr=0x88000000
    fdtfile=am335x-boneblack.dtb

    loadimage=load ${devtype} 1:8 ${loadaddr} /${bootfile}
    loadfdt=load ${devtype} 1:8 ${fdtaddr} /${fdtfile}

    but looks to be in log uuid value not getting. Due to this facing kernel panic issue 

    args_mmc=run finduuid;setenv bootargs console=${console} ${optargs} root=PARTUUID=${uuid} rw rootfstype=${mmcrootfstype}
    [    0.000000] Kernel command line: console=ttyO0,115200n8 root=PARTUUID= rw rootfstype=ext4 rootwait

    [ 1.987361] VFS: PARTUUID= is invalid.
    [ 1.987361] Expected PARTUUID=<valid-uuid-id>[/PARTNROFF=%d]
    [ 1.997282] Disabling rootwait; root= is invalid.
    [ 2.002947] VFS: Cannot open root device "PARTUUID=" or unknown-block(0,0): error -6
    [ 2.011034] Please append a correct "root=" boot option; here are the available partitions:
    [ 2.019884] 0100 65536 ram0
    [ 2.019901] (driver?)
    [ 2.026303] 0101 65536 ram1
    [ 2.026317] (driver?)
    [ 2.032514] 0102 65536 ram2

    [ 2.182728]
    [ 2.189769] b30a 524288 mmcblk1p10 0349f293-0a
    [ 2.189780]
    [ 2.196837] b30b 1920000 mmcblk1p11 0349f293-0b
    [ 2.196847]
    [ 2.203846] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
    [ 2.212214] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0) ]---

    bellow are the loges Can you please help

    Thank You,

    => printenv
    addr_fit=0x90000000
    arch=arm
    args_mmc=run finduuid;setenv bootargs console=${console} ${optargs} root=PARTUUID=${uuid} rw rootfstype=${mmcrootfstype}
    baudrate=115200
    board=am335x
    boot_a_script=load ${devtype} ${devnum}:${distro_bootpart} ${scriptaddr} ${prefix}${script}; source ${scriptaddr}
    boot_efi_binary=if fdt addr ${fdt_addr_r}; then bootefi bootmgr ${fdt_addr_r};else bootefi bootmgr ${fdtcontroladdr};fi;load ${devtype} ${devnum}:${distro_bootpart} ${kernel_addr_r} efi/boot/bootarm.efi; if fdt addr ${fdt_addr_r}; then bootefi ${kernel_addr_r} ${fdt_addr_r};else bootefi ${kernel_addr_r} ${fdtcontroladdr};fi
    boot_extlinux=sysboot ${devtype} ${devnum}:${distro_bootpart} any ${scriptaddr} ${prefix}${boot_syslinux_conf}
    boot_fdt=try
    boot_fit=0
    boot_net_usb_start=usb start
    boot_prefixes=/ /boot/
    boot_script_dhcp=boot.scr.uimg
    boot_scripts=boot.scr.uimg boot.scr
    boot_syslinux_conf=extlinux/extlinux.conf
    boot_targets=mmc0 legacy_mmc0 mmc1 legacy_mmc1 nand0 pxe dhcp
    bootcmd=if test ${boot_fit} -eq 1; then run update_to_fit; fi; run findfdt; run init_console; run envboot; run distro_bootcmd
    bootcmd_dhcp=run boot_net_usb_start; if dhcp ${scriptaddr} ${boot_script_dhcp}; then source ${scriptaddr}; fi;setenv efi_fdtfile ${fdtfile}; if test -z "${fdtfile}" -a -n "${soc}"; then setenv efi_fdtfile ${soc}-${board}${boardver}.dtb; fi; setenv efi_old_vci ${bootp_vci};setenv efi_old_arch ${bootp_arch};setenv bootp_vci PXEClient:Arch:00010:UNDI:003000;setenv bootp_arch 0xa;if dhcp ${kernel_addr_r}; then tftpboot ${fdt_addr_r} dtb/${efi_fdtfile};if fdt addr ${fdt_addr_r}; then bootefi ${kernel_addr_r} ${fdt_addr_r}; else bootefi ${kernel_addr_r} ${fdtcontroladdr};fi;fi;setenv bootp_vci ${efi_old_vci};setenv bootp_arch ${efi_old_arch};setenv efi_fdtfile;setenv efi_old_arch;setenv efi_old_vci;
    bootcmd_legacy_mmc0=setenv mmcdev 0; if test -e mmc 0:3 /opt/fw_update; then part=3; else part=2; fi; setenv bootpart 0:${part} ;run mmcboot
    bootcmd_legacy_mmc1=setenv mmcdev 1; if test -e mmc 1:3 /opt/fw_update; then part=3; else part=2; fi; setenv bootpart 1:${part} ;run mmcboot
    bootcmd_mmc0=devnum=0; run mmc_boot
    bootcmd_mmc1=devnum=1; run mmc_boot
    bootcmd_nand=run nandboot
    bootcmd_pxe=run boot_net_usb_start; dhcp; if pxe get; then pxe boot; fi
    bootcount=1
    bootdelay=2
    bootdir=/boot
    bootenvfile=uEnv.txt
    bootfile=zImage
    bootm_size=0x10000000
    bootpart=0:2
    bootscript=echo Running bootscript from mmc${mmcdev} ...; source ${loadaddr}
    console=ttyO0,115200n8
    cpu=armv7
    dfu_alt_info_emmc=rawemmc raw 0 3751936;boot part 1 1;rootfs part 1 2;MLO fat 1 1;MLO.raw raw 0x100 0x200;u-boot.img.raw raw 0x300 0x1000;u-env.raw raw 0x1300 0x200;spl-os-args.raw raw 0x1500 0x200;spl-os-image.raw raw 0x1700 0x6900;spl-os-args fat 1 1;spl-os-image fat 1 1;u-boot.img fat 1 1;uEnv.txt fat 1 1
    dfu_alt_info_mmc=boot part 0 1;rootfs part 0 2;MLO fat 0 1;MLO.raw raw 0x100 0x200;u-boot.img.raw raw 0x300 0x1000;u-env.raw raw 0x1300 0x200;spl-os-args.raw raw 0x1500 0x200;spl-os-image.raw raw 0x1700 0x6900;spl-os-args fat 0 1;spl-os-image fat 0 1;u-boot.img fat 0 1;uEnv.txt fat 0 1
    dfu_alt_info_nand=SPL part 0 1;SPL.backup1 part 0 2;SL.backup2 part 0 3;SPL.backup3 part 0 4;u-boot part 0 5;u-boot-spl-os part 0 6;kernel part 0 8;rootfs part 0 9
    dfu_alt_info_ram=kernel ram 0x80200000 0x4000000;fdt ram 0x80f80000 0x80000;ramdisk ram 0x81000000 0x4000000
    distro_bootcmd=for target in ${boot_targets}; do run bootcmd_${target}; done
    dtboaddr=0x89000000
    efi_dtb_prefixes=/ /dtb/ /dtb/current/
    envboot=mmc dev ${mmcdev}; if mmc rescan; then echo SD/MMC found on device ${mmcdev};if run loadbootenv; then echo Loaded env from ${bootenvfile};run importbootenv;fi;if test -n $uenvcmd; then echo Running uenvcmd ...;run uenvcmd;fi;fi;
    fdt_addr_r=0x88000000
    fdtaddr=0x88000000
    fdtcontroladdr=bdf39550
    fdtfile=am335x-boneblack.dtb
    finduuid=part uuid mmc ${bootpart} uuid
    get_overlaystring=for overlay in $name_overlays;do;setenv overlaystring ${overlaystring}'#'${overlay};done;
    ice_mii=mii
    importbootenv=echo Importing environment from mmc${mmcdev} ...; env import -t ${loadaddr} ${filesize}
    init_console=setenv console ttyO0,115200n8;mtdids=nand0=nand.0
    kernel_addr_r=0x82000000
    load_efi_dtb=load ${devtype} ${devnum}:${distro_bootpart} ${fdt_addr_r} ${prefix}${efi_fdtfile}
    loadaddr=0x82000000
    loadbootenv=fatload mmc ${mmcdev} ${loadaddr} ${bootenvfile}
    loadbootscript=load mmc ${mmcdev} ${loadaddr} boot.scr
    loadfdt=load ${devtype} ${bootpart} ${fdtaddr} ${bootdir}/${fdtfile}
    loadimage=load ${devtype} ${bootpart} ${loadaddr} ${bootdir}/${bootfile}
    loadramdisk=load mmc ${mmcdev} ${rdaddr} ramdisk.gz
    mmc_boot=if mmc dev ${devnum}; then devtype=mmc; run scan_dev_for_boot_part; fi
    mmcboot=mmc dev ${mmcdev}; devnum=${mmcdev}; setenv devtype mmc; if mmc rescan; then echo SD/MMC found on device ${mmcdev};if run loadimage; then run args_mmc; if test ${boot_fit} -eq 1; then run run_fit; else run mmcloados;fi;fi;fi;
    mmcdev=1
    mmcloados=if test ${boot_fdt} = yes || test ${boot_fdt} = try; then if run loadfdt; then bootz ${loadaddr} - ${fdtaddr}; else if test ${boot_fdt} = try; then bootz; else echo WARN: Cannot load the DT; fi; fi; else bootz; fi;
    mmcrootfstype=ext4 rootwait
    mtdparts=mtdparts=nand.0:128k(NAND.SPL),128k(NAND.SPL.backup1),128k(NAND.SPL.backup2),128k(NAND.SPL.backup3),256k(NAND.u-boot-spl-os),1m(NAND.u-boot),128k(NAND.u-boot-env),128k(NAND.u-boot-env.backup1),8m(NAND.kernel),-(NAND.file-system)
    name_fit=fitImage
    nandargs=setenv bootargs console=${console} ${optargs} root=${nandroot} rootfstype=${nandrootfstype}
    nandboot=echo Booting from nand ...; run nandargs; nand read ${fdtaddr} NAND.u-boot-spl-os; nand read ${loadaddr} NAND.kernel; bootz ${loadaddr} - ${fdtaddr}
    nandroot=ubi0:rootfs rw ubi.mtd=NAND.file-system,2048
    nandrootfstype=ubifs rootwait=1
    netargs=setenv bootargs console=${console} ${optargs} root=/dev/nfs nfsroot=${serverip}:${rootpath},${nfsopts} rw ip=dhcp
    netboot=echo Booting from network ...; setenv autoload no; dhcp; run netloadimage; run netloadfdt; run netargs; bootz ${loadaddr} - ${fdtaddr}
    netloadfdt=tftp ${fdtaddr} ${fdtfile}
    netloadimage=tftp ${loadaddr} ${bootfile}
    nfsopts=nolock
    partitions=uuid_disk=${uuid_gpt_disk};name=bootloader,start=384K,size=1792K,uuid=${uuid_gpt_bootloader};name=rootfs,start=2688K,size=-,uuid=${uuid_gpt_rootfs}
    pxefile_addr_r=0x80100000
    ramargs=setenv bootargs console=${console} ${optargs} root=${ramroot} rootfstype=${ramrootfstype}
    ramboot=echo Booting from ramdisk ...; run ramargs; bootz ${loadaddr} ${rdaddr} ${fdtaddr}
    ramdisk_addr_r=0x88080000
    ramroot=/dev/ram0 rw
    ramrootfstype=ext2
    rdaddr=0x88080000
    rootpath=/export/rootfs
    run_fit=bootm ${addr_fit}#${fdtfile}${overlaystring}
    scan_dev_for_boot=echo Scanning ${devtype} ${devnum}:${distro_bootpart}...; for prefix in ${boot_prefixes}; do run scan_dev_for_extlinux; run scan_dev_for_scripts; done;run scan_dev_for_efi;
    scan_dev_for_boot_part=part list ${devtype} ${devnum} -bootable devplist; env exists devplist || setenv devplist 1; for distro_bootpart in ${devplist}; do if fstype ${devtype} ${devnum}:${distro_bootpart} bootfstype; then run scan_dev_for_boot; fi; done; setenv devplist
    scan_dev_for_efi=setenv efi_fdtfile ${fdtfile}; if test -z "${fdtfile}" -a -n "${soc}"; then setenv efi_fdtfile ${soc}-${board}${boardver}.dtb; fi; for prefix in ${efi_dtb_prefixes}; do if test -e ${devtype} ${devnum}:${distro_bootpart} ${prefix}${efi_fdtfile}; then run load_efi_dtb; fi;done;if test -e ${devtype} ${devnum}:${distro_bootpart} efi/boot/bootarm.efi; then echo Found EFI removable media binary efi/boot/bootarm.efi; run boot_efi_binary; echo EFI LOAD FAILED: continuing...; fi; setenv efi_fdtfile
    scan_dev_for_extlinux=if test -e ${devtype} ${devnum}:${distro_bootpart} ${prefix}${boot_syslinux_conf}; then echo Found ${prefix}${boot_syslinux_conf}; run boot_extlinux; echo SCRIPT FAILED: continuing...; fi
    scan_dev_for_scripts=for script in ${boot_scripts}; do if test -e ${devtype} ${devnum}:${distro_bootpart} ${prefix}${script}; then echo Found U-Boot script ${prefix}${script}; run boot_a_script; echo SCRIPT FAILED: continuing...; fi; done
    scriptaddr=0x80000000
    soc=am33xx
    spiargs=setenv bootargs console=${console} ${optargs} root=${spiroot} rootfstype=${spirootfstype}
    spiboot=echo Booting from spi ...; run spiargs; sf probe ${spibusno}:0; sf read ${loadaddr} ${spisrcaddr} ${spiimgsize}; bootz ${loadaddr}
    spibusno=0
    spiimgsize=0x362000
    spiroot=/dev/mtdblock4 rw
    spirootfstype=jffs2
    spisrcaddr=0xe0000
    static_ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}::off
    stderr=serial@44e09000
    stdin=serial@44e09000
    stdout=serial@44e09000
    update_to_fit=setenv loadaddr ${addr_fit}; setenv bootfile ${name_fit}
    usb_boot=usb start; if usb dev ${devnum}; then devtype=usb; run scan_dev_for_boot_part; fi
    vendor=ti
    ver=U-Boot 2020.01-g2781231a33 (Oct 03 2022 - 10:05:37 +0000)
    
    Environment size: 8830/131068 bytes
    => load ${devtype} 1:8 ${fdtaddr} /${fdtfile}                                          editenv loadfdt
    edit: load ${devtype} 1:8 ${fdtaddr} /${fdtfile}
    => 
    => 
    => 
    => boot
    ## Error: "findfdt" not defined
    switch to partitions #0, OK
    mmc1(part 0) is current device
    SD/MMC found on device 1
    0 bytes read in 1 ms (0 Bytes/s)
    Loaded env from uEnv.txt
    Importing environment from mmc1 ...
    SD/MMC found on device 0
    3858944 bytes read in 508 ms (7.2 MiB/s)
    62921 bytes read in 12 ms (5 MiB/s)
    ## Flattened Device Tree blob at 88000000
       Booting using the fdt blob at 0x88000000
       Loading Device Tree to 8ffed000, end 8ffff5c8 ... OK
    
    Starting kernel ...
    
    [    0.000000] Booting Linux on physical CPU 0x0
    [    0.000000] Linux version 5.4.106-g023faefa70 (oe-user@oe-host) (gcc version 9.2.1 20191025 (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10))) #1 PREEMPT Tue Sep 20 14:05:50 UTC 2022
    [    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 0xbd000000
    [    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: 260162
    [    0.000000] Kernel command line: console=ttyO0,115200n8 root=PARTUUID= rw rootfstype=ext4 rootwait
    [    0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes, linear)
    [    0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes, linear)
    [    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
    [    0.000000] Memory: 976352K/1047552K available (7168K kernel code, 254K rwdata, 2508K rodata, 1024K init, 236K bss, 22048K reserved, 49152K cma-reserved, 212992K highmem)
    [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
    [    0.000000] rcu: Preemptible hierarchical RCU implementation.
    [    0.000000] 	Tasks RCU enabled.
    [    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
    [    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
    [    0.000000] IRQ: Found an INTC at 0x(ptrval) (revision 5.0) with 128 interrupts
    [    0.000000] random: get_random_bytes called from start_kernel+0x2b4/0x470 with crng_init=0
    [    0.000000] OMAP clockevent source: timer2 at 24000000 Hz
    [    0.000034] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns
    [    0.000082] clocksource: timer1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
    [    0.000106] OMAP clocksource: timer1 at 24000000 Hz
    [    0.000761] timer_probe: no matching timers found
    [    0.001141] Console: colour dummy device 80x30
    [    0.001209] WARNING: Your 'console=ttyO0' has been replaced by 'ttyS0'
    [    0.001226] This ensures that you still see kernel messages. Please
    [    0.001240] update your kernel commandline.
    [    0.001333] Calibrating delay loop... 298.59 BogoMIPS (lpj=1492992)
    [    0.067466] pid_max: default: 32768 minimum: 301
    [    0.068051] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes, linear)
    [    0.068100] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes, linear)
    [    0.070085] CPU: Testing write buffer coherency: ok
    [    0.070220] CPU0: Spectre v2: using BPIALL workaround
    [    0.072004] Setting up static identity map for 0x80100000 - 0x80100060
    [    0.072353] rcu: Hierarchical SRCU implementation.
    [    0.072549] EFI services will not be available.
    [    0.073360] devtmpfs: initialized
    [    0.105120] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
    [    0.105965] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
    [    0.106018] futex hash table entries: 256 (order: -1, 3072 bytes, linear)
    [    0.113284] pinctrl core: initialized pinctrl subsystem
    [    0.114964] DMI not present or invalid.
    [    0.115968] NET: Registered protocol family 16
    [    0.121456] DMA: preallocated 256 KiB pool for atomic coherent allocations
    [    0.169178] l3-aon-clkctrl:0000:0: failed to disable
    [    0.173079] cpuidle: using governor ladder
    [    0.173161] cpuidle: using governor menu
    [    0.211729] No ATAGs?
    [    0.211751] hw-breakpoint: debug architecture 0x4 unsupported.
    [    0.250012] debugfs: Directory '49000000.edma' with parent 'dmaengine' already present!
    [    0.250084] edma 49000000.edma: TI EDMA DMA engine driver
    [    0.254181] iommu: Default domain type: Translated 
    [    0.257383] SCSI subsystem initialized
    [    0.259110] mc: Linux media interface: v0.10
    [    0.259241] videodev: Linux video capture interface: v2.00
    [    0.259340] pps_core: LinuxPPS API ver. 1 registered
    [    0.259360] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [    0.259414] PTP clock support registered
    [    0.259501] EDAC MC: Ver: 3.0.0
    [    0.264544] clocksource: Switched to clocksource timer1
    [    0.285085] thermal_sys: Registered thermal governor 'fair_share'
    [    0.285104] thermal_sys: Registered thermal governor 'bang_bang'
    [    0.285141] thermal_sys: Registered thermal governor 'step_wise'
    [    0.285159] thermal_sys: Registered thermal governor 'user_space'
    [    0.285176] thermal_sys: Registered thermal governor 'power_allocator'
    [    0.286353] NET: Registered protocol family 2
    [    0.288026] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes, linear)
    [    0.288108] TCP established hash table entries: 8192 (order: 3, 32768 bytes, linear)
    [    0.288333] TCP bind hash table entries: 8192 (order: 3, 32768 bytes, linear)
    [    0.288549] TCP: Hash tables configured (established 8192 bind 8192)
    [    0.288833] UDP hash table entries: 512 (order: 1, 8192 bytes, linear)
    [    0.288910] UDP-Lite hash table entries: 512 (order: 1, 8192 bytes, linear)
    [    0.289275] NET: Registered protocol family 1
    [    0.291139] hw perfevents: enabled with armv7_cortex_a8 PMU driver, 5 counters available
    [    0.294107] Initialise system trusted keyrings
    [    0.294863] workingset: timestamp_bits=14 max_order=18 bucket_order=4
    [    0.308406] ntfs: driver 2.1.32 [Flags: R/O].
    [    0.310091] Key type asymmetric registered
    [    0.310126] Asymmetric key parser 'x509' registered
    [    0.310265] bounce: pool size: 64 pages
    [    0.310379] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 245)
    [    0.310403] io scheduler mq-deadline registered
    [    0.310422] io scheduler kyber registered
    [    0.322146] OMAP GPIO hardware version 0.1
    [    0.369797] omap-mailbox 480c8000.mailbox: omap mailbox rev 0x400
    [    0.416300] pinctrl-single 44e10800.pinmux: 142 pins, size 568
    [    0.551041] Serial: 8250/16550 driver, 10 ports, IRQ sharing enabled
    [    0.561577] 44e09000.serial: ttyS0 at MMIO 0x44e09000 (irq = 29, base_baud = 3000000) is a 8250
    [    1.128227] printk: console [ttyS0] enabled
    [    1.135650] 48024000.serial: ttyS2 at MMIO 0x48024000 (irq = 35, base_baud = 3000000) is a 8250
    [    1.147620] 481a8000.serial: ttyS4 at MMIO 0x481a8000 (irq = 49, base_baud = 3000000) is a 8250
    [    1.162673] omap_rng 48310000.rng: Random Number Generator ver. 20
    [    1.169228] random: fast init done
    [    1.173074] random: crng init done
    [    1.215620] brd: module loaded
    [    1.235906] loop: module loaded
    [    1.253036] libphy: Fixed MDIO Bus: probed
    [    1.324686] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6, bus freq 1000000
    [    1.332422] libphy: 4a101000.mdio: probed
    [    1.336543] mdio_bus 4a101000.mdio: mdio has invalid PHY address
    [    1.342609] mdio_bus 4a101000.mdio: scan phy mdio at address 0
    [    1.348814] mdio_bus 4a101000.mdio: scan phy mdio at address 1
    [    1.357091] davinci_mdio 4a101000.mdio: phy[1]: device 4a101000.mdio:01, driver Micrel KSZ886X Switch
    [    1.368324] cpsw 4a100000.ethernet: initialized cpsw ale version 1.4
    [    1.374984] cpsw 4a100000.ethernet: ALE Table size 1024
    [    1.380444] cpsw 4a100000.ethernet: cpts: overflow check period 500 (jiffies)
    [    1.387907] cpsw 4a100000.ethernet: Detected MACID = 98:5d:ad:e8:d3:e9
    [    1.397314] PPP generic driver version 2.4.2
    [    1.402115] PPP BSD Compression module registered
    [    1.407064] PPP Deflate Compression module registered
    [    1.413672] i2c /dev entries driver
    [    1.423229] cpuidle: enable-method property 'ti,am3352' found operations
    [    1.431593] sdhci: Secure Digital Host Controller Interface driver
    [    1.437911] sdhci: Copyright(c) Pierre Ossman
    [    1.526041] sdhci-pltfm: SDHCI platform and OF driver helper
    [    1.535592] ledtrig-cpu: registered to indicate activity on CPUs
    [    1.552285] NET: Registered protocol family 10
    [    1.557638] mmc2: queuing unknown CIS tuple 0x80 (2 bytes)
    [    1.566111] Segment Routing with IPv6
    [    1.570240] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
    [    1.576575] mmc1: new high speed MMC card at address 0001
    [    1.583056] mmc2: queuing unknown CIS tuple 0x80 (3 bytes)
    [    1.589495] NET: Registered protocol family 17
    [    1.594515] Key type dns_resolver registered
    [    1.596305] mmcblk1: mmc1:0001 W62704 3.56 GiB 
    [    1.605697] omap_voltage_late_init: Voltage driver support not added
    [    1.612808] mmc2: queuing unknown CIS tuple 0x80 (3 bytes)
    [    1.618512] mmcblk1boot0: mmc1:0001 W62704 partition 1 2.00 MiB
    [    1.625631] Loading compiled-in X.509 certificates
    [    1.635694] mmcblk1boot1: mmc1:0001 W62704 partition 2 2.00 MiB
    [    1.643681] mmc2: queuing unknown CIS tuple 0x80 (7 bytes)
    [    1.655290] mmcblk1rpmb: mmc1:0001 W62704 partition 3 512 KiB, chardev (244:0)
    [    1.665335] mmc2: queuing unknown CIS tuple 0x80 (6 bytes)
    [    1.683373]  mmcblk1: p1 p2 p3 p4 < p5 p6 p7 p8 p9 p10 p11 >
    [    1.734957] tps65910 0-002d: No interrupt support, no core IRQ
    [    1.751058] mmc2: new high speed SDIO card at address 0001
    [    1.757138] vrtc: supplied by vmmcsd_fixed
    [    1.764445] vio: supplied by vmmcsd_fixed
    [    1.771084] vdd_mpu: supplied by vmmcsd_fixed
    [    1.777513] vdd2: supplied by vmmcsd_fixed
    [    1.785472] vdig1: supplied by vmmcsd_fixed
    [    1.791686] vdig2: supplied by vmmcsd_fixed
    [    1.797962] vpll: supplied by vmmcsd_fixed
    [    1.804085] vdac: supplied by vmmcsd_fixed
    [    1.810251] vaux1: supplied by vmmcsd_fixed
    [    1.816604] vaux2: supplied by vmmcsd_fixed
    [    1.822847] vaux33: supplied by vmmcsd_fixed
    [    1.829223] vmmc: supplied by vmmcsd_fixed
    [    1.835362] vbb: supplied by vmmcsd_fixed
    [    1.841413] tps65910-rtc tps65910-rtc: IRQ is not free.
    [    1.846816] tps65910-rtc: probe of tps65910-rtc failed with error -22
    [    1.854967] pinctrl-single 44e10800.pinmux: pin PIN108 already requested by 47810000.mmc; cannot claim for 0-0070
    [    1.865371] pinctrl-single 44e10800.pinmux: pin-108 (0-0070) status -22
    [    1.872043] pinctrl-single 44e10800.pinmux: could not request pin 108 (PIN108) from group nxp_hdmi_bonelt_pins  on device pinctrl-single
    [    1.884421] tda998x 0-0070: Error applying setting, reverse things back
    [    1.891155] tda998x: probe of 0-0070 failed with error -22
    [    1.896881] omap_i2c 44e0b000.i2c: bus 0 rev0.11 at 400 kHz
    [    1.905392] omap_i2c 4802a000.i2c: bus 1 rev0.11 at 100 kHz
    [    1.921846] omap_reset_deassert: timedout waiting for gfx:0
    [    1.927612] ti-sysc: probe of ocp:target-module@56000000 failed with error -110
    [    1.937369] cpufreq: cpufreq_online: CPU0: Running at unlisted freq: 600000 KHz
    [    1.945020] cpu cpu0: dev_pm_opp_set_rate: failed to find current OPP for freq 600000000 (-34)
    [    1.953952] cpufreq: cpufreq_online: CPU0: Unlisted initial frequency changed to: 300000 KHz
    [    1.967192] input: gpio_buttons0 as /devices/platform/gpio_buttons0/input/input0
    [    1.977086] hctosys: unable to open rtc device (rtc0)
    [    1.987361] VFS: PARTUUID= is invalid.
    [    1.987361] Expected PARTUUID=<valid-uuid-id>[/PARTNROFF=%d]
    [    1.997282] Disabling rootwait; root= is invalid.
    [    2.002947] VFS: Cannot open root device "PARTUUID=" or unknown-block(0,0): error -6
    [    2.011034] Please append a correct "root=" boot option; here are the available partitions:
    [    2.019884] 0100           65536 ram0 
    [    2.019901]  (driver?)
    [    2.026303] 0101           65536 ram1 
    [    2.026317]  (driver?)
    [    2.032514] 0102           65536 ram2 
    [    2.032524]  (driver?)
    [    2.038902] 0103           65536 ram3 
    [    2.038914]  (driver?)
    [    2.045277] 0104           65536 ram4 
    [    2.045289]  (driver?)
    [    2.051486] 0105           65536 ram5 
    [    2.051497]  (driver?)
    [    2.057766] 0106           65536 ram6 
    [    2.057778]  (driver?)
    [    2.063969] 0107           65536 ram7 
    [    2.063979]  (driver?)
    [    2.070239] 0108           65536 ram8 
    [    2.070251]  (driver?)
    [    2.076615] 0109           65536 ram9 
    [    2.076628]  (driver?)
    [    2.082826] 010a           65536 ram10 
    [    2.082836]  (driver?)
    [    2.089194] 010b           65536 ram11 
    [    2.089205]  (driver?)
    [    2.095553] 010c           65536 ram12 
    [    2.095565]  (driver?)
    [    2.101845] 010d           65536 ram13 
    [    2.101855]  (driver?)
    [    2.108292] 010e           65536 ram14 
    [    2.108305]  (driver?)
    [    2.114660] 010f           65536 ram15 
    [    2.114672]  (driver?)
    [    2.120973] b300         3735552 mmcblk1 
    [    2.120988]  driver: mmcblk
    [    2.127952]   b301           32768 mmcblk1p1 0349f293-01
    [    2.127963] 
    [    2.135003]   b302          524288 mmcblk1p2 0349f293-02
    [    2.135015] 
    [    2.141909]   b303          524288 mmcblk1p3 0349f293-03
    [    2.141918] 
    [    2.148885]   b304               1 mmcblk1p4 
    [    2.148896] 
    [    2.154971]   b305           65536 mmcblk1p5 0349f293-05
    [    2.154983] 
    [    2.161876]   b306           65536 mmcblk1p6 0349f293-06
    [    2.161885] 
    [    2.168852]   b307           32768 mmcblk1p7 0349f293-07
    [    2.168863] 
    [    2.175818]   b308           32768 mmcblk1p8 0349f293-08
    [    2.175829] 
    [    2.182719]   b309            5120 mmcblk1p9 0349f293-09
    [    2.182728] 
    [    2.189769]   b30a          524288 mmcblk1p10 0349f293-0a
    [    2.189780] 
    [    2.196837]   b30b         1920000 mmcblk1p11 0349f293-0b
    [    2.196847] 
    [    2.203846] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
    [    2.212214] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0) ]---
    0 MiB
    MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1
    Loading Environment from FAT... Net:   No ethernet found.
    Hit any key to stop autoboot:  2  0

    Jitendra 

  • Hi Andreas,

    I am able to boot from kernel partition after changing environmental variables.

    loadimage=load ${devtype} 1:8 ${loadaddr} /${bootfile}
    loadfdt=load ${devtype} 1:8 ${fdtaddr} /${fdtfile}
    args_mmc=run finduuid;setenv bootargs console=${console} ${optargs} root=/dev/mmcblk1p3 rw rootfstype=${mmcrootfstype}

    after that I copy ramdisk image in partition mmcblk1p3 but I am getting bellow error.

    [ 2.009564] EXT4-fs (mmcblk1p3): mounted filesystem with ordered data mode. Opts: (null)
    [ 2.018430] VFS: Mounted root (ext4 filesystem) on device 179:3.
    [ 2.026423] devtmpfs: error mounting -2
    [ 2.039659] Freeing unused kernel memory: 1024K
    [ 2.046741] Run /sbin/init as init process
    [ 2.051083] Run /etc/init as init process
    [ 2.055524] Run /bin/init as init process
    [ 2.059673] Run /bin/sh as init process
    [ 2.063619] Kernel panic - not syncing: No working init found. Try passing init= option to kernel. See Linux Documentation/admin-guide/init.rst for guidance.
    [ 2.077931] ---[ end Kernel panic - not syncing: No working init found. Try passing init= option to kernel. See Linux Documentation/admin-guide/init.rst for guidance. ]---

    Can you please help ?

    Thank You,

    Jitendra

  • [ 2.063619] Kernel panic - not syncing: No working init found. Try passing init= option to kernel. See Linux Documentation/admin-guide/init.rst for guidance.
    [ 2.077931] ---[ end Kernel panic - not syncing: No working init found. Try passing init= option to kernel. See Linux Documentation/admin-guide/init.rst for guidance. ]---

    Can you please check this FAQ here (end of it):

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1176944/faq-linux-how-to-boot-sitara-am3x-am4x-am6x-devices-from-initramfs-cpio-archive-ram-disk

    Regards, Andreas