正在考虑早期开发运行Linux内核4.19的Rcar Gen 3入门工具包。 我想在安装主rootfs之前加载初始ramdisk。
以下是我的安排。
内核命令行:
load _ dtb=ext4load MMC 0336010 x 48000000/boot/r8a 7796-m3 ulcb.dtb
load _ init ramfs=ext4load MMC 0336010 x 5c 3f 9520/boot/init ramfs-netboot-image-m3 ulcb.ext4. gz
load _ ker=ext4load MMC 0336010 x 48080000/boot/image
bootargs=console=ttysc 0,115200 vmalloc=384 m video=HDMI-a-133601920 x 1080-32 @ 60/dev/ram0ramdisk _ size=1111526
bootcmd=run load_ker; run load_dtb; run load_initramfs; booti0x 480800000 x 5c 3f 952033603 a6 ab 60 x 4800000
(基于自述. renesas-gen 3文档的修改)
引导日志(未完成)
.
[ 2.546095 ] ramdisk : gzipimagefoundatblock 0
[ 2.551787 ] ramdisk : gzipdecompressornotconfigured!
[ 2.557952 ] invalidramdiskdecompressionroutine.selectappropriateconfigoption。
[ 2.565817 ] kernel panic-not syncing : couldnotdecompressinitialramdiskimage。
[ 2.573470 ] CPU : PID :1 comm : swapper/0 tainted : GB 4.14.35-yo CTO-standard # 11
[2.582073]
[ 2.588506 ]呼叫跟踪:
[ 2.590958 ] [ ] dump _ backtrace0x0/0x3c 8
[ 2.596352 ] [ ] show _ stack0x 14/0x 20
[ 2.601400 ] [ ] dump _ stack0x 9c/0x BC
[ 2.606450] [] panic0x11c/0x28c
[ 2.611236 ] [ ] rd _ load _ image0x 2e0/0x5d 0
[ 2.616713 ] [ ] initrd _ load0x 50/0x2c 8
[ 2.621933 ] [ ] prepare _ namespace0x D8/0x1b 8
[ 2.627674 ] [ ] kernel _ init _ free able0x 208/0x22c
[ 2.633762 ] [ ] kernel _ init0x 10/0x 100
[ 2.638980 ] [ ] ret _ from _ fork0x 10/0x 18
[ 2.644290 ] SMP : stoppingsecondarycpus
[ 2.648208 ]密钥偏移:禁用
[ 2.651691 ] CPU features :0 x 1802000
[ 2.655173 ]内存限制: none
[ 2.658226 ]---- [ endkernelpanic-not syncing : couldnotdecompressinitialramdiskimage ]。
[ 2.892822 ] MMC 1: newultrahighspeedsdr 104 sdhccardataddressaaaa
[ 2.907083 ] MMC blk 1: MMC 1: AAAA sb 16 g 14.8 gib
[ 2.915770] mmcblk1: p1
[ 98.363653 ] random : crnginitdone
. kernel hung-up。
此错误是因为缺少用于gzip的解压缩工具。
实际上,在内核menuconfig中禁用了所有其他压缩方法
#
# kernel压缩模式
#
CONFIG_HAVE_KERNEL_LZO=y
CONFIG_KERNEL_LZO=y
CONFIG_LZO_COMPRESS=y
CONFIG_LZO_DECOMPRESS=y
CONFIG_DECOMPRESS_GZIP=n
CONFIG_DECOMPRESS_BZIP2=n
CONFIG_DECOMPRESS_LZMA=n
CONFIG_DECOMPRESS_XZ=n
CONFIG_DECOMPRESS_LZO=y
CONFIG_DECOMPRESS_LZ4=n
CONFIG_RD_GZIP=n
CONFIG_RD_BZIP2=n
CONFIG_RD_LZMA=n
CONFIG_RD_XZ=n
CONFIG_RD_LZO=y
CONFIG_RD_LZ4=n
但是我不知道ramdisk还是Gzip。 为了提高解冻速度,想只留下LZO形式。 因此,如何在LZO压缩模式下构建initRAMFS?