From 74ebeae0b4c411df9900224b90a6072b16098458 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Mon, 15 Apr 2024 19:34:36 +0200 Subject: Adding upstream version 1:6.7. Signed-off-by: Daniel Baumann --- tg3.c | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 tg3.c (limited to 'tg3.c') diff --git a/tg3.c b/tg3.c new file mode 100644 index 0000000..ebdef2d --- /dev/null +++ b/tg3.c @@ -0,0 +1,42 @@ +#include +#include +#include "internal.h" + +#define TG3_MAGIC 0x669955aa + +int tg3_dump_eeprom(struct ethtool_drvinfo *info __maybe_unused, + struct ethtool_eeprom *ee) +{ + unsigned int i; + + if (ee->magic != TG3_MAGIC) { + fprintf(stderr, "Magic number 0x%08x does not match 0x%08x\n", + ee->magic, TG3_MAGIC); + return -1; + } + + fprintf(stdout, "Address \tData\n"); + fprintf(stdout, "----------\t----\n"); + for (i = 0; i < ee->len; i++) + fprintf(stdout, "0x%08x\t0x%02x\n", i + ee->offset, ee->data[i]); + + return 0; +} + +int tg3_dump_regs(struct ethtool_drvinfo *info __maybe_unused, + struct ethtool_regs *regs) +{ + unsigned int i; + u32 reg; + + fprintf(stdout, "Offset\tValue\n"); + fprintf(stdout, "------\t----------\n"); + for (i = 0; i < regs->len; i += sizeof(reg)) { + memcpy(®, ®s->data[i], sizeof(reg)); + if (reg) + fprintf(stdout, "0x%04x\t0x%08x\n", i, reg); + + } + fprintf(stdout, "\n"); + return 0; +} -- cgit v1.2.3