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.

TDA2P-ACD: unable to boot from lzma initrd with linux

Part Number: TDA2P-ACD
Other Parts Discussed in Thread: DRA742

I am able to boot with initramfs with lzma compression.

i have 20 block of 4MB /ramdisk allocation and size of compressed fs is 14MB and of uncompress is 70 MB

env:

arch=arm
baudrate=115200
board=dra7xx
board_name=dra7xx
boot_fdt=try
boot_os=0
bootargs=androidboot.serialno=${serial#}
bootargs_base=setenv bootargs console=${console} stdin=${stdin} stdout=${stdout} stderr=${stderr} ro enable_wait_mode=off earlyprintk
bootargs_initramfs=run bootargs_base; setenv bootargs ${bootargs} rdinit=/sbin/init noinitrd
bootcmd=run bootcmd_cf_nor
bootcmd_cf_nor=run bootargs_initramfs uimage_load_nor initramfs_load_nor;bootm ${loadaddr} ${loadaddr_initramfs} ${fdt_addr}
bootdelay=2
bootdir=/boot
bootfile=zImage
bootm_size=0x10000000
bootpart=0:2
console=ttyO2,115200n8
cpu=armv7
dofastboot=0
ethaddr=04:79:b7:90:e0:a8
fdt_addr=0x88000000
fdt_addr_r=0x88000000
fdt_high=0xffffffff
fdt_offset=0x08180000
fdt_size=0x8000
fdtaddr=0x88000000
fdtcontroladdr=beee3598
fdtfile=undefined
findfdt=if test $board_name = dra7xx; then setenv fdtfile dra7-evm.dtb; fi;if test $board_name = dra76x; then setenv fdtfile dra76-evm.dtb; fi;if test $board_findfdt != undefined; then run board_findfdt; fi;if test $fdtfile = undefined; then echo WARNING: Could not determine device tree to use; fi;
initramfs_copy_cmd=cp
initramfs_load_nor=${initramfs_copy_cmd} ${initramfs_offset} ${loadaddr_initramfs} ${initramfs_size}
initramfs_offset=0x086C0000
initramfs_size=0x00A00000
initrd_high=0xffffffff
kernel_addr_r=0x82000000
loadaddr=0x82000000
loadaddr_initramfs=0x88080000
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
pxefile_addr_r=0x80100000
ramdisk_addr_r=0x88080000
rdaddr=0x88080000
reboot_image=boot
rootpath=/export/rootfs
scriptaddr=0x80000000
soc=omap5
static_ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}::off
stderr=serial@48020000
stdin=serial@48020000
stdout=serial@48020000
uimage_copy_cmd=cp
uimage_load_nor=${uimage_copy_cmd} ${fdt_offset} ${fdt_addr} ${fdt_size} && ${uimage_copy_cmd} ${uimage_offset} ${loadaddr} ${uimage_size}
uimage_offset=0x081C0000
uimage_size=0x100000
usbtty=cdc_acm
vendor=ti
ver=U-Boot 2016.05-00064-gc7cf5219c4ca (Jun 28 2019 - 17:42:48 -0400)
vram=16M

LOG:


U-Boot 2016.05-00064-gc7cf5219c4ca (Jun 28 2019 - 17:42:48 -0400)

CPU : DRA762-GP ES1.0
Model: TI DRA742
Board: AVPIM Proto Mar 2019 REV 01
DRAM: Flash: ## Unknown flash on Bank 1 - Size = 0x00000000 = 0 MB
0 Bytes
*** Warning - bad CRC, using default environment

Net: Could not get PHY for ethernet@48484000: addr 2

Warning: ethernet@48484000 using MAC address from ROM
eth0: ethernet@48484000
Hit any key to stop autoboot: 0
## Booting kernel from Legacy Image at 82000000 ...
Image Name: Linux uImage
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 3472704 Bytes = 3.3 MiB
Load Address: 80008000
Entry Point: 80008000
Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at 88080000 ...
Image Name: Ramdisk Image
Image Type: ARM Linux RAMDisk Image (lzma compressed)
Data Size: 14662886 Bytes = 14 MiB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
## Flattened Device Tree blob at 88000000
Booting using the fdt blob at 0x88000000
Loading Kernel Image ... OK
Using Device Tree in place at 88000000, end 8801c9ac

