diff options
| author | Michael Brown | 2015-05-18 23:09:47 +0200 |
|---|---|---|
| committer | Michael Brown | 2015-05-19 14:03:02 +0200 |
| commit | 51b6a1c835656903ccf9162b61e0c3cc673bbbe8 (patch) | |
| tree | c642269bb3ac8de8043bcc0fcc5fd5f8dbad16ae /src | |
| parent | [int13con] Add basic ability to log to a local disk via INT 13 (diff) | |
| download | ipxe-51b6a1c835656903ccf9162b61e0c3cc673bbbe8.tar.gz ipxe-51b6a1c835656903ccf9162b61e0c3cc673bbbe8.tar.xz ipxe-51b6a1c835656903ccf9162b61e0c3cc673bbbe8.zip | |
[intel] Add intelxvf_stats() to dump packet statistics registers
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src')
| -rw-r--r-- | src/drivers/net/intelxvf.c | 25 | ||||
| -rw-r--r-- | src/drivers/net/intelxvf.h | 21 |
2 files changed, 46 insertions, 0 deletions
diff --git a/src/drivers/net/intelxvf.c b/src/drivers/net/intelxvf.c index 6208662b5..c03fbe85c 100644 --- a/src/drivers/net/intelxvf.c +++ b/src/drivers/net/intelxvf.c @@ -40,6 +40,31 @@ FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL ); /****************************************************************************** * + * Diagnostics + * + ****************************************************************************** + */ + +/** + * Dump statistics + * + * @v intel Intel device + */ +static __attribute__ (( unused )) void +intelxvf_stats ( struct intel_nic *intel ) { + + DBGC ( intel, "INTEL %p TX %d (%#x%08x) RX %d (%#x%08x) multi %d\n", + intel, readl ( intel->regs + INTELXVF_GPTC ), + readl ( intel->regs + INTELXVF_GOTCH ), + readl ( intel->regs + INTELXVF_GOTCL ), + readl ( intel->regs + INTELXVF_GPRC ), + readl ( intel->regs + INTELXVF_GORCH ), + readl ( intel->regs + INTELXVF_GORCL ), + readl ( intel->regs + INTELXVF_MPRC ) ); +} + +/****************************************************************************** + * * Device reset * ****************************************************************************** diff --git a/src/drivers/net/intelxvf.h b/src/drivers/net/intelxvf.h index ffbd39d02..aae58c9ec 100644 --- a/src/drivers/net/intelxvf.h +++ b/src/drivers/net/intelxvf.h @@ -71,7 +71,28 @@ FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL ); #define INTELXVF_SRRCTL_DESCTYPE_DEFAULT INTELXVF_SRRCTL_DESCTYPE ( 0x00 ) #define INTELXVF_SRRCTL_DESCTYPE_MASK INTELXVF_SRRCTL_DESCTYPE ( 0x07 ) +/** Good Packets Received Count */ +#define INTELXVF_GPRC 0x101c + +/** Good Packets Received Count Low */ +#define INTELXVF_GORCL 0x1020 + +/** Good Packets Received Count High */ +#define INTELXVF_GORCH 0x1024 + +/* Multicast Packets Received Count */ +#define INTELXVF_MPRC 0x1034 + /** Transmit Descriptor register block */ #define INTELXVF_TD 0x2000UL +/** Good Packets Transmitted Count */ +#define INTELXVF_GPTC 0x201c + +/** Good Packets Transmitted Count Low */ +#define INTELXVF_GOTCL 0x2020 + +/** Good Packets Transmitted Count High */ +#define INTELXVF_GOTCH 0x2024 + #endif /* _INTELXVF_H */ |
