Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
linux-davinci
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
linux
linux-davinci
Commits
b00b2f70
Commit
b00b2f70
authored
Jun 04, 2005
by
Committed by
Jeff Garzik
Jun 04, 2005
Browse files
Options
Browse Files
Download
Plain Diff
Automatic merge of /spare/repo/netdev-2.6 branch 8139too-iomap
parents
df77cc44
22f714b6
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
87 additions
and
107 deletions
+87
-107
drivers/net/8139too.c
drivers/net/8139too.c
+87
-107
No files found.
drivers/net/8139too.c
View file @
b00b2f70
...
...
@@ -569,7 +569,7 @@ struct rtl_extra_stats {
};
struct
rtl8139_private
{
void
*
mmio_addr
;
void
__iomem
*
mmio_addr
;
int
drv_flags
;
struct
pci_dev
*
pci_dev
;
u32
msg_enable
;
...
...
@@ -614,7 +614,7 @@ MODULE_PARM_DESC (multicast_filter_limit, "8139too maximum number of filtered mu
MODULE_PARM_DESC
(
media
,
"8139too: Bits 4+9: force full duplex, bit 5: 100Mbps"
);
MODULE_PARM_DESC
(
full_duplex
,
"8139too: Force full duplex for board(s) (1)"
);
static
int
read_eeprom
(
void
*
ioaddr
,
int
location
,
int
addr_len
);
static
int
read_eeprom
(
void
__iomem
*
ioaddr
,
int
location
,
int
addr_len
);
static
int
rtl8139_open
(
struct
net_device
*
dev
);
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
,
...
...
@@ -638,46 +638,20 @@ static void __set_rx_mode (struct net_device *dev);
static
void
rtl8139_hw_start
(
struct
net_device
*
dev
);
static
struct
ethtool_ops
rtl8139_ethtool_ops
;
#ifdef USE_IO_OPS
#define RTL_R8(reg) inb (((unsigned long)ioaddr) + (reg))
#define RTL_R16(reg) inw (((unsigned long)ioaddr) + (reg))
#define RTL_R32(reg) ((unsigned long) inl (((unsigned long)ioaddr) + (reg)))
#define RTL_W8(reg, val8) outb ((val8), ((unsigned long)ioaddr) + (reg))
#define RTL_W16(reg, val16) outw ((val16), ((unsigned long)ioaddr) + (reg))
#define RTL_W32(reg, val32) outl ((val32), ((unsigned long)ioaddr) + (reg))
#define RTL_W8_F RTL_W8
#define RTL_W16_F RTL_W16
#define RTL_W32_F RTL_W32
#undef readb
#undef readw
#undef readl
#undef writeb
#undef writew
#undef writel
#define readb(addr) inb((unsigned long)(addr))
#define readw(addr) inw((unsigned long)(addr))
#define readl(addr) inl((unsigned long)(addr))
#define writeb(val,addr) outb((val),(unsigned long)(addr))
#define writew(val,addr) outw((val),(unsigned long)(addr))
#define writel(val,addr) outl((val),(unsigned long)(addr))
#else
/* write MMIO register, with flush */
/* Flush avoids rtl8139 bug w/ posted MMIO writes */
#define RTL_W8_F(reg, val8) do {
writeb ((val8), ioaddr + (reg)); readb
(ioaddr + (reg)); } while (0)
#define RTL_W16_F(reg, val16) do {
writew ((val16), ioaddr + (reg)); readw
(ioaddr + (reg)); } while (0)
#define RTL_W32_F(reg, val32) do {
writel ((val32), ioaddr + (reg)); readl
(ioaddr + (reg)); } while (0)
#define RTL_W8_F(reg, val8) do {
iowrite8 ((val8), ioaddr + (reg)); ioread8
(ioaddr + (reg)); } while (0)
#define RTL_W16_F(reg, val16) do {
iowrite16 ((val16), ioaddr + (reg)); ioread16
(ioaddr + (reg)); } while (0)
#define RTL_W32_F(reg, val32) do {
iowrite32 ((val32), ioaddr + (reg)); ioread32
(ioaddr + (reg)); } while (0)
#define MMIO_FLUSH_AUDIT_COMPLETE 1
#if MMIO_FLUSH_AUDIT_COMPLETE
/* write MMIO register */
#define RTL_W8(reg, val8)
writeb
((val8), ioaddr + (reg))
#define RTL_W16(reg, val16)
writew
((val16), ioaddr + (reg))
#define RTL_W32(reg, val32)
writel
((val32), ioaddr + (reg))
#define RTL_W8(reg, val8)
iowrite8
((val8), ioaddr + (reg))
#define RTL_W16(reg, val16)
iowrite16
((val16), ioaddr + (reg))
#define RTL_W32(reg, val32)
iowrite32
((val32), ioaddr + (reg))
#else
...
...
@@ -689,11 +663,9 @@ static struct ethtool_ops rtl8139_ethtool_ops;
#endif
/* MMIO_FLUSH_AUDIT_COMPLETE */
/* read MMIO register */
#define RTL_R8(reg) readb (ioaddr + (reg))
#define RTL_R16(reg) readw (ioaddr + (reg))
#define RTL_R32(reg) ((unsigned long) readl (ioaddr + (reg)))
#endif
/* USE_IO_OPS */
#define RTL_R8(reg) ioread8 (ioaddr + (reg))
#define RTL_R16(reg) ioread16 (ioaddr + (reg))
#define RTL_R32(reg) ((unsigned long) ioread32 (ioaddr + (reg)))
static
const
u16
rtl8139_intr_mask
=
...
...
@@ -740,10 +712,13 @@ static void __rtl8139_cleanup_dev (struct net_device *dev)
assert
(
tp
->
pci_dev
!=
NULL
);
pdev
=
tp
->
pci_dev
;
#ifndef USE_IO_OPS
#ifdef USE_IO_OPS
if
(
tp
->
mmio_addr
)
ioport_unmap
(
tp
->
mmio_addr
);
#else
if
(
tp
->
mmio_addr
)
iounmap
(
tp
->
mmio_addr
);
#endif
/*
!
USE_IO_OPS */
pci_iounmap
(
pdev
,
tp
->
mmio_addr
);
#endif
/* USE_IO_OPS */
/* it's ok to call this even if we have no regions to free */
pci_release_regions
(
pdev
);
...
...
@@ -753,7 +728,7 @@ static void __rtl8139_cleanup_dev (struct net_device *dev)
}
static
void
rtl8139_chip_reset
(
void
*
ioaddr
)
static
void
rtl8139_chip_reset
(
void
__iomem
*
ioaddr
)
{
int
i
;
...
...
@@ -773,7 +748,7 @@ static void rtl8139_chip_reset (void *ioaddr)
static
int
__devinit
rtl8139_init_board
(
struct
pci_dev
*
pdev
,
struct
net_device
**
dev_out
)
{
void
*
ioaddr
;
void
__iomem
*
ioaddr
;
struct
net_device
*
dev
;
struct
rtl8139_private
*
tp
;
u8
tmp8
;
...
...
@@ -855,13 +830,18 @@ static int __devinit rtl8139_init_board (struct pci_dev *pdev,
pci_set_master
(
pdev
);
#ifdef USE_IO_OPS
ioaddr
=
(
void
*
)
pio_start
;
ioaddr
=
ioport_map
(
pio_start
,
pio_len
);
if
(
!
ioaddr
)
{
printk
(
KERN_ERR
PFX
"%s: cannot map PIO, aborting
\n
"
,
pci_name
(
pdev
));
rc
=
-
EIO
;
goto
err_out
;
}
dev
->
base_addr
=
pio_start
;
tp
->
mmio_addr
=
ioaddr
;
tp
->
regs_len
=
pio_len
;
#else
/* ioremap MMIO region */
ioaddr
=
ioremap
(
mmio_start
,
mmio_len
);
ioaddr
=
pci_iomap
(
pdev
,
1
,
0
);
if
(
ioaddr
==
NULL
)
{
printk
(
KERN_ERR
PFX
"%s: cannot remap MMIO, aborting
\n
"
,
pci_name
(
pdev
));
rc
=
-
EIO
;
...
...
@@ -947,7 +927,7 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
struct
net_device
*
dev
=
NULL
;
struct
rtl8139_private
*
tp
;
int
i
,
addr_len
,
option
;
void
*
ioaddr
;
void
__iomem
*
ioaddr
;
static
int
board_idx
=
-
1
;
u8
pci_rev
;
...
...
@@ -1147,47 +1127,46 @@ static void __devexit rtl8139_remove_one (struct pci_dev *pdev)
No extra delay is needed with 33Mhz PCI, but 66Mhz may change this.
*/
#define eeprom_delay()
readl(ee_addr
)
#define eeprom_delay()
RTL_R32(Cfg9346
)
/* The EEPROM commands include the alway-set leading bit. */
#define EE_WRITE_CMD (5)
#define EE_READ_CMD (6)
#define EE_ERASE_CMD (7)
static
int
__devinit
read_eeprom
(
void
*
ioaddr
,
int
location
,
int
addr_len
)
static
int
__devinit
read_eeprom
(
void
__iomem
*
ioaddr
,
int
location
,
int
addr_len
)
{
int
i
;
unsigned
retval
=
0
;
void
*
ee_addr
=
ioaddr
+
Cfg9346
;
int
read_cmd
=
location
|
(
EE_READ_CMD
<<
addr_len
);
writeb
(
EE_ENB
&
~
EE_CS
,
ee_addr
);
writeb
(
EE_ENB
,
ee_addr
);
RTL_W8
(
Cfg9346
,
EE_ENB
&
~
EE_CS
);
RTL_W8
(
Cfg9346
,
EE_ENB
);
eeprom_delay
();
/* Shift the read command bits out. */
for
(
i
=
4
+
addr_len
;
i
>=
0
;
i
--
)
{
int
dataval
=
(
read_cmd
&
(
1
<<
i
))
?
EE_DATA_WRITE
:
0
;
writeb
(
EE_ENB
|
dataval
,
ee_addr
);
RTL_W8
(
Cfg9346
,
EE_ENB
|
dataval
);
eeprom_delay
();
writeb
(
EE_ENB
|
dataval
|
EE_SHIFT_CLK
,
ee_addr
);
RTL_W8
(
Cfg9346
,
EE_ENB
|
dataval
|
EE_SHIFT_CLK
);
eeprom_delay
();
}
writeb
(
EE_ENB
,
ee_addr
);
RTL_W8
(
Cfg9346
,
EE_ENB
);
eeprom_delay
();
for
(
i
=
16
;
i
>
0
;
i
--
)
{
writeb
(
EE_ENB
|
EE_SHIFT_CLK
,
ee_addr
);
RTL_W8
(
Cfg9346
,
EE_ENB
|
EE_SHIFT_CLK
);
eeprom_delay
();
retval
=
(
retval
<<
1
)
|
((
readb
(
ee_addr
)
&
EE_DATA_READ
)
?
1
:
(
retval
<<
1
)
|
((
RTL_R8
(
Cfg9346
)
&
EE_DATA_READ
)
?
1
:
0
);
writeb
(
EE_ENB
,
ee_addr
);
RTL_W8
(
Cfg9346
,
EE_ENB
);
eeprom_delay
();
}
/* Terminate the EEPROM access. */
writeb
(
~
EE_CS
,
ee_addr
);
RTL_W8
(
Cfg9346
,
~
EE_CS
);
eeprom_delay
();
return
retval
;
...
...
@@ -1206,7 +1185,7 @@ static int __devinit read_eeprom (void *ioaddr, int location, int addr_len)
#define MDIO_WRITE0 (MDIO_DIR)
#define MDIO_WRITE1 (MDIO_DIR | MDIO_DATA_OUT)
#define mdio_delay(
mdio_addr) readb(mdio_addr
)
#define mdio_delay(
) RTL_R8(Config4
)
static
char
mii_2_8139_map
[
8
]
=
{
...
...
@@ -1223,15 +1202,15 @@ static char mii_2_8139_map[8] = {
#ifdef CONFIG_8139TOO_8129
/* Syncronize the MII management interface by shifting 32 one bits out. */
static
void
mdio_sync
(
void
*
mdio_
addr
)
static
void
mdio_sync
(
void
__iomem
*
io
addr
)
{
int
i
;
for
(
i
=
32
;
i
>=
0
;
i
--
)
{
writeb
(
MDIO_WRITE1
,
mdio_addr
);
mdio_delay
(
mdio_addr
);
writeb
(
MDIO_WRITE1
|
MDIO_CLK
,
mdio_addr
);
mdio_delay
(
mdio_addr
);
RTL_W8
(
Config4
,
MDIO_WRITE1
);
mdio_delay
();
RTL_W8
(
Config4
,
MDIO_WRITE1
|
MDIO_CLK
);
mdio_delay
();
}
}
#endif
...
...
@@ -1241,35 +1220,36 @@ static int mdio_read (struct net_device *dev, int phy_id, int location)
struct
rtl8139_private
*
tp
=
netdev_priv
(
dev
);
int
retval
=
0
;
#ifdef CONFIG_8139TOO_8129
void
*
mdio_addr
=
tp
->
mmio_addr
+
Config4
;
void
__iomem
*
ioaddr
=
tp
->
mmio_addr
;
int
mii_cmd
=
(
0xf6
<<
10
)
|
(
phy_id
<<
5
)
|
location
;
int
i
;
#endif
if
(
phy_id
>
31
)
{
/* Really a 8139. Use internal registers. */
void
__iomem
*
ioaddr
=
tp
->
mmio_addr
;
return
location
<
8
&&
mii_2_8139_map
[
location
]
?
readw
(
tp
->
mmio_addr
+
mii_2_8139_map
[
location
])
:
0
;
RTL_R16
(
mii_2_8139_map
[
location
])
:
0
;
}
#ifdef CONFIG_8139TOO_8129
mdio_sync
(
mdio_
addr
);
mdio_sync
(
io
addr
);
/* Shift the read command bits out. */
for
(
i
=
15
;
i
>=
0
;
i
--
)
{
int
dataval
=
(
mii_cmd
&
(
1
<<
i
))
?
MDIO_DATA_OUT
:
0
;
writeb
(
MDIO_DIR
|
dataval
,
mdio_addr
);
mdio_delay
(
mdio_addr
);
writeb
(
MDIO_DIR
|
dataval
|
MDIO_CLK
,
mdio_addr
);
mdio_delay
(
mdio_addr
);
RTL_W8
(
Config4
,
MDIO_DIR
|
dataval
);
mdio_delay
();
RTL_W8
(
Config4
,
MDIO_DIR
|
dataval
|
MDIO_CLK
);
mdio_delay
();
}
/* Read the two transition, 16 data, and wire-idle bits. */
for
(
i
=
19
;
i
>
0
;
i
--
)
{
writeb
(
0
,
mdio_addr
);
mdio_delay
(
mdio_addr
);
retval
=
(
retval
<<
1
)
|
((
readb
(
mdio_addr
)
&
MDIO_DATA_IN
)
?
1
:
0
);
writeb
(
MDIO_CLK
,
mdio_addr
);
mdio_delay
(
mdio_addr
);
RTL_W8
(
Config4
,
0
);
mdio_delay
();
retval
=
(
retval
<<
1
)
|
((
RTL_R8
(
Config4
)
&
MDIO_DATA_IN
)
?
1
:
0
);
RTL_W8
(
Config4
,
MDIO_CLK
);
mdio_delay
();
}
#endif
...
...
@@ -1282,13 +1262,13 @@ static void mdio_write (struct net_device *dev, int phy_id, int location,
{
struct
rtl8139_private
*
tp
=
netdev_priv
(
dev
);
#ifdef CONFIG_8139TOO_8129
void
*
mdio_addr
=
tp
->
mmio_addr
+
Config4
;
void
__iomem
*
ioaddr
=
tp
->
mmio_addr
;
int
mii_cmd
=
(
0x5002
<<
16
)
|
(
phy_id
<<
23
)
|
(
location
<<
18
)
|
value
;
int
i
;
#endif
if
(
phy_id
>
31
)
{
/* Really a 8139. Use internal registers. */
void
*
ioaddr
=
tp
->
mmio_addr
;
void
__iomem
*
ioaddr
=
tp
->
mmio_addr
;
if
(
location
==
0
)
{
RTL_W8
(
Cfg9346
,
Cfg9346_Unlock
);
RTL_W16
(
BasicModeCtrl
,
value
);
...
...
@@ -1299,23 +1279,23 @@ static void mdio_write (struct net_device *dev, int phy_id, int location,
}
#ifdef CONFIG_8139TOO_8129
mdio_sync
(
mdio_
addr
);
mdio_sync
(
io
addr
);
/* Shift the command bits out. */
for
(
i
=
31
;
i
>=
0
;
i
--
)
{
int
dataval
=
(
mii_cmd
&
(
1
<<
i
))
?
MDIO_WRITE1
:
MDIO_WRITE0
;
writeb
(
dataval
,
mdio_addr
);
mdio_delay
(
mdio_addr
);
writeb
(
dataval
|
MDIO_CLK
,
mdio_addr
);
mdio_delay
(
mdio_addr
);
RTL_W8
(
Config4
,
dataval
);
mdio_delay
();
RTL_W8
(
Config4
,
dataval
|
MDIO_CLK
);
mdio_delay
();
}
/* Clear out extra bits. */
for
(
i
=
2
;
i
>
0
;
i
--
)
{
writeb
(
0
,
mdio_addr
);
mdio_delay
(
mdio_addr
);
writeb
(
MDIO_CLK
,
mdio_addr
);
mdio_delay
(
mdio_addr
);
RTL_W8
(
Config4
,
0
);
mdio_delay
();
RTL_W8
(
Config4
,
MDIO_CLK
);
mdio_delay
();
}
#endif
}
...
...
@@ -1325,7 +1305,7 @@ static int rtl8139_open (struct net_device *dev)
{
struct
rtl8139_private
*
tp
=
netdev_priv
(
dev
);
int
retval
;
void
*
ioaddr
=
tp
->
mmio_addr
;
void
__iomem
*
ioaddr
=
tp
->
mmio_addr
;
retval
=
request_irq
(
dev
->
irq
,
rtl8139_interrupt
,
SA_SHIRQ
,
dev
->
name
,
dev
);
if
(
retval
)
...
...
@@ -1382,7 +1362,7 @@ static void rtl_check_media (struct net_device *dev, unsigned int init_media)
static
void
rtl8139_hw_start
(
struct
net_device
*
dev
)
{
struct
rtl8139_private
*
tp
=
netdev_priv
(
dev
);
void
*
ioaddr
=
tp
->
mmio_addr
;
void
__iomem
*
ioaddr
=
tp
->
mmio_addr
;
u32
i
;
u8
tmp
;
...
...
@@ -1484,7 +1464,7 @@ static void rtl8139_tune_twister (struct net_device *dev,
struct
rtl8139_private
*
tp
)
{
int
linkcase
;
void
*
ioaddr
=
tp
->
mmio_addr
;
void
__iomem
*
ioaddr
=
tp
->
mmio_addr
;
/* This is a complicated state machine to configure the "twister" for
impedance/echos based on the cable length.
...
...
@@ -1568,7 +1548,7 @@ static void rtl8139_tune_twister (struct net_device *dev,
static
inline
void
rtl8139_thread_iter
(
struct
net_device
*
dev
,
struct
rtl8139_private
*
tp
,
void
*
ioaddr
)
void
__iomem
*
ioaddr
)
{
int
mii_lpa
;
...
...
@@ -1676,7 +1656,7 @@ static inline void rtl8139_tx_clear (struct rtl8139_private *tp)
static
void
rtl8139_tx_timeout
(
struct
net_device
*
dev
)
{
struct
rtl8139_private
*
tp
=
netdev_priv
(
dev
);
void
*
ioaddr
=
tp
->
mmio_addr
;
void
__iomem
*
ioaddr
=
tp
->
mmio_addr
;
int
i
;
u8
tmp8
;
unsigned
long
flags
;
...
...
@@ -1721,7 +1701,7 @@ static void rtl8139_tx_timeout (struct net_device *dev)
static
int
rtl8139_start_xmit
(
struct
sk_buff
*
skb
,
struct
net_device
*
dev
)
{
struct
rtl8139_private
*
tp
=
netdev_priv
(
dev
);
void
*
ioaddr
=
tp
->
mmio_addr
;
void
__iomem
*
ioaddr
=
tp
->
mmio_addr
;
unsigned
int
entry
;
unsigned
int
len
=
skb
->
len
;
...
...
@@ -1763,7 +1743,7 @@ static int rtl8139_start_xmit (struct sk_buff *skb, struct net_device *dev)
static
void
rtl8139_tx_interrupt
(
struct
net_device
*
dev
,
struct
rtl8139_private
*
tp
,
void
*
ioaddr
)
void
__iomem
*
ioaddr
)
{
unsigned
long
dirty_tx
,
tx_left
;
...
...
@@ -1833,7 +1813,7 @@ static void rtl8139_tx_interrupt (struct net_device *dev,
/* TODO: clean this up! Rx reset need not be this intensive */
static
void
rtl8139_rx_err
(
u32
rx_status
,
struct
net_device
*
dev
,
struct
rtl8139_private
*
tp
,
void
*
ioaddr
)
struct
rtl8139_private
*
tp
,
void
__iomem
*
ioaddr
)
{
u8
tmp8
;
#ifdef CONFIG_8139_OLD_RX_RESET
...
...
@@ -1930,7 +1910,7 @@ static __inline__ void wrap_copy(struct sk_buff *skb, const unsigned char *ring,
static
void
rtl8139_isr_ack
(
struct
rtl8139_private
*
tp
)
{
void
*
ioaddr
=
tp
->
mmio_addr
;
void
__iomem
*
ioaddr
=
tp
->
mmio_addr
;
u16
status
;
status
=
RTL_R16
(
IntrStatus
)
&
RxAckBits
;
...
...
@@ -1949,7 +1929,7 @@ static void rtl8139_isr_ack(struct rtl8139_private *tp)
static
int
rtl8139_rx
(
struct
net_device
*
dev
,
struct
rtl8139_private
*
tp
,
int
budget
)
{
void
*
ioaddr
=
tp
->
mmio_addr
;
void
__iomem
*
ioaddr
=
tp
->
mmio_addr
;
int
received
=
0
;
unsigned
char
*
rx_ring
=
tp
->
rx_ring
;
unsigned
int
cur_rx
=
tp
->
cur_rx
;
...
...
@@ -2087,7 +2067,7 @@ out:
static
void
rtl8139_weird_interrupt
(
struct
net_device
*
dev
,
struct
rtl8139_private
*
tp
,
void
*
ioaddr
,
void
__iomem
*
ioaddr
,
int
status
,
int
link_changed
)
{
DPRINTK
(
"%s: Abnormal interrupt, status %8.8x.
\n
"
,
...
...
@@ -2127,7 +2107,7 @@ static void rtl8139_weird_interrupt (struct net_device *dev,
static
int
rtl8139_poll
(
struct
net_device
*
dev
,
int
*
budget
)
{
struct
rtl8139_private
*
tp
=
netdev_priv
(
dev
);
void
*
ioaddr
=
tp
->
mmio_addr
;
void
__iomem
*
ioaddr
=
tp
->
mmio_addr
;
int
orig_budget
=
min
(
*
budget
,
dev
->
quota
);
int
done
=
1
;
...
...
@@ -2165,7 +2145,7 @@ static irqreturn_t rtl8139_interrupt (int irq, void *dev_instance,
{
struct
net_device
*
dev
=
(
struct
net_device
*
)
dev_instance
;
struct
rtl8139_private
*
tp
=
netdev_priv
(
dev
);
void
*
ioaddr
=
tp
->
mmio_addr
;
void
__iomem
*
ioaddr
=
tp
->
mmio_addr
;
u16
status
,
ackstat
;
int
link_changed
=
0
;
/* avoid bogus "uninit" warning */
int
handled
=
0
;
...
...
@@ -2241,7 +2221,7 @@ static void rtl8139_poll_controller(struct net_device *dev)
static
int
rtl8139_close
(
struct
net_device
*
dev
)
{
struct
rtl8139_private
*
tp
=
netdev_priv
(
dev
);
void
*
ioaddr
=
tp
->
mmio_addr
;
void
__iomem
*
ioaddr
=
tp
->
mmio_addr
;
int
ret
=
0
;
unsigned
long
flags
;
...
...
@@ -2304,7 +2284,7 @@ static int rtl8139_close (struct net_device *dev)
static
void
rtl8139_get_wol
(
struct
net_device
*
dev
,
struct
ethtool_wolinfo
*
wol
)
{
struct
rtl8139_private
*
np
=
netdev_priv
(
dev
);
void
*
ioaddr
=
np
->
mmio_addr
;
void
__iomem
*
ioaddr
=
np
->
mmio_addr
;
spin_lock_irq
(
&
np
->
lock
);
if
(
rtl_chip_info
[
np
->
chipset
].
flags
&
HasLWake
)
{
...
...
@@ -2338,7 +2318,7 @@ static void rtl8139_get_wol(struct net_device *dev, struct ethtool_wolinfo *wol)
static
int
rtl8139_set_wol
(
struct
net_device
*
dev
,
struct
ethtool_wolinfo
*
wol
)
{
struct
rtl8139_private
*
np
=
netdev_priv
(
dev
);
void
*
ioaddr
=
np
->
mmio_addr
;
void
__iomem
*
ioaddr
=
np
->
mmio_addr
;
u32
support
;
u8
cfg3
,
cfg5
;
...
...
@@ -2506,7 +2486,7 @@ static int netdev_ioctl(struct net_device *dev, struct ifreq *rq, int cmd)
static
struct
net_device_stats
*
rtl8139_get_stats
(
struct
net_device
*
dev
)
{
struct
rtl8139_private
*
tp
=
netdev_priv
(
dev
);
void
*
ioaddr
=
tp
->
mmio_addr
;
void
__iomem
*
ioaddr
=
tp
->
mmio_addr
;
unsigned
long
flags
;
if
(
netif_running
(
dev
))
{
...
...
@@ -2525,7 +2505,7 @@ static struct net_device_stats *rtl8139_get_stats (struct net_device *dev)
static
void
__set_rx_mode
(
struct
net_device
*
dev
)
{
struct
rtl8139_private
*
tp
=
netdev_priv
(
dev
);
void
*
ioaddr
=
tp
->
mmio_addr
;
void
__iomem
*
ioaddr
=
tp
->
mmio_addr
;
u32
mc_filter
[
2
];
/* Multicast hash filter */
int
i
,
rx_mode
;
u32
tmp
;
...
...
@@ -2586,7 +2566,7 @@ static int rtl8139_suspend (struct pci_dev *pdev, pm_message_t state)
{
struct
net_device
*
dev
=
pci_get_drvdata
(
pdev
);
struct
rtl8139_private
*
tp
=
netdev_priv
(
dev
);
void
*
ioaddr
=
tp
->
mmio_addr
;
void
__iomem
*
ioaddr
=
tp
->
mmio_addr
;
unsigned
long
flags
;
pci_save_state
(
pdev
);
...
...
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