netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/3] ethtool: sky2 GMAC decode
@ 2006-10-18 17:46 Stephen Hemminger
  2006-10-18 17:47 ` [PATCH 2/3] ethtool: sky2 more decode Stephen Hemminger
  2006-10-18 17:50 ` [PATCH 3/3] ethtool: dump_registers post mortem Stephen Hemminger
  0 siblings, 2 replies; 12+ messages in thread
From: Stephen Hemminger @ 2006-10-18 17:46 UTC (permalink / raw)
  To: Jeff Garzik; +Cc: netdev

Add decoding of GMAC bits.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
---
 marvell.c |   28 ++++++++++++++++++++++++++++
 1 files changed, 28 insertions(+), 0 deletions(-)

diff --git a/marvell.c b/marvell.c
index 16147a9..244bb69 100644
--- a/marvell.c
+++ b/marvell.c
@@ -113,6 +113,31 @@ static void dump_fifo(const char *name, 
 	dump_timer("LED", p + 0x20);
 }
 
+static void dump_gmac_fifo(const void *p)
+{
+	const u32 *r = p;
+	int i;
+	static const char *regs[] = {
+		"End Address",
+		"Almost Full Thresh",
+		"Control/Test",
+		"FIFO Flush Mask",
+		"FIFO Flush Threshold",
+		"Truncation Threshold",
+		"Upper Pause Threshold",
+		"Lower Pause Threshold",
+		"VLAN Tag",
+		"FIFO Write Pointer",
+		"FIFO Write Level",
+		"FIFO Read Pointer",
+		"FIFO Read Level",
+	};
+
+	for (i = 0; i < sizeof(regs)/sizeof(regs[0]); ++i)
+		printf("%-32s 0x%08X\n", regs[i], r[i]);
+
+}
+
 static void dump_mac(const u8 *r)
 {
 	printf("\nMAC Addresses\n");
@@ -143,6 +168,7 @@ static void dump_gma(const char *name, c
 static void dump_gmac(const char *name, const u8 *data)
 {
 	printf("\n%s\n", name);
+
 	printf("Status                       0x%04X\n", *(u16 *) data);
 	printf("Control                      0x%04X\n", *(u16 *) (data + 4));
 	printf("Transmit                     0x%04X\n", *(u16 *) (data + 8));
@@ -294,6 +320,7 @@ int sky2_dump_regs(struct ethtool_drvinf
 
 	dump_mac(regs->data);
 	dump_gmac("GMAC 1", regs->data + 0x2800);
+	dump_gmac_fifo(regs->data + 0xc40);
 
 	printf("\nStatus BMU:\n-----------\n");
 	printf("Control                                0x%08X\n",
@@ -337,6 +364,7 @@ int sky2_dump_regs(struct ethtool_drvinf
 		dump_ram("Sync Transmit RAMbuffer 2", regs->data+0xb00);
 		dump_ram("Async Transmit RAMbuffer 21", regs->data+0xb80);
 		dump_gmac("GMAC 2", regs->data + 0x3800);
+		dump_gmac_fifo(regs->data + 0xc40 + 128);
 	}
 
 	return 0;
-- 
1.4.1


^ permalink raw reply related	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2007-02-09 21:29 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-10-18 17:46 [PATCH 1/3] ethtool: sky2 GMAC decode Stephen Hemminger
2006-10-18 17:47 ` [PATCH 2/3] ethtool: sky2 more decode Stephen Hemminger
2006-10-18 17:50 ` [PATCH 3/3] ethtool: dump_registers post mortem Stephen Hemminger
2006-10-19 21:53   ` [PATCH] ethtool: more sky2 decode Stephen Hemminger
2006-10-21 18:15   ` [PATCH 3/3] ethtool: dump_registers post mortem Jeff Garzik
2006-10-23 17:51     ` [PATCH 1/3] ethtool: marvell register dump Stephen Hemminger
2006-10-23 17:57       ` [PATCH 2/3] ethtool: flie option to " Stephen Hemminger
2006-10-24  9:50         ` Ingo Oeser
2006-10-23 20:06           ` Stephen Hemminger
2007-02-09 21:29         ` Jeff Garzik
2006-10-23 17:58       ` [PATCH 3/3] ethtool: allow force hex in " Stephen Hemminger
2006-11-07  9:34       ` [PATCH 1/3] ethtool: marvell " Jeff Garzik

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).