Adding modules cmdline options for genkernel (module.option[=value]).
[genkernel.git] / defaults / linuxrc
index 0403b4d51b77e3fa9ca12289ec988067c947f49a..91a3396b2e703fb879041465765d949da7cfe9b3 100755 (executable)
@@ -39,6 +39,7 @@ FAKE_ROOT=''
 REAL_ROOTFLAGS=''
 ROOTFSTYPE='auto'
 CRYPT_SILENT=0
+mkdir -p /etc/cmdline /etc/modprobe.d
 for x in ${CMDLINE}
 do
        case "${x}" in
@@ -240,6 +241,23 @@ do
                nounionfs)
                        USE_UNIONFS_NORMAL=0
                        ;;
+               ## for "module.param[=val]" we creating
+               ## /etc/modprobe.d/module.param.conf: "options module param[=val]"
+               ## /etc/cmdline/module.param:"param[=val]"
+               ## first for CONFIG_MODPROBE_SMALL=n, next for script modprobe
+               *=*)
+                       case "${x%%=*}" in
+                       *.*)
+                               y="${x%%[=/]*}"
+                               echo "options ${x%%.*} ${x#*.}" >"/etc/modprobe.d/$y.conf"
+                               echo "${x#*.}" >"/etc/cmdline/$y"
+                       ;;
+                       esac
+               ;;
+               *.*)
+                       echo "options ${x%%.*} ${x#*.}" >"/etc/modprobe.d/${x%%/*}.conf"
+                       echo "${x#*.}" >"/etc/cmdline/${x%%/*}"
+               ;;
        esac
 done