aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/orinoco
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/orinoco')
-rw-r--r--drivers/net/wireless/orinoco/main.c6
-rw-r--r--drivers/net/wireless/orinoco/orinoco_cs.c14
-rw-r--r--drivers/net/wireless/orinoco/spectrum_cs.c14
-rw-r--r--drivers/net/wireless/orinoco/wext.c4
4 files changed, 22 insertions, 16 deletions
diff --git a/drivers/net/wireless/orinoco/main.c b/drivers/net/wireless/orinoco/main.c
index e8e2d0f4763d..f800ef4e6554 100644
--- a/drivers/net/wireless/orinoco/main.c
+++ b/drivers/net/wireless/orinoco/main.c
@@ -1813,6 +1813,12 @@ static int __orinoco_commit(struct orinoco_private *priv)
1813 struct net_device *dev = priv->ndev; 1813 struct net_device *dev = priv->ndev;
1814 int err = 0; 1814 int err = 0;
1815 1815
1816 /* If we've called commit, we are reconfiguring or bringing the
1817 * interface up. Maintaining countermeasures across this would
1818 * be confusing, so note that we've disabled them. The port will
1819 * be enabled later in orinoco_commit or __orinoco_up. */
1820 priv->tkip_cm_active = 0;
1821
1816 err = orinoco_hw_program_rids(priv); 1822 err = orinoco_hw_program_rids(priv);
1817 1823
1818 /* FIXME: what about netif_tx_lock */ 1824 /* FIXME: what about netif_tx_lock */
diff --git a/drivers/net/wireless/orinoco/orinoco_cs.c b/drivers/net/wireless/orinoco/orinoco_cs.c
index ef46a2d88539..083999faaa98 100644
--- a/drivers/net/wireless/orinoco/orinoco_cs.c
+++ b/drivers/net/wireless/orinoco/orinoco_cs.c
@@ -248,20 +248,20 @@ orinoco_cs_config(struct pcmcia_device *link)
248 goto failed; 248 goto failed;
249 } 249 }
250 250
251 ret = pcmcia_request_irq(link, orinoco_interrupt);
252 if (ret)
253 goto failed;
254
255 /* We initialize the hermes structure before completing PCMCIA
256 * configuration just in case the interrupt handler gets
257 * called. */
258 mem = ioport_map(link->resource[0]->start, 251 mem = ioport_map(link->resource[0]->start,
259 resource_size(link->resource[0])); 252 resource_size(link->resource[0]));
260 if (!mem) 253 if (!mem)
261 goto failed; 254 goto failed;
262 255
256 /* We initialize the hermes structure before completing PCMCIA
257 * configuration just in case the interrupt handler gets
258 * called. */
263 hermes_struct_init(hw, mem, HERMES_16BIT_REGSPACING); 259 hermes_struct_init(hw, mem, HERMES_16BIT_REGSPACING);
264 260
261 ret = pcmcia_request_irq(link, orinoco_interrupt);
262 if (ret)
263 goto failed;
264
265 /* 265 /*
266 * This actually configures the PCMCIA socket -- setting up 266 * This actually configures the PCMCIA socket -- setting up
267 * the I/O windows and the interrupt mapping, and putting the 267 * the I/O windows and the interrupt mapping, and putting the
diff --git a/drivers/net/wireless/orinoco/spectrum_cs.c b/drivers/net/wireless/orinoco/spectrum_cs.c
index 873877e17e1b..93070a3a5233 100644
--- a/drivers/net/wireless/orinoco/spectrum_cs.c
+++ b/drivers/net/wireless/orinoco/spectrum_cs.c
@@ -310,21 +310,21 @@ spectrum_cs_config(struct pcmcia_device *link)
310 goto failed; 310 goto failed;
311 } 311 }
312 312
313 ret = pcmcia_request_irq(link, orinoco_interrupt);
314 if (ret)
315 goto failed;
316
317 /* We initialize the hermes structure before completing PCMCIA
318 * configuration just in case the interrupt handler gets
319 * called. */
320 mem = ioport_map(link->resource[0]->start, 313 mem = ioport_map(link->resource[0]->start,
321 resource_size(link->resource[0])); 314 resource_size(link->resource[0]));
322 if (!mem) 315 if (!mem)
323 goto failed; 316 goto failed;
324 317
318 /* We initialize the hermes structure before completing PCMCIA
319 * configuration just in case the interrupt handler gets
320 * called. */
325 hermes_struct_init(hw, mem, HERMES_16BIT_REGSPACING); 321 hermes_struct_init(hw, mem, HERMES_16BIT_REGSPACING);
326 hw->eeprom_pda = true; 322 hw->eeprom_pda = true;
327 323
324 ret = pcmcia_request_irq(link, orinoco_interrupt);
325 if (ret)
326 goto failed;
327
328 /* 328 /*
329 * This actually configures the PCMCIA socket -- setting up 329 * This actually configures the PCMCIA socket -- setting up
330 * the I/O windows and the interrupt mapping, and putting the 330 * the I/O windows and the interrupt mapping, and putting the
diff --git a/drivers/net/wireless/orinoco/wext.c b/drivers/net/wireless/orinoco/wext.c
index cf7be1eb6124..56aab61fd4cb 100644
--- a/drivers/net/wireless/orinoco/wext.c
+++ b/drivers/net/wireless/orinoco/wext.c
@@ -904,10 +904,10 @@ static int orinoco_ioctl_set_auth(struct net_device *dev,
904 */ 904 */
905 if (param->value) { 905 if (param->value) {
906 priv->tkip_cm_active = 1; 906 priv->tkip_cm_active = 1;
907 ret = hermes_enable_port(hw, 0); 907 ret = hermes_disable_port(hw, 0);
908 } else { 908 } else {
909 priv->tkip_cm_active = 0; 909 priv->tkip_cm_active = 0;
910 ret = hermes_disable_port(hw, 0); 910 ret = hermes_enable_port(hw, 0);
911 } 911 }
912 break; 912 break;
913 913