diff options
author | Sriram Chidambaram <schidambaram@fabric7.com> | 2006-10-24 14:30:41 -0700 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2006-10-31 20:28:54 -0500 |
commit | 8babd795f6bcbf9b21e31c43ce53bd0654974488 (patch) | |
tree | e07170fb6920878bebbd5ba75de4aa81d542beac /vioc.c | |
parent | ee35083398b3497d627a14b51e97c23c243d4f6b (diff) | |
download | ethtool-8babd795f6bcbf9b21e31c43ce53bd0654974488.tar.gz |
[PATCH] Fabric7 VIOC: Ethtool
Ethtool patch for Fabric7 VIOC Device Driver.
Signed-off-by: Fabric7 Driver-Support <driver-support@fabric7.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'vioc.c')
-rw-r--r-- | vioc.c | 35 |
1 files changed, 35 insertions, 0 deletions
@@ -0,0 +1,35 @@ +/* Copyright 2006 Fabric7 Systems, Inc */ + +#include <stdio.h> +#include <stdlib.h> +#include "ethtool-util.h" + +struct regs_line { + u32 addr; + u32 data; +}; + +#define VIOC_REGS_LINE_SIZE sizeof(struct regs_line) + +int vioc_dump_regs(struct ethtool_drvinfo *info, struct ethtool_regs *regs) +{ + unsigned int i; + unsigned int num_regs; + struct regs_line *reg_info = (struct regs_line *) regs->data; + + printf("%s: Enter\n", __FUNCTION__); + + printf("ethtool_regs\n" + "%-20s = %04x\n" + "%-20s = %04x\n", + "cmd", regs->cmd, + "version", regs->version); + + num_regs = regs->len/VIOC_REGS_LINE_SIZE; + + for (i = 0; i < num_regs; i++){ + printf("%08x = %08x\n", reg_info[i].addr, reg_info[i].data); + } + + return 0; +} |