summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormav <mav@FreeBSD.org>2015-11-30 21:44:03 +0000
committermav <mav@FreeBSD.org>2015-11-30 21:44:03 +0000
commit81646eff8a348abc3075740acf202f13c297bca0 (patch)
tree443bd303004633085c6fc6797501e46c80a654ee
parent7b3194de40bae21f3c63590a91d7ab41398abef3 (diff)
downloadFreeBSD-src-81646eff8a348abc3075740acf202f13c297bca0.zip
FreeBSD-src-81646eff8a348abc3075740acf202f13c297bca0.tar.gz
MFC r291159: Add more mailbox command codes.
-rw-r--r--sys/dev/isp/isp.c60
-rw-r--r--sys/dev/isp/ispmbox.h61
2 files changed, 74 insertions, 47 deletions
diff --git a/sys/dev/isp/isp.c b/sys/dev/isp/isp.c
index 27544cd..cd2c2ed 100644
--- a/sys/dev/isp/isp.c
+++ b/sys/dev/isp/isp.c
@@ -6900,7 +6900,7 @@ static const uint32_t mbpfc[] = {
*/
static const char *fc_mbcmd_names[] = {
- "NO-OP",
+ "NO-OP", /* 00h */
"LOAD RAM",
"EXEC FIRMWARE",
"DUMP RAM",
@@ -6912,11 +6912,11 @@ static const char *fc_mbcmd_names[] = {
"LOAD RAM (2100)",
"DUMP RAM",
"LOAD RISC RAM",
- NULL,
+ "DUMP RISC RAM",
"WRITE RAM WORD EXTENDED",
"CHECK FIRMWARE",
"READ RAM WORD EXTENDED",
- "INIT REQUEST QUEUE",
+ "INIT REQUEST QUEUE", /* 10h */
"INIT RESULT QUEUE",
"EXECUTE IOCB",
"WAKE UP",
@@ -6932,9 +6932,9 @@ static const char *fc_mbcmd_names[] = {
"GET DEV QUEUE STATUS",
NULL,
"GET FIRMWARE STATUS",
- "GET LOOP ID",
+ "GET LOOP ID", /* 20h */
NULL,
- "GET RETRY COUNT",
+ "GET TIMEOUT PARAMS",
NULL,
NULL,
NULL,
@@ -6942,15 +6942,15 @@ static const char *fc_mbcmd_names[] = {
NULL,
"GET FIRMWARE OPTIONS",
"GET PORT QUEUE PARAMS",
+ "GENERATE SYSTEM ERROR",
NULL,
NULL,
NULL,
NULL,
NULL,
- NULL,
- NULL,
- NULL,
- "SET RETRY COUNT",
+ "WRITE SFP", /* 30h */
+ "READ SFP",
+ "SET TIMEOUT PARAMS",
NULL,
NULL,
NULL,
@@ -6959,17 +6959,17 @@ static const char *fc_mbcmd_names[] = {
"SET FIRMWARE OPTIONS",
"SET PORT QUEUE PARAMS",
NULL,
+ "SET FC LED CONF",
NULL,
+ "RESTART NIC FIRMWARE",
+ "ACCESS CONTROL",
NULL,
- NULL,
- NULL,
- NULL,
- "LOOP PORT BYPASS",
+ "LOOP PORT BYPASS", /* 40h */
"LOOP PORT ENABLE",
"GET RESOURCE COUNT",
"REQUEST NON PARTICIPATING MODE",
- NULL,
- NULL,
+ "DIAGNOSTIC ECHO TEST",
+ "DIAGNOSTIC LOOPBACK",
NULL,
"GET PORT DATABASE ENHANCED",
"INIT FIRMWARE MULTI ID",
@@ -6980,24 +6980,24 @@ static const char *fc_mbcmd_names[] = {
NULL,
NULL,
NULL,
+ "GET FCF LIST", /* 50h */
+ "GET DCBX PARAMETERS",
NULL,
- NULL,
- NULL,
- NULL,
+ "HOST MEMORY COPY",
"EXECUTE IOCB A64",
NULL,
NULL,
+ "SEND RNID",
NULL,
- NULL,
- NULL,
- NULL,
+ "SET PARAMETERS",
+ "GET PARAMETERS",
"DRIVER HEARTBEAT",
- NULL,
+ "FIRMWARE HEARTBEAT",
"GET/SET DATA RATE",
+ "SEND RNFT",
NULL,
- NULL,
- "INIT FIRMWARE",
- NULL,
+ "INIT FIRMWARE", /* 60h */
+ "GET INIT CONTROL BLOCK",
"INIT LIP",
"GET FC-AL POSITION MAP",
"GET PORT DATABASE",
@@ -7009,10 +7009,10 @@ static const char *fc_mbcmd_names[] = {
"GET PORT NAME",
"GET LINK STATUS",
"INIT LIP RESET",
- NULL,
+ "GET LINK STATS & PRIVATE DATA CNTS",
"SEND SNS",
"FABRIC LOGIN",
- "SEND CHANGE REQUEST",
+ "SEND CHANGE REQUEST", /* 70h */
"FABRIC LOGOUT",
"INIT LIP LOGIN",
NULL,
@@ -7022,11 +7022,11 @@ static const char *fc_mbcmd_names[] = {
"INITIALIZE IP MAILBOX",
NULL,
NULL,
+ "GET XGMAC STATS",
NULL,
- NULL,
- "Get ID List",
+ "GET ID LIST",
"SEND LFA",
- "Lun RESET"
+ "LUN RESET"
};
static void
diff --git a/sys/dev/isp/ispmbox.h b/sys/dev/isp/ispmbox.h
index a133773..d380d78 100644
--- a/sys/dev/isp/ispmbox.h
+++ b/sys/dev/isp/ispmbox.h
@@ -48,7 +48,7 @@
#define MBOX_LOAD_RISC_RAM_2100 0x0009
/* a */
#define MBOX_LOAD_RISC_RAM 0x000b
- /* c */
+#define MBOX_DUMP_RISC_RAM 0x000c
#define MBOX_WRITE_RAM_WORD_EXTENDED 0x000d
#define MBOX_CHECK_FIRMWARE 0x000e
#define MBOX_READ_RAM_WORD_EXTENDED 0x000f
@@ -122,22 +122,60 @@
#define MBOX_GET_TARGET_STATUS 0x0056
/* These are for the ISP2X00 FC cards */
+#define MBOX_WRITE_FC_SERDES_REG 0x0003 /* FC only */
+#define MBOX_READ_FC_SERDES_REG 0x0004 /* FC only */
+#define MBOX_GET_IO_STATUS 0x0012
+#define MBOX_SET_TRANSMIT_PARAMS 0x0019
+#define MBOX_SET_PORT_PARAMS 0x001a
+#define MBOX_LOAD_OP_FW_PARAMS 0x001b
+#define MBOX_INIT_MULTIPLE_QUEUE 0x001f
#define MBOX_GET_LOOP_ID 0x0020
/* for 24XX cards, outgoing mailbox 7 has these values for F or FL topologies */
#define ISP24XX_INORDER 0x0100
#define ISP24XX_NPIV_SAN 0x0400
#define ISP24XX_VSAN_SAN 0x1000
#define ISP24XX_FC_SP_SAN 0x2000
-
+#define MBOX_GET_TIMEOUT_PARAMS 0x0022
#define MBOX_GET_FIRMWARE_OPTIONS 0x0028
+#define MBOX_GENERATE_SYSTEM_ERROR 0x002a
+#define MBOX_WRITE_SFP 0x0030
+#define MBOX_READ_SFP 0x0031
+#define MBOX_SET_TIMEOUT_PARAMS 0x0032
#define MBOX_SET_FIRMWARE_OPTIONS 0x0038
+#define MBOX_GET_SET_FC_LED_CONF 0x003b
+#define MBOX_RESTART_NIC_FIRMWARE 0x003d /* FCoE only */
+#define MBOX_ACCESS_CONTROL 0x003e
+#define MBOX_LOOP_PORT_BYPASS 0x0040 /* FC only */
+#define MBOX_LOOP_PORT_ENABLE 0x0041 /* FC only */
#define MBOX_GET_RESOURCE_COUNT 0x0042
#define MBOX_REQUEST_OFFLINE_MODE 0x0043
+#define MBOX_DIAGNOSTIC_ECHO_TEST 0x0044
+#define MBOX_DIAGNOSTIC_LOOPBACK 0x0045
#define MBOX_ENHANCED_GET_PDB 0x0047
#define MBOX_INIT_FIRMWARE_MULTI_ID 0x0048 /* 2400 only */
#define MBOX_GET_VP_DATABASE 0x0049 /* 2400 only */
#define MBOX_GET_VP_DATABASE_ENTRY 0x004a /* 2400 only */
+#define MBOX_GET_FCF_LIST 0x0050 /* FCoE only */
+#define MBOX_GET_DCBX_PARAMETERS 0x0051 /* FCoE only */
+#define MBOX_HOST_MEMORY_COPY 0x0053
#define MBOX_EXEC_COMMAND_IOCB_A64 0x0054
+#define MBOX_SEND_RNID 0x0057
+#define MBOX_SET_PARAMETERS 0x0059
+#define MBOX_GET_PARAMETERS 0x005a
+#define MBOX_DRIVER_HEARTBEAT 0x005B /* FC only */
+#define MBOX_FW_HEARTBEAT 0x005C
+#define MBOX_GET_SET_DATA_RATE 0x005D /* >=23XX only */
+#define MBGSD_GET_RATE 0
+#define MBGSD_SET_RATE 1
+#define MBGSD_SET_RATE_NOW 2 /* 24XX only */
+#define MBGSD_1GB 0x00
+#define MBGSD_2GB 0x01
+#define MBGSD_AUTO 0x02
+#define MBGSD_4GB 0x03 /* 24XX only */
+#define MBGSD_8GB 0x04 /* 25XX only */
+#define MBGSD_16GB 0x05 /* 26XX only */
+#define MBGSD_10GB 0x13 /* 26XX only */
+#define MBOX_SEND_RNFT 0x005e
#define MBOX_INIT_FIRMWARE 0x0060
#define MBOX_GET_INIT_CONTROL_BLOCK 0x0061
#define MBOX_INIT_LIP 0x0062
@@ -151,30 +189,19 @@
#define MBOX_GET_PORT_NAME 0x006A
#define MBOX_GET_LINK_STATUS 0x006B
#define MBOX_INIT_LIP_RESET 0x006C
+#define MBOX_GET_LINK_STAT_PR_DATA_CNT 0x006D
#define MBOX_SEND_SNS 0x006E
#define MBOX_FABRIC_LOGIN 0x006F
#define MBOX_SEND_CHANGE_REQUEST 0x0070
#define MBOX_FABRIC_LOGOUT 0x0071
#define MBOX_INIT_LIP_LOGIN 0x0072
#define MBOX_GET_PORT_NODE_NAME_LIST 0x0075
+#define MBOX_SET_VENDOR_ID 0x0076
+#define MBOX_GET_XGMAC_STATS 0x007a
#define MBOX_GET_ID_LIST 0x007C
+#define MBOX_SEND_LFA 0x007d
#define MBOX_LUN_RESET 0x007E
-#define MBOX_DRIVER_HEARTBEAT 0x005B
-#define MBOX_FW_HEARTBEAT 0x005C
-
-#define MBOX_GET_SET_DATA_RATE 0x005D /* 24XX/23XX only */
-#define MBGSD_GET_RATE 0
-#define MBGSD_SET_RATE 1
-#define MBGSD_SET_RATE_NOW 2 /* 24XX only */
-#define MBGSD_1GB 0x00
-#define MBGSD_2GB 0x01
-#define MBGSD_AUTO 0x02
-#define MBGSD_4GB 0x03 /* 24XX only */
-#define MBGSD_8GB 0x04 /* 25XX only */
-#define MBGSD_16GB 0x05 /* 26XX only */
-#define MBGSD_10GB 0x13 /* 26XX only */
-
#define ISP2100_SET_PCI_PARAM 0x00ff
#define MBOX_BUSY 0x04
OpenPOWER on IntegriCloud