summaryrefslogtreecommitdiff
path: root/drivers/staging/octeon/octeon-ethernet.h
diff options
context:
space:
mode:
authorDavid Daney <ddaney@caviumnetworks.com>2010-02-15 12:13:17 -0800
committerRalf Baechle <ralf@linux-mips.org>2010-02-27 12:53:29 +0100
commitf8c2648666b5a1b5ba9bbb662ae569bafd3cc830 (patch)
tree5c4e9806d2e05c3327a731e0bdf5651929d799b1 /drivers/staging/octeon/octeon-ethernet.h
parent1d08f00d576c62f1c7a96900a14648df33b3939a (diff)
Staging: Octeon: Run phy bus accesses on a workqueue.
When directly accessing a phy, we must acquire the mdio bus lock. To do that we cannot be in interrupt context, so we need to move these operations to a workqueue. Signed-off-by: David Daney <ddaney@caviumnetworks.com> To: linux-mips@linux-mips.org To: netdev@vger.kernel.org To: gregkh@suse.de Patchwork: http://patchwork.linux-mips.org/patch/965/ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'drivers/staging/octeon/octeon-ethernet.h')
-rw-r--r--drivers/staging/octeon/octeon-ethernet.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/staging/octeon/octeon-ethernet.h b/drivers/staging/octeon/octeon-ethernet.h
index 40b695615431..8d0921061dac 100644
--- a/drivers/staging/octeon/octeon-ethernet.h
+++ b/drivers/staging/octeon/octeon-ethernet.h
@@ -61,6 +61,8 @@ struct octeon_ethernet {
void (*poll) (struct net_device *dev);
struct hrtimer tx_restart_timer;
ktime_t tx_restart_interval;
+ struct delayed_work tx_clean_work;
+ struct work_struct port_work; /* may be unused. */
};
/**
@@ -97,6 +99,8 @@ extern int pow_send_group;
extern int pow_receive_group;
extern char pow_send_list[];
extern struct net_device *cvm_oct_device[];
+extern struct workqueue_struct *cvm_oct_poll_queue;
+extern atomic_t cvm_oct_poll_queue_stopping;
extern int max_rx_cpus;
extern int rx_napi_weight;