| /* Copyright (c) 2016 FUJITSU LIMITED */ |
| #include <stdio.h> |
| #include "internal.h" |
| |
| int fjes_dump_regs(struct ethtool_drvinfo *info, 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; |
| } |