#
# By Chih-Wei Huang <cwhuang@linux.org.tw>
-# Last updated 2009/12/10
+# Last updated 2017/01/17
#
# License: GNU Public License
# We explicitely grant the right to use the scripts
# with Android-x86 project.
#
-error()
-{
- echo $*
- return 1
-}
-
# An auto detect function provided by kinneko
auto_detect()
{
tmp=/tmp/dev2mod
echo 'dev2mod() { while read dev; do case $dev in' > $tmp
sort -r /lib/modules/`uname -r`/modules.alias | \
- sed -n 's/^alias *\([^ ]*\) *\(.*\)/\1)modprobe \2;;/p' >> $tmp
+ sed -n 's/^alias *\([^ ]*\) *\(.*\)/\1)busybox modprobe \2;;/p' >> $tmp
echo 'esac; done; }' >> $tmp
+ for f in $(grep -Eh "drm_kms|sound.core" /lib/modules/`uname -r`/modules.dep | cut -d. -f1); do
+ sed -i "/$(basename $f | sed 's/-/_/g')/d" $tmp
+ done
source $tmp
- cat /sys/bus/*/devices/*/modalias | dev2mod
+ cat /sys/bus/*/devices/*/uevent | grep MODALIAS | sed 's/^MODALIAS=//' | awk '!seen[$0]++' | dev2mod
+ cat /sys/devices/virtual/wmi/*/modalias | dev2mod
}
load_modules()
{
- if [ -n "$FOUND" ]; then
- BTDEV="bnep rfcomm sco btusb"
- for m in $PREDEV $EXTMOD $BTDEV; do
- modprobe $m
- done
- [ -n "$FB0DEV" -a -z "$UVESA_MODE" ] && modprobe $FB0DEV
- [ -n "$LANDEV" ] && modprobe $LANDEV
- [ -n "$WIFDEV" ] && modprobe $WIFDEV
- [ -n "$SNDDEV" ] && modprobe $SNDDEV
- [ -n "$CAMDEV" ] && modprobe $CAMDEV
- else
+ if [ "$AUTO_LOAD" = "old" ]; then
auto_detect
fi
- mdev -s
- [ -c /dev/video0 ] || modprobe vivi
- [ -d /proc/asound/card0 ] || modprobe snd-dummy
- [ -c /dev/fb0 ] || modprobe uvesafb mode_option=${UVESA_MODE:-800x600}-16 ${UVESA_OPTION:-mtrr=3 scroll=redraw}
+ # 3G modules
+ for m in $EXTMOD; do
+ busybox modprobe $m
+ done
}