+++ /dev/null
-#!/bin/ash
-
-#KV=`uname -r`
-#KMAJOR=`echo ${KV} | cut -d. -f1`
-#KMINOR=`echo ${KV} | cut -d. -f2`
-#INSMOD="insmod.static"
-
-#if [ "${KMINOR}" -gt "4" ]
-#then
-# KEXT=".ko"
-#else
-# KEXT=".o"
-#fi
-
-. /etc/initrd.defaults
-
-usage()
-{
- echo "modprobe gentoo script v1.0"
- echo "Usage:"
- echo " modprobe moduleprefix"
- echo ""
- echo "Ex:"
- echo " modprobe eepro100"
- echo ""
- echo "Note: Do not pass the suffix to modprobe"
- exit 1
-}
-
-# Pass module name to this function
-modules_dep_list()
-{
- if [ "$#" != "1" ]
- then
- echo "modules_dep_list(): improper usage"
- exit 1
- fi
- cat /lib/modules/${KV}/modules.dep | grep ${1}${KEXT}\: | cut -d\: -f2
-}
-
-
-# Pass module deps list
-strip_mod_paths()
-{
- local x
- local ret
- local myret
-
- [ "$#" -lt "1" ] && return
-
- for x in ${*}
- do
- ret=`basename ${x} | cut -d. -f1`
- myret="${myret} ${ret}"
- done
- echo "${myret}"
-}
-
-LOADED_MODULES=""
-
-is_module_already_loaded()
-{
- local x
- if [ "$#" != "1" ]
- then
- echo "is_module_already_loaded(): improper usage"
- fi
-
- for x in ${LOADED_MODULES}
- do
- if [ "${x}" == "${1}" ]
- then
- # Yep, module is loaded
- return 0
- fi
- done
- return 1
-}
-
-real_mod_path()
-{
- find /lib/modules/${KV}/ -path "*${1}${KEXT}"
-}
-
-modprobe2()
-{
- local x
- if [ "$#" != "1" ]
- then
- echo "modprobe(): improper usage"
- fi
-
- modlist=`modules_dep_list ${1}`
- if [ "${modlist}" != "" -a "${modlist}" != " " ]
- then
- deps=`strip_mod_paths ${modlist}`
- else
- deps=""
- fi
-
- echo "$1 -- DEPS=${deps}"
- # Make sure we don't do any endless loops!
-
- LOADED_MODULES="${LOADED_MODULES} ${1}"
-
- for x in ${deps}
- do
- if ! is_module_already_loaded ${x}
- then
- modprobe2 "${x}"
- else
- echo "skipping ${x}, module already loaded by us"
- fi
- done
-
- real_path=`real_mod_path ${1}`
- echo "running insmod on ${real_path}"
- ${INSMOD} ${real_path}
- return $?
-}
-
-
-if [ "$#" != "1" ]
-then
- usage
-fi
-
-modprobe2 ${1}
-return $?
-