]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
scsi: lpfc: Revise CQ_CREATE_SET mailbox bitfield definitions
authorJustin Tee <justin.tee@broadcom.com>
Wed, 18 Jun 2025 19:21:35 +0000 (12:21 -0700)
committerMartin K. Petersen <martin.petersen@oracle.com>
Mon, 23 Jun 2025 17:10:34 +0000 (13:10 -0400)
The CQ_CREATE_SET mailbox command's bitfields are updated.  Rename the
cqe_cnt and separate high/low bitfield names to help resolve confusion
between two similar bitfield definitions.  Corresponding usages of the
newly defined bitfields are updated as well.

Signed-off-by: Justin Tee <justin.tee@broadcom.com>
Link: https://lore.kernel.org/r/20250618192138.124116-11-justintee8345@gmail.com
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/lpfc/lpfc_hw4.h
drivers/scsi/lpfc/lpfc_sli.c
drivers/scsi/lpfc/lpfc_sli4.h

index 2dedb273b091993273406e7dbed758c6cf982d3e..dd9f170fbdc8a8c85ce699a93295a435d169674f 100644 (file)
@@ -1328,6 +1328,9 @@ struct cq_context {
 #define LPFC_CQ_CNT_512                0x1
 #define LPFC_CQ_CNT_1024       0x2
 #define LPFC_CQ_CNT_WORD7      0x3
+#define lpfc_cq_context_cqe_sz_SHIFT   25
+#define lpfc_cq_context_cqe_sz_MASK    0x00000003
+#define lpfc_cq_context_cqe_sz_WORD    word0
 #define lpfc_cq_context_autovalid_SHIFT 15
 #define lpfc_cq_context_autovalid_MASK  0x00000001
 #define lpfc_cq_context_autovalid_WORD  word0
@@ -1383,9 +1386,9 @@ struct lpfc_mbx_cq_create_set {
 #define lpfc_mbx_cq_create_set_valid_SHIFT     29
 #define lpfc_mbx_cq_create_set_valid_MASK      0x00000001
 #define lpfc_mbx_cq_create_set_valid_WORD      word1
-#define lpfc_mbx_cq_create_set_cqe_cnt_SHIFT   27
-#define lpfc_mbx_cq_create_set_cqe_cnt_MASK    0x00000003
-#define lpfc_mbx_cq_create_set_cqe_cnt_WORD    word1
+#define lpfc_mbx_cq_create_set_cqecnt_SHIFT    27
+#define lpfc_mbx_cq_create_set_cqecnt_MASK     0x00000003
+#define lpfc_mbx_cq_create_set_cqecnt_WORD     word1
 #define lpfc_mbx_cq_create_set_cqe_size_SHIFT  25
 #define lpfc_mbx_cq_create_set_cqe_size_MASK   0x00000003
 #define lpfc_mbx_cq_create_set_cqe_size_WORD   word1
@@ -1398,13 +1401,16 @@ struct lpfc_mbx_cq_create_set {
 #define lpfc_mbx_cq_create_set_clswm_SHIFT     12
 #define lpfc_mbx_cq_create_set_clswm_MASK      0x00000003
 #define lpfc_mbx_cq_create_set_clswm_WORD      word1
+#define lpfc_mbx_cq_create_set_cqe_cnt_hi_SHIFT        0
+#define lpfc_mbx_cq_create_set_cqe_cnt_hi_MASK 0x0000001F
+#define lpfc_mbx_cq_create_set_cqe_cnt_hi_WORD word1
                        uint32_t word2;
 #define lpfc_mbx_cq_create_set_arm_SHIFT       31
 #define lpfc_mbx_cq_create_set_arm_MASK                0x00000001
 #define lpfc_mbx_cq_create_set_arm_WORD                word2
-#define lpfc_mbx_cq_create_set_cq_cnt_SHIFT    16
-#define lpfc_mbx_cq_create_set_cq_cnt_MASK     0x00007FFF
-#define lpfc_mbx_cq_create_set_cq_cnt_WORD     word2
+#define lpfc_mbx_cq_create_set_cqe_cnt_lo_SHIFT        16
+#define lpfc_mbx_cq_create_set_cqe_cnt_lo_MASK 0x00007FFF
+#define lpfc_mbx_cq_create_set_cqe_cnt_lo_WORD word2
 #define lpfc_mbx_cq_create_set_num_cq_SHIFT    0
 #define lpfc_mbx_cq_create_set_num_cq_MASK     0x0000FFFF
 #define lpfc_mbx_cq_create_set_num_cq_WORD     word2
index 372907debbe03481280457d43451fe9831a361b3..a8fbdf7119d88880a4d194aacee2123871d86efd 100644 (file)
@@ -16477,10 +16477,10 @@ lpfc_cq_create_set(struct lpfc_hba *phba, struct lpfc_queue **cqp,
                        case 4096:
                                if (phba->sli4_hba.pc_sli4_params.cqv ==
                                    LPFC_Q_CREATE_VERSION_2) {
-                                       bf_set(lpfc_mbx_cq_create_set_cqe_cnt,
+                                       bf_set(lpfc_mbx_cq_create_set_cqe_cnt_lo,
                                               &cq_set->u.request,
-                                               cq->entry_count);
-                                       bf_set(lpfc_mbx_cq_create_set_cqe_cnt,
+                                              cq->entry_count);
+                                       bf_set(lpfc_mbx_cq_create_set_cqecnt,
                                               &cq_set->u.request,
                                               LPFC_CQ_CNT_WORD7);
                                        break;
@@ -16496,15 +16496,15 @@ lpfc_cq_create_set(struct lpfc_hba *phba, struct lpfc_queue **cqp,
                                }
                                fallthrough;    /* otherwise default to smallest */
                        case 256:
-                               bf_set(lpfc_mbx_cq_create_set_cqe_cnt,
+                               bf_set(lpfc_mbx_cq_create_set_cqecnt,
                                       &cq_set->u.request, LPFC_CQ_CNT_256);
                                break;
                        case 512:
-                               bf_set(lpfc_mbx_cq_create_set_cqe_cnt,
+                               bf_set(lpfc_mbx_cq_create_set_cqecnt,
                                       &cq_set->u.request, LPFC_CQ_CNT_512);
                                break;
                        case 1024:
-                               bf_set(lpfc_mbx_cq_create_set_cqe_cnt,
+                               bf_set(lpfc_mbx_cq_create_set_cqecnt,
                                       &cq_set->u.request, LPFC_CQ_CNT_1024);
                                break;
                        }
index 9be3da91c92358eb9c9f2ed9e263c78ef4e8c917..e42b44fcc7f6be9a1ff99d06d5afc6407c697986 100644 (file)
@@ -575,8 +575,10 @@ struct lpfc_pc_sli4_params {
 
 #define LPFC_CQ_4K_PAGE_SZ     0x1
 #define LPFC_CQ_16K_PAGE_SZ    0x4
+#define LPFC_CQ_32K_PAGE_SZ    0x8
 #define LPFC_WQ_4K_PAGE_SZ     0x1
 #define LPFC_WQ_16K_PAGE_SZ    0x4
+#define LPFC_WQ_32K_PAGE_SZ    0x8
 
 struct lpfc_iov {
        uint32_t pf_number;