aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/spider_net.h
diff options
context:
space:
mode:
authorKou Ishizaki <kou.ishizaki@toshiba.co.jp>2007-02-20 17:33:41 -0500
committerJeff Garzik <jeff@garzik.org>2007-02-27 04:16:02 -0500
commitabdb66b566fce5641c90100e0a113a94bab43fda (patch)
treea93d9d4063159353f0a1e765723ba462b2682446 /drivers/net/spider_net.h
parentd406eafee814c0e20af00a9a74f68f6993d8cb9c (diff)
spidernet: autoneg support for Celleb
Add auto negotiation support for Celleb. Signed-off-by: Kou Ishizaki <kou.ishizaki@toshiba.co.jp> Signed-off-by: Linas Vepstas <linas@austin.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/net/spider_net.h')
-rw-r--r--drivers/net/spider_net.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/net/spider_net.h b/drivers/net/spider_net.h
index 2fec5cf7692..6f5ee27f80f 100644
--- a/drivers/net/spider_net.h
+++ b/drivers/net/spider_net.h
@@ -50,6 +50,8 @@ extern char spider_net_driver_name[];
50#define SPIDER_NET_TX_DESCRIPTORS_MAX 512 50#define SPIDER_NET_TX_DESCRIPTORS_MAX 512
51 51
52#define SPIDER_NET_TX_TIMER (HZ/5) 52#define SPIDER_NET_TX_TIMER (HZ/5)
53#define SPIDER_NET_ANEG_TIMER (HZ)
54#define SPIDER_NET_ANEG_TIMEOUT 2
53 55
54#define SPIDER_NET_RX_CSUM_DEFAULT 1 56#define SPIDER_NET_RX_CSUM_DEFAULT 1
55 57
@@ -104,6 +106,7 @@ extern char spider_net_driver_name[];
104 106
105#define SPIDER_NET_GMACOPEMD 0x00000100 107#define SPIDER_NET_GMACOPEMD 0x00000100
106#define SPIDER_NET_GMACLENLMT 0x00000108 108#define SPIDER_NET_GMACLENLMT 0x00000108
109#define SPIDER_NET_GMACST 0x00000110
107#define SPIDER_NET_GMACINTEN 0x00000118 110#define SPIDER_NET_GMACINTEN 0x00000118
108#define SPIDER_NET_GMACPHYCTRL 0x00000120 111#define SPIDER_NET_GMACPHYCTRL 0x00000120
109 112
@@ -333,9 +336,12 @@ enum spider_net_int2_status {
333/* We rely on flagged descriptor interrupts */ 336/* We rely on flagged descriptor interrupts */
334#define SPIDER_NET_RXINT ( (1 << SPIDER_NET_GDAFDCINT) ) 337#define SPIDER_NET_RXINT ( (1 << SPIDER_NET_GDAFDCINT) )
335 338
339#define SPIDER_NET_LINKINT ( 1 << SPIDER_NET_GMAC2INT )
340
336#define SPIDER_NET_ERRINT ( 0xffffffff & \ 341#define SPIDER_NET_ERRINT ( 0xffffffff & \
337 (~SPIDER_NET_TXINT) & \ 342 (~SPIDER_NET_TXINT) & \
338 (~SPIDER_NET_RXINT) ) 343 (~SPIDER_NET_RXINT) & \
344 (~SPIDER_NET_LINKINT) )
339 345
340#define SPIDER_NET_GPREXEC 0x80000000 346#define SPIDER_NET_GPREXEC 0x80000000
341#define SPIDER_NET_GPRDAT_MASK 0x0000ffff 347#define SPIDER_NET_GPRDAT_MASK 0x0000ffff
@@ -442,6 +448,8 @@ struct spider_net_card {
442 struct spider_net_descr_chain rx_chain; 448 struct spider_net_descr_chain rx_chain;
443 struct spider_net_descr *low_watermark; 449 struct spider_net_descr *low_watermark;
444 450
451 int aneg_count;
452 struct timer_list aneg_timer;
445 struct timer_list tx_timer; 453 struct timer_list tx_timer;
446 struct work_struct tx_timeout_task; 454 struct work_struct tx_timeout_task;
447 atomic_t tx_timeout_task_counter; 455 atomic_t tx_timeout_task_counter;