summarylogtreecommitdiffstats
path: root/broadcom-wl-dkms.install
blob: 3e40b40f235a01016e8be4a50137af3151cd2f57 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
post_install() {
	dkms_install $1
}

pre_upgrade() {
	dkms_remove $2
}

pre_remove() {
	dkms_remove $1
}

post_upgrade() {
	dkms_install $1
}

dkms_remove() {
	local line=`dkms status -m broadcom-wl`
	# in cases where the passed ${1%%-*} fails, use this as a fallback for detecting
	# which version is installed:
	# version=`dkms status broadcom-wl | tr -d ' \n' | awk -F ',' '{print $2}'`
	if echo "$line" | grep -E 'added|built|installed'; then
		dkms remove -m broadcom-wl -v ${1%%-*} --all
	else
		echo "No current dkms module found, skipping dkms remove"
	fi
}

dkms_install() {
	echo ">>> DKMS: Module install"

	dkms install -m broadcom-wl -v ${1%%-*}

cat << EOF
It's recommended to execute the following commands to load the module:
rmmod b43 2>/dev/null
rmmod b43legacy 2>/dev/null
rmmod ssb 2>/dev/null
rmmod bcm43xx 2>/dev/null
rmmod brcm80211 2>/dev/null
rmmod brcmfmac 2>/dev/null
rmmod brcmsmac 2>/dev/null
rmmod bcma 2>/dev/null
modprobe wl

/usr/bin/depmod -a
EOF
}