aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qla4xxx/ql4_fw.h
diff options
context:
space:
mode:
authorLalit Chandivade <lalit.chandivade@qlogic.com>2011-10-07 19:55:42 -0400
committerJames Bottomley <JBottomley@Parallels.com>2011-10-16 12:08:41 -0400
commit4549415af6915017f5d3fbdbfd5edd1dfbe63fa9 (patch)
treeb06ad5224dd3093d6fd9377d8461a295f101e1b7 /drivers/scsi/qla4xxx/ql4_fw.h
parent0854f665a1cbb4566d3ebe449169b0200b8cdad0 (diff)
[SCSI] qla4xxx: Do not add duplicate CHAP entry in FLASH
QLogic applications store the CHAP information in FLASH. During login, authentication information is provided using an index into the CHAP region. In order to support QLogic applications along with iscsiadm, updated the LLD to not add duplicate CHAP entries in the CHAP region and preserve the existing CHAP info in the CHAP region in FLASH. This allows QLogic applications to pre-write the CHAP entries in the CHAP region. With iscsiadm, when the CHAP authentication information is sent to the LLD, the LLD searches for the entry in CHAP region in FLASH, if exists then do not add. If CHAP entry does not exist then add the CHAP entry in the CHAP region. JIRA Key: UPSISCSI-146 Signed-off-by: Lalit Chandivade <lalit.chandivade@qlogic.com> Signed-off-by: Vikas Chaudhary <vikas.chaudhary@qlogic.com> Reviewed-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers/scsi/qla4xxx/ql4_fw.h')
-rw-r--r--drivers/scsi/qla4xxx/ql4_fw.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/scsi/qla4xxx/ql4_fw.h b/drivers/scsi/qla4xxx/ql4_fw.h
index 597875fbb24b..cbd5a20dbbd1 100644
--- a/drivers/scsi/qla4xxx/ql4_fw.h
+++ b/drivers/scsi/qla4xxx/ql4_fw.h
@@ -251,6 +251,8 @@ union external_hw_config_reg {
251#define FA_BOOT_CODE_ADDR_82 0x20000 251#define FA_BOOT_CODE_ADDR_82 0x20000
252#define FA_RISC_CODE_ADDR_82 0x40000 252#define FA_RISC_CODE_ADDR_82 0x40000
253#define FA_GOLD_RISC_CODE_ADDR_82 0x80000 253#define FA_GOLD_RISC_CODE_ADDR_82 0x80000
254#define FA_FLASH_ISCSI_CHAP 0x540000
255#define FA_FLASH_CHAP_SIZE 0xC0000
254 256
255/* Flash Description Table */ 257/* Flash Description Table */
256struct qla_fdt_layout { 258struct qla_fdt_layout {
@@ -310,6 +312,7 @@ struct qla_flt_header {
310#define FLT_REG_GOLD_FW_82 0x75 312#define FLT_REG_GOLD_FW_82 0x75
311#define FLT_REG_BOOT_CODE_82 0x78 313#define FLT_REG_BOOT_CODE_82 0x78
312#define FLT_REG_ISCSI_PARAM 0x65 314#define FLT_REG_ISCSI_PARAM 0x65
315#define FLT_REG_ISCSI_CHAP 0x63
313 316
314struct qla_flt_region { 317struct qla_flt_region {
315 uint32_t code; 318 uint32_t code;
@@ -681,6 +684,8 @@ struct addr_ctrl_blk_def {
681 684
682#define MAX_CHAP_ENTRIES_40XX 128 685#define MAX_CHAP_ENTRIES_40XX 128
683#define MAX_CHAP_ENTRIES_82XX 1024 686#define MAX_CHAP_ENTRIES_82XX 1024
687#define MAX_RESRV_CHAP_IDX 3
688#define FLASH_CHAP_OFFSET 0x06000000
684 689
685struct ql4_chap_table { 690struct ql4_chap_table {
686 uint16_t link; 691 uint16_t link;