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
e481b6a6
Commit
e481b6a6
authored
May 20, 2003
by
Jeff Garzik
Browse files
Options
Browse Files
Download
Plain Diff
Merge redhat.com:/garz/repo/linus-2.5
into redhat.com:/garz/repo/net-drivers-2.5
parents
07ca08b1
a83cc983
Changes
15
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
67 additions
and
40 deletions
+67
-40
drivers/net/apne.c
drivers/net/apne.c
+5
-4
drivers/net/arcnet/arcnet.c
drivers/net/arcnet/arcnet.c
+3
-2
drivers/net/fc/iph5526.c
drivers/net/fc/iph5526.c
+10
-8
drivers/net/fec.c
drivers/net/fec.c
+13
-5
drivers/net/fmv18x.c
drivers/net/fmv18x.c
+3
-3
drivers/net/hamradio/scc.c
drivers/net/hamradio/scc.c
+4
-3
drivers/net/macmace.c
drivers/net/macmace.c
+3
-2
drivers/net/myri_sbus.c
drivers/net/myri_sbus.c
+3
-1
drivers/net/seeq8005.c
drivers/net/seeq8005.c
+7
-2
drivers/net/sun3lance.c
drivers/net/sun3lance.c
+4
-4
drivers/net/sunqe.c
drivers/net/sunqe.c
+1
-0
drivers/net/tokenring/lanstreamer.c
drivers/net/tokenring/lanstreamer.c
+3
-2
drivers/net/tulip/de4x5.c
drivers/net/tulip/de4x5.c
+1
-1
drivers/net/wan/lmc/lmc_main.c
drivers/net/wan/lmc/lmc_main.c
+6
-2
include/linux/arcdevice.h
include/linux/arcdevice.h
+1
-1
No files found.
drivers/net/apne.c
View file @
e481b6a6
...
...
@@ -85,7 +85,7 @@ static void apne_block_input(struct net_device *dev, int count,
struct
sk_buff
*
skb
,
int
ring_offset
);
static
void
apne_block_output
(
struct
net_device
*
dev
,
const
int
count
,
const
unsigned
char
*
buf
,
const
int
start_page
);
static
void
apne_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
);
static
irqreturn_t
apne_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
);
static
int
init_pcmcia
(
void
);
...
...
@@ -511,18 +511,18 @@ apne_block_output(struct net_device *dev, int count,
return
;
}
static
void
apne_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
)
static
irqreturn_t
apne_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
)
{
unsigned
char
pcmcia_intreq
;
if
(
!
(
gayle
.
inten
&
GAYLE_IRQ_IRQ
))
return
;
return
IRQ_NONE
;
pcmcia_intreq
=
pcmcia_get_intreq
();
if
(
!
(
pcmcia_intreq
&
GAYLE_IRQ_IRQ
))
{
pcmcia_ack_int
(
pcmcia_intreq
);
return
;
return
IRQ_NONE
;
}
if
(
ei_debug
>
3
)
printk
(
"pcmcia intreq = %x
\n
"
,
pcmcia_intreq
);
...
...
@@ -530,6 +530,7 @@ static void apne_interrupt(int irq, void *dev_id, struct pt_regs *regs)
ei_interrupt
(
irq
,
dev_id
,
regs
);
pcmcia_ack_int
(
pcmcia_get_intreq
());
pcmcia_enable_irq
();
return
IRQ_HANDLED
;
}
#ifdef MODULE
...
...
drivers/net/arcnet/arcnet.c
View file @
e481b6a6
...
...
@@ -701,7 +701,7 @@ static void arcnet_timeout(struct net_device *dev)
* interrupts. Establish which device needs attention, and call the correct
* chipset interrupt handler.
*/
void
arcnet_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
)
irqreturn_t
arcnet_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
)
{
struct
net_device
*
dev
=
dev_id
;
struct
arcnet_local
*
lp
;
...
...
@@ -726,7 +726,7 @@ void arcnet_interrupt(int irq, void *dev_id, struct pt_regs *regs)
ACOMMAND
(
CFLAGScmd
|
RESETclear
);
AINTMASK
(
0
);
spin_unlock
(
&
arcnet_lock
);
return
;
return
IRQ_HANDLED
;
}
BUGMSG
(
D_DURING
,
"in arcnet_inthandler (status=%Xh, intmask=%Xh)
\n
"
,
...
...
@@ -894,6 +894,7 @@ void arcnet_interrupt(int irq, void *dev_id, struct pt_regs *regs)
AINTMASK
(
lp
->
intmask
);
spin_unlock
(
&
arcnet_lock
);
return
IRQ_RETVAL
(
didsomething
);
}
...
...
drivers/net/fc/iph5526.c
View file @
e481b6a6
...
...
@@ -134,7 +134,7 @@ clone_list[] __initdata = {
{
0
,}
};
static
void
tachyon_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
);
static
irqreturn_t
tachyon_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
);
static
void
tachyon_interrupt_handler
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
);
static
int
initialize_register_pointers
(
struct
fc_info
*
fi
);
...
...
@@ -623,7 +623,7 @@ u_int bus_addr, bus_indx_addr, i;
}
static
void
tachyon_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
)
static
irqreturn_t
tachyon_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
)
{
struct
Scsi_Host
*
host
=
dev_id
;
struct
iph5526_hostdata
*
hostdata
=
(
struct
iph5526_hostdata
*
)
host
->
hostdata
;
...
...
@@ -632,6 +632,7 @@ u_long flags;
spin_lock_irqsave
(
&
fi
->
fc_lock
,
flags
);
tachyon_interrupt_handler
(
irq
,
dev_id
,
regs
);
spin_unlock_irqrestore
(
&
fi
->
fc_lock
,
flags
);
return
IRQ_HANDLED
;
}
static
void
tachyon_interrupt_handler
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
)
...
...
@@ -3720,12 +3721,13 @@ struct fc_info *fi = (struct fc_info*)dev->priv;
int
iph5526_detect
(
Scsi_Host_Template
*
tmpt
)
{
struct
Scsi_Host
*
host
=
NULL
;
struct
iph5526_hostdata
*
hostdata
;
struct
fc_info
*
fi
=
NULL
;
int
no_of_hosts
=
0
,
timeout
,
i
,
j
,
count
=
0
;
u_int
pci_maddr
=
0
;
struct
pci_dev
*
pdev
=
NULL
;
struct
Scsi_Host
*
host
=
NULL
;
struct
iph5526_hostdata
*
hostdata
;
struct
fc_info
*
fi
=
NULL
;
int
no_of_hosts
=
0
,
i
,
j
,
count
=
0
;
u_int
pci_maddr
=
0
;
struct
pci_dev
*
pdev
=
NULL
;
unsigned
long
timeout
;
tmpt
->
proc_name
=
"iph5526"
;
if
(
pci_present
()
==
0
)
{
...
...
drivers/net/fec.c
View file @
e481b6a6
...
...
@@ -188,7 +188,7 @@ struct fec_enet_private {
static
int
fec_enet_open
(
struct
net_device
*
dev
);
static
int
fec_enet_start_xmit
(
struct
sk_buff
*
skb
,
struct
net_device
*
dev
);
static
void
fec_enet_mii
(
struct
net_device
*
dev
);
static
void
fec_enet_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
);
static
irqreturn_t
fec_enet_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
);
static
void
fec_enet_tx
(
struct
net_device
*
dev
);
static
void
fec_enet_rx
(
struct
net_device
*
dev
);
static
int
fec_enet_close
(
struct
net_device
*
dev
);
...
...
@@ -393,12 +393,13 @@ fec_timeout(struct net_device *dev)
/* The interrupt handler.
* This is called from the MPC core interrupt.
*/
static
void
static
irqreturn_t
fec_enet_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
)
{
struct
net_device
*
dev
=
dev_id
;
volatile
fec_t
*
fecp
;
uint
int_events
;
int
handled
=
0
;
fecp
=
(
volatile
fec_t
*
)
dev
->
base_addr
;
...
...
@@ -413,20 +414,27 @@ fec_enet_interrupt(int irq, void * dev_id, struct pt_regs * regs)
/* Handle receive event in its own function.
*/
if
(
int_events
&
FEC_ENET_RXF
)
if
(
int_events
&
FEC_ENET_RXF
)
{
handled
=
1
;
fec_enet_rx
(
dev
);
}
/* Transmit OK, or non-fatal error. Update the buffer
descriptors. FEC handles all errors, we just discover
them as part of the transmit process.
*/
if
(
int_events
&
FEC_ENET_TXF
)
if
(
int_events
&
FEC_ENET_TXF
)
{
handled
=
1
;
fec_enet_tx
(
dev
);
}
if
(
int_events
&
FEC_ENET_MII
)
if
(
int_events
&
FEC_ENET_MII
)
{
handled
=
1
;
fec_enet_mii
(
dev
);
}
}
return
IRQ_RETVAL
(
handled
);
}
...
...
drivers/net/fmv18x.c
View file @
e481b6a6
...
...
@@ -114,7 +114,7 @@ extern int fmv18x_probe(struct net_device *dev);
static
int
fmv18x_probe1
(
struct
net_device
*
dev
,
short
ioaddr
);
static
int
net_open
(
struct
net_device
*
dev
);
static
int
net_send_packet
(
struct
sk_buff
*
skb
,
struct
net_device
*
dev
);
static
void
net_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
);
static
irqreturn_t
net_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
);
static
void
net_rx
(
struct
net_device
*
dev
);
static
void
net_timeout
(
struct
net_device
*
dev
);
static
int
net_close
(
struct
net_device
*
dev
);
...
...
@@ -423,7 +423,7 @@ static int net_send_packet(struct sk_buff *skb, struct net_device *dev)
/* The typical workload of the driver:
Handle the network interface interrupts. */
static
void
static
irqreturn_t
net_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
)
{
struct
net_device
*
dev
=
dev_id
;
...
...
@@ -476,7 +476,7 @@ net_interrupt(int irq, void *dev_id, struct pt_regs *regs)
spin_unlock
(
&
lp
->
lock
);
}
}
return
;
return
IRQ_RETVAL
(
status
)
;
}
/* We have a good packet(s), get it/them out of the buffers. */
...
...
drivers/net/hamradio/scc.c
View file @
e481b6a6
...
...
@@ -199,7 +199,7 @@ static void z8530_init(void);
static
void
init_channel
(
struct
scc_channel
*
scc
);
static
void
scc_key_trx
(
struct
scc_channel
*
scc
,
char
tx
);
static
void
scc_isr
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
);
static
irqreturn_t
scc_isr
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
);
static
void
scc_init_timer
(
struct
scc_channel
*
scc
);
static
int
scc_net_setup
(
struct
scc_channel
*
scc
,
unsigned
char
*
name
,
int
addev
);
...
...
@@ -625,7 +625,7 @@ static void scc_isr_dispatch(struct scc_channel *scc, int vector)
#define SCC_IRQTIMEOUT 30000
static
void
scc_isr
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
)
static
irqreturn_t
scc_isr
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
)
{
unsigned
char
vector
;
struct
scc_channel
*
scc
;
...
...
@@ -653,7 +653,7 @@ static void scc_isr(int irq, void *dev_id, struct pt_regs *regs)
if
(
k
==
SCC_IRQTIMEOUT
)
printk
(
KERN_WARNING
"z8530drv: endless loop in scc_isr()?
\n
"
);
return
;
return
IRQ_HANDLED
;
}
/* Find the SCC generating the interrupt by polling all attached SCCs
...
...
@@ -701,6 +701,7 @@ static void scc_isr(int irq, void *dev_id, struct pt_regs *regs)
}
else
ctrl
++
;
}
return
IRQ_HANDLED
;
}
...
...
drivers/net/macmace.c
View file @
e481b6a6
...
...
@@ -77,7 +77,7 @@ static int mace_xmit_start(struct sk_buff *skb, struct net_device *dev);
static
struct
net_device_stats
*
mace_stats
(
struct
net_device
*
dev
);
static
void
mace_set_multicast
(
struct
net_device
*
dev
);
static
int
mace_set_address
(
struct
net_device
*
dev
,
void
*
addr
);
static
void
mace_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
);
static
irqreturn_t
mace_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
);
static
void
mace_dma_intr
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
);
static
void
mace_tx_timeout
(
struct
net_device
*
dev
);
...
...
@@ -561,7 +561,7 @@ static void mace_recv_interrupt(struct net_device *dev)
* Process the chip interrupt
*/
static
void
mace_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
)
static
irqreturn_t
mace_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
)
{
struct
net_device
*
dev
=
(
struct
net_device
*
)
dev_id
;
struct
mace_data
*
mp
=
(
struct
mace_data
*
)
dev
->
priv
;
...
...
@@ -577,6 +577,7 @@ static void mace_interrupt(int irq, void *dev_id, struct pt_regs *regs)
if
(
ir
&
RCVINT
)
{
mace_recv_interrupt
(
dev
);
}
return
IRQ_HANDLED
;
}
static
void
mace_tx_timeout
(
struct
net_device
*
dev
)
...
...
drivers/net/myri_sbus.c
View file @
e481b6a6
...
...
@@ -541,6 +541,7 @@ static irqreturn_t myri_interrupt(int irq, void *dev_id, struct pt_regs *regs)
struct
myri_channel
*
chan
=
&
mp
->
shmem
->
channel
;
unsigned
long
flags
;
u32
status
;
int
handled
=
0
;
spin_lock_irqsave
(
&
mp
->
irq_lock
,
flags
);
...
...
@@ -549,6 +550,7 @@ static irqreturn_t myri_interrupt(int irq, void *dev_id, struct pt_regs *regs)
if
(
status
&
ISTAT_HOST
)
{
u32
softstate
;
handled
=
1
;
DIRQ
((
"IRQ_DISAB "
));
myri_disable_irq
(
lregs
,
mp
->
cregs
);
softstate
=
sbus_readl
(
&
chan
->
state
);
...
...
@@ -568,7 +570,7 @@ static irqreturn_t myri_interrupt(int irq, void *dev_id, struct pt_regs *regs)
spin_unlock_irqrestore
(
&
mp
->
irq_lock
,
flags
);
return
IRQ_
HANDLED
;
return
IRQ_
RETVAL
(
handled
)
;
}
static
int
myri_open
(
struct
net_device
*
dev
)
...
...
drivers/net/seeq8005.c
View file @
e481b6a6
...
...
@@ -84,7 +84,7 @@ static int seeq8005_probe1(struct net_device *dev, int ioaddr);
static
int
seeq8005_open
(
struct
net_device
*
dev
);
static
void
seeq8005_timeout
(
struct
net_device
*
dev
);
static
int
seeq8005_send_packet
(
struct
sk_buff
*
skb
,
struct
net_device
*
dev
);
static
void
seeq8005_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
);
static
irqreturn_t
seeq8005_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
);
static
void
seeq8005_rx
(
struct
net_device
*
dev
);
static
int
seeq8005_close
(
struct
net_device
*
dev
);
static
struct
net_device_stats
*
seeq8005_get_stats
(
struct
net_device
*
dev
);
...
...
@@ -400,11 +400,12 @@ static int seeq8005_send_packet(struct sk_buff *skb, struct net_device *dev)
/* The typical workload of the driver:
Handle the network interface interrupts. */
static
void
seeq8005_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
)
static
irqreturn_t
seeq8005_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
)
{
struct
net_device
*
dev
=
dev_id
;
struct
net_local
*
lp
;
int
ioaddr
,
status
,
boguscount
=
0
;
int
handled
=
0
;
ioaddr
=
dev
->
base_addr
;
lp
=
(
struct
net_local
*
)
dev
->
priv
;
...
...
@@ -416,17 +417,20 @@ static void seeq8005_interrupt(int irq, void *dev_id, struct pt_regs * regs)
}
if
(
status
&
SEEQSTAT_WINDOW_INT
)
{
handled
=
1
;
outw
(
SEEQCMD_WINDOW_INT_ACK
|
(
status
&
SEEQCMD_INT_MASK
),
SEEQ_CMD
);
if
(
net_debug
)
{
printk
(
"%s: window int!
\n
"
,
dev
->
name
);
}
}
if
(
status
&
SEEQSTAT_TX_INT
)
{
handled
=
1
;
outw
(
SEEQCMD_TX_INT_ACK
|
(
status
&
SEEQCMD_INT_MASK
),
SEEQ_CMD
);
lp
->
stats
.
tx_packets
++
;
netif_wake_queue
(
dev
);
/* Inform upper layers. */
}
if
(
status
&
SEEQSTAT_RX_INT
)
{
handled
=
1
;
/* Got a packet(s). */
seeq8005_rx
(
dev
);
}
...
...
@@ -436,6 +440,7 @@ static void seeq8005_interrupt(int irq, void *dev_id, struct pt_regs * regs)
if
(
net_debug
>
2
)
{
printk
(
"%s: eoi
\n
"
,
dev
->
name
);
}
return
IRQ_RETVAL
(
handled
);
}
/* We have a good packet(s), get it/them out of the buffers. */
...
...
drivers/net/sun3lance.c
View file @
e481b6a6
...
...
@@ -238,7 +238,7 @@ static int lance_probe( struct net_device *dev);
static
int
lance_open
(
struct
net_device
*
dev
);
static
void
lance_init_ring
(
struct
net_device
*
dev
);
static
int
lance_start_xmit
(
struct
sk_buff
*
skb
,
struct
net_device
*
dev
);
static
void
lance_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
fp
);
static
irqreturn_t
lance_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
fp
);
static
int
lance_rx
(
struct
net_device
*
dev
);
static
int
lance_close
(
struct
net_device
*
dev
);
static
struct
net_device_stats
*
lance_get_stats
(
struct
net_device
*
dev
);
...
...
@@ -620,7 +620,7 @@ static int lance_start_xmit( struct sk_buff *skb, struct net_device *dev )
/* The LANCE interrupt handler. */
static
void
lance_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
fp
)
static
irqreturn_t
lance_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
fp
)
{
struct
net_device
*
dev
=
dev_id
;
struct
lance_private
*
lp
=
dev
->
priv
;
...
...
@@ -629,7 +629,7 @@ static void lance_interrupt( int irq, void *dev_id, struct pt_regs *fp)
if
(
dev
==
NULL
)
{
DPRINTK
(
1
,
(
"lance_interrupt(): invalid dev_id
\n
"
));
return
;
return
IRQ_NONE
;
}
if
(
in_interrupt
)
...
...
@@ -743,7 +743,7 @@ static void lance_interrupt( int irq, void *dev_id, struct pt_regs *fp)
DPRINTK
(
2
,
(
"%s: exiting interrupt, csr0=%#04x.
\n
"
,
dev
->
name
,
DREG
));
in_interrupt
=
0
;
return
;
return
IRQ_HANDLED
;
}
/* get packet, toss into skbuff */
...
...
drivers/net/sunqe.c
View file @
e481b6a6
...
...
@@ -124,6 +124,7 @@ static void qe_init_rings(struct sunqe *qep)
qb
->
qe_rxd
[
i
].
rx_flags
=
(
RXD_OWN
|
((
RXD_PKT_SZ
)
&
RXD_LENGTH
));
}
return
IRQ_HANDLED
;
}
static
int
qe_init
(
struct
sunqe
*
qep
,
int
from_irq
)
...
...
drivers/net/tokenring/lanstreamer.c
View file @
e481b6a6
...
...
@@ -201,7 +201,7 @@ static int streamer_open(struct net_device *dev);
static
int
streamer_xmit
(
struct
sk_buff
*
skb
,
struct
net_device
*
dev
);
static
int
streamer_close
(
struct
net_device
*
dev
);
static
void
streamer_set_rx_mode
(
struct
net_device
*
dev
);
static
void
streamer_interrupt
(
int
irq
,
void
*
dev_id
,
static
irqreturn_t
streamer_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
);
static
struct
net_device_stats
*
streamer_get_stats
(
struct
net_device
*
dev
);
static
int
streamer_set_mac_address
(
struct
net_device
*
dev
,
void
*
addr
);
...
...
@@ -1021,7 +1021,7 @@ static void streamer_rx(struct net_device *dev)
}
/* end for all completed rx descriptors */
}
static
void
streamer_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
)
static
irqreturn_t
streamer_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
)
{
struct
net_device
*
dev
=
(
struct
net_device
*
)
dev_id
;
struct
streamer_private
*
streamer_priv
=
...
...
@@ -1142,6 +1142,7 @@ static void streamer_interrupt(int irq, void *dev_id, struct pt_regs *regs)
}
/* while() */
spin_unlock
(
&
streamer_priv
->
streamer_lock
)
;
return
IRQ_HANDLED
;
}
static
int
streamer_xmit
(
struct
sk_buff
*
skb
,
struct
net_device
*
dev
)
...
...
drivers/net/tulip/de4x5.c
View file @
e481b6a6
...
...
@@ -2027,7 +2027,7 @@ set_multicast_list(struct net_device *dev)
}
}
return
;
return
IRQ_HANDLED
;
}
/*
...
...
drivers/net/wan/lmc/lmc_main.c
View file @
e481b6a6
...
...
@@ -117,7 +117,7 @@ static int lmc_rx (struct net_device *dev);
static
int
lmc_open
(
struct
net_device
*
dev
);
static
int
lmc_close
(
struct
net_device
*
dev
);
static
struct
net_device_stats
*
lmc_get_stats
(
struct
net_device
*
dev
);
static
void
lmc_interrupt
(
int
irq
,
void
*
dev_instance
,
struct
pt_regs
*
regs
);
static
irqreturn_t
lmc_interrupt
(
int
irq
,
void
*
dev_instance
,
struct
pt_regs
*
regs
);
static
int
lmc_set_config
(
struct
net_device
*
dev
,
struct
ifmap
*
map
);
static
void
lmc_initcsrs
(
lmc_softc_t
*
const
sc
,
lmc_csrptr_t
csr_base
,
size_t
csr_size
);
static
void
lmc_softreset
(
lmc_softc_t
*
const
);
...
...
@@ -1388,7 +1388,7 @@ static int lmc_ifdown (struct net_device *dev) /*fold00*/
/* Interrupt handling routine. This will take an incoming packet, or clean
* up after a trasmit.
*/
static
void
lmc_interrupt
(
int
irq
,
void
*
dev_instance
,
struct
pt_regs
*
regs
)
/*fold00*/
static
irqreturn_t
lmc_interrupt
(
int
irq
,
void
*
dev_instance
,
struct
pt_regs
*
regs
)
/*fold00*/
{
struct
net_device
*
dev
=
(
struct
net_device
*
)
dev_instance
;
lmc_softc_t
*
sc
;
...
...
@@ -1398,6 +1398,7 @@ static void lmc_interrupt (int irq, void *dev_instance, struct pt_regs *regs) /*
unsigned
int
badtx
;
u32
firstcsr
;
int
max_work
=
LMC_RXDESCS
;
int
handled
=
0
;
lmc_trace
(
dev
,
"lmc_interrupt in"
);
...
...
@@ -1421,6 +1422,8 @@ static void lmc_interrupt (int irq, void *dev_instance, struct pt_regs *regs) /*
/* always go through this loop at least once */
while
(
csr
&
sc
->
lmc_intrmask
)
{
handled
=
1
;
/*
* Clear interrupt bits, we handle all case below
*/
...
...
@@ -1580,6 +1583,7 @@ static void lmc_interrupt (int irq, void *dev_instance, struct pt_regs *regs) /*
spin_unlock
(
&
sc
->
lmc_lock
);
lmc_trace
(
dev
,
"lmc_interrupt out"
);
return
IRQ_RETVAL
(
handled
);
}
static
int
lmc_start_xmit
(
struct
sk_buff
*
skb
,
struct
net_device
*
dev
)
/*fold00*/
...
...
include/linux/arcdevice.h
View file @
e481b6a6
...
...
@@ -329,7 +329,7 @@ void arcnet_dump_packet(struct net_device *dev, int bufnum, char *desc);
#endif
void
arcnet_unregister_proto
(
struct
ArcProto
*
proto
);
void
arcnet_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
);
irqreturn_t
arcnet_interrupt
(
int
irq
,
void
*
dev_id
,
struct
pt_regs
*
regs
);
void
arcdev_setup
(
struct
net_device
*
dev
);
void
arcnet_rx
(
struct
net_device
*
dev
,
int
bufnum
);
...
...
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