Starting kernel ...

[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Initializing cgroup subsys cpuset
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Initializing cgroup subsys cpuacct
[ 0.000000] Linux version 4.4.84-00052-ga2ee5f975a0b-dirty (root@ubuntu-b3f523dc-be13-4dcc-9b90-711edd516ef9) (gcc version 5.3.1 20160113 (Linaro GCC 5.3-2016.02) ) #20 PREEMPT Tue Aug 20 20:31:32 EDT 2019
[ 0.000000] CPU: ARMv7 Processor [412fc0f2] revision 2 (ARMv7), cr=30c53c7d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
[ 0.000000] Machine model: TI DRA762 EVM
[ 0.000000] bootconsole [earlycon0] enabled
[ 0.000000] Reserved memory: created DMA memory pool at 0x0000000040300000, size 3 MiB
[ 0.000000] Reserved memory: initialized node cmem@40300000, compatible id shared-dma-pool
[ 0.000000] Reserved memory: regions without no-map are not yet supported
[ 0.000000] Reserved memory: created CMA memory pool at 0x0000000099000000, size 80 MiB
[ 0.000000] Reserved memory: initialized node ipu2_cma@95800000, compatible id shared-dma-pool
[ 0.000000] Reserved memory: created CMA memory pool at 0x000000009e000000, size 32 MiB
[ 0.000000] Reserved memory: initialized node ipu1_cma@9d000000, compatible id shared-dma-pool
[ 0.000000] cma: Reserved 24 MiB at 0x0000000095800000
[ 0.000000] Memory policy: Data cache writeback
[ 0.000000] OMAP4: Map 0x000000009fd00000 to fe600000 for dram barrier
[ 0.000000] Hit pending asynchronous external abort (FSR=0x00000211) during first unmask, this is most likely caused by a firmware/bootloader bug.
[ 0.000000] ------------[ cut here ]------------
[ 0.000000] WARNING: CPU: 0 PID: 0 at arch/arm/kernel/devtree.c:157 arm_dt_init_cpu_maps+0x140/0x180()
[ 0.000000] DT /cpu 2 nodes greater than max cores 1, capping them
[ 0.000000] Modules linked in:
[ 0.000000] CPU: 0 PID: 0 Comm: swapper Not tainted 4.4.84-00052-ga2ee5f975a0b-dirty #20
[ 0.000000] Hardware name: Generic DRA74X (Flattened Device Tree)
[ 0.000000] Backtrace:
[ 0.000000] [<c0013330>] (dump_backtrace) from [<c001352c>] (show_stack+0x18/0x1c)
[ 0.000000] r7:c08e9a2c r6:0000009d r5:00000009 r4:00000000
[ 0.000000] [<c0013514>] (show_stack) from [<c02aeecc>] (dump_stack+0x24/0x28)
[ 0.000000] [<c02aeea8>] (dump_stack) from [<c0037324>] (warn_slowpath_common+0x88/0xb4)
[ 0.000000] [<c003729c>] (warn_slowpath_common) from [<c0037388>] (warn_slowpath_fmt+0x38/0x40)
[ 0.000000] r8:00000001 r7:c0827a68 r6:c081edb0 r5:00000000 r4:c081ee48
[ 0.000000] [<c0037354>] (warn_slowpath_fmt) from [<c08e9a2c>] (arm_dt_init_cpu_maps+0x140/0x180)
[ 0.000000] r3:00000002 r2:c081ee48
[ 0.000000] r4:d52d2ecc
[ 0.000000] [<c08e98ec>] (arm_dt_init_cpu_maps) from [<c08e8fb0>] (setup_arch+0x1a0/0x208)
[ 0.000000] r9:412fc0f2 r8:80007000 r7:c0936874 r6:c0920a18 r5:c093204c r4:c097f140
[ 0.000000] [<c08e8e10>] (setup_arch) from [<c08e2494>] (start_kernel+0x60/0x558)
[ 0.000000] [<c08e2434>] (start_kernel) from [<8000808c>] (0x8000808c)
[ 0.000000] ---[ end trace cb88537fdc8fa200 ]---
[ 0.000000] CPU: All CPU(s) started in HYP mode.
[ 0.000000] CPU: Virtualization extensions available.
[ 0.000000] DRA762 ES1.0
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 129152
[ 0.000000] Kernel command line: console=ttyO2,115200n8 stdin=serial@48020000 stdout=serial@48020000 stderr=serial@48020000 ro enable_wait_mode=off earlyprintk rdinit=/sbin/init noinitrd
[ 0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
[ 0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
[ 0.000000] Memory: 322104K/521216K available (6691K kernel code, 311K rwdata, 2368K rodata, 312K init, 270K bss, 59848K reserved, 139264K 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 : 0xe0800000 - 0xff800000 ( 496 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xe0000000 ( 512 MB)
[ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
[ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
[ 0.000000] .text : 0xc0008000 - 0xc08e100c (9061 kB)
[ 0.000000] .init : 0xc08e2000 - 0xc0930000 ( 312 kB)
[ 0.000000] .data : 0xc0930000 - 0xc097dcf8 ( 312 kB)
[ 0.000000] .bss : 0xc097f000 - 0xc09c2b58 ( 271 kB)
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] Preemptible hierarchical RCU implementation.
[ 0.000000] Build-time adjustment of leaf fanout to 32.
[ 0.000000] NR_IRQS:16 nr_irqs:16 16
[ 0.000000] ti_dt_clocks_register: failed to lookup clock node gmac_gmii_ref_clk_div
[ 0.000000] OMAP clockevent source: timer1 at 32786 Hz
[ 0.000000] Architected cp15 timer(s) running at 6.14MHz (phys).
[ 0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x16af5adb9, max_idle_ns: 440795202250 ns
[ 0.000004] sched_clock: 56 bits at 6MHz, resolution 162ns, wraps every 4398046511023ns
[ 0.008303] Switching to timer-based delay loop, resolution 162ns
[ 0.014948] clocksource: 32k_counter: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 58327039986419 ns
[ 0.025208] OMAP clocksource: 32k_counter at 32768 Hz
[ 0.030914] Console: colour dummy device 80x30
[ 0.035564] WARNING: Your 'console=ttyO2' has been replaced by 'ttyS2'
[ 0.042352] This ensures that you still see kernel messages. Please
[ 0.048861] update your kernel commandline.
[ 0.053242] Calibrating delay loop (skipped), value calculated using timer frequency.. 12.29 BogoMIPS (lpj=61475)
[ 0.063862] pid_max: default: 32768 minimum: 301
[ 0.068740] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.075619] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.083350] Initializing cgroup subsys io
[ 0.087561] Initializing cgroup subsys memory
[ 0.092128] Initializing cgroup subsys devices
[ 0.096773] Initializing cgroup subsys freezer
[ 0.101422] Initializing cgroup subsys perf_event
[ 0.106332] Initializing cgroup subsys pids
[ 0.110716] CPU: Testing write buffer coherency: ok
[ 0.115960] Setting up static identity map for 0x80008300 - 0x80008360
[ 0.123363] devtmpfs: initialized
[ 0.150236] VFP support v0.3: implementor 41 architecture 4 part 30 variant f rev 0
[ 0.158806] omap_hwmod: l3_main_2 using broken dt data from ocp
[ 0.318317] omap_hwmod: timer13: _wait_target_ready failed: -16
[ 0.324478] omap_hwmod: timer13: cannot be enabled for reset (3)
[ 0.333300] omap_hwmod: timer14: _wait_target_ready failed: -16
[ 0.339459] omap_hwmod: timer14: cannot be enabled for reset (3)
[ 0.348282] omap_hwmod: timer15: _wait_target_ready failed: -16
[ 0.354440] omap_hwmod: timer15: cannot be enabled for reset (3)
[ 0.363265] omap_hwmod: timer16: _wait_target_ready failed: -16
[ 0.369418] omap_hwmod: timer16: cannot be enabled for reset (3)
[ 0.376217] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[ 0.386412] futex hash table entries: 256 (order: -1, 3072 bytes)
[ 0.396144] ------------[ cut here ]------------
[ 0.401010] WARNING: CPU: 0 PID: 1 at mm/cma.c:117 cma_init_reserved_areas+0x13c/0x21c()
[ 0.409391] Modules linked in:
[ 0.412617] CPU: 0 PID: 1 Comm: swapper Tainted: G W 4.4.84-00052-ga2ee5f975a0b-dirty #20
[ 0.422252] Hardware name: Generic DRA74X (Flattened Device Tree)
[ 0.428590] Backtrace:
[ 0.431190] [<c0013330>] (dump_backtrace) from [<c001352c>] (show_stack+0x18/0x1c)
[ 0.439043] r7:c08fe2d4 r6:00000075 r5:00000009 r4:00000000
[ 0.444949] [<c0013514>] (show_stack) from [<c02aeecc>] (dump_stack+0x24/0x28)
[ 0.452455] [<c02aeea8>] (dump_stack) from [<c0037324>] (warn_slowpath_common+0x88/0xb4)
[ 0.460847] [<c003729c>] (warn_slowpath_common) from [<c00373f4>] (warn_slowpath_null+0x24/0x2c)
[ 0.469942] r8:024080c0 r7:c097b498 r6:0009fd00 r5:c082e37c r4:0009fc00
[ 0.476918] [<c00373d0>] (warn_slowpath_null) from [<c08fe2d4>] (cma_init_reserved_areas+0x13c/0x21c)
[ 0.486476] [<c08fe198>] (cma_init_reserved_areas) from [<c0009884>] (do_one_initcall+0x70/0x198)
[ 0.495660] r10:00000000 r9:00000000 r8:00000000 r7:00000000 r6:00000000 r5:c068a598
[ 0.503795] r4:00000000
[ 0.506481] [<c0009814>] (do_one_initcall) from [<c08e359c>] (do_initcall_level+0xe8/0x120)
[ 0.515137] [<c08e34b4>] (do_initcall_level) from [<c08e35f8>] (do_initcalls+0x24/0x48)
[ 0.523430] [<c08e35d4>] (do_initcalls) from [<c08e3648>] (do_basic_setup+0x2c/0x38)
[ 0.531465] [<c08e361c>] (do_basic_setup) from [<c08e398c>] (kernel_init_freeable+0x2dc/0x388)
[ 0.540384] [<c08e36b0>] (kernel_init_freeable) from [<c068a5b0>] (kernel_init+0x18/0x180)
[ 0.548958] [<c068a598>] (kernel_init) from [<c000fc68>] (ret_from_fork+0x14/0x2c)
[ 0.556804] ---[ end trace cb88537fdc8fa201 ]---
[ 0.562542] pinctrl core: initialized pinctrl subsystem
[ 0.568641] NET: Registered protocol family 16
[ 0.574008] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.603332] cpuidle: using governor ladder
[ 0.633345] cpuidle: using governor menu
[ 0.644355] OMAP GPIO hardware version 0.1
[ 0.653603] irq: no irq domain found for /ocp/l4@4a000000/scm@2000/pinmux@1400 !
[ 0.677831] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
[ 0.686142] hw-breakpoint: maximum watchpoint size is 8 bytes.
[ 0.692632] omap4_sram_init:Unable to allocate sram needed to handle errata I688
[ 0.700318] omap4_sram_init:Unable to get sram pool needed to handle errata I688
[ 0.708331] OMAP DMA hardware revision 0.0
[ 0.751161] omap-dma-engine 4a056000.dma-controller: OMAP DMA engine driver (LinkedList1/2/3 supported)
[ 0.761727] edma 43300000.edma: memcpy is disabled
[ 0.770347] edma 43300000.edma: TI EDMA DMA engine driver
[ 0.779368] omap-iommu 40d01000.mmu: 40d01000.mmu registered
[ 0.785376] omap-iommu 40d02000.mmu: 40d02000.mmu registered
[ 0.791374] omap-iommu 58882000.mmu: 58882000.mmu registered
[ 0.797363] omap-iommu 55082000.mmu: 55082000.mmu registered
[ 0.803439] omap-iommu 41501000.mmu: 41501000.mmu registered
[ 0.809455] omap-iommu 41502000.mmu: 41502000.mmu registered
[ 0.817949] palmas 0-0058: IRQ missing: skipping irq request
[ 0.835643] palmas 0-0058: Muxing GPIO 0, PWM 3, LED 0
[ 0.844651] smps5: failed to get the current voltage(-22)
[ 0.850362] palmas-pmic 48070000.i2c:tps65917@58:tps65917_pmic: failed to register 48070000.i2c:tps65917@58:tps65917_pmic regulator
[ 0.862777] palmas-pmic: probe of 48070000.i2c:tps65917@58:tps65917_pmic failed with error -22
[ 0.871790] irq: no irq domain found for /ocp/i2c@48070000/tps65917@58 !
[ 0.879191] pcf857x: probe of 0-0020 failed with error -121
[ 0.885188] pcf857x: probe of 0-0021 failed with error -121
[ 0.891183] pcf857x: probe of 0-0026 failed with error -121
[ 0.897004] omap_i2c 48070000.i2c: bus 0 rev0.12 at 400 kHz
[ 0.903142] omap_i2c 48060000.i2c: bus 2 rev0.12 at 400 kHz
[ 0.909076] media: Linux media interface: v0.10
[ 0.913857] Linux video capture interface: v2.00
[ 0.918708] pps_core: LinuxPPS API ver. 1 registered
[ 0.923888] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[ 0.933360] PTP clock support registered
[ 0.937512] EDAC MC: Ver: 3.0.0
[ 0.941399] omap-mailbox 48840000.mailbox: omap mailbox rev 0x400
[ 0.947995] omap-mailbox 48842000.mailbox: omap mailbox rev 0x400
[ 0.954572] Advanced Linux Sound Architecture Driver Initialized.
[ 0.961571] clocksource: Switched to clocksource arch_sys_counter
[ 0.975174] NET: Registered protocol family 2
[ 0.980121] TCP established hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.987480] TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.994228] TCP: Hash tables configured (established 4096 bind 4096)
[ 1.000858] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 1.006949] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 1.013554] NET: Registered protocol family 1
[ 1.018271] RPC: Registered named UNIX socket transport module.
[ 1.024454] RPC: Registered udp transport module.
[ 1.029364] RPC: Registered tcp transport module.
[ 1.034279] RPC: Registered tcp NFSv4.1 backchannel transport module.
á compressed dataected
á); looks like an initrdame (
[ 1.050694] before decompress_methodcan you see this data 486line
[ 1.057035] buf addr c092e940
[ 1.060158] buf length 134
[ 1.063037] Compressed data magic: 0x1f 0x8b
[ 1.067499] name of the zipthingy ¨
[ 1.071247] Do we have a name here
[ 1.074916] Detected gzip compressed data
[ 1.079110] 62 is buf set, if so you will see this
[ 1.084122] this is after rc line counter=0 132
[ 1.089117] this is before zlib_inflate line 144
[ 1.094043] this is after zlib_inflate line 146
[ 1.099040] 157 flush is c08e67d0 strm->next_out is d4f50200 out_buf is d4f50000 l is 512
422 len is 512 byte_count is 396 result is 116
[ 1.112540] 422 len is 396 byte_count is 272 result is 124
[ 1.118365] 422 len is 272 byte_count is 156 result is 116
[ 1.124198] 422 len is 156 byte_count is 0 result is 156
[ 1.129819] 446 buf is d4f50164 bufv is d4f50000 origlen is 512 len is 156
[ 1.137071] 164 l = flush(out_buf,l)
[ 1.140816] this is before zlib_inflateEnd line 171
[ 1.146006] this is after zlib_inflateEnd line 171
[ 1.151097] this is rc crap 0
[ 1.154230] this_header 0l
[ 1.157086] right below dir_utime
[ 1.160579] Trying to unpack rootfs image as initramfs...
[ 1.166216] Detected
ÐKâ compressed data
[ 1.170410] compress_name (
ÐKâ); looks like an initrd
[ 1.175772] before decompress_methodcan you see this data 486line
[ 1.182113] buf addr c8080040
[ 1.185237] buf length 14662886
[ 1.188540] Compressed data magic: 0x5d 0x00
[ 1.193009] name of the zipthingy ¨
[ 1.196758] Do we have a name here
[ 1.200416] Detected lzma compressed data

  • Hi Aditya,

    how did you created initrd image?

    Can you try to create it as described here and see if it works:

    Regards,

    Yordan

  • Hi Yordan,

    I exactly followed the steps below but my block size and count are different to fit the initrd that i am using. 

    initramfs

    To use initramfs a cpio archive is embedded directly into the kernel. I.e. you don't create an additional (ramdisk) image. Instead, the initial file system is directly incorporated into the kernel. With this, the kernel size increases by the file system size. It's like you embed above ramdisk directly into the kernel.

    Creation

    Cause initramfs is directly embedded in the the kernel, its creation is simpler. No dd & mount & gzip stuff like with ramdisk above. You simply have to fill a directory on your host with the target filesystem you like and then pass the path to this directory to the kernel build process.

    Create target file system

    host > mkdir target_fs
    host > ... copy stuff you want to have in initramfs to target_fs...
    

    Note: cpio system used for initramfs can't handle hard links. If you e.g. created your BusyBox using hard links, you will get a quite large initramfs cause each command is taken with its size and not as hard link. In cpio initramfs use symbolic/soft links instead.

    Note: To be able to detect initramfs by kernel properly, the top level directory has to contain a program called init. For example, this can be done by using a soft link from top level init to /bin/busybox (assuming you are using BusyBox in your initramfs).

    /init -> /bin/busybox
    

    To create the cpio archive execute the following commands.

    host > cd target_fs
    host > find . | cpio -H newc -o > ../target_fs.cpio
    

    Kernel options

    The only difference from creating an initrd is to give the kernel the path to the target file system you like to embed:

    #
    # General setup
    #
    ...
    CONFIG_BLK_DEV_INITRD=y
    CONFIG_INITRAMFS_SOURCE="<path_to>/target_fs>"
    ...
    
    #
    # UBI - Unsorted block images
    #
    ...
    CONFIG_BLK_DEV_RAM=y
    CONFIG_BLK_DEV_RAM_COUNT=1
    CONFIG_BLK_DEV_RAM_SIZE=8192
    CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024
  • HI

    Is this more for development workflow or do you intend to use this with your final product.

    From the boot up logs, It seems like you are able to load the initramfs contents correctly, but it doesnt boot up to the prompt.

    Have you verified that the contents of the CPIO archive are correct for it to boot up correctly. It is advisable that you start with a minimal FS and incrementally add your additional content to help narrow down the problem - please clarify on the origin of the contents used to created the CPIO archive and the exact steps followed.

    Overall, initramfs creation is not specific to TI driver/kernel, and you will find a lot of helpful resources on the web with steps outlining the content creation

  • Hi Sriram,

    This is for development. the content of the cpio looks great. I was able to have a initrd less than 24 MB working well when it crosses the 24 MB it get stuck and start printing weird characters on the console. 

    Regards,

    Aditya Akella.

  • HI

    Did you check how much free memory do you have on your system  - the initramfs image is backed by RAM and when uncompressed would take up system memory space for the root filesystem contents

  • We have a 512 MB DDR3 and we easily should have 400MB free after all allocations and reservations.

    so if the initrd is less than 24 MB it works, more than that it fails. 

    i did free -m on the console, which shows 397 MB Free when i tried the smaller initrd.

  • Any update?

    Regards,

    Akella.

  • Akella

    from the logs and information provided so far, dont see any specific reason for it fail.

    Can you please attach logs for working(smaller size image) and failing conditions - will review to see if we catch anything specific

    Regards

    Sriram

  • Akella

    we haven't heard back from you, I'm assuming you were able to resolve your issue.

    If not, just post a reply below (or create a new thread if the thread has locked due to time-out).