initramfs-framework: handle kernel parameters with . inside
Kernel parameters like "uvesafb.mode_option=640x480-32" were turned into shell variables named "bootparam_uvesafb.mode_option", which triggered errors from the shell because the name is not valid. Now points get replaced with underscores, leading to bootparam_uvesafb_mode_option in this example. (From OE-Core rev: de81e804f0654092d20ccb8e6e40f4ff614c4b09) Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
8582791683
commit
82dd3fb27e
|
@ -13,6 +13,7 @@
|
|||
#
|
||||
# 'foo=value' as 'bootparam_foo=value'
|
||||
# 'foo' as 'bootparam_foo=true'
|
||||
# 'foo.bar[=value] as 'foo_bar=[value|true]'
|
||||
|
||||
# Register a function to be called before running a module
|
||||
# The hook is called as:
|
||||
|
@ -79,7 +80,7 @@ mount -t sysfs sysfs /sys
|
|||
# populate bootparam environment
|
||||
for p in `cat /proc/cmdline`; do
|
||||
opt=`echo $p | cut -d'=' -f1`
|
||||
opt=`echo $opt | sed -e 's/-/_/'`
|
||||
opt=`echo $opt | tr '.-' '__'`
|
||||
if [ "`echo $p | cut -d'=' -f1`" = "$p" ]; then
|
||||
eval "bootparam_${opt}=true"
|
||||
else
|
||||
|
|
Loading…
Reference in New Issue