wl1251: Add support for idle mode
[pandora-wifi.git] / scripts / iwl-load
1 #!/bin/bash
2 # Copyright 2008        Luis R. Rodriguez <lrodriguez@atheros.com>
3 #
4 # Loads new Intel iwl (iwlagn) or the old ones (iwl4965)
5
6 . /usr/lib/compat-wireless/modlib.sh
7
8 IWL_OLD="iwl4965"
9 IWL_NEW="iwlagn"
10
11 if [[ $UID -ne 0 ]]; then
12         echo "Run with root privileges"
13         exit
14 fi
15
16
17 USAGE="Usage: $0 [ iwlagn | iwl4965 ]"
18
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
26
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