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
8396c851
Commit
8396c851
authored
Jul 27, 2004
by
Jeff Garzik
Browse files
Options
Browse Files
Download
Plain Diff
Merge pobox.com:/spare/repo/linux-2.6
into pobox.com:/spare/repo/netdev-2.6/e100
parents
a6ba40b5
45b16c8f
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
5 additions
and
24 deletions
+5
-24
drivers/net/e100.c
drivers/net/e100.c
+5
-24
No files found.
drivers/net/e100.c
View file @
8396c851
...
@@ -87,9 +87,8 @@
...
@@ -87,9 +87,8 @@
* cb_to_use is the next CB to use for queuing a command; cb_to_clean
* cb_to_use is the next CB to use for queuing a command; cb_to_clean
* is the next CB to check for completion; cb_to_send is the first
* is the next CB to check for completion; cb_to_send is the first
* CB to start on in case of a previous failure to resume. CB clean
* CB to start on in case of a previous failure to resume. CB clean
* up happens in interrupt context in response to a CU interrupt, or
* up happens in interrupt context in response to a CU interrupt.
* in dev->poll in the case where NAPI is enabled. cbs_avail keeps
* cbs_avail keeps track of number of free CB resources available.
* track of number of free CB resources available.
*
*
* Hardware padding of short packets to minimum packet size is
* Hardware padding of short packets to minimum packet size is
* enabled. 82557 pads with 7Eh, while the later controllers pad
* enabled. 82557 pads with 7Eh, while the later controllers pad
...
@@ -112,9 +111,8 @@
...
@@ -112,9 +111,8 @@
* replacement RFDs cannot be allocated, or the RU goes non-active,
* replacement RFDs cannot be allocated, or the RU goes non-active,
* the RU must be restarted. Frame arrival generates an interrupt,
* the RU must be restarted. Frame arrival generates an interrupt,
* and Rx indication and re-allocation happen in the same context,
* and Rx indication and re-allocation happen in the same context,
* therefore no locking is required. If NAPI is enabled, this work
* therefore no locking is required. A software-generated interrupt
* happens in dev->poll. A software-generated interrupt is gen-
* is generated from the watchdog to recover from a failed allocation
* erated from the watchdog to recover from a failed allocation
* senario where all Rx resources have been indicated and none re-
* senario where all Rx resources have been indicated and none re-
* placed.
* placed.
*
*
...
@@ -126,8 +124,6 @@
...
@@ -126,8 +124,6 @@
* supported. Tx Scatter/Gather is not supported. Jumbo Frames is
* supported. Tx Scatter/Gather is not supported. Jumbo Frames is
* not supported (hardware limitation).
* not supported (hardware limitation).
*
*
* NAPI support is enabled with CONFIG_E100_NAPI.
*
* MagicPacket(tm) WoL support is enabled/disabled via ethtool.
* MagicPacket(tm) WoL support is enabled/disabled via ethtool.
*
*
* Thanks to JC (jchapman@katalix.com) for helping with
* Thanks to JC (jchapman@katalix.com) for helping with
...
@@ -158,7 +154,7 @@
...
@@ -158,7 +154,7 @@
#define DRV_NAME "e100"
#define DRV_NAME "e100"
#define DRV_VERSION "3.0.
18
"
#define DRV_VERSION "3.0.
22-NAPI
"
#define DRV_DESCRIPTION "Intel(R) PRO/100 Network Driver"
#define DRV_DESCRIPTION "Intel(R) PRO/100 Network Driver"
#define DRV_COPYRIGHT "Copyright(c) 1999-2004 Intel Corporation"
#define DRV_COPYRIGHT "Copyright(c) 1999-2004 Intel Corporation"
#define PFX DRV_NAME ": "
#define PFX DRV_NAME ": "
...
@@ -1463,11 +1459,7 @@ static inline int e100_rx_indicate(struct nic *nic, struct rx *rx,
...
@@ -1463,11 +1459,7 @@ static inline int e100_rx_indicate(struct nic *nic, struct rx *rx,
nic
->
net_stats
.
rx_packets
++
;
nic
->
net_stats
.
rx_packets
++
;
nic
->
net_stats
.
rx_bytes
+=
actual_size
;
nic
->
net_stats
.
rx_bytes
+=
actual_size
;
nic
->
netdev
->
last_rx
=
jiffies
;
nic
->
netdev
->
last_rx
=
jiffies
;
#ifdef CONFIG_E100_NAPI
netif_receive_skb
(
skb
);
netif_receive_skb
(
skb
);
#else
netif_rx
(
skb
);
#endif
if
(
work_done
)
if
(
work_done
)
(
*
work_done
)
++
;
(
*
work_done
)
++
;
}
}
...
@@ -1562,20 +1554,12 @@ static irqreturn_t e100_intr(int irq, void *dev_id, struct pt_regs *regs)
...
@@ -1562,20 +1554,12 @@ static irqreturn_t e100_intr(int irq, void *dev_id, struct pt_regs *regs)
if
(
stat_ack
&
stat_ack_rnr
)
if
(
stat_ack
&
stat_ack_rnr
)
nic
->
ru_running
=
0
;
nic
->
ru_running
=
0
;
#ifdef CONFIG_E100_NAPI
e100_disable_irq
(
nic
);
e100_disable_irq
(
nic
);
netif_rx_schedule
(
netdev
);
netif_rx_schedule
(
netdev
);
#else
if
(
stat_ack
&
stat_ack_rx
)
e100_rx_clean
(
nic
,
NULL
,
0
);
if
(
stat_ack
&
stat_ack_tx
)
e100_tx_clean
(
nic
);
#endif
return
IRQ_HANDLED
;
return
IRQ_HANDLED
;
}
}
#ifdef CONFIG_E100_NAPI
static
int
e100_poll
(
struct
net_device
*
netdev
,
int
*
budget
)
static
int
e100_poll
(
struct
net_device
*
netdev
,
int
*
budget
)
{
{
struct
nic
*
nic
=
netdev_priv
(
netdev
);
struct
nic
*
nic
=
netdev_priv
(
netdev
);
...
@@ -1598,7 +1582,6 @@ static int e100_poll(struct net_device *netdev, int *budget)
...
@@ -1598,7 +1582,6 @@ static int e100_poll(struct net_device *netdev, int *budget)
return
1
;
return
1
;
}
}
#endif
#ifdef CONFIG_NET_POLL_CONTROLLER
#ifdef CONFIG_NET_POLL_CONTROLLER
static
void
e100_netpoll
(
struct
net_device
*
netdev
)
static
void
e100_netpoll
(
struct
net_device
*
netdev
)
...
@@ -2135,10 +2118,8 @@ static int __devinit e100_probe(struct pci_dev *pdev,
...
@@ -2135,10 +2118,8 @@ static int __devinit e100_probe(struct pci_dev *pdev,
SET_ETHTOOL_OPS
(
netdev
,
&
e100_ethtool_ops
);
SET_ETHTOOL_OPS
(
netdev
,
&
e100_ethtool_ops
);
netdev
->
tx_timeout
=
e100_tx_timeout
;
netdev
->
tx_timeout
=
e100_tx_timeout
;
netdev
->
watchdog_timeo
=
E100_WATCHDOG_PERIOD
;
netdev
->
watchdog_timeo
=
E100_WATCHDOG_PERIOD
;
#ifdef CONFIG_E100_NAPI
netdev
->
poll
=
e100_poll
;
netdev
->
poll
=
e100_poll
;
netdev
->
weight
=
E100_NAPI_WEIGHT
;
netdev
->
weight
=
E100_NAPI_WEIGHT
;
#endif
#ifdef CONFIG_NET_POLL_CONTROLLER
#ifdef CONFIG_NET_POLL_CONTROLLER
netdev
->
poll_controller
=
e100_netpoll
;
netdev
->
poll_controller
=
e100_netpoll
;
#endif
#endif
...
...
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