Cmdline是由bootloader传给kernel,如uboot,将需要传给kernel的参数做成一个tags链表放在ram中,将首地址传给kernel,kernel解析tags来获取cmdline等信息。
向linux kernel中添加cmdline有下面三种方式:
1、 在dts中的bootargs中添加,CONFIG_MIPS_CMDLINE_FROM_DTB
/ {
chosen {
name = "chosen";
bootargs = "rd_start=0x8B992000 rd_size=0x2000000 root=/dev/ram0 rootfstype=squashfs ro init=/init console=ttyS0,115200N8 earlycon=uart8250,mmio,0x18018300,115200n8 no_console_suspend";
bootargs_recover = "rd_start=0x8B992000 rd_size=0x2000000 root=/dev/ram0 rootfstype=squashfs ro init=/init console=ttyS0,115200N8 earlycon=uart8250,mmio,0x18018300,115200n8 no_console_suspend";
stdout-path = "serial0:115200n8";
mtdids = "nand0=NAND_flash@0";
.
.
};
};
2.直接在kernel config中定义cmdline;
//待更新
3.从bootloader arg中获取(uboot/bootloader),CONFIG_MIPS_CMDLINE_FROM_BOOTLOADER
本文介绍了如何向Linux Kernel添加CMDLine参数,包括通过DTS的bootargs、Kernel配置以及从bootloader获取参数。详细阐述了不同方式的实现过程,并以uboot为例展示了CMDLine参数的传递机制。
1987

被折叠的 条评论
为什么被折叠?



