DESCRIPTION = "Kernel drivers for the TI WL1251 WiFi chip found on the Pandora - Connected via SDIO"
LICENSE = "GPLv2"
+SRCREV = "ccb56baff992d682cc84eca10472298b2cce1bf1"
+
+SRC_URI = " \
+ git://git.openpandora.org/pandora-wifi.git;protocol=git;branch=compat-wireless \
+"
+
SRC_URI += " \
- http://djwillis.openpandora.org/pandora/wifi/wl1251-wireless-2009-10-08-rev2.zip \
file://rc.wl1251 \
+ file://50-compat_firmware.rules \
+ file://compat_firmware.sh \
"
+RDEPENDS = "udev"
+
inherit update-rc.d
INITSCRIPT_NAME = "wl1251-init"
INITSCRIPT_PARAMS = "start 30 5 2 . stop 40 0 1 6 ."
-S = "${WORKDIR}/compat-wireless-2009-08-30"
+S = "${WORKDIR}/git"
inherit module
}
do_install() {
- mkdir -p ${D}/lib/modules/${KERNEL_VERSION}/kernel/net/mac80211
- cp ${S}/net/mac80211/*.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/net/mac80211
- mkdir -p ${D}/lib/modules/${KERNEL_VERSION}/kernel/net/wireless
- cp ${S}/net/wireless/*.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/net/wireless
- mkdir -p ${D}/lib/modules/${KERNEL_VERSION}/kernel/net/rfkill
- cp ${S}/net/rfkill/*.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/net/rfkill
- mkdir -p ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/net/wireless/wl12xx
- cp ${S}/drivers/net/wireless/wl12xx/wl1251.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/net/wireless/wl12xx
- cp ${S}/drivers/net/wireless/wl12xx/wl1251_sdio.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/net/wireless/wl12xx
+ install -d ${D}${base_libdir}/modules/${KERNEL_VERSION}/updates/compat
+ install -m 0644 ${S}/compat/*.ko ${D}${base_libdir}/modules/${KERNEL_VERSION}/updates/compat
+ install -d ${D}${base_libdir}/modules/${KERNEL_VERSION}/updates/kernel/net/mac80211
+ install -m 0644 ${S}/net/mac80211/*.ko ${D}${base_libdir}/modules/${KERNEL_VERSION}/updates/kernel/net/mac80211
+ install -d ${D}${base_libdir}/modules/${KERNEL_VERSION}/updates/kernel/net/wireless
+ install -m 0644 ${S}/net/wireless/*.ko ${D}${base_libdir}/modules/${KERNEL_VERSION}/updates/kernel/net/wireless
+ install -d ${D}${base_libdir}/modules/${KERNEL_VERSION}/updates/kernel/net/rfkill
+ install -m 0644 ${S}/net/rfkill/*.ko ${D}${base_libdir}/modules/${KERNEL_VERSION}/updates/kernel/net/rfkill
+ install -d ${D}${base_libdir}/modules/${KERNEL_VERSION}/updates/kernel/drivers/net/wireless/wl12xx
+ install -m 0644 ${S}/drivers/net/wireless/wl12xx/wl1251.ko ${D}${base_libdir}/modules/${KERNEL_VERSION}/updates/kernel/drivers/net/wireless/wl12xx
+ install -m 0644 ${S}/drivers/net/wireless/wl12xx/wl1251_sdio.ko ${D}${base_libdir}/modules/${KERNEL_VERSION}/updates/kernel/drivers/net/wireless/wl12xx
+
install -d ${D}${sysconfdir}/init.d/
- cp -pP ${WORKDIR}/rc.wl1251 ${D}${sysconfdir}/init.d/wl1251-init
+ install -m 0755 ${WORKDIR}/rc.wl1251 ${D}${sysconfdir}/init.d/wl1251-init
+
+ # Install UDEV rules to /lib/udev/rules.d not /etc/udev/rules.d as they are system rules.
+ install -d ${D}${base_libdir}/udev/rules.d/
+ install -m 0644 ${WORKDIR}/50-compat_firmware.rules ${D}${base_libdir}/udev/rules.d/
+ install -m 0755 ${WORKDIR}/compat_firmware.sh ${D}${base_libdir}/udev/rules.d/
+
+ # some bonus not wl1251 related drivers
+ install -m 0644 ${S}/drivers/net/wireless/at76c50x-usb.ko ${D}${base_libdir}/modules/${KERNEL_VERSION}/updates/kernel/drivers/net/wireless/
+ install -d ${D}${base_libdir}/modules/${KERNEL_VERSION}/updates/kernel/drivers/net/wireless/rt2x00
+ install -m 0644 ${S}/drivers/net/wireless/rt2x00/*.ko ${D}${base_libdir}/modules/${KERNEL_VERSION}/updates/kernel/drivers/net/wireless/rt2x00/
+ install -d ${D}${base_libdir}/modules/${KERNEL_VERSION}/updates/kernel/drivers/net/wireless/p54
+ install -m 0644 ${S}/drivers/net/wireless/p54/*.ko ${D}${base_libdir}/modules/${KERNEL_VERSION}/updates/kernel/drivers/net/wireless/p54/
}
-FILES_${PN} += "/lib/modules/${KERNEL_VERSION}/kernel/net/mac80211/*.ko.*"
-FILES_${PN} += "/lib/modules/${KERNEL_VERSION}/kernel/net/wireless/*.ko.*"
-FILES_${PN} += "/lib/modules/${KERNEL_VERSION}/kernel/net/rfkill/*.ko.*"
-FILES_${PN} += "/lib/modules/${KERNEL_VERSION}/kernel/drivers/net/wireless/wl12xx/*.ko.*"
+FILES_${PN} += "/lib/udev/rules.d/*"
+FILES_${PN} += "/lib/modules/${KERNEL_VERSION}/updates/compat/*.ko.*"
+FILES_${PN} += "/lib/modules/${KERNEL_VERSION}/updates/kernel/net/mac80211/*.ko.*"
+FILES_${PN} += "/lib/modules/${KERNEL_VERSION}/updates/kernel/net/wireless/*.ko.*"
+FILES_${PN} += "/lib/modules/${KERNEL_VERSION}/updates/kernel/net/rfkill/*.ko.*"
+FILES_${PN} += "/lib/modules/${KERNEL_VERSION}/updates/kernel/drivers/net/wireless/wl12xx/*.ko.*"
+
+FILES_${PN} += "/lib/modules/${KERNEL_VERSION}/updates/kernel/drivers/net/wireless/at76c50x-usb.ko.*"
+FILES_${PN} += "/lib/modules/${KERNEL_VERSION}/updates/kernel/drivers/net/wireless/rt2x00/*.ko.*"
+FILES_${PN} += "/lib/modules/${KERNEL_VERSION}/updates/kernel/drivers/net/wireless/p54/*.ko.*"