diff options
author | Richard Purdie <rpurdie@linux.intel.com> | 2010-09-30 21:35:20 +0100 |
---|---|---|
committer | Richard Purdie <rpurdie@linux.intel.com> | 2010-09-30 22:16:10 +0100 |
commit | c09cae578e5568c0ac975124db31f9cac05d50e9 (patch) | |
tree | 1183a51498c1d2c7874ea0d3741c4f70dbfc66ef /meta-extras/packages/prism-firmware | |
parent | a51df11c1596746c85b015562ed67f37382b88b5 (diff) | |
download | poky-c09cae578e5568c0ac975124db31f9cac05d50e9.tar.gz |
Move prism-firmware, spectrum-fw, python-urlgrabber, python-iniparse and yum-metadata to meta-extras
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
Diffstat (limited to 'meta-extras/packages/prism-firmware')
3 files changed, 68 insertions, 0 deletions
diff --git a/meta-extras/packages/prism-firmware/prism-firmware.bb b/meta-extras/packages/prism-firmware/prism-firmware.bb new file mode 100644 index 0000000000..903c55e15e --- /dev/null +++ b/meta-extras/packages/prism-firmware/prism-firmware.bb | |||
@@ -0,0 +1,32 @@ | |||
1 | DESCRIPTION = "Firmware for the Prism 2.x/3 cards" | ||
2 | SECTION = "base" | ||
3 | LICENSE = "closed" | ||
4 | RDEPENDS = "hostap-utils" | ||
5 | RREPLACES = "prism3-firmware prism3-support" | ||
6 | RCONFLICTS = "prism3-firmware prism3-support" | ||
7 | PACKAGE_ARCH = "all" | ||
8 | PR = "r3" | ||
9 | |||
10 | SRC_URI = "http://www.red-bean.com/~proski/firmware/primary.tar.bz2 \ | ||
11 | http://www.red-bean.com/~proski/firmware/1.7.4.tar.bz2 \ | ||
12 | file://prism-fw.sh \ | ||
13 | file://hostap.rules" | ||
14 | |||
15 | do_install() { | ||
16 | install -d ${D}${base_libdir}/firmware/ | ||
17 | install -d ${D}${base_libdir}/udev/ | ||
18 | install -d ${D}${sysconfdir}/pcmcia/ | ||
19 | install -d ${D}${sysconfdir}/udev/rules.d/ | ||
20 | |||
21 | install -m 0644 ${WORKDIR}/primary/af010104.hex ${D}${base_libdir}/firmware/ | ||
22 | install -m 0644 ${WORKDIR}/primary/ak010104.hex ${D}${base_libdir}/firmware/ | ||
23 | install -m 0644 ${WORKDIR}/primary/pm010102.hex ${D}${base_libdir}/firmware/ | ||
24 | |||
25 | install -m 0644 ${WORKDIR}/1.7.4/rf010704.hex ${D}${base_libdir}/firmware/ | ||
26 | |||
27 | install -m 0755 ${WORKDIR}/prism-fw.sh ${D}${base_libdir}/udev/ | ||
28 | install -m 0644 ${WORKDIR}/hostap.rules ${D}${sysconfdir}/udev/rules.d/ | ||
29 | } | ||
30 | |||
31 | PACKAGES = "${PN}" | ||
32 | FILES_${PN} += "${base_libdir}" | ||
diff --git a/meta-extras/packages/prism-firmware/prism-firmware/hostap.rules b/meta-extras/packages/prism-firmware/prism-firmware/hostap.rules new file mode 100644 index 0000000000..dece98ae93 --- /dev/null +++ b/meta-extras/packages/prism-firmware/prism-firmware/hostap.rules | |||
@@ -0,0 +1,4 @@ | |||
1 | # | ||
2 | # update firmware on Prism cards (load it to RAM, not to Flash) | ||
3 | # | ||
4 | SUBSYSTEM=="net", KERNEL=="wlan*" RUN="/lib/udev/prism-fw.sh" | ||
diff --git a/meta-extras/packages/prism-firmware/prism-firmware/prism-fw.sh b/meta-extras/packages/prism-firmware/prism-firmware/prism-fw.sh new file mode 100644 index 0000000000..619f612be1 --- /dev/null +++ b/meta-extras/packages/prism-firmware/prism-firmware/prism-fw.sh | |||
@@ -0,0 +1,32 @@ | |||
1 | #!/bin/sh | ||
2 | |||
3 | CARD_ID=`/usr/sbin/hostap_diag $INTERFACE|grep NICID|awk '{print $2}'|sed -e 's/id=0x//'` | ||
4 | |||
5 | # 801d cards lack even Primary firmware so we cannot use hostap_diag | ||
6 | PRI=/lib/firmware/pm010102.hex | ||
7 | STA=/lib/firmware/rf010704.hex | ||
8 | |||
9 | if [ $CARD_ID = '800c' ] || [ $CARD_ID = '8013' ] || [ $CARD_ID = '8017' ] || \ | ||
10 | [ $CARD_ID = '801b' ] || [ $CARD_ID = '8022' ] || [ $CARD_ID = '8023' ] ; then | ||
11 | PRI=/lib/firmware/ak010104.hex | ||
12 | elif [ $CARD_ID = '800b' ] || [ $CARD_ID = '8012' ] || [ $CARD_ID = '8016' ] || \ | ||
13 | [ $CARD_ID = '801a' ] ; then | ||
14 | PRI=/lib/firmware/af010104.hex | ||
15 | elif [ $CARD_ID = '800e' ] || [ $CARD_ID = '8015' ] || [ $CARD_ID = '8019' ] || \ | ||
16 | [ $CARD_ID = '801d' ] ; then | ||
17 | PRI=/lib/firmware/pm010102.hex | ||
18 | fi | ||
19 | |||
20 | DIR=/proc/net/hostap/wlan0 | ||
21 | |||
22 | if [ ! -d $DIR ]; then | ||
23 | exit 1 | ||
24 | fi | ||
25 | |||
26 | if grep -q no_pri=1 $DIR/debug; then | ||
27 | /usr/sbin/prism2_srec -gs wlan0 $PRI | ||
28 | /usr/sbin/prism2_srec -gp wlan0 $PRI | ||
29 | fi | ||
30 | |||
31 | /usr/sbin/prism2_srec -rp wlan0 $STA | ||
32 | |||