91 lines
2.3 KiB
C
91 lines
2.3 KiB
C
/* Copyright (c) 2016 FUJITSU LIMITED */
|
|
#include <stdio.h>
|
|
#include "internal.h"
|
|
|
|
int fjes_dump_regs(struct ethtool_drvinfo *info maybe_unused,
|
|
struct ethtool_regs *regs)
|
|
{
|
|
u32 *regs_buff = (u32 *)regs->data;
|
|
|
|
if (regs->version != 1)
|
|
return -1;
|
|
|
|
/* Information registers */
|
|
fprintf(stdout,
|
|
"0x0000: OWNER_EPID (Owner EPID) 0x%08X\n",
|
|
regs_buff[0]);
|
|
|
|
fprintf(stdout,
|
|
"0x0004: MAX_EP (Maximum EP) 0x%08X\n",
|
|
regs_buff[1]);
|
|
|
|
/* Device Control registers */
|
|
fprintf(stdout,
|
|
"0x0010: DCTL (Device Control) 0x%08X\n",
|
|
regs_buff[4]);
|
|
|
|
/* Command Control registers */
|
|
fprintf(stdout,
|
|
"0x0020: CR (Command request) 0x%08X\n",
|
|
regs_buff[8]);
|
|
|
|
fprintf(stdout,
|
|
"0x0024: CS (Command status) 0x%08X\n",
|
|
regs_buff[9]);
|
|
|
|
fprintf(stdout,
|
|
"0x0028: SHSTSAL (Share status address Low) 0x%08X\n",
|
|
regs_buff[10]);
|
|
|
|
fprintf(stdout,
|
|
"0x002C: SHSTSAH (Share status address High) 0x%08X\n",
|
|
regs_buff[11]);
|
|
|
|
fprintf(stdout,
|
|
"0x0034: REQBL (Request Buffer length) 0x%08X\n",
|
|
regs_buff[13]);
|
|
|
|
fprintf(stdout,
|
|
"0x0038: REQBAL (Request Buffer Address Low) 0x%08X\n",
|
|
regs_buff[14]);
|
|
|
|
fprintf(stdout,
|
|
"0x003C: REQBAH (Request Buffer Address High) 0x%08X\n",
|
|
regs_buff[15]);
|
|
|
|
fprintf(stdout,
|
|
"0x0044: RESPBL (Response Buffer Length) 0x%08X\n",
|
|
regs_buff[17]);
|
|
|
|
fprintf(stdout,
|
|
"0x0048: RESPBAL (Response Buffer Address Low) 0x%08X\n",
|
|
regs_buff[18]);
|
|
|
|
fprintf(stdout,
|
|
"0x004C: RESPBAH (Response Buffer Address High) 0x%08X\n",
|
|
regs_buff[19]);
|
|
|
|
/* Interrupt Control registers */
|
|
fprintf(stdout,
|
|
"0x0080: IS (Interrupt status) 0x%08X\n",
|
|
regs_buff[32]);
|
|
|
|
fprintf(stdout,
|
|
"0x0084: IMS (Interrupt mask set) 0x%08X\n",
|
|
regs_buff[33]);
|
|
|
|
fprintf(stdout,
|
|
"0x0088: IMC (Interrupt mask clear) 0x%08X\n",
|
|
regs_buff[34]);
|
|
|
|
fprintf(stdout,
|
|
"0x008C: IG (Interrupt generator) 0x%08X\n",
|
|
regs_buff[35]);
|
|
|
|
fprintf(stdout,
|
|
"0x0090: ICTL (Interrupt control) 0x%08X\n",
|
|
regs_buff[36]);
|
|
|
|
return 0;
|
|
}
|