M7350/external/compat-wireless/scripts/b43enable
2024-09-09 08:57:42 +00:00

60 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
#
# Copyright 2007 Luis R. Rodriguez <mcgrof@winlab.rutgers.edu>
#
# Makes sure either b43, b43legacy (new mac80211 drivers) or bcm43xx
# is enabled to be used. This allows us to choose any driver without
# blacklisting each other.
. /usr/lib/compat-wireless/modlib.sh
if [[ $UID -ne 0 ]]; then
echo "Run with root privileges"
exit
fi
B43S="b43 b43legacy"
B43_OLD="bcm43xx"
B43_PROP="wl"
# Appended to module file at the end when we want to ignore one
USAGE="Usage: $0 [ b43 | bcm43xx | wl ]"
function enable_b43 {
module_disable $B43_OLD
module_disable $B43_PROP
for i in $B43S; do
module_enable $i
done
}
# Default behavior: disables the old bcm43xx driver and enables b43
# and b43legacy
if [ $# -eq 0 ]; then
enable_b43
exit
elif [ $# -ne 1 ]; then
echo "$USAGE"
exit
fi
MODULE=$1
if [ "$MODULE" == "bcm43xx" ]; then
for i in $B43S; do
module_disable $i
done
module_disable $B43_PROP
module_enable $B43_OLD
elif [ "$MODULE" == "wl" ]; then
for i in $B43S; do
module_disable $i
done
module_disable $B43_OLD
module_enable $B43_PROP
elif [ "$MODULE" == "b43" ]; then
enable_b43
else
echo "$USAGE"
exit
fi