diff options
Diffstat (limited to 'drivers/scsi/lpfc/lpfc_hw4.h')
-rw-r--r-- | drivers/scsi/lpfc/lpfc_hw4.h | 42 |
1 files changed, 37 insertions, 5 deletions
diff --git a/drivers/scsi/lpfc/lpfc_hw4.h b/drivers/scsi/lpfc/lpfc_hw4.h index 953603a7a43c..834b699cac76 100644 --- a/drivers/scsi/lpfc/lpfc_hw4.h +++ b/drivers/scsi/lpfc/lpfc_hw4.h | |||
@@ -187,11 +187,17 @@ struct lpfc_sli_intf { | |||
187 | /* Active interrupt test count */ | 187 | /* Active interrupt test count */ |
188 | #define LPFC_ACT_INTR_CNT 4 | 188 | #define LPFC_ACT_INTR_CNT 4 |
189 | 189 | ||
190 | /* Algrithmns for scheduling FCP commands to WQs */ | ||
191 | #define LPFC_FCP_SCHED_ROUND_ROBIN 0 | ||
192 | #define LPFC_FCP_SCHED_BY_CPU 1 | ||
193 | |||
190 | /* Delay Multiplier constant */ | 194 | /* Delay Multiplier constant */ |
191 | #define LPFC_DMULT_CONST 651042 | 195 | #define LPFC_DMULT_CONST 651042 |
192 | #define LPFC_MIM_IMAX 636 | 196 | |
193 | #define LPFC_FP_DEF_IMAX 10000 | 197 | /* Configuration of Interrupts / sec for entire HBA port */ |
194 | #define LPFC_SP_DEF_IMAX 10000 | 198 | #define LPFC_MIN_IMAX 5000 |
199 | #define LPFC_MAX_IMAX 5000000 | ||
200 | #define LPFC_DEF_IMAX 50000 | ||
195 | 201 | ||
196 | /* PORT_CAPABILITIES constants. */ | 202 | /* PORT_CAPABILITIES constants. */ |
197 | #define LPFC_MAX_SUPPORTED_PAGES 8 | 203 | #define LPFC_MAX_SUPPORTED_PAGES 8 |
@@ -338,7 +344,7 @@ struct lpfc_cqe { | |||
338 | * Define mask value for xri_aborted and wcqe completed CQE extended status. | 344 | * Define mask value for xri_aborted and wcqe completed CQE extended status. |
339 | * Currently, extended status is limited to 9 bits (0x0 -> 0x103) . | 345 | * Currently, extended status is limited to 9 bits (0x0 -> 0x103) . |
340 | */ | 346 | */ |
341 | #define WCQE_PARAM_MASK 0x1FF; | 347 | #define WCQE_PARAM_MASK 0x1FF |
342 | 348 | ||
343 | /* completion queue entry for wqe completions */ | 349 | /* completion queue entry for wqe completions */ |
344 | struct lpfc_wcqe_complete { | 350 | struct lpfc_wcqe_complete { |
@@ -880,13 +886,19 @@ struct mbox_header { | |||
880 | #define LPFC_MBOX_OPCODE_EQ_DESTROY 0x37 | 886 | #define LPFC_MBOX_OPCODE_EQ_DESTROY 0x37 |
881 | #define LPFC_MBOX_OPCODE_QUERY_FW_CFG 0x3A | 887 | #define LPFC_MBOX_OPCODE_QUERY_FW_CFG 0x3A |
882 | #define LPFC_MBOX_OPCODE_FUNCTION_RESET 0x3D | 888 | #define LPFC_MBOX_OPCODE_FUNCTION_RESET 0x3D |
889 | #define LPFC_MBOX_OPCODE_SET_PHYSICAL_LINK_CONFIG 0x3E | ||
890 | #define LPFC_MBOX_OPCODE_SET_BOOT_CONFIG 0x43 | ||
883 | #define LPFC_MBOX_OPCODE_GET_PORT_NAME 0x4D | 891 | #define LPFC_MBOX_OPCODE_GET_PORT_NAME 0x4D |
884 | #define LPFC_MBOX_OPCODE_MQ_CREATE_EXT 0x5A | 892 | #define LPFC_MBOX_OPCODE_MQ_CREATE_EXT 0x5A |
893 | #define LPFC_MBOX_OPCODE_GET_VPD_DATA 0x5B | ||
894 | #define LPFC_MBOX_OPCODE_SEND_ACTIVATION 0x73 | ||
895 | #define LPFC_MBOX_OPCODE_RESET_LICENSES 0x74 | ||
885 | #define LPFC_MBOX_OPCODE_GET_RSRC_EXTENT_INFO 0x9A | 896 | #define LPFC_MBOX_OPCODE_GET_RSRC_EXTENT_INFO 0x9A |
886 | #define LPFC_MBOX_OPCODE_GET_ALLOC_RSRC_EXTENT 0x9B | 897 | #define LPFC_MBOX_OPCODE_GET_ALLOC_RSRC_EXTENT 0x9B |
887 | #define LPFC_MBOX_OPCODE_ALLOC_RSRC_EXTENT 0x9C | 898 | #define LPFC_MBOX_OPCODE_ALLOC_RSRC_EXTENT 0x9C |
888 | #define LPFC_MBOX_OPCODE_DEALLOC_RSRC_EXTENT 0x9D | 899 | #define LPFC_MBOX_OPCODE_DEALLOC_RSRC_EXTENT 0x9D |
889 | #define LPFC_MBOX_OPCODE_GET_FUNCTION_CONFIG 0xA0 | 900 | #define LPFC_MBOX_OPCODE_GET_FUNCTION_CONFIG 0xA0 |
901 | #define LPFC_MBOX_OPCODE_GET_PROFILE_CAPACITIES 0xA1 | ||
890 | #define LPFC_MBOX_OPCODE_GET_PROFILE_CONFIG 0xA4 | 902 | #define LPFC_MBOX_OPCODE_GET_PROFILE_CONFIG 0xA4 |
891 | #define LPFC_MBOX_OPCODE_SET_PROFILE_CONFIG 0xA5 | 903 | #define LPFC_MBOX_OPCODE_SET_PROFILE_CONFIG 0xA5 |
892 | #define LPFC_MBOX_OPCODE_GET_PROFILE_LIST 0xA6 | 904 | #define LPFC_MBOX_OPCODE_GET_PROFILE_LIST 0xA6 |
@@ -1382,6 +1394,11 @@ struct lpfc_mbx_set_link_diag_state { | |||
1382 | #define lpfc_mbx_set_diag_state_diag_SHIFT 0 | 1394 | #define lpfc_mbx_set_diag_state_diag_SHIFT 0 |
1383 | #define lpfc_mbx_set_diag_state_diag_MASK 0x00000001 | 1395 | #define lpfc_mbx_set_diag_state_diag_MASK 0x00000001 |
1384 | #define lpfc_mbx_set_diag_state_diag_WORD word0 | 1396 | #define lpfc_mbx_set_diag_state_diag_WORD word0 |
1397 | #define lpfc_mbx_set_diag_state_diag_bit_valid_SHIFT 2 | ||
1398 | #define lpfc_mbx_set_diag_state_diag_bit_valid_MASK 0x00000001 | ||
1399 | #define lpfc_mbx_set_diag_state_diag_bit_valid_WORD word0 | ||
1400 | #define LPFC_DIAG_STATE_DIAG_BIT_VALID_NO_CHANGE 0 | ||
1401 | #define LPFC_DIAG_STATE_DIAG_BIT_VALID_CHANGE 1 | ||
1385 | #define lpfc_mbx_set_diag_state_link_num_SHIFT 16 | 1402 | #define lpfc_mbx_set_diag_state_link_num_SHIFT 16 |
1386 | #define lpfc_mbx_set_diag_state_link_num_MASK 0x0000003F | 1403 | #define lpfc_mbx_set_diag_state_link_num_MASK 0x0000003F |
1387 | #define lpfc_mbx_set_diag_state_link_num_WORD word0 | 1404 | #define lpfc_mbx_set_diag_state_link_num_WORD word0 |
@@ -2556,7 +2573,7 @@ struct lpfc_mbx_get_sli4_parameters { | |||
2556 | }; | 2573 | }; |
2557 | 2574 | ||
2558 | struct lpfc_rscr_desc_generic { | 2575 | struct lpfc_rscr_desc_generic { |
2559 | #define LPFC_RSRC_DESC_WSIZE 18 | 2576 | #define LPFC_RSRC_DESC_WSIZE 22 |
2560 | uint32_t desc[LPFC_RSRC_DESC_WSIZE]; | 2577 | uint32_t desc[LPFC_RSRC_DESC_WSIZE]; |
2561 | }; | 2578 | }; |
2562 | 2579 | ||
@@ -2566,6 +2583,9 @@ struct lpfc_rsrc_desc_pcie { | |||
2566 | #define lpfc_rsrc_desc_pcie_type_MASK 0x000000ff | 2583 | #define lpfc_rsrc_desc_pcie_type_MASK 0x000000ff |
2567 | #define lpfc_rsrc_desc_pcie_type_WORD word0 | 2584 | #define lpfc_rsrc_desc_pcie_type_WORD word0 |
2568 | #define LPFC_RSRC_DESC_TYPE_PCIE 0x40 | 2585 | #define LPFC_RSRC_DESC_TYPE_PCIE 0x40 |
2586 | #define lpfc_rsrc_desc_pcie_length_SHIFT 8 | ||
2587 | #define lpfc_rsrc_desc_pcie_length_MASK 0x000000ff | ||
2588 | #define lpfc_rsrc_desc_pcie_length_WORD word0 | ||
2569 | uint32_t word1; | 2589 | uint32_t word1; |
2570 | #define lpfc_rsrc_desc_pcie_pfnum_SHIFT 0 | 2590 | #define lpfc_rsrc_desc_pcie_pfnum_SHIFT 0 |
2571 | #define lpfc_rsrc_desc_pcie_pfnum_MASK 0x000000ff | 2591 | #define lpfc_rsrc_desc_pcie_pfnum_MASK 0x000000ff |
@@ -2593,6 +2613,12 @@ struct lpfc_rsrc_desc_fcfcoe { | |||
2593 | #define lpfc_rsrc_desc_fcfcoe_type_MASK 0x000000ff | 2613 | #define lpfc_rsrc_desc_fcfcoe_type_MASK 0x000000ff |
2594 | #define lpfc_rsrc_desc_fcfcoe_type_WORD word0 | 2614 | #define lpfc_rsrc_desc_fcfcoe_type_WORD word0 |
2595 | #define LPFC_RSRC_DESC_TYPE_FCFCOE 0x43 | 2615 | #define LPFC_RSRC_DESC_TYPE_FCFCOE 0x43 |
2616 | #define lpfc_rsrc_desc_fcfcoe_length_SHIFT 8 | ||
2617 | #define lpfc_rsrc_desc_fcfcoe_length_MASK 0x000000ff | ||
2618 | #define lpfc_rsrc_desc_fcfcoe_length_WORD word0 | ||
2619 | #define LPFC_RSRC_DESC_TYPE_FCFCOE_V0_RSVD 0 | ||
2620 | #define LPFC_RSRC_DESC_TYPE_FCFCOE_V0_LENGTH 72 | ||
2621 | #define LPFC_RSRC_DESC_TYPE_FCFCOE_V1_LENGTH 88 | ||
2596 | uint32_t word1; | 2622 | uint32_t word1; |
2597 | #define lpfc_rsrc_desc_fcfcoe_vfnum_SHIFT 0 | 2623 | #define lpfc_rsrc_desc_fcfcoe_vfnum_SHIFT 0 |
2598 | #define lpfc_rsrc_desc_fcfcoe_vfnum_MASK 0x000000ff | 2624 | #define lpfc_rsrc_desc_fcfcoe_vfnum_MASK 0x000000ff |
@@ -2651,6 +2677,12 @@ struct lpfc_rsrc_desc_fcfcoe { | |||
2651 | #define lpfc_rsrc_desc_fcfcoe_eq_cnt_SHIFT 16 | 2677 | #define lpfc_rsrc_desc_fcfcoe_eq_cnt_SHIFT 16 |
2652 | #define lpfc_rsrc_desc_fcfcoe_eq_cnt_MASK 0x0000ffff | 2678 | #define lpfc_rsrc_desc_fcfcoe_eq_cnt_MASK 0x0000ffff |
2653 | #define lpfc_rsrc_desc_fcfcoe_eq_cnt_WORD word13 | 2679 | #define lpfc_rsrc_desc_fcfcoe_eq_cnt_WORD word13 |
2680 | /* extended FC/FCoE Resource Descriptor when length = 88 bytes */ | ||
2681 | uint32_t bw_min; | ||
2682 | uint32_t bw_max; | ||
2683 | uint32_t iops_min; | ||
2684 | uint32_t iops_max; | ||
2685 | uint32_t reserved[4]; | ||
2654 | }; | 2686 | }; |
2655 | 2687 | ||
2656 | struct lpfc_func_cfg { | 2688 | struct lpfc_func_cfg { |