diff options
author | Andrew Vasquez <andrew.vasquez@qlogic.com> | 2006-06-23 19:10:29 -0400 |
---|---|---|
committer | James Bottomley <jejb@mulgrave.il.steeleye.com> | 2006-06-26 17:20:44 -0400 |
commit | a7a167bf7e2d196fc33f292e7b02e90fee03bc9a (patch) | |
tree | 1e62085065440e012a7cd2d48cd161bfac408adc /drivers/scsi/qla2xxx/qla_def.h | |
parent | 9ea7290902abcf22f796e9aeae4dc2e71d3f7e67 (diff) |
[SCSI] qla2xxx: Rework firmware-trace facilities.
- Defer firmware dump-data raw-to-textual conversion to
user-space.
- Add module parameter (ql2xallocfwdump) to allow for per-HBA
allocations of firmware dump memory.
- Dump request and response queue data as per firmware group
request.
- Add extended firmware trace support for ISP24XX/ISP54XX chips.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_def.h')
-rw-r--r-- | drivers/scsi/qla2xxx/qla_def.h | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/drivers/scsi/qla2xxx/qla_def.h b/drivers/scsi/qla2xxx/qla_def.h index d6f6579cfd27..653e22e490a1 100644 --- a/drivers/scsi/qla2xxx/qla_def.h +++ b/drivers/scsi/qla2xxx/qla_def.h | |||
@@ -608,6 +608,7 @@ typedef struct { | |||
608 | #define MBC_SERDES_PARAMS 0x10 /* Serdes Tx Parameters. */ | 608 | #define MBC_SERDES_PARAMS 0x10 /* Serdes Tx Parameters. */ |
609 | #define MBC_GET_IOCB_STATUS 0x12 /* Get IOCB status command. */ | 609 | #define MBC_GET_IOCB_STATUS 0x12 /* Get IOCB status command. */ |
610 | #define MBC_GET_TIMEOUT_PARAMS 0x22 /* Get FW timeouts. */ | 610 | #define MBC_GET_TIMEOUT_PARAMS 0x22 /* Get FW timeouts. */ |
611 | #define MBC_TRACE_CONTROL 0x27 /* Trace control command. */ | ||
611 | #define MBC_GEN_SYSTEM_ERROR 0x2a /* Generate System Error. */ | 612 | #define MBC_GEN_SYSTEM_ERROR 0x2a /* Generate System Error. */ |
612 | #define MBC_SET_TIMEOUT_PARAMS 0x32 /* Set FW timeouts. */ | 613 | #define MBC_SET_TIMEOUT_PARAMS 0x32 /* Set FW timeouts. */ |
613 | #define MBC_MID_INITIALIZE_FIRMWARE 0x48 /* MID Initialize firmware. */ | 614 | #define MBC_MID_INITIALIZE_FIRMWARE 0x48 /* MID Initialize firmware. */ |
@@ -618,6 +619,9 @@ typedef struct { | |||
618 | #define MBC_GET_LINK_PRIV_STATS 0x6d /* Get link & private data. */ | 619 | #define MBC_GET_LINK_PRIV_STATS 0x6d /* Get link & private data. */ |
619 | #define MBC_SET_VENDOR_ID 0x76 /* Set Vendor ID. */ | 620 | #define MBC_SET_VENDOR_ID 0x76 /* Set Vendor ID. */ |
620 | 621 | ||
622 | #define TC_ENABLE 4 | ||
623 | #define TC_DISABLE 5 | ||
624 | |||
621 | /* Firmware return data sizes */ | 625 | /* Firmware return data sizes */ |
622 | #define FCAL_MAP_SIZE 128 | 626 | #define FCAL_MAP_SIZE 128 |
623 | 627 | ||
@@ -1997,7 +2001,6 @@ struct isp_operations { | |||
1997 | uint32_t); | 2001 | uint32_t); |
1998 | 2002 | ||
1999 | void (*fw_dump) (struct scsi_qla_host *, int); | 2003 | void (*fw_dump) (struct scsi_qla_host *, int); |
2000 | void (*ascii_fw_dump) (struct scsi_qla_host *); | ||
2001 | 2004 | ||
2002 | int (*beacon_on) (struct scsi_qla_host *); | 2005 | int (*beacon_on) (struct scsi_qla_host *); |
2003 | int (*beacon_off) (struct scsi_qla_host *); | 2006 | int (*beacon_off) (struct scsi_qla_host *); |
@@ -2303,11 +2306,12 @@ typedef struct scsi_qla_host { | |||
2303 | uint16_t fw_seriallink_options24[4]; | 2306 | uint16_t fw_seriallink_options24[4]; |
2304 | 2307 | ||
2305 | /* Firmware dump information. */ | 2308 | /* Firmware dump information. */ |
2306 | void *fw_dump; | 2309 | struct qla2xxx_fw_dump *fw_dump; |
2310 | uint32_t fw_dump_len; | ||
2307 | int fw_dumped; | 2311 | int fw_dumped; |
2308 | int fw_dump_reading; | 2312 | int fw_dump_reading; |
2309 | char *fw_dump_buffer; | 2313 | dma_addr_t eft_dma; |
2310 | int fw_dump_buffer_len; | 2314 | void *eft; |
2311 | 2315 | ||
2312 | uint8_t host_str[16]; | 2316 | uint8_t host_str[16]; |
2313 | uint32_t pci_attr; | 2317 | uint32_t pci_attr; |