summaryrefslogtreecommitdiff
path: root/packages/linux/linux-rp-2.6.21
diff options
context:
space:
mode:
authorGraeme Gregory <dp@xora.org.uk>2007-07-07 12:17:00 +0000
committerGraeme Gregory <dp@xora.org.uk>2007-07-07 12:17:00 +0000
commit9745007f912d14529fa9a7ef1e763faca5dd4995 (patch)
tree0464919fb9172a7ca962a72cb68491ae60199348 /packages/linux/linux-rp-2.6.21
parent1d662a16914582e72b023f683d9f7da414e4205a (diff)
linux-rp_2.6.21.bb : add a hack to prevent connect+ card from oopsing
on insert. This is caused by an irq arriving before dev->base_addr has been set so the driver ends up doing an inw(NULL) which oopses. have checked for base_addr == 0 in driver and returned from irq early. This prevents oops and doesnt break with other cards in my collection.
Diffstat (limited to 'packages/linux/linux-rp-2.6.21')
-rw-r--r--packages/linux/linux-rp-2.6.21/connectplus-prevent-oops-HACK.patch17
1 files changed, 17 insertions, 0 deletions
diff --git a/packages/linux/linux-rp-2.6.21/connectplus-prevent-oops-HACK.patch b/packages/linux/linux-rp-2.6.21/connectplus-prevent-oops-HACK.patch
new file mode 100644
index 0000000000..b5439c62e7
--- /dev/null
+++ b/packages/linux/linux-rp-2.6.21/connectplus-prevent-oops-HACK.patch
@@ -0,0 +1,17 @@
+Index: linux-2.6.21/drivers/net/wireless/hostap/hostap_hw.c
+===================================================================
+--- linux-2.6.21.orig/drivers/net/wireless/hostap/hostap_hw.c 2007-07-07 12:45:39.000000000 +0100
++++ linux-2.6.21/drivers/net/wireless/hostap/hostap_hw.c 2007-07-07 12:47:30.000000000 +0100
+@@ -2666,6 +2666,12 @@
+ iface = netdev_priv(dev);
+ local = iface->local;
+
++ if(dev->base_addr == 0)
++ {
++ printk(KERN_DEBUG "%s: IRQ before base_addr set\n", dev->name);
++ return IRQ_HANDLED;
++ }
++
+ prism2_io_debug_add(dev, PRISM2_IO_DEBUG_CMD_INTERRUPT, 0, 0);
+
+ if (local->func->card_present && !local->func->card_present(local)) {