diff options
Diffstat (limited to 'drivers/scsi/lpfc/lpfc_hw4.h')
-rw-r--r-- | drivers/scsi/lpfc/lpfc_hw4.h | 88 |
1 files changed, 84 insertions, 4 deletions
diff --git a/drivers/scsi/lpfc/lpfc_hw4.h b/drivers/scsi/lpfc/lpfc_hw4.h index 1a417135b73..98d21521f53 100644 --- a/drivers/scsi/lpfc/lpfc_hw4.h +++ b/drivers/scsi/lpfc/lpfc_hw4.h | |||
@@ -1484,16 +1484,81 @@ struct sli4_sge { /* SLI-4 */ | |||
1484 | uint32_t addr_lo; | 1484 | uint32_t addr_lo; |
1485 | 1485 | ||
1486 | uint32_t word2; | 1486 | uint32_t word2; |
1487 | #define lpfc_sli4_sge_offset_SHIFT 0 /* Offset of buffer - Not used*/ | 1487 | #define lpfc_sli4_sge_offset_SHIFT 0 |
1488 | #define lpfc_sli4_sge_offset_MASK 0x1FFFFFFF | 1488 | #define lpfc_sli4_sge_offset_MASK 0x07FFFFFF |
1489 | #define lpfc_sli4_sge_offset_WORD word2 | 1489 | #define lpfc_sli4_sge_offset_WORD word2 |
1490 | #define lpfc_sli4_sge_last_SHIFT 31 /* Last SEG in the SGL sets | 1490 | #define lpfc_sli4_sge_type_SHIFT 27 |
1491 | this flag !! */ | 1491 | #define lpfc_sli4_sge_type_MASK 0x0000000F |
1492 | #define lpfc_sli4_sge_type_WORD word2 | ||
1493 | #define LPFC_SGE_TYPE_DATA 0x0 | ||
1494 | #define LPFC_SGE_TYPE_DIF 0x4 | ||
1495 | #define LPFC_SGE_TYPE_LSP 0x5 | ||
1496 | #define LPFC_SGE_TYPE_PEDIF 0x6 | ||
1497 | #define LPFC_SGE_TYPE_PESEED 0x7 | ||
1498 | #define LPFC_SGE_TYPE_DISEED 0x8 | ||
1499 | #define LPFC_SGE_TYPE_ENC 0x9 | ||
1500 | #define LPFC_SGE_TYPE_ATM 0xA | ||
1501 | #define LPFC_SGE_TYPE_SKIP 0xC | ||
1502 | #define lpfc_sli4_sge_last_SHIFT 31 /* Last SEG in the SGL sets it */ | ||
1492 | #define lpfc_sli4_sge_last_MASK 0x00000001 | 1503 | #define lpfc_sli4_sge_last_MASK 0x00000001 |
1493 | #define lpfc_sli4_sge_last_WORD word2 | 1504 | #define lpfc_sli4_sge_last_WORD word2 |
1494 | uint32_t sge_len; | 1505 | uint32_t sge_len; |
1495 | }; | 1506 | }; |
1496 | 1507 | ||
1508 | struct sli4_sge_diseed { /* SLI-4 */ | ||
1509 | uint32_t ref_tag; | ||
1510 | uint32_t ref_tag_tran; | ||
1511 | |||
1512 | uint32_t word2; | ||
1513 | #define lpfc_sli4_sge_dif_apptran_SHIFT 0 | ||
1514 | #define lpfc_sli4_sge_dif_apptran_MASK 0x0000FFFF | ||
1515 | #define lpfc_sli4_sge_dif_apptran_WORD word2 | ||
1516 | #define lpfc_sli4_sge_dif_af_SHIFT 24 | ||
1517 | #define lpfc_sli4_sge_dif_af_MASK 0x00000001 | ||
1518 | #define lpfc_sli4_sge_dif_af_WORD word2 | ||
1519 | #define lpfc_sli4_sge_dif_na_SHIFT 25 | ||
1520 | #define lpfc_sli4_sge_dif_na_MASK 0x00000001 | ||
1521 | #define lpfc_sli4_sge_dif_na_WORD word2 | ||
1522 | #define lpfc_sli4_sge_dif_hi_SHIFT 26 | ||
1523 | #define lpfc_sli4_sge_dif_hi_MASK 0x00000001 | ||
1524 | #define lpfc_sli4_sge_dif_hi_WORD word2 | ||
1525 | #define lpfc_sli4_sge_dif_type_SHIFT 27 | ||
1526 | #define lpfc_sli4_sge_dif_type_MASK 0x0000000F | ||
1527 | #define lpfc_sli4_sge_dif_type_WORD word2 | ||
1528 | #define lpfc_sli4_sge_dif_last_SHIFT 31 /* Last SEG in the SGL sets it */ | ||
1529 | #define lpfc_sli4_sge_dif_last_MASK 0x00000001 | ||
1530 | #define lpfc_sli4_sge_dif_last_WORD word2 | ||
1531 | uint32_t word3; | ||
1532 | #define lpfc_sli4_sge_dif_apptag_SHIFT 0 | ||
1533 | #define lpfc_sli4_sge_dif_apptag_MASK 0x0000FFFF | ||
1534 | #define lpfc_sli4_sge_dif_apptag_WORD word3 | ||
1535 | #define lpfc_sli4_sge_dif_bs_SHIFT 16 | ||
1536 | #define lpfc_sli4_sge_dif_bs_MASK 0x00000007 | ||
1537 | #define lpfc_sli4_sge_dif_bs_WORD word3 | ||
1538 | #define lpfc_sli4_sge_dif_ai_SHIFT 19 | ||
1539 | #define lpfc_sli4_sge_dif_ai_MASK 0x00000001 | ||
1540 | #define lpfc_sli4_sge_dif_ai_WORD word3 | ||
1541 | #define lpfc_sli4_sge_dif_me_SHIFT 20 | ||
1542 | #define lpfc_sli4_sge_dif_me_MASK 0x00000001 | ||
1543 | #define lpfc_sli4_sge_dif_me_WORD word3 | ||
1544 | #define lpfc_sli4_sge_dif_re_SHIFT 21 | ||
1545 | #define lpfc_sli4_sge_dif_re_MASK 0x00000001 | ||
1546 | #define lpfc_sli4_sge_dif_re_WORD word3 | ||
1547 | #define lpfc_sli4_sge_dif_ce_SHIFT 22 | ||
1548 | #define lpfc_sli4_sge_dif_ce_MASK 0x00000001 | ||
1549 | #define lpfc_sli4_sge_dif_ce_WORD word3 | ||
1550 | #define lpfc_sli4_sge_dif_nr_SHIFT 23 | ||
1551 | #define lpfc_sli4_sge_dif_nr_MASK 0x00000001 | ||
1552 | #define lpfc_sli4_sge_dif_nr_WORD word3 | ||
1553 | #define lpfc_sli4_sge_dif_oprx_SHIFT 24 | ||
1554 | #define lpfc_sli4_sge_dif_oprx_MASK 0x0000000F | ||
1555 | #define lpfc_sli4_sge_dif_oprx_WORD word3 | ||
1556 | #define lpfc_sli4_sge_dif_optx_SHIFT 28 | ||
1557 | #define lpfc_sli4_sge_dif_optx_MASK 0x0000000F | ||
1558 | #define lpfc_sli4_sge_dif_optx_WORD word3 | ||
1559 | /* optx and oprx use BG_OP_IN defines in lpfc_hw.h */ | ||
1560 | }; | ||
1561 | |||
1497 | struct fcf_record { | 1562 | struct fcf_record { |
1498 | uint32_t max_rcv_size; | 1563 | uint32_t max_rcv_size; |
1499 | uint32_t fka_adv_period; | 1564 | uint32_t fka_adv_period; |
@@ -3023,6 +3088,9 @@ struct wqe_common { | |||
3023 | #define wqe_ctxt_tag_MASK 0x0000FFFF | 3088 | #define wqe_ctxt_tag_MASK 0x0000FFFF |
3024 | #define wqe_ctxt_tag_WORD word6 | 3089 | #define wqe_ctxt_tag_WORD word6 |
3025 | uint32_t word7; | 3090 | uint32_t word7; |
3091 | #define wqe_dif_SHIFT 0 | ||
3092 | #define wqe_dif_MASK 0x00000003 | ||
3093 | #define wqe_dif_WORD word7 | ||
3026 | #define wqe_ct_SHIFT 2 | 3094 | #define wqe_ct_SHIFT 2 |
3027 | #define wqe_ct_MASK 0x00000003 | 3095 | #define wqe_ct_MASK 0x00000003 |
3028 | #define wqe_ct_WORD word7 | 3096 | #define wqe_ct_WORD word7 |
@@ -3035,12 +3103,21 @@ struct wqe_common { | |||
3035 | #define wqe_class_SHIFT 16 | 3103 | #define wqe_class_SHIFT 16 |
3036 | #define wqe_class_MASK 0x00000007 | 3104 | #define wqe_class_MASK 0x00000007 |
3037 | #define wqe_class_WORD word7 | 3105 | #define wqe_class_WORD word7 |
3106 | #define wqe_ar_SHIFT 19 | ||
3107 | #define wqe_ar_MASK 0x00000001 | ||
3108 | #define wqe_ar_WORD word7 | ||
3109 | #define wqe_ag_SHIFT wqe_ar_SHIFT | ||
3110 | #define wqe_ag_MASK wqe_ar_MASK | ||
3111 | #define wqe_ag_WORD wqe_ar_WORD | ||
3038 | #define wqe_pu_SHIFT 20 | 3112 | #define wqe_pu_SHIFT 20 |
3039 | #define wqe_pu_MASK 0x00000003 | 3113 | #define wqe_pu_MASK 0x00000003 |
3040 | #define wqe_pu_WORD word7 | 3114 | #define wqe_pu_WORD word7 |
3041 | #define wqe_erp_SHIFT 22 | 3115 | #define wqe_erp_SHIFT 22 |
3042 | #define wqe_erp_MASK 0x00000001 | 3116 | #define wqe_erp_MASK 0x00000001 |
3043 | #define wqe_erp_WORD word7 | 3117 | #define wqe_erp_WORD word7 |
3118 | #define wqe_conf_SHIFT wqe_erp_SHIFT | ||
3119 | #define wqe_conf_MASK wqe_erp_MASK | ||
3120 | #define wqe_conf_WORD wqe_erp_WORD | ||
3044 | #define wqe_lnk_SHIFT 23 | 3121 | #define wqe_lnk_SHIFT 23 |
3045 | #define wqe_lnk_MASK 0x00000001 | 3122 | #define wqe_lnk_MASK 0x00000001 |
3046 | #define wqe_lnk_WORD word7 | 3123 | #define wqe_lnk_WORD word7 |
@@ -3099,6 +3176,9 @@ struct wqe_common { | |||
3099 | #define wqe_xc_SHIFT 21 | 3176 | #define wqe_xc_SHIFT 21 |
3100 | #define wqe_xc_MASK 0x00000001 | 3177 | #define wqe_xc_MASK 0x00000001 |
3101 | #define wqe_xc_WORD word10 | 3178 | #define wqe_xc_WORD word10 |
3179 | #define wqe_sr_SHIFT 22 | ||
3180 | #define wqe_sr_MASK 0x00000001 | ||
3181 | #define wqe_sr_WORD word10 | ||
3102 | #define wqe_ccpe_SHIFT 23 | 3182 | #define wqe_ccpe_SHIFT 23 |
3103 | #define wqe_ccpe_MASK 0x00000001 | 3183 | #define wqe_ccpe_MASK 0x00000001 |
3104 | #define wqe_ccpe_WORD word10 | 3184 | #define wqe_ccpe_WORD word10 |