Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
a55d3471
Commit
a55d3471
authored
Oct 21, 2004
by
Jeff Garzik
Browse files
Options
Browse Files
Download
Plain Diff
Merge pobox.com:/garz/repo/linux-2.6
into pobox.com:/garz/repo/netdev-2.6/viro-eth1
parents
d1370cf6
c02c7ccf
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
159 additions
and
150 deletions
+159
-150
drivers/net/starfire.c
drivers/net/starfire.c
+40
-39
drivers/net/tokenring/lanstreamer.c
drivers/net/tokenring/lanstreamer.c
+12
-12
drivers/net/tokenring/lanstreamer.h
drivers/net/tokenring/lanstreamer.h
+1
-1
drivers/net/wireless/arlan-main.c
drivers/net/wireless/arlan-main.c
+45
-45
drivers/net/wireless/arlan-proc.c
drivers/net/wireless/arlan-proc.c
+10
-5
drivers/net/wireless/arlan.h
drivers/net/wireless/arlan.h
+11
-13
drivers/net/wireless/netwave_cs.c
drivers/net/wireless/netwave_cs.c
+40
-35
No files found.
drivers/net/starfire.c
View file @
a55d3471
...
...
@@ -776,6 +776,7 @@ struct netdev_private {
struct
mii_if_info
mii_if
;
/* MII lib hooks/info */
int
phy_cnt
;
/* MII device addresses. */
unsigned
char
phys
[
PHY_CNT
];
/* MII device addresses. */
void
__iomem
*
base
;
};
...
...
@@ -846,6 +847,7 @@ static int __devinit starfire_init_one(struct pci_dev *pdev,
struct
net_device
*
dev
;
static
int
card_idx
=
-
1
;
long
ioaddr
;
void
__iomem
*
base
;
int
drv_flags
,
io_size
;
int
boguscnt
;
...
...
@@ -884,14 +886,12 @@ static int __devinit starfire_init_one(struct pci_dev *pdev,
}
/* ioremap is borken in Linux-2.2.x/sparc64 */
#if !defined(CONFIG_SPARC64) || LINUX_VERSION_CODE > 0x20300
ioaddr
=
(
long
)
ioremap
(
ioaddr
,
io_size
);
if
(
!
ioaddr
)
{
base
=
ioremap
(
ioaddr
,
io_size
);
if
(
!
base
)
{
printk
(
KERN_ERR
DRV_NAME
" %d: cannot remap %#x @ %#lx, aborting
\n
"
,
card_idx
,
io_size
,
ioaddr
);
goto
err_out_free_res
;
}
#endif
/* !CONFIG_SPARC64 || Linux 2.3.0+ */
pci_set_master
(
pdev
);
...
...
@@ -918,27 +918,27 @@ static int __devinit starfire_init_one(struct pci_dev *pdev,
/* Serial EEPROM reads are hidden by the hardware. */
for
(
i
=
0
;
i
<
6
;
i
++
)
dev
->
dev_addr
[
i
]
=
readb
(
ioaddr
+
EEPROMCtrl
+
20
-
i
);
dev
->
dev_addr
[
i
]
=
readb
(
base
+
EEPROMCtrl
+
20
-
i
);
#if ! defined(final_version)
/* Dump the EEPROM contents during development. */
if
(
debug
>
4
)
for
(
i
=
0
;
i
<
0x20
;
i
++
)
printk
(
"%2.2x%s"
,
(
unsigned
int
)
readb
(
ioaddr
+
EEPROMCtrl
+
i
),
(
unsigned
int
)
readb
(
base
+
EEPROMCtrl
+
i
),
i
%
16
!=
15
?
" "
:
"
\n
"
);
#endif
/* Issue soft reset */
writel
(
MiiSoftReset
,
ioaddr
+
TxMode
);
writel
(
MiiSoftReset
,
base
+
TxMode
);
udelay
(
1000
);
writel
(
0
,
ioaddr
+
TxMode
);
writel
(
0
,
base
+
TxMode
);
/* Reset the chip to erase previous misconfiguration. */
writel
(
1
,
ioaddr
+
PCIDeviceConfig
);
writel
(
1
,
base
+
PCIDeviceConfig
);
boguscnt
=
1000
;
while
(
--
boguscnt
>
0
)
{
udelay
(
10
);
if
((
readl
(
ioaddr
+
PCIDeviceConfig
)
&
1
)
==
0
)
if
((
readl
(
base
+
PCIDeviceConfig
)
&
1
)
==
0
)
break
;
}
if
(
boguscnt
==
0
)
...
...
@@ -946,10 +946,11 @@ static int __devinit starfire_init_one(struct pci_dev *pdev,
/* wait a little longer */
udelay
(
1000
);
dev
->
base_addr
=
ioaddr
;
dev
->
base_addr
=
(
unsigned
long
)
base
;
dev
->
irq
=
irq
;
np
=
netdev_priv
(
dev
);
np
->
base
=
base
;
spin_lock_init
(
&
np
->
lock
);
pci_set_drvdata
(
pdev
,
dev
);
...
...
@@ -1021,8 +1022,8 @@ static int __devinit starfire_init_one(struct pci_dev *pdev,
if
(
register_netdev
(
dev
))
goto
err_out_cleardev
;
printk
(
KERN_INFO
"%s: %s at %
#lx
, "
,
dev
->
name
,
netdrv_tbl
[
chip_idx
].
name
,
ioaddr
);
printk
(
KERN_INFO
"%s: %s at %
p
, "
,
dev
->
name
,
netdrv_tbl
[
chip_idx
].
name
,
base
);
for
(
i
=
0
;
i
<
5
;
i
++
)
printk
(
"%2.2x:"
,
dev
->
dev_addr
[
i
]);
printk
(
"%2.2x, IRQ %d.
\n
"
,
dev
->
dev_addr
[
i
],
irq
);
...
...
@@ -1065,7 +1066,7 @@ static int __devinit starfire_init_one(struct pci_dev *pdev,
err_out_cleardev:
pci_set_drvdata
(
pdev
,
NULL
);
iounmap
(
(
void
*
)
ioaddr
);
iounmap
(
base
);
err_out_free_res:
pci_release_regions
(
pdev
);
err_out_free_netdev:
...
...
@@ -1077,7 +1078,8 @@ static int __devinit starfire_init_one(struct pci_dev *pdev,
/* Read the MII Management Data I/O (MDIO) interfaces. */
static
int
mdio_read
(
struct
net_device
*
dev
,
int
phy_id
,
int
location
)
{
long
mdio_addr
=
dev
->
base_addr
+
MIICtrl
+
(
phy_id
<<
7
)
+
(
location
<<
2
);
struct
netdev_private
*
np
=
netdev_priv
(
dev
);
void
__iomem
*
mdio_addr
=
np
->
base
+
MIICtrl
+
(
phy_id
<<
7
)
+
(
location
<<
2
);
int
result
,
boguscnt
=
1000
;
/* ??? Should we add a busy-wait here? */
do
...
...
@@ -1093,7 +1095,8 @@ static int mdio_read(struct net_device *dev, int phy_id, int location)
static
void
mdio_write
(
struct
net_device
*
dev
,
int
phy_id
,
int
location
,
int
value
)
{
long
mdio_addr
=
dev
->
base_addr
+
MIICtrl
+
(
phy_id
<<
7
)
+
(
location
<<
2
);
struct
netdev_private
*
np
=
netdev_priv
(
dev
);
void
__iomem
*
mdio_addr
=
np
->
base
+
MIICtrl
+
(
phy_id
<<
7
)
+
(
location
<<
2
);
writel
(
value
,
mdio_addr
);
/* The busy-wait will occur before a read. */
}
...
...
@@ -1102,7 +1105,7 @@ static void mdio_write(struct net_device *dev, int phy_id, int location, int val
static
int
netdev_open
(
struct
net_device
*
dev
)
{
struct
netdev_private
*
np
=
netdev_priv
(
dev
);
long
ioaddr
=
dev
->
base_addr
;
void
__iomem
*
ioaddr
=
np
->
base
;
int
i
,
retval
;
size_t
tx_done_q_size
,
rx_done_q_size
,
tx_ring_size
,
rx_ring_size
;
...
...
@@ -1191,7 +1194,7 @@ static int netdev_open(struct net_device *dev)
writew
(
0
,
ioaddr
+
PerfFilterTable
+
8
);
for
(
i
=
1
;
i
<
16
;
i
++
)
{
u16
*
eaddrs
=
(
u16
*
)
dev
->
dev_addr
;
long
setup_frm
=
ioaddr
+
PerfFilterTable
+
i
*
16
;
void
__iomem
*
setup_frm
=
ioaddr
+
PerfFilterTable
+
i
*
16
;
writew
(
cpu_to_be16
(
eaddrs
[
2
]),
setup_frm
);
setup_frm
+=
4
;
writew
(
cpu_to_be16
(
eaddrs
[
1
]),
setup_frm
);
setup_frm
+=
4
;
writew
(
cpu_to_be16
(
eaddrs
[
0
]),
setup_frm
);
setup_frm
+=
8
;
...
...
@@ -1295,7 +1298,7 @@ static void check_duplex(struct net_device *dev)
static
void
tx_timeout
(
struct
net_device
*
dev
)
{
struct
netdev_private
*
np
=
netdev_priv
(
dev
);
long
ioaddr
=
dev
->
base_addr
;
void
__iomem
*
ioaddr
=
np
->
base
;
int
old_debug
;
printk
(
KERN_WARNING
"%s: Transmit timed out, status %#8.8x, "
...
...
@@ -1343,7 +1346,7 @@ static void init_ring(struct net_device *dev)
/* Grrr, we cannot offset to correctly align the IP header. */
np
->
rx_ring
[
i
].
rxaddr
=
cpu_to_dma
(
np
->
rx_info
[
i
].
mapping
|
RxDescValid
);
}
writew
(
i
-
1
,
dev
->
base_addr
+
RxDescQIdx
);
writew
(
i
-
1
,
np
->
base
+
RxDescQIdx
);
np
->
dirty_rx
=
(
unsigned
int
)(
i
-
RX_RING_SIZE
);
/* Clear the remainder of the Rx buffer ring. */
...
...
@@ -1464,7 +1467,7 @@ static int start_tx(struct sk_buff *skb, struct net_device *dev)
wmb
();
/* Update the producer index. */
writel
(
entry
*
(
sizeof
(
starfire_tx_desc
)
/
8
),
dev
->
base_addr
+
TxProducerIdx
);
writel
(
entry
*
(
sizeof
(
starfire_tx_desc
)
/
8
),
np
->
base
+
TxProducerIdx
);
/* 4 is arbitrary, but should be ok */
if
((
np
->
cur_tx
-
np
->
dirty_tx
)
+
4
>
TX_RING_SIZE
)
...
...
@@ -1481,16 +1484,13 @@ static int start_tx(struct sk_buff *skb, struct net_device *dev)
static
irqreturn_t
intr_handler
(
int
irq
,
void
*
dev_instance
,
struct
pt_regs
*
rgs
)
{
struct
net_device
*
dev
=
dev_instance
;
struct
netdev_private
*
np
;
long
ioaddr
;
struct
netdev_private
*
np
=
netdev_priv
(
dev
)
;
void
__iomem
*
ioaddr
=
np
->
base
;
int
boguscnt
=
max_interrupt_work
;
int
consumer
;
int
tx_status
;
int
handled
=
0
;
ioaddr
=
dev
->
base_addr
;
np
=
netdev_priv
(
dev
);
do
{
u32
intr_status
=
readl
(
ioaddr
+
IntrClear
);
...
...
@@ -1697,7 +1697,7 @@ static int __netdev_rx(struct net_device *dev, int *quota)
desc
->
status
=
0
;
np
->
rx_done
=
(
np
->
rx_done
+
1
)
%
DONE_Q_SIZE
;
}
writew
(
np
->
rx_done
,
dev
->
base_addr
+
CompletionQConsumerIdx
);
writew
(
np
->
rx_done
,
np
->
base
+
CompletionQConsumerIdx
);
out:
refill_rx_ring
(
dev
);
...
...
@@ -1712,7 +1712,8 @@ static int __netdev_rx(struct net_device *dev, int *quota)
static
int
netdev_poll
(
struct
net_device
*
dev
,
int
*
budget
)
{
u32
intr_status
;
long
ioaddr
=
dev
->
base_addr
;
struct
netdev_private
*
np
=
netdev_priv
(
dev
);
void
__iomem
*
ioaddr
=
np
->
base
;
int
retcode
=
0
,
quota
=
dev
->
quota
;
do
{
...
...
@@ -1766,14 +1767,14 @@ static void refill_rx_ring(struct net_device *dev)
np
->
rx_ring
[
entry
].
rxaddr
|=
cpu_to_dma
(
RxDescEndRing
);
}
if
(
entry
>=
0
)
writew
(
entry
,
dev
->
base_addr
+
RxDescQIdx
);
writew
(
entry
,
np
->
base
+
RxDescQIdx
);
}
static
void
netdev_media_change
(
struct
net_device
*
dev
)
{
struct
netdev_private
*
np
=
netdev_priv
(
dev
);
long
ioaddr
=
dev
->
base_addr
;
void
__iomem
*
ioaddr
=
np
->
base
;
u16
reg0
,
reg1
,
reg4
,
reg5
;
u32
new_tx_mode
;
u32
new_intr_timer_ctrl
;
...
...
@@ -1852,7 +1853,7 @@ static void netdev_error(struct net_device *dev, int intr_status)
/* Came close to underrunning the Tx FIFO, increase threshold. */
if
(
intr_status
&
IntrTxDataLow
)
{
if
(
np
->
tx_threshold
<=
PKT_BUF_SZ
/
16
)
{
writel
(
++
np
->
tx_threshold
,
dev
->
base_addr
+
TxThreshold
);
writel
(
++
np
->
tx_threshold
,
np
->
base
+
TxThreshold
);
printk
(
KERN_NOTICE
"%s: PCI bus congestion, increasing Tx FIFO threshold to %d bytes
\n
"
,
dev
->
name
,
np
->
tx_threshold
*
16
);
}
else
...
...
@@ -1874,8 +1875,8 @@ static void netdev_error(struct net_device *dev, int intr_status)
static
struct
net_device_stats
*
get_stats
(
struct
net_device
*
dev
)
{
long
ioaddr
=
dev
->
base_addr
;
struct
netdev_private
*
np
=
netdev_priv
(
dev
);
void
__iomem
*
ioaddr
=
np
->
base
;
/* This adapter architecture needs no SMP locks. */
np
->
stats
.
tx_bytes
=
readl
(
ioaddr
+
0x57010
);
...
...
@@ -1904,17 +1905,17 @@ static struct net_device_stats *get_stats(struct net_device *dev)
*/
static
void
set_rx_mode
(
struct
net_device
*
dev
)
{
long
ioaddr
=
dev
->
base_addr
;
struct
netdev_private
*
np
=
netdev_priv
(
dev
);
void
__iomem
*
ioaddr
=
np
->
base
;
u32
rx_mode
=
MinVLANPrio
;
struct
dev_mc_list
*
mclist
;
int
i
;
#ifdef VLAN_SUPPORT
struct
netdev_private
*
np
=
netdev_priv
(
dev
);
rx_mode
|=
VlanMode
;
if
(
np
->
vlgrp
)
{
int
vlan_count
=
0
;
long
filter_addr
=
ioaddr
+
HashTable
+
8
;
void
__iomem
*
filter_addr
=
ioaddr
+
HashTable
+
8
;
for
(
i
=
0
;
i
<
VLAN_VID_MASK
;
i
++
)
{
if
(
np
->
vlgrp
->
vlan_devices
[
i
])
{
if
(
vlan_count
>=
32
)
...
...
@@ -1943,7 +1944,7 @@ static void set_rx_mode(struct net_device *dev)
rx_mode
|=
AcceptBroadcast
|
AcceptAllMulticast
|
PerfectFilter
;
}
else
if
(
dev
->
mc_count
<=
14
)
{
/* Use the 16 element perfect filter, skip first two entries. */
long
filter_addr
=
ioaddr
+
PerfFilterTable
+
2
*
16
;
void
__iomem
*
filter_addr
=
ioaddr
+
PerfFilterTable
+
2
*
16
;
u16
*
eaddrs
;
for
(
i
=
2
,
mclist
=
dev
->
mc_list
;
mclist
&&
i
<
dev
->
mc_count
+
2
;
i
++
,
mclist
=
mclist
->
next
)
{
...
...
@@ -1961,7 +1962,7 @@ static void set_rx_mode(struct net_device *dev)
rx_mode
|=
AcceptBroadcast
|
PerfectFilter
;
}
else
{
/* Must use a multicast hash table. */
long
filter_addr
;
void
__iomem
*
filter_addr
;
u16
*
eaddrs
;
u16
mc_filter
[
32
]
__attribute__
((
aligned
(
sizeof
(
long
))));
/* Multicast hash filter */
...
...
@@ -2077,8 +2078,8 @@ static int netdev_ioctl(struct net_device *dev, struct ifreq *rq, int cmd)
static
int
netdev_close
(
struct
net_device
*
dev
)
{
long
ioaddr
=
dev
->
base_addr
;
struct
netdev_private
*
np
=
netdev_priv
(
dev
);
void
__iomem
*
ioaddr
=
np
->
base
;
int
i
;
netif_stop_queue
(
dev
);
...
...
@@ -2162,7 +2163,7 @@ static void __devexit starfire_remove_one (struct pci_dev *pdev)
pci_set_power_state
(
pdev
,
3
);
/* go to sleep in D3 mode */
pci_disable_device
(
pdev
);
iounmap
(
(
char
*
)
dev
->
base_addr
);
iounmap
(
np
->
base
);
pci_release_regions
(
pdev
);
pci_set_drvdata
(
pdev
,
NULL
);
...
...
drivers/net/tokenring/lanstreamer.c
View file @
a55d3471
...
...
@@ -443,7 +443,7 @@ static void __devexit streamer_remove_one(struct pci_dev *pdev)
static
int
streamer_reset
(
struct
net_device
*
dev
)
{
struct
streamer_private
*
streamer_priv
;
__u8
*
streamer_mmio
;
__u8
__iomem
*
streamer_mmio
;
unsigned
long
t
;
unsigned
int
uaa_addr
;
struct
sk_buff
*
skb
=
NULL
;
...
...
@@ -591,7 +591,7 @@ static int streamer_reset(struct net_device *dev)
static
int
streamer_open
(
struct
net_device
*
dev
)
{
struct
streamer_private
*
streamer_priv
=
(
struct
streamer_private
*
)
dev
->
priv
;
__u8
*
streamer_mmio
=
streamer_priv
->
streamer_mmio
;
__u8
__iomem
*
streamer_mmio
=
streamer_priv
->
streamer_mmio
;
unsigned
long
flags
;
char
open_error
[
255
];
int
i
,
open_finished
=
1
;
...
...
@@ -908,7 +908,7 @@ static void streamer_rx(struct net_device *dev)
{
struct
streamer_private
*
streamer_priv
=
(
struct
streamer_private
*
)
dev
->
priv
;
__u8
*
streamer_mmio
=
streamer_priv
->
streamer_mmio
;
__u8
__iomem
*
streamer_mmio
=
streamer_priv
->
streamer_mmio
;
struct
streamer_rx_desc
*
rx_desc
;
int
rx_ring_last_received
,
length
,
frame_length
,
buffer_cnt
=
0
;
struct
sk_buff
*
skb
,
*
skb2
;
...
...
@@ -1035,7 +1035,7 @@ static irqreturn_t streamer_interrupt(int irq, void *dev_id, struct pt_regs *reg
struct
net_device
*
dev
=
(
struct
net_device
*
)
dev_id
;
struct
streamer_private
*
streamer_priv
=
(
struct
streamer_private
*
)
dev
->
priv
;
__u8
*
streamer_mmio
=
streamer_priv
->
streamer_mmio
;
__u8
__iomem
*
streamer_mmio
=
streamer_priv
->
streamer_mmio
;
__u16
sisr
;
__u16
misr
;
u8
max_intr
=
MAX_INTR
;
...
...
@@ -1158,7 +1158,7 @@ static int streamer_xmit(struct sk_buff *skb, struct net_device *dev)
{
struct
streamer_private
*
streamer_priv
=
(
struct
streamer_private
*
)
dev
->
priv
;
__u8
*
streamer_mmio
=
streamer_priv
->
streamer_mmio
;
__u8
__iomem
*
streamer_mmio
=
streamer_priv
->
streamer_mmio
;
unsigned
long
flags
;
spin_lock_irqsave
(
&
streamer_priv
->
streamer_lock
,
flags
);
...
...
@@ -1209,7 +1209,7 @@ static int streamer_close(struct net_device *dev)
{
struct
streamer_private
*
streamer_priv
=
(
struct
streamer_private
*
)
dev
->
priv
;
__u8
*
streamer_mmio
=
streamer_priv
->
streamer_mmio
;
__u8
__iomem
*
streamer_mmio
=
streamer_priv
->
streamer_mmio
;
unsigned
long
flags
;
int
i
;
...
...
@@ -1275,7 +1275,7 @@ static void streamer_set_rx_mode(struct net_device *dev)
{
struct
streamer_private
*
streamer_priv
=
(
struct
streamer_private
*
)
dev
->
priv
;
__u8
*
streamer_mmio
=
streamer_priv
->
streamer_mmio
;
__u8
__iomem
*
streamer_mmio
=
streamer_priv
->
streamer_mmio
;
__u8
options
=
0
;
struct
dev_mc_list
*
dmi
;
unsigned
char
dev_mc_address
[
5
];
...
...
@@ -1334,7 +1334,7 @@ static void streamer_set_rx_mode(struct net_device *dev)
static
void
streamer_srb_bh
(
struct
net_device
*
dev
)
{
struct
streamer_private
*
streamer_priv
=
(
struct
streamer_private
*
)
dev
->
priv
;
__u8
*
streamer_mmio
=
streamer_priv
->
streamer_mmio
;
__u8
__iomem
*
streamer_mmio
=
streamer_priv
->
streamer_mmio
;
__u16
srb_word
;
writew
(
streamer_priv
->
srb
,
streamer_mmio
+
LAPA
);
...
...
@@ -1531,7 +1531,7 @@ static void streamer_arb_cmd(struct net_device *dev)
{
struct
streamer_private
*
streamer_priv
=
(
struct
streamer_private
*
)
dev
->
priv
;
__u8
*
streamer_mmio
=
streamer_priv
->
streamer_mmio
;
__u8
__iomem
*
streamer_mmio
=
streamer_priv
->
streamer_mmio
;
__u8
header_len
;
__u16
frame_len
,
buffer_len
;
struct
sk_buff
*
mac_frame
;
...
...
@@ -1747,7 +1747,7 @@ static void streamer_asb_bh(struct net_device *dev)
{
struct
streamer_private
*
streamer_priv
=
(
struct
streamer_private
*
)
dev
->
priv
;
__u8
*
streamer_mmio
=
streamer_priv
->
streamer_mmio
;
__u8
__iomem
*
streamer_mmio
=
streamer_priv
->
streamer_mmio
;
if
(
streamer_priv
->
asb_queued
==
1
)
{
...
...
@@ -1855,7 +1855,7 @@ static int sprintf_info(char *buffer, struct net_device *dev)
{
struct
streamer_private
*
streamer_priv
=
(
struct
streamer_private
*
)
dev
->
priv
;
__u8
*
streamer_mmio
=
streamer_priv
->
streamer_mmio
;
__u8
__iomem
*
streamer_mmio
=
streamer_priv
->
streamer_mmio
;
struct
streamer_adapter_addr_table
sat
;
struct
streamer_parameters_table
spt
;
int
size
=
0
;
...
...
@@ -1939,7 +1939,7 @@ static int streamer_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
{
int
i
;
struct
streamer_private
*
streamer_priv
=
(
struct
streamer_private
*
)
dev
->
priv
;
u8
*
streamer_mmio
=
streamer_priv
->
streamer_mmio
;
u8
__iomem
*
streamer_mmio
=
streamer_priv
->
streamer_mmio
;
switch
(
cmd
)
{
case
IOCTL_SISR_MASK
:
...
...
drivers/net/tokenring/lanstreamer.h
View file @
a55d3471
...
...
@@ -293,7 +293,7 @@ struct streamer_private {
struct
streamer_private
*
next
;
struct
pci_dev
*
pci_dev
;
__u8
*
streamer_mmio
;
__u8
__iomem
*
streamer_mmio
;
char
*
streamer_card_name
;
spinlock_t
streamer_lock
;
...
...
drivers/net/wireless/arlan-main.c
View file @
a55d3471
...
...
@@ -129,7 +129,7 @@ static inline long us2ticks(int us)
static
inline
int
arlan_drop_tx
(
struct
net_device
*
dev
)
{
struct
arlan_private
*
priv
=
dev
->
priv
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
)
;
priv
->
stats
.
tx_errors
++
;
if
(
priv
->
Conf
->
tx_delay_ms
)
...
...
@@ -152,8 +152,8 @@ static inline int arlan_drop_tx(struct net_device *dev)
int
arlan_command
(
struct
net_device
*
dev
,
int
command_p
)
{
struct
arlan_private
*
priv
=
dev
->
priv
;
volatile
struct
arlan_shmem
*
arlan
=
priv
->
card
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
)
;
volatile
struct
arlan_shmem
__iomem
*
arlan
=
priv
->
card
;
struct
arlan_conf_stru
*
conf
=
priv
->
Conf
;
int
udelayed
=
0
;
int
i
=
0
;
...
...
@@ -368,7 +368,7 @@ int arlan_command(struct net_device *dev, int command_p)
if
(
!
registrationBad
(
dev
))
{
setInterruptEnable
(
dev
);
memset_io
(
(
void
*
)
arlan
->
commandParameter
,
0
,
0xf
);
memset_io
(
arlan
->
commandParameter
,
0
,
0xf
);
WRITESHMB
(
arlan
->
commandByte
,
ARLAN_COM_INT
|
ARLAN_COM_RX_ENABLE
);
WRITESHMB
(
arlan
->
commandParameter
[
0
],
conf
->
rxParameter
);
arlan_interrupt_lancpu
(
dev
);
...
...
@@ -398,9 +398,9 @@ int arlan_command(struct net_device *dev, int command_p)
priv
->
last_rx_int_ack_time
+
us2ticks
(
conf
->
rx_tweak2
)))
{
setInterruptEnable
(
dev
);
memset_io
(
(
void
*
)
arlan
->
commandParameter
,
0
,
0xf
);
memset_io
(
arlan
->
commandParameter
,
0
,
0xf
);
WRITESHMB
(
arlan
->
commandByte
,
ARLAN_COM_TX_ENABLE
|
ARLAN_COM_INT
);
memcpy_toio
(
(
void
*
)
arlan
->
commandParameter
,
&
TXLAST
(
dev
),
14
);
memcpy_toio
(
arlan
->
commandParameter
,
&
TXLAST
(
dev
),
14
);
// for ( i=1 ; i < 15 ; i++) printk("%02x:",READSHMB(arlan->commandParameter[i]));
priv
->
tx_last_sent
=
jiffies
;
arlan_interrupt_lancpu
(
dev
);
...
...
@@ -481,7 +481,7 @@ int arlan_command(struct net_device *dev, int command_p)
static
inline
void
arlan_command_process
(
struct
net_device
*
dev
)
{
struct
arlan_private
*
priv
=
dev
->
priv
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
)
;
int
times
=
0
;
while
(
priv
->
waiting_command_mask
&&
times
<
8
)
...
...
@@ -502,7 +502,7 @@ static inline void arlan_command_process(struct net_device *dev)
static
inline
void
arlan_retransmit_now
(
struct
net_device
*
dev
)
{
struct
arlan_private
*
priv
=
dev
->
priv
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
)
;
ARLAN_DEBUG_ENTRY
(
"arlan_retransmit_now"
);
...
...
@@ -540,7 +540,7 @@ static inline void arlan_retransmit_now(struct net_device *dev)
static
void
arlan_registration_timer
(
unsigned
long
data
)
{
struct
net_device
*
dev
=
(
struct
net_device
*
)
data
;
struct
arlan_private
*
priv
=
dev
->
priv
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
)
;
int
bh_mark_needed
=
0
;
int
next_tick
=
1
;
long
lostTime
=
((
long
)
jiffies
-
(
long
)
priv
->
registrationLastSeen
)
...
...
@@ -633,7 +633,7 @@ static void arlan_registration_timer(unsigned long data)
static
void
arlan_print_registers
(
struct
net_device
*
dev
,
int
line
)
{
struct
arlan_private
*
priv
=
dev
->
priv
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
)
;
volatile
struct
arlan_shmem
*
arlan
=
priv
->
card
;
u_char
hostcpuLock
,
lancpuLock
,
controlRegister
,
cntrlRegImage
,
...
...
@@ -663,8 +663,8 @@ static int arlan_hw_tx(struct net_device *dev, char *buf, int length)
{
int
i
;
struct
arlan_private
*
priv
=
dev
->
priv
;
volatile
struct
arlan_shmem
*
arlan
=
priv
->
card
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
)
;
volatile
struct
arlan_shmem
__iomem
*
arlan
=
priv
->
card
;
struct
arlan_conf_stru
*
conf
=
priv
->
Conf
;
int
tailStarts
=
0x800
;
...
...
@@ -673,9 +673,9 @@ static int arlan_hw_tx(struct net_device *dev, char *buf, int length)
ARLAN_DEBUG_ENTRY
(
"arlan_hw_tx"
);
if
(
TXHEAD
(
dev
).
offset
)
headEnds
=
(((
TXHEAD
(
dev
).
offset
+
TXHEAD
(
dev
).
length
-
(((
int
)
arlan
->
txBuffer
)
-
((
int
)
arlan
)
))
/
64
)
+
1
)
*
64
;
headEnds
=
(((
TXHEAD
(
dev
).
offset
+
TXHEAD
(
dev
).
length
-
offsetof
(
struct
arlan_shmem
,
txBuffer
))
/
64
)
+
1
)
*
64
;
if
(
TXTAIL
(
dev
).
offset
)
tailStarts
=
0x800
-
(((
TXTAIL
(
dev
).
offset
-
(((
int
)
arlan
->
txBuffer
)
-
((
int
)
arlan
)
))
/
64
)
+
2
)
*
64
;
tailStarts
=
0x800
-
(((
TXTAIL
(
dev
).
offset
-
offsetof
(
struct
arlan_shmem
,
txBuffer
))
/
64
)
+
2
)
*
64
;
if
(
!
TXHEAD
(
dev
).
offset
&&
length
<
tailStarts
)
...
...
@@ -684,7 +684,7 @@ static int arlan_hw_tx(struct net_device *dev, char *buf, int length)
printk
(
KERN_ERR
"TXHEAD insert, tailStart %d
\n
"
,
tailStarts
);
TXHEAD
(
dev
).
offset
=
(((
int
)
arlan
->
txBuffer
)
-
((
int
)
arlan
)
);
offsetof
(
struct
arlan_shmem
,
txBuffer
);
TXHEAD
(
dev
).
length
=
length
-
ARLAN_FAKE_HDR_LEN
;
for
(
i
=
0
;
i
<
6
;
i
++
)
TXHEAD
(
dev
).
dest
[
i
]
=
buf
[
i
];
...
...
@@ -692,7 +692,7 @@ static int arlan_hw_tx(struct net_device *dev, char *buf, int length)
TXHEAD
(
dev
).
retries
=
conf
->
txRetries
;
/* 0 is use default */
TXHEAD
(
dev
).
routing
=
conf
->
txRouting
;
TXHEAD
(
dev
).
scrambled
=
conf
->
txScrambled
;
memcpy_toio
((
(
char
*
)
arlan
+
TXHEAD
(
dev
).
offset
)
,
buf
+
ARLAN_FAKE_HDR_LEN
,
TXHEAD
(
dev
).
length
);
memcpy_toio
((
char
__iomem
*
)
arlan
+
TXHEAD
(
dev
).
offset
,
buf
+
ARLAN_FAKE_HDR_LEN
,
TXHEAD
(
dev
).
length
);
}
else
if
(
!
TXTAIL
(
dev
).
offset
&&
length
<
(
0x800
-
headEnds
))
{
...
...
@@ -700,7 +700,7 @@ static int arlan_hw_tx(struct net_device *dev, char *buf, int length)
printk
(
KERN_ERR
"TXTAIL insert, headEnd %d
\n
"
,
headEnds
);
TXTAIL
(
dev
).
offset
=
(((
int
)
arlan
->
txBuffer
)
-
((
int
)
arlan
)
)
+
0x800
-
(
length
/
64
+
2
)
*
64
;
offsetof
(
struct
arlan_shmem
,
txBuffer
)
+
0x800
-
(
length
/
64
+
2
)
*
64
;
TXTAIL
(
dev
).
length
=
length
-
ARLAN_FAKE_HDR_LEN
;
for
(
i
=
0
;
i
<
6
;
i
++
)
TXTAIL
(
dev
).
dest
[
i
]
=
buf
[
i
];
...
...
@@ -708,7 +708,7 @@ static int arlan_hw_tx(struct net_device *dev, char *buf, int length)
TXTAIL
(
dev
).
retries
=
conf
->
txRetries
;
TXTAIL
(
dev
).
routing
=
conf
->
txRouting
;
TXTAIL
(
dev
).
scrambled
=
conf
->
txScrambled
;
memcpy_toio
(((
char
*
)
arlan
+
TXTAIL
(
dev
).
offset
),
buf
+
ARLAN_FAKE_HDR_LEN
,
TXTAIL
(
dev
).
length
);
memcpy_toio
(((
char
__iomem
*
)
arlan
+
TXTAIL
(
dev
).
offset
),
buf
+
ARLAN_FAKE_HDR_LEN
,
TXTAIL
(
dev
).
length
);
}
else
{
...
...
@@ -764,8 +764,8 @@ static int arlan_hw_tx(struct net_device *dev, char *buf, int length)
static
int
arlan_hw_config
(
struct
net_device
*
dev
)
{
struct
arlan_private
*
priv
=
dev
->
priv
;
volatile
struct
arlan_shmem
*
arlan
=
priv
->
card
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
)
;
volatile
struct
arlan_shmem
__iomem
*
arlan
=
priv
->
card
;
struct
arlan_conf_stru
*
conf
=
priv
->
Conf
;
ARLAN_DEBUG_ENTRY
(
"arlan_hw_config"
);
...
...
@@ -847,8 +847,8 @@ static int arlan_hw_config(struct net_device *dev)
static
int
arlan_read_card_configuration
(
struct
net_device
*
dev
)
{
u_char
tlx415
;
struct
arlan_private
*
priv
=
dev
->
priv
;
volatile
struct
arlan_shmem
*
arlan
=
priv
->
card
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
)
;
volatile
struct
arlan_shmem
__iomem
*
arlan
=
priv
->
card
;
struct
arlan_conf_stru
*
conf
=
priv
->
Conf
;
ARLAN_DEBUG_ENTRY
(
"arlan_read_card_configuration"
);
...
...
@@ -972,7 +972,7 @@ static int lastFoundAt = 0xbe000;
static
int
__init
arlan_check_fingerprint
(
unsigned
long
memaddr
)
{
static
const
char
probeText
[]
=
"TELESYSTEM SLW INC. ARLAN
\0
"
;
volatile
struct
arlan_shmem
*
arlan
=
(
struct
arlan_shmem
*
)
memaddr
;
volatile
struct
arlan_shmem
__iomem
*
arlan
=
(
struct
arlan_shmem
*
)
memaddr
;
unsigned
long
paddr
=
virt_to_phys
((
void
*
)
memaddr
);
char
tempBuf
[
49
];
...
...
@@ -1000,7 +1000,7 @@ static int __init arlan_check_fingerprint(unsigned long memaddr)
static
int
arlan_change_mtu
(
struct
net_device
*
dev
,
int
new_mtu
)
{
struct
arlan_private
*
priv
=
dev
->
priv
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
)
;
struct
arlan_conf_stru
*
conf
=
priv
->
Conf
;
ARLAN_DEBUG_ENTRY
(
"arlan_change_mtu"
);
...
...
@@ -1040,7 +1040,7 @@ static int arlan_mac_addr(struct net_device *dev, void *p)
static
int
__init
arlan_setup_device
(
struct
net_device
*
dev
,
int
num
)
{
struct
arlan_private
*
ap
=
dev
->
priv
;
struct
arlan_private
*
ap
=
netdev_priv
(
dev
)
;
int
err
;
ARLAN_DEBUG_ENTRY
(
"arlan_setup_device"
);
...
...
@@ -1081,7 +1081,7 @@ static int __init arlan_setup_device(struct net_device *dev, int num)
static
int
__init
arlan_probe_here
(
struct
net_device
*
dev
,
unsigned
long
memaddr
)
{
struct
arlan_private
*
ap
=
dev
->
priv
;
struct
arlan_private
*
ap
=
netdev_priv
(
dev
)
;
ARLAN_DEBUG_ENTRY
(
"arlan_probe_here"
);
...
...
@@ -1110,8 +1110,8 @@ static int __init arlan_probe_here(struct net_device *dev,
static
int
arlan_open
(
struct
net_device
*
dev
)
{
struct
arlan_private
*
priv
=
dev
->
priv
;
volatile
struct
arlan_shmem
*
arlan
=
priv
->
card
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
)
;
volatile
struct
arlan_shmem
__iomem
*
arlan
=
priv
->
card
;
int
ret
=
0
;
ARLAN_DEBUG_ENTRY
(
"arlan_open"
);
...
...
@@ -1208,7 +1208,7 @@ static int arlan_tx(struct sk_buff *skb, struct net_device *dev)
static
inline
int
DoNotReTransmitCrap
(
struct
net_device
*
dev
)
{
struct
arlan_private
*
priv
=
dev
->
priv
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
)
;
if
(
TXLAST
(
dev
).
length
<
priv
->
Conf
->
ReTransmitPacketMaxSize
)
return
1
;
...
...
@@ -1218,7 +1218,7 @@ static inline int DoNotReTransmitCrap(struct net_device *dev)
static
inline
int
DoNotWaitReTransmitCrap
(
struct
net_device
*
dev
)
{
struct
arlan_private
*
priv
=
dev
->
priv
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
)
;
if
(
TXLAST
(
dev
).
length
<
priv
->
Conf
->
waitReTransmitPacketMaxSize
)
return
1
;
...
...
@@ -1227,7 +1227,7 @@ static inline int DoNotWaitReTransmitCrap(struct net_device *dev)
static
inline
void
arlan_queue_retransmit
(
struct
net_device
*
dev
)
{
struct
arlan_private
*
priv
=
dev
->
priv
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
)
;
ARLAN_DEBUG_ENTRY
(
"arlan_queue_retransmit"
);
...
...
@@ -1242,7 +1242,7 @@ static inline void arlan_queue_retransmit(struct net_device *dev)
static
inline
void
RetryOrFail
(
struct
net_device
*
dev
)
{
struct
arlan_private
*
priv
=
dev
->
priv
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
)
;
ARLAN_DEBUG_ENTRY
(
"RetryOrFail"
);
...
...
@@ -1263,7 +1263,7 @@ static inline void RetryOrFail(struct net_device *dev)
static
void
arlan_tx_done_interrupt
(
struct
net_device
*
dev
,
int
status
)
{
struct
arlan_private
*
priv
=
dev
->
priv
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
)
;
ARLAN_DEBUG_ENTRY
(
"arlan_tx_done_interrupt"
);
...
...
@@ -1405,8 +1405,8 @@ static void arlan_rx_interrupt(struct net_device *dev, u_char rxStatus, u_short
char
*
skbtmp
;
int
i
=
0
;
struct
arlan_private
*
priv
=
dev
->
priv
;
volatile
struct
arlan_shmem
*
arlan
=
priv
->
card
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
)
;
volatile
struct
arlan_shmem
__iomem
*
arlan
=
priv
->
card
;
struct
arlan_conf_stru
*
conf
=
priv
->
Conf
;
...
...
@@ -1509,7 +1509,7 @@ static void arlan_rx_interrupt(struct net_device *dev, u_char rxStatus, u_short
skb
->
dev
=
dev
;
skbtmp
=
skb_put
(
skb
,
pkt_len
);
memcpy_fromio
(
skbtmp
+
ARLAN_FAKE_HDR_LEN
,
((
char
*
)
arlan
)
+
rxOffset
,
pkt_len
-
ARLAN_FAKE_HDR_LEN
);
memcpy_fromio
(
skbtmp
+
ARLAN_FAKE_HDR_LEN
,
((
char
__iomem
*
)
arlan
)
+
rxOffset
,
pkt_len
-
ARLAN_FAKE_HDR_LEN
);
memcpy_fromio
(
skbtmp
,
arlan
->
ultimateDestAddress
,
6
);
memcpy_fromio
(
skbtmp
+
6
,
arlan
->
rxSrc
,
6
);
WRITESHMB
(
arlan
->
rxStatus
,
0x00
);
...
...
@@ -1557,8 +1557,8 @@ static void arlan_rx_interrupt(struct net_device *dev, u_char rxStatus, u_short
static
void
arlan_process_interrupt
(
struct
net_device
*
dev
)
{
struct
arlan_private
*
priv
=
dev
->
priv
;
volatile
struct
arlan_shmem
*
arlan
=
priv
->
card
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
)
;
volatile
struct
arlan_shmem
__iomem
*
arlan
=
priv
->
card
;
u_char
rxStatus
=
READSHMB
(
arlan
->
rxStatus
);
u_char
txStatus
=
READSHMB
(
arlan
->
txStatus
);
u_short
rxOffset
=
READSHMS
(
arlan
->
rxOffset
);
...
...
@@ -1660,8 +1660,8 @@ static void arlan_process_interrupt(struct net_device *dev)
static
irqreturn_t
arlan_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
)
{
struct
net_device
*
dev
=
dev_id
;
struct
arlan_private
*
priv
=
dev
->
priv
;
volatile
struct
arlan_shmem
*
arlan
=
priv
->
card
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
)
;
volatile
struct
arlan_shmem
__iomem
*
arlan
=
priv
->
card
;
u_char
rxStatus
=
READSHMB
(
arlan
->
rxStatus
);
u_char
txStatus
=
READSHMB
(
arlan
->
txStatus
);
...
...
@@ -1683,7 +1683,7 @@ static irqreturn_t arlan_interrupt(int irq, void *dev_id, struct pt_regs *regs)
static
int
arlan_close
(
struct
net_device
*
dev
)
{
struct
arlan_private
*
priv
=
dev
->
priv
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
)
;
ARLAN_DEBUG_ENTRY
(
"arlan_close"
);
...
...
@@ -1717,8 +1717,8 @@ static long alignLong(volatile u_char * ptr)
static
struct
net_device_stats
*
arlan_statistics
(
struct
net_device
*
dev
)
{
struct
arlan_private
*
priv
=
dev
->
priv
;
volatile
struct
arlan_shmem
*
arlan
=
priv
->
card
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
)
;
volatile
struct
arlan_shmem
__iomem
*
arlan
=
priv
->
card
;
ARLAN_DEBUG_ENTRY
(
"arlan_statistics"
);
...
...
@@ -1747,8 +1747,8 @@ static struct net_device_stats *arlan_statistics(struct net_device *dev)
static
void
arlan_set_multicast
(
struct
net_device
*
dev
)
{
struct
arlan_private
*
priv
=
dev
->
priv
;
volatile
struct
arlan_shmem
*
arlan
=
priv
->
card
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
)
;
volatile
struct
arlan_shmem
__iomem
*
arlan
=
priv
->
card
;
struct
arlan_conf_stru
*
conf
=
priv
->
Conf
;
int
board_conf_needed
=
0
;
...
...
drivers/net/wireless/arlan-proc.c
View file @
a55d3471
...
...
@@ -58,7 +58,8 @@
static
const
char
*
arlan_diagnostic_info_string
(
struct
net_device
*
dev
)
{
volatile
struct
arlan_shmem
*
arlan
=
((
struct
arlan_private
*
)
dev
->
priv
)
->
card
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
);
volatile
struct
arlan_shmem
__iomem
*
arlan
=
priv
->
card
;
u_char
diagnosticInfo
;
READSHM
(
diagnosticInfo
,
arlan
->
diagnosticInfo
,
u_char
);
...
...
@@ -113,7 +114,8 @@ static const char *arlan_diagnostic_info_string(struct net_device *dev)
static
const
char
*
arlan_hardware_type_string
(
struct
net_device
*
dev
)
{
u_char
hardwareType
;
volatile
struct
arlan_shmem
*
arlan
=
((
struct
arlan_private
*
)
dev
->
priv
)
->
card
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
);
volatile
struct
arlan_shmem
__iomem
*
arlan
=
priv
->
card
;
READSHM
(
hardwareType
,
arlan
->
hardwareType
,
u_char
);
switch
(
hardwareType
)
...
...
@@ -189,7 +191,8 @@ static void arlan_print_diagnostic_info(struct net_device *dev)
u_char
diagnosticInfo
;
u_short
diagnosticOffset
;
u_char
hardwareType
;
volatile
struct
arlan_shmem
*
arlan
=
((
struct
arlan_private
*
)
dev
->
priv
)
->
card
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
);
volatile
struct
arlan_shmem
__iomem
*
arlan
=
priv
->
card
;
// ARLAN_DEBUG_ENTRY("arlan_print_diagnostic_info");
...
...
@@ -254,7 +257,8 @@ static int arlan_hw_test_memory(struct net_device *dev)
int
i
;
int
memlen
=
sizeof
(
struct
arlan_shmem
)
-
0xF
;
/* avoid control register */
volatile
char
*
arlan_mem
=
(
char
*
)
(
dev
->
mem_start
);
volatile
struct
arlan_shmem
*
arlan
=
((
struct
arlan_private
*
)
dev
->
priv
)
->
card
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
);
volatile
struct
arlan_shmem
__iomem
*
arlan
=
priv
->
card
;
char
pattern
;
ptr
=
NULL
;
...
...
@@ -319,7 +323,8 @@ static int arlan_hw_test_memory(struct net_device *dev)
static
int
arlan_setup_card_by_book
(
struct
net_device
*
dev
)
{
u_char
irqLevel
,
configuredStatusFlag
;
volatile
struct
arlan_shmem
*
arlan
=
((
struct
arlan_private
*
)
dev
->
priv
)
->
card
;
struct
arlan_private
*
priv
=
netdev_priv
(
dev
);
volatile
struct
arlan_shmem
__iomem
*
arlan
=
priv
->
card
;
// ARLAN_DEBUG_ENTRY("arlan_setup_card");
...
...
drivers/net/wireless/arlan.h
View file @
a55d3471
...
...
@@ -332,7 +332,7 @@ struct TxParam
/* Information that need to be kept for each board. */
struct
arlan_private
{
struct
net_device_stats
stats
;
struct
arlan_shmem
*
card
;
struct
arlan_shmem
__iomem
*
card
;
struct
arlan_shmem
*
conf
;
struct
arlan_conf_stru
*
Conf
;
...
...
@@ -403,14 +403,12 @@ struct arlan_private {
#define ARLAN_COM_INT 0x80
#define TXLAST(dev) (((struct arlan_private *)
dev->priv)->txRing[((struct arlan_private *)dev->priv
)->txLast])
#define TXHEAD(dev) (((struct arlan_private *)
dev->priv
)->txRing[0])
#define TXTAIL(dev) (((struct arlan_private *)
dev->priv
)->txRing[1])
#define TXLAST(dev) (((struct arlan_private *)
netdev_priv(dev))->txRing[((struct arlan_private *)netdev_priv(dev)
)->txLast])
#define TXHEAD(dev) (((struct arlan_private *)
netdev_priv(dev)
)->txRing[0])
#define TXTAIL(dev) (((struct arlan_private *)
netdev_priv(dev)
)->txRing[1])
#define TXBuffStart(dev) \
((int)(((struct arlan_private *)dev->priv)->card)->txBuffer) - ((int)(((struct arlan_private *)dev->priv)->card) )
#define TXBuffEnd(dev) \
((int)(((struct arlan_private *)dev->priv)->card)->rxBuffer) - ((int)(((struct arlan_private *)dev->priv)->card)
#define TXBuffStart(dev) offsetof(struct arlan_shmem, txBuffer)
#define TXBuffEnd(dev) offsetof(struct arlan_shmem, xxBuffer)
#define READSHM(to,from,atype) {\
atype tmp;\
...
...
@@ -451,16 +449,16 @@ struct arlan_private {
#define registrationBad(dev)\
( ( READSHMB(((struct arlan_private *)
dev->priv
)->card->registrationMode) > 0) && \
( READSHMB(((struct arlan_private *)
dev->priv
)->card->registrationStatus) == 0) )
( ( READSHMB(((struct arlan_private *)
netdev_priv(dev)
)->card->registrationMode) > 0) && \
( READSHMB(((struct arlan_private *)
netdev_priv(dev)
)->card->registrationStatus) == 0) )
#define readControlRegister(dev)\
READSHMB(((struct arlan_private *)
dev->priv
)->card->cntrlRegImage)
READSHMB(((struct arlan_private *)
netdev_priv(dev)
)->card->cntrlRegImage)
#define writeControlRegister(dev, v){\
WRITESHMB(((struct arlan_private *)
dev->priv
)->card->cntrlRegImage ,((v) &0xF) );\
WRITESHMB(((struct arlan_private *)
dev->priv
)->card->controlRegister ,(v) );}
WRITESHMB(((struct arlan_private *)
netdev_priv(dev)
)->card->cntrlRegImage ,((v) &0xF) );\
WRITESHMB(((struct arlan_private *)
netdev_priv(dev)
)->card->controlRegister ,(v) );}
#define arlan_interrupt_lancpu(dev) {\
...
...
drivers/net/wireless/netwave_cs.c
View file @
a55d3471
...
...
@@ -213,7 +213,7 @@ static dev_link_t *netwave_attach(void); /* Create instance */
static
void
netwave_detach
(
dev_link_t
*
);
/* Destroy instance */
/* Hardware configuration */
static
void
netwave_doreset
(
ioaddr_t
iobase
,
u_char
*
ramBase
);
static
void
netwave_doreset
(
ioaddr_t
iobase
,
u_char
__iomem
*
ramBase
);
static
void
netwave_reset
(
struct
net_device
*
dev
);
/* Misc device stuff */
...
...
@@ -322,7 +322,7 @@ typedef struct netwave_private {
dev_link_t
link
;
spinlock_t
spinlock
;
/* Serialize access to the hardware (SMP) */
dev_node_t
node
;
u_char
*
ramBase
;
u_char
__iomem
*
ramBase
;
int
timeoutCounter
;
int
lastExec
;
struct
timer_list
watchdog
;
/* To avoid blocking state */
...
...
@@ -341,12 +341,12 @@ static struct net_device_stats *netwave_get_stats(struct net_device *dev);
* The Netwave card is little-endian, so won't work for big endian
* systems.
*/
static
inline
unsigned
short
get_uint16
(
u_char
*
staddr
)
static
inline
unsigned
short
get_uint16
(
u_char
__iomem
*
staddr
)
{
return
readw
(
staddr
);
/* Return only 16 bits */
}
static
inline
short
get_int16
(
u_char
*
staddr
)
static
inline
short
get_int16
(
u_char
__iomem
*
staddr
)
{
return
readw
(
staddr
);
}
...
...
@@ -363,7 +363,7 @@ static inline void wait_WOC(unsigned int iobase)
}
#ifdef WIRELESS_EXT
static
void
netwave_snapshot
(
netwave_private
*
priv
,
u_char
*
ramBase
,
static
void
netwave_snapshot
(
netwave_private
*
priv
,
u_char
__iomem
*
ramBase
,
ioaddr_t
iobase
)
{
u_short
resultBuffer
;
...
...
@@ -398,8 +398,8 @@ static struct iw_statistics *netwave_get_wireless_stats(struct net_device *dev)
{
unsigned
long
flags
;
ioaddr_t
iobase
=
dev
->
base_addr
;
netwave_private
*
priv
=
(
netwave_private
*
)
dev
->
priv
;
u_char
*
ramBase
=
priv
->
ramBase
;
netwave_private
*
priv
=
netdev_priv
(
dev
)
;
u_char
__iomem
*
ramBase
=
priv
->
ramBase
;
struct
iw_statistics
*
wstats
;
wstats
=
&
priv
->
iw_stats
;
...
...
@@ -447,7 +447,7 @@ static dev_link_t *netwave_attach(void)
dev
=
alloc_etherdev
(
sizeof
(
netwave_private
));
if
(
!
dev
)
return
NULL
;
priv
=
dev
->
priv
;
priv
=
netdev_priv
(
dev
)
;
link
=
&
priv
->
link
;
link
->
priv
=
dev
;
...
...
@@ -591,8 +591,8 @@ static int netwave_set_nwid(struct net_device *dev,
{
unsigned
long
flags
;
ioaddr_t
iobase
=
dev
->
base_addr
;
netwave_private
*
priv
=
(
netwave_private
*
)
dev
->
priv
;
u_char
*
ramBase
=
priv
->
ramBase
;
netwave_private
*
priv
=
netdev_priv
(
dev
)
;
u_char
__iomem
*
ramBase
=
priv
->
ramBase
;
/* Disable interrupts & save flags */
spin_lock_irqsave
(
&
priv
->
spinlock
,
flags
);
...
...
@@ -649,8 +649,8 @@ static int netwave_set_scramble(struct net_device *dev,
{
unsigned
long
flags
;
ioaddr_t
iobase
=
dev
->
base_addr
;
netwave_private
*
priv
=
(
netwave_private
*
)
dev
->
priv
;
u_char
*
ramBase
=
priv
->
ramBase
;
netwave_private
*
priv
=
netdev_priv
(
dev
)
;
u_char
__iomem
*
ramBase
=
priv
->
ramBase
;
/* Disable interrupts & save flags */
spin_lock_irqsave
(
&
priv
->
spinlock
,
flags
);
...
...
@@ -765,8 +765,8 @@ static int netwave_get_snap(struct net_device *dev,
{
unsigned
long
flags
;
ioaddr_t
iobase
=
dev
->
base_addr
;
netwave_private
*
priv
=
(
netwave_private
*
)
dev
->
priv
;
u_char
*
ramBase
=
priv
->
ramBase
;
netwave_private
*
priv
=
netdev_priv
(
dev
)
;
u_char
__iomem
*
ramBase
=
priv
->
ramBase
;
/* Disable interrupts & save flags */
spin_lock_irqsave
(
&
priv
->
spinlock
,
flags
);
...
...
@@ -998,14 +998,14 @@ do { last_fn = (fn); if ((last_ret = (ret)) != 0) goto cs_failed; } while (0)
static
void
netwave_pcmcia_config
(
dev_link_t
*
link
)
{
client_handle_t
handle
=
link
->
handle
;
struct
net_device
*
dev
=
link
->
priv
;
netwave_private
*
priv
=
dev
->
priv
;
netwave_private
*
priv
=
netdev_priv
(
dev
)
;
tuple_t
tuple
;
cisparse_t
parse
;
int
i
,
j
,
last_ret
,
last_fn
;
u_char
buf
[
64
];
win_req_t
req
;
memreq_t
mem
;
u_char
*
ramBase
=
NULL
;
u_char
__iomem
*
ramBase
=
NULL
;
DEBUG
(
0
,
"netwave_pcmcia_config(0x%p)
\n
"
,
link
);
...
...
@@ -1071,7 +1071,7 @@ static void netwave_pcmcia_config(dev_link_t *link) {
/* Store base address of the common window frame */
ramBase
=
ioremap
(
req
.
Base
,
0x8000
);
((
netwave_private
*
)
dev
->
priv
)
->
ramBase
=
ramBase
;
priv
->
ramBase
=
ramBase
;
dev
->
irq
=
link
->
irq
.
AssignedIRQ
;
dev
->
base_addr
=
link
->
io
.
BasePort1
;
...
...
@@ -1120,7 +1120,7 @@ static void netwave_pcmcia_config(dev_link_t *link) {
static
void
netwave_release
(
dev_link_t
*
link
)
{
struct
net_device
*
dev
=
link
->
priv
;
netwave_private
*
priv
=
dev
->
priv
;
netwave_private
*
priv
=
netdev_priv
(
dev
)
;
DEBUG
(
0
,
"netwave_release(0x%p)
\n
"
,
link
);
...
...
@@ -1151,7 +1151,8 @@ static void netwave_release(dev_link_t *link)
*
*/
static
int
netwave_event
(
event_t
event
,
int
priority
,
event_callback_args_t
*
args
)
{
event_callback_args_t
*
args
)
{
dev_link_t
*
link
=
args
->
client_data
;
struct
net_device
*
dev
=
link
->
priv
;
...
...
@@ -1204,7 +1205,8 @@ static int netwave_event(event_t event, int priority,
*
* Proper hardware reset of the card.
*/
static
void
netwave_doreset
(
ioaddr_t
ioBase
,
u_char
*
ramBase
)
{
static
void
netwave_doreset
(
ioaddr_t
ioBase
,
u_char
__iomem
*
ramBase
)
{
/* Reset card */
wait_WOC
(
ioBase
);
outb
(
0x80
,
ioBase
+
NETWAVE_REG_PMR
);
...
...
@@ -1219,8 +1221,8 @@ static void netwave_doreset(ioaddr_t ioBase, u_char* ramBase) {
*/
static
void
netwave_reset
(
struct
net_device
*
dev
)
{
/* u_char state; */
netwave_private
*
priv
=
(
netwave_private
*
)
dev
->
priv
;
u_char
*
ramBase
=
priv
->
ramBase
;
netwave_private
*
priv
=
netdev_priv
(
dev
)
;
u_char
__iomem
*
ramBase
=
priv
->
ramBase
;
ioaddr_t
iobase
=
dev
->
base_addr
;
DEBUG
(
0
,
"netwave_reset: Done with hardware reset
\n
"
);
...
...
@@ -1310,8 +1312,8 @@ static int netwave_hw_xmit(unsigned char* data, int len,
DataOffset
;
int
tmpcount
;
netwave_private
*
priv
=
(
netwave_private
*
)
dev
->
priv
;
u_char
*
ramBase
=
priv
->
ramBase
;
netwave_private
*
priv
=
netdev_priv
(
dev
)
;
u_char
__iomem
*
ramBase
=
priv
->
ramBase
;
ioaddr_t
iobase
=
dev
->
base_addr
;
/* Disable interrupts & save flags */
...
...
@@ -1402,11 +1404,12 @@ static int netwave_start_xmit(struct sk_buff *skb, struct net_device *dev) {
* ready to transmit another packet.
* 3. A command has completed execution.
*/
static
irqreturn_t
netwave_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
)
{
static
irqreturn_t
netwave_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
)
{
ioaddr_t
iobase
;
u_char
*
ramBase
;
u_char
__iomem
*
ramBase
;
struct
net_device
*
dev
=
(
struct
net_device
*
)
dev_id
;
struct
netwave_private
*
priv
=
dev
->
priv
;
struct
netwave_private
*
priv
=
netdev_priv
(
dev
)
;
dev_link_t
*
link
=
&
priv
->
link
;
int
i
;
...
...
@@ -1536,7 +1539,7 @@ static void netwave_watchdog(struct net_device *dev) {
}
/* netwave_watchdog */
static
struct
net_device_stats
*
netwave_get_stats
(
struct
net_device
*
dev
)
{
netwave_private
*
priv
=
(
netwave_private
*
)
dev
->
priv
;
netwave_private
*
priv
=
netdev_priv
(
dev
)
;
update_stats
(
dev
);
...
...
@@ -1559,7 +1562,7 @@ static struct net_device_stats *netwave_get_stats(struct net_device *dev) {
static
void
update_stats
(
struct
net_device
*
dev
)
{
//unsigned long flags;
/* netwave_private *priv =
(netwave_private*) dev->priv
; */
/* netwave_private *priv =
netdev_priv(dev)
; */
//spin_lock_irqsave(&priv->spinlock, flags);
...
...
@@ -1569,9 +1572,10 @@ static void update_stats(struct net_device *dev) {
//spin_unlock_irqrestore(&priv->spinlock, flags);
}
static
int
netwave_rx
(
struct
net_device
*
dev
)
{
netwave_private
*
priv
=
(
netwave_private
*
)(
dev
->
priv
);
u_char
*
ramBase
=
priv
->
ramBase
;
static
int
netwave_rx
(
struct
net_device
*
dev
)
{
netwave_private
*
priv
=
netdev_priv
(
dev
);
u_char
__iomem
*
ramBase
=
priv
->
ramBase
;
ioaddr_t
iobase
=
dev
->
base_addr
;
u_char
rxStatus
;
struct
sk_buff
*
skb
=
NULL
;
...
...
@@ -1659,7 +1663,7 @@ static int netwave_rx(struct net_device *dev) {
}
static
int
netwave_open
(
struct
net_device
*
dev
)
{
netwave_private
*
priv
=
dev
->
priv
;
netwave_private
*
priv
=
netdev_priv
(
dev
)
;
dev_link_t
*
link
=
&
priv
->
link
;
DEBUG
(
1
,
"netwave_open: starting.
\n
"
);
...
...
@@ -1676,7 +1680,7 @@ static int netwave_open(struct net_device *dev) {
}
static
int
netwave_close
(
struct
net_device
*
dev
)
{
netwave_private
*
priv
=
(
netwave_private
*
)
dev
->
priv
;
netwave_private
*
priv
=
netdev_priv
(
dev
)
;
dev_link_t
*
link
=
&
priv
->
link
;
DEBUG
(
1
,
"netwave_close: finishing.
\n
"
);
...
...
@@ -1721,7 +1725,8 @@ module_exit(exit_netwave_cs);
static
void
set_multicast_list
(
struct
net_device
*
dev
)
{
ioaddr_t
iobase
=
dev
->
base_addr
;
u_char
*
ramBase
=
((
netwave_private
*
)
dev
->
priv
)
->
ramBase
;
netwave_private
*
priv
=
netdev_priv
(
dev
);
u_char
__iomem
*
ramBase
=
priv
->
ramBase
;
u_char
rcvMode
=
0
;
#ifdef PCMCIA_DEBUG
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment