diff options
author | James Smart <james.smart@emulex.com> | 2011-04-16 11:03:04 -0400 |
---|---|---|
committer | James Bottomley <James.Bottomley@suse.de> | 2011-05-01 12:01:52 -0400 |
commit | 86a80846a68eeb8575119db61f6b262f49522e6f (patch) | |
tree | 000c28dbd17cf370424b47771cbeb0876ccec3f6 /drivers/scsi/lpfc/lpfc_debugfs.h | |
parent | 7c38c05b3ef1a8a9f7e0416072a8ea2730841c91 (diff) |
[SCSI] lpfc 8.3.23: Debugfs enhancements
Debugfs enhancements
- Added iDiag support for new adapters.
- Added queue entry access methods.
- Fix host/port index in decimal
- Added Doorbell register access methods.
Signed-off-by: Alex Iannicelli <alex.iannicelli@emulex.com>
Signed-off-by: James Smart <james.smart@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/scsi/lpfc/lpfc_debugfs.h')
-rw-r--r-- | drivers/scsi/lpfc/lpfc_debugfs.h | 48 |
1 files changed, 44 insertions, 4 deletions
diff --git a/drivers/scsi/lpfc/lpfc_debugfs.h b/drivers/scsi/lpfc/lpfc_debugfs.h index 91b9a9427cda..6525a5e62d27 100644 --- a/drivers/scsi/lpfc/lpfc_debugfs.h +++ b/drivers/scsi/lpfc/lpfc_debugfs.h | |||
@@ -39,13 +39,42 @@ | |||
39 | /* hbqinfo output buffer size */ | 39 | /* hbqinfo output buffer size */ |
40 | #define LPFC_HBQINFO_SIZE 8192 | 40 | #define LPFC_HBQINFO_SIZE 8192 |
41 | 41 | ||
42 | /* rdPciConf output buffer size */ | 42 | /* pciConf */ |
43 | #define LPFC_PCI_CFG_BROWSE 0xffff | ||
44 | #define LPFC_PCI_CFG_RD_CMD_ARG 2 | ||
45 | #define LPFC_PCI_CFG_WR_CMD_ARG 3 | ||
43 | #define LPFC_PCI_CFG_SIZE 4096 | 46 | #define LPFC_PCI_CFG_SIZE 4096 |
44 | #define LPFC_PCI_CFG_RD_BUF_SIZE (LPFC_PCI_CFG_SIZE/2) | 47 | #define LPFC_PCI_CFG_RD_BUF_SIZE (LPFC_PCI_CFG_SIZE/2) |
45 | #define LPFC_PCI_CFG_RD_SIZE (LPFC_PCI_CFG_SIZE/4) | 48 | #define LPFC_PCI_CFG_RD_SIZE (LPFC_PCI_CFG_SIZE/4) |
46 | 49 | ||
47 | /* queue info output buffer size */ | 50 | /* queue info */ |
48 | #define LPFC_QUE_INFO_GET_BUF_SIZE 2048 | 51 | #define LPFC_QUE_INFO_GET_BUF_SIZE 4096 |
52 | |||
53 | /* queue acc */ | ||
54 | #define LPFC_QUE_ACC_BROWSE 0xffff | ||
55 | #define LPFC_QUE_ACC_RD_CMD_ARG 4 | ||
56 | #define LPFC_QUE_ACC_WR_CMD_ARG 6 | ||
57 | #define LPFC_QUE_ACC_BUF_SIZE 4096 | ||
58 | #define LPFC_QUE_ACC_SIZE (LPFC_QUE_ACC_BUF_SIZE/2) | ||
59 | |||
60 | #define LPFC_IDIAG_EQ 1 | ||
61 | #define LPFC_IDIAG_CQ 2 | ||
62 | #define LPFC_IDIAG_MQ 3 | ||
63 | #define LPFC_IDIAG_WQ 4 | ||
64 | #define LPFC_IDIAG_RQ 5 | ||
65 | |||
66 | /* doorbell acc */ | ||
67 | #define LPFC_DRB_ACC_ALL 0xffff | ||
68 | #define LPFC_DRB_ACC_RD_CMD_ARG 1 | ||
69 | #define LPFC_DRB_ACC_WR_CMD_ARG 2 | ||
70 | #define LPFC_DRB_ACC_BUF_SIZE 256 | ||
71 | |||
72 | #define LPFC_DRB_EQCQ 1 | ||
73 | #define LPFC_DRB_MQ 2 | ||
74 | #define LPFC_DRB_WQ 3 | ||
75 | #define LPFC_DRB_RQ 4 | ||
76 | |||
77 | #define LPFC_DRB_MAX 4 | ||
49 | 78 | ||
50 | #define SIZE_U8 sizeof(uint8_t) | 79 | #define SIZE_U8 sizeof(uint8_t) |
51 | #define SIZE_U16 sizeof(uint16_t) | 80 | #define SIZE_U16 sizeof(uint16_t) |
@@ -73,13 +102,23 @@ struct lpfc_idiag_offset { | |||
73 | uint32_t last_rd; | 102 | uint32_t last_rd; |
74 | }; | 103 | }; |
75 | 104 | ||
76 | #define LPFC_IDIAG_CMD_DATA_SIZE 4 | 105 | #define LPFC_IDIAG_CMD_DATA_SIZE 8 |
77 | struct lpfc_idiag_cmd { | 106 | struct lpfc_idiag_cmd { |
78 | uint32_t opcode; | 107 | uint32_t opcode; |
79 | #define LPFC_IDIAG_CMD_PCICFG_RD 0x00000001 | 108 | #define LPFC_IDIAG_CMD_PCICFG_RD 0x00000001 |
80 | #define LPFC_IDIAG_CMD_PCICFG_WR 0x00000002 | 109 | #define LPFC_IDIAG_CMD_PCICFG_WR 0x00000002 |
81 | #define LPFC_IDIAG_CMD_PCICFG_ST 0x00000003 | 110 | #define LPFC_IDIAG_CMD_PCICFG_ST 0x00000003 |
82 | #define LPFC_IDIAG_CMD_PCICFG_CL 0x00000004 | 111 | #define LPFC_IDIAG_CMD_PCICFG_CL 0x00000004 |
112 | |||
113 | #define LPFC_IDIAG_CMD_QUEACC_RD 0x00000011 | ||
114 | #define LPFC_IDIAG_CMD_QUEACC_WR 0x00000012 | ||
115 | #define LPFC_IDIAG_CMD_QUEACC_ST 0x00000013 | ||
116 | #define LPFC_IDIAG_CMD_QUEACC_CL 0x00000014 | ||
117 | |||
118 | #define LPFC_IDIAG_CMD_DRBACC_RD 0x00000021 | ||
119 | #define LPFC_IDIAG_CMD_DRBACC_WR 0x00000022 | ||
120 | #define LPFC_IDIAG_CMD_DRBACC_ST 0x00000023 | ||
121 | #define LPFC_IDIAG_CMD_DRBACC_CL 0x00000024 | ||
83 | uint32_t data[LPFC_IDIAG_CMD_DATA_SIZE]; | 122 | uint32_t data[LPFC_IDIAG_CMD_DATA_SIZE]; |
84 | }; | 123 | }; |
85 | 124 | ||
@@ -87,6 +126,7 @@ struct lpfc_idiag { | |||
87 | uint32_t active; | 126 | uint32_t active; |
88 | struct lpfc_idiag_cmd cmd; | 127 | struct lpfc_idiag_cmd cmd; |
89 | struct lpfc_idiag_offset offset; | 128 | struct lpfc_idiag_offset offset; |
129 | void *ptr_private; | ||
90 | }; | 130 | }; |
91 | #endif | 131 | #endif |
92 | 132 | ||