1 #!/bin/bash
2 # Copyright 2008 Luis R. Rodriguez <lrodriguez@atheros.com>
3 #
4 # Loads new Intel iwl (iwlagn) or the old ones (iwl4965)
6 . /usr/lib/compat-wireless/modlib.sh
8 IWL_OLD="iwl4965"
9 IWL_NEW="iwlagn"
11 if [[ $UID -ne 0 ]]; then
12 echo "Run with root privileges"
13 exit
14 fi
17 USAGE="Usage: $0 [ iwlagn | iwl4965 ]"
19 # Default behavior: unload iwl4965 and load iwlagn
20 if [ $# -eq 0 ]; then
21 1=iwlagn
22 elif [ $# -ne 1 ]; then
23 echo "$USAGE"
24 exit
25 fi
27 MODULE=$1
28 if [ "$MODULE" == "iwlagn" ]; then
29 grep iwl4965 /proc/modules 2>&1 > /dev/null
30 if [ $? -eq 0 ]; then
31 echo Unloading $i...
32 modprobe -r --ignore-remove iwl4965
33 fi
34 # Enables both b43 and b43legacy
35 iwl-enable iwlagn
36 modprobe iwlagn
37 CHECK=`modprobe -l iwlagn`
38 if [ ! -z $CHECK ]; then
39 echo "iwlagn loaded successfully"
40 fi
41 elif [ "$MODULE" == "iwl4965" ]; then
42 CHECK=`modprobe -l iwlagn`
43 if [ ! -z $CHECK ]; then
44 echo "iwlagn currently loaded, going to try to unload the module..."
45 modprobe -r --ignore-remove iwlagn
46 fi
47 iwl-enable iwl4965
48 # iwl4965 may be loaded already lets remove it first
49 modprobe -r --ignore-remov iwl4965 2>&1 > /dev/null
50 modprobe iwl4965
51 CHECK=`modprobe -l iwl4965`
52 if [ ! -z $CHECK ]; then
53 echo "iwl4965 loaded successfully!"
54 fi
55 else
56 echo "$USAGE"
57 exit
58 fi