cmdline如何傳遞參數?
在uboot中設置bootargs環境變量,在kernel啟動后cat /proc/cmdline可以看到bootargs的值。
U-boot的環境變量值得注意的有兩個: bootcmd 和bootargs。
eg:setenv bootcmd ‘setenv bootargs $(bootargs)root=$(rootfs) nfsroot=$(serverip):$(nsworkdir) ;nboot 0x80800000 0x4000000x200000;bootm 0x80800000’
一:bootcmd
bootcmd是自動啟動時默認執行的一些命令,因此你可以在當前環境中定義各種不同配置,不同環境的參數設置,然后設置bootcmd為你經常使用的那種參數,而且在bootcmd中可以使用調用的方式,方便修改。
二:bootargs
bootargs是環境變量中的重中之重,甚至可以說整個環境變量都是圍繞著bootargs來設置的。bootargs的種類非常非常的多,我們平常只是使用了幾種而已。bootargs非常的靈活,內核和文件系統的不同搭配就會有不同的設置方法,甚至你也可以不設置 bootargs,而直接將其寫到內核中去(在配置內核的選項中可以進行這樣的設置),正是這些原因導致了bootargs使用上的困難。bootargs的種類非常的多,而且隨著kernel的發展會出現一些新的參數,使得設置會更加靈活多樣。