Skip to content

Commit db21e57

Browse files
author
Jeff Garzik
committed
Merge branch 'upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 into upstream
2 parents 6ed1425 + df8ccb9 commit db21e57

20 files changed

+228
-163
lines changed

drivers/net/wireless/airo.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2768,7 +2768,7 @@ static int airo_test_wpa_capable(struct airo_info *ai)
27682768

27692769
/* Only firmware versions 5.30.17 or better can do WPA */
27702770
if ((cap_rid.softVer > 0x530)
2771-
|| ((cap_rid.softVer == 0x530) && (cap_rid.softSubVer >= 0x17))) {
2771+
|| ((cap_rid.softVer == 0x530) && (cap_rid.softSubVer >= 17))) {
27722772
airo_print_info(name, "WPA is supported.");
27732773
return 1;
27742774
}

drivers/net/wireless/bcm43xx/bcm43xx_main.c

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -128,13 +128,15 @@ MODULE_PARM_DESC(fwpostfix, "Postfix for .fw files. Useful for debugging.");
128128
static struct pci_device_id bcm43xx_pci_tbl[] = {
129129
/* Broadcom 4303 802.11b */
130130
{ PCI_VENDOR_ID_BROADCOM, 0x4301, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
131-
/* Broadcom 4307 802.11b */
131+
/* Broadcom 4307 802.11b */
132132
{ PCI_VENDOR_ID_BROADCOM, 0x4307, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
133-
/* Broadcom 4318 802.11b/g */
133+
/* Broadcom 4318 802.11b/g */
134134
{ PCI_VENDOR_ID_BROADCOM, 0x4318, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
135+
/* Broadcom 4319 802.11a/b/g */
136+
{ PCI_VENDOR_ID_BROADCOM, 0x4319, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
135137
/* Broadcom 4306 802.11b/g */
136138
{ PCI_VENDOR_ID_BROADCOM, 0x4320, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
137-
/* Broadcom 4306 802.11a */
139+
/* Broadcom 4306 802.11a */
138140
// { PCI_VENDOR_ID_BROADCOM, 0x4321, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
139141
/* Broadcom 4309 802.11a/b/g */
140142
{ PCI_VENDOR_ID_BROADCOM, 0x4324, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },

drivers/net/wireless/hostap/hostap_80211_tx.c

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -534,5 +534,4 @@ int hostap_master_start_xmit(struct sk_buff *skb, struct net_device *dev)
534534
}
535535

536536

537-
EXPORT_SYMBOL(hostap_dump_tx_80211);
538537
EXPORT_SYMBOL(hostap_master_start_xmit);

drivers/net/wireless/hostap/hostap_ap.c

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3276,17 +3276,6 @@ EXPORT_SYMBOL(hostap_init_data);
32763276
EXPORT_SYMBOL(hostap_init_ap_proc);
32773277
EXPORT_SYMBOL(hostap_free_data);
32783278
EXPORT_SYMBOL(hostap_check_sta_fw_version);
3279-
EXPORT_SYMBOL(hostap_handle_sta_tx);
3280-
EXPORT_SYMBOL(hostap_handle_sta_release);
32813279
EXPORT_SYMBOL(hostap_handle_sta_tx_exc);
3282-
EXPORT_SYMBOL(hostap_update_sta_ps);
3283-
EXPORT_SYMBOL(hostap_handle_sta_rx);
3284-
EXPORT_SYMBOL(hostap_is_sta_assoc);
3285-
EXPORT_SYMBOL(hostap_is_sta_authorized);
3286-
EXPORT_SYMBOL(hostap_add_sta);
3287-
EXPORT_SYMBOL(hostap_update_rates);
3288-
EXPORT_SYMBOL(hostap_add_wds_links);
3289-
EXPORT_SYMBOL(hostap_wds_link_oper);
32903280
#ifndef PRISM2_NO_KERNEL_IEEE80211_MGMT
3291-
EXPORT_SYMBOL(hostap_deauth_all_stas);
32923281
#endif /* PRISM2_NO_KERNEL_IEEE80211_MGMT */

drivers/net/wireless/hostap/hostap_cs.c

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -881,6 +881,12 @@ static struct pcmcia_device_id hostap_cs_ids[] = {
881881
PCMCIA_DEVICE_PROD_ID12(
882882
"ZoomAir 11Mbps High", "Rate wireless Networking",
883883
0x273fe3db, 0x32a1eaee),
884+
PCMCIA_DEVICE_PROD_ID123(
885+
"Pretec", "CompactWLAN Card 802.11b", "2.5",
886+
0x1cadd3e5, 0xe697636c, 0x7a5bfcf1),
887+
PCMCIA_DEVICE_PROD_ID123(
888+
"U.S. Robotics", "IEEE 802.11b PC-CARD", "Version 01.02",
889+
0xc7b8df9d, 0x1700d087, 0x4b74baa0),
884890
PCMCIA_DEVICE_NULL
885891
};
886892
MODULE_DEVICE_TABLE(pcmcia, hostap_cs_ids);

drivers/net/wireless/hostap/hostap_main.c

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1125,11 +1125,9 @@ EXPORT_SYMBOL(hostap_set_auth_algs);
11251125
EXPORT_SYMBOL(hostap_dump_rx_header);
11261126
EXPORT_SYMBOL(hostap_dump_tx_header);
11271127
EXPORT_SYMBOL(hostap_80211_header_parse);
1128-
EXPORT_SYMBOL(hostap_80211_prism_header_parse);
11291128
EXPORT_SYMBOL(hostap_80211_get_hdrlen);
11301129
EXPORT_SYMBOL(hostap_get_stats);
11311130
EXPORT_SYMBOL(hostap_setup_dev);
1132-
EXPORT_SYMBOL(hostap_proc);
11331131
EXPORT_SYMBOL(hostap_set_multicast_list_queue);
11341132
EXPORT_SYMBOL(hostap_set_hostapd);
11351133
EXPORT_SYMBOL(hostap_set_hostapd_sta);

drivers/net/wireless/orinoco_cs.c

Lines changed: 10 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -147,14 +147,11 @@ static void orinoco_cs_detach(struct pcmcia_device *link)
147147
{
148148
struct net_device *dev = link->priv;
149149

150+
if (link->dev_node)
151+
unregister_netdev(dev);
152+
150153
orinoco_cs_release(link);
151154

152-
DEBUG(0, PFX "detach: link=%p link->dev_node=%p\n", link, link->dev_node);
153-
if (link->dev_node) {
154-
DEBUG(0, PFX "About to unregister net device %p\n",
155-
dev);
156-
unregister_netdev(dev);
157-
}
158155
free_orinocodev(dev);
159156
} /* orinoco_cs_detach */
160157

@@ -346,19 +343,10 @@ orinoco_cs_config(struct pcmcia_device *link)
346343
net_device has been registered */
347344

348345
/* Finally, report what we've done */
349-
printk(KERN_DEBUG "%s: index 0x%02x: ",
350-
dev->name, link->conf.ConfigIndex);
351-
if (link->conf.Vpp)
352-
printk(", Vpp %d.%d", link->conf.Vpp / 10,
353-
link->conf.Vpp % 10);
354-
printk(", irq %d", link->irq.AssignedIRQ);
355-
if (link->io.NumPorts1)
356-
printk(", io 0x%04x-0x%04x", link->io.BasePort1,
357-
link->io.BasePort1 + link->io.NumPorts1 - 1);
358-
if (link->io.NumPorts2)
359-
printk(" & 0x%04x-0x%04x", link->io.BasePort2,
360-
link->io.BasePort2 + link->io.NumPorts2 - 1);
361-
printk("\n");
346+
printk(KERN_DEBUG "%s: " DRIVER_NAME " at %s, irq %d, io "
347+
"0x%04x-0x%04x\n", dev->name, dev->class_dev.dev->bus_id,
348+
link->irq.AssignedIRQ, link->io.BasePort1,
349+
link->io.BasePort1 + link->io.NumPorts1 - 1);
362350

363351
return 0;
364352

@@ -427,7 +415,6 @@ static int orinoco_cs_resume(struct pcmcia_device *link)
427415
struct orinoco_private *priv = netdev_priv(dev);
428416
struct orinoco_pccard *card = priv->card;
429417
int err = 0;
430-
unsigned long flags;
431418

432419
if (! test_bit(0, &card->hard_reset_in_progress)) {
433420
err = orinoco_reinit_firmware(dev);
@@ -437,7 +424,7 @@ static int orinoco_cs_resume(struct pcmcia_device *link)
437424
return -EIO;
438425
}
439426

440-
spin_lock_irqsave(&priv->lock, flags);
427+
spin_lock(&priv->lock);
441428

442429
netif_device_attach(dev);
443430
priv->hw_unavailable--;
@@ -449,10 +436,10 @@ static int orinoco_cs_resume(struct pcmcia_device *link)
449436
dev->name, err);
450437
}
451438

452-
spin_unlock_irqrestore(&priv->lock, flags);
439+
spin_unlock(&priv->lock);
453440
}
454441

455-
return 0;
442+
return err;
456443
}
457444

458445

drivers/net/wireless/orinoco_nortel.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -206,7 +206,6 @@ static int orinoco_nortel_init_one(struct pci_dev *pdev,
206206
err = -EBUSY;
207207
goto fail_irq;
208208
}
209-
orinoco_pci_setup_netdev(dev, pdev, 2);
210209

211210
err = orinoco_nortel_hw_init(card);
212211
if (err) {
@@ -227,6 +226,8 @@ static int orinoco_nortel_init_one(struct pci_dev *pdev,
227226
}
228227

229228
pci_set_drvdata(pdev, dev);
229+
printk(KERN_DEBUG "%s: " DRIVER_NAME " at %s\n", dev->name,
230+
pci_name(pdev));
230231

231232
return 0;
232233

@@ -265,7 +266,7 @@ static void __devexit orinoco_nortel_remove_one(struct pci_dev *pdev)
265266
iowrite16(0, card->bridge_io + 10);
266267

267268
unregister_netdev(dev);
268-
free_irq(dev->irq, dev);
269+
free_irq(pdev->irq, dev);
269270
pci_set_drvdata(pdev, NULL);
270271
free_orinocodev(dev);
271272
pci_iounmap(pdev, priv->hw.iobase);

drivers/net/wireless/orinoco_pci.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,6 @@ static int orinoco_pci_init_one(struct pci_dev *pdev,
161161
err = -EBUSY;
162162
goto fail_irq;
163163
}
164-
orinoco_pci_setup_netdev(dev, pdev, 0);
165164

166165
err = orinoco_pci_cor_reset(priv);
167166
if (err) {
@@ -176,6 +175,8 @@ static int orinoco_pci_init_one(struct pci_dev *pdev,
176175
}
177176

178177
pci_set_drvdata(pdev, dev);
178+
printk(KERN_DEBUG "%s: " DRIVER_NAME " at %s\n", dev->name,
179+
pci_name(pdev));
179180

180181
return 0;
181182

@@ -204,7 +205,7 @@ static void __devexit orinoco_pci_remove_one(struct pci_dev *pdev)
204205
struct orinoco_private *priv = netdev_priv(dev);
205206

206207
unregister_netdev(dev);
207-
free_irq(dev->irq, dev);
208+
free_irq(pdev->irq, dev);
208209
pci_set_drvdata(pdev, NULL);
209210
free_orinocodev(dev);
210211
pci_iounmap(pdev, priv->hw.iobase);

drivers/net/wireless/orinoco_pci.h

Lines changed: 5 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -18,32 +18,7 @@ struct orinoco_pci_card {
1818
void __iomem *attr_io;
1919
};
2020

21-
/* Set base address or memory range of the network device based on
22-
* the PCI device it's using. Specify BAR of the "main" resource.
23-
* To be used after request_irq(). */
24-
static inline void orinoco_pci_setup_netdev(struct net_device *dev,
25-
struct pci_dev *pdev, int bar)
26-
{
27-
char *range_type;
28-
unsigned long start = pci_resource_start(pdev, bar);
29-
unsigned long len = pci_resource_len(pdev, bar);
30-
unsigned long flags = pci_resource_flags(pdev, bar);
31-
unsigned long end = start + len - 1;
32-
33-
dev->irq = pdev->irq;
34-
if (flags & IORESOURCE_IO) {
35-
dev->base_addr = start;
36-
range_type = "ports";
37-
} else {
38-
dev->mem_start = start;
39-
dev->mem_end = end;
40-
range_type = "memory";
41-
}
42-
43-
printk(KERN_DEBUG PFX "%s: irq %d, %s 0x%lx-0x%lx\n",
44-
pci_name(pdev), pdev->irq, range_type, start, end);
45-
}
46-
21+
#ifdef CONFIG_PM
4722
static int orinoco_pci_suspend(struct pci_dev *pdev, pm_message_t state)
4823
{
4924
struct net_device *dev = pci_get_drvdata(pdev);
@@ -121,5 +96,9 @@ static int orinoco_pci_resume(struct pci_dev *pdev)
12196

12297
return 0;
12398
}
99+
#else
100+
#define orinoco_pci_suspend NULL
101+
#define orinoco_pci_resume NULL
102+
#endif
124103

125104
#endif /* _ORINOCO_PCI_H */

drivers/net/wireless/orinoco_plx.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -245,7 +245,6 @@ static int orinoco_plx_init_one(struct pci_dev *pdev,
245245
err = -EBUSY;
246246
goto fail_irq;
247247
}
248-
orinoco_pci_setup_netdev(dev, pdev, 2);
249248

250249
err = orinoco_plx_hw_init(card);
251250
if (err) {
@@ -266,6 +265,8 @@ static int orinoco_plx_init_one(struct pci_dev *pdev,
266265
}
267266

268267
pci_set_drvdata(pdev, dev);
268+
printk(KERN_DEBUG "%s: " DRIVER_NAME " at %s\n", dev->name,
269+
pci_name(pdev));
269270

270271
return 0;
271272

@@ -301,7 +302,7 @@ static void __devexit orinoco_plx_remove_one(struct pci_dev *pdev)
301302
struct orinoco_pci_card *card = priv->card;
302303

303304
unregister_netdev(dev);
304-
free_irq(dev->irq, dev);
305+
free_irq(pdev->irq, dev);
305306
pci_set_drvdata(pdev, NULL);
306307
free_orinocodev(dev);
307308
pci_iounmap(pdev, priv->hw.iobase);

drivers/net/wireless/orinoco_tmd.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,6 @@ static int orinoco_tmd_init_one(struct pci_dev *pdev,
147147
err = -EBUSY;
148148
goto fail_irq;
149149
}
150-
orinoco_pci_setup_netdev(dev, pdev, 2);
151150

152151
err = orinoco_tmd_cor_reset(priv);
153152
if (err) {
@@ -162,6 +161,8 @@ static int orinoco_tmd_init_one(struct pci_dev *pdev,
162161
}
163162

164163
pci_set_drvdata(pdev, dev);
164+
printk(KERN_DEBUG "%s: " DRIVER_NAME " at %s\n", dev->name,
165+
pci_name(pdev));
165166

166167
return 0;
167168

@@ -194,7 +195,7 @@ static void __devexit orinoco_tmd_remove_one(struct pci_dev *pdev)
194195
struct orinoco_pci_card *card = priv->card;
195196

196197
unregister_netdev(dev);
197-
free_irq(dev->irq, dev);
198+
free_irq(pdev->irq, dev);
198199
pci_set_drvdata(pdev, NULL);
199200
free_orinocodev(dev);
200201
pci_iounmap(pdev, priv->hw.iobase);

drivers/net/wireless/spectrum_cs.c

Lines changed: 10 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -625,14 +625,11 @@ static void spectrum_cs_detach(struct pcmcia_device *link)
625625
{
626626
struct net_device *dev = link->priv;
627627

628+
if (link->dev_node)
629+
unregister_netdev(dev);
630+
628631
spectrum_cs_release(link);
629632

630-
DEBUG(0, PFX "detach: link=%p link->dev_node=%p\n", link, link->dev_node);
631-
if (link->dev_node) {
632-
DEBUG(0, PFX "About to unregister net device %p\n",
633-
dev);
634-
unregister_netdev(dev);
635-
}
636633
free_orinocodev(dev);
637634
} /* spectrum_cs_detach */
638635

@@ -825,19 +822,10 @@ spectrum_cs_config(struct pcmcia_device *link)
825822
net_device has been registered */
826823

827824
/* Finally, report what we've done */
828-
printk(KERN_DEBUG "%s: index 0x%02x: ",
829-
dev->name, link->conf.ConfigIndex);
830-
if (link->conf.Vpp)
831-
printk(", Vpp %d.%d", link->conf.Vpp / 10,
832-
link->conf.Vpp % 10);
833-
printk(", irq %d", link->irq.AssignedIRQ);
834-
if (link->io.NumPorts1)
835-
printk(", io 0x%04x-0x%04x", link->io.BasePort1,
836-
link->io.BasePort1 + link->io.NumPorts1 - 1);
837-
if (link->io.NumPorts2)
838-
printk(" & 0x%04x-0x%04x", link->io.BasePort2,
839-
link->io.BasePort2 + link->io.NumPorts2 - 1);
840-
printk("\n");
825+
printk(KERN_DEBUG "%s: " DRIVER_NAME " at %s, irq %d, io "
826+
"0x%04x-0x%04x\n", dev->name, dev->class_dev.dev->bus_id,
827+
link->irq.AssignedIRQ, link->io.BasePort1,
828+
link->io.BasePort1 + link->io.NumPorts1 - 1);
841829

842830
return 0;
843831

@@ -878,11 +866,10 @@ spectrum_cs_suspend(struct pcmcia_device *link)
878866
{
879867
struct net_device *dev = link->priv;
880868
struct orinoco_private *priv = netdev_priv(dev);
881-
unsigned long flags;
882869
int err = 0;
883870

884871
/* Mark the device as stopped, to block IO until later */
885-
spin_lock_irqsave(&priv->lock, flags);
872+
spin_lock(&priv->lock);
886873

887874
err = __orinoco_down(dev);
888875
if (err)
@@ -892,9 +879,9 @@ spectrum_cs_suspend(struct pcmcia_device *link)
892879
netif_device_detach(dev);
893880
priv->hw_unavailable++;
894881

895-
spin_unlock_irqrestore(&priv->lock, flags);
882+
spin_unlock(&priv->lock);
896883

897-
return 0;
884+
return err;
898885
}
899886

900887
static int

0 commit comments

Comments
 (0)