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
Kirill Smelkov
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
Show 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