]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
scsi/lpfc: Fix bug with driver not setting the diag set valid bit for loopback testing
authorVaios Papadimitriou <vaios.papadimitriou@emulex.com>
Tue, 28 Aug 2012 22:54:45 +0000 (15:54 -0700)
committerJerry Snitselaar <jerry.snitselaar@oracle.com>
Wed, 5 Sep 2012 19:25:46 +0000 (12:25 -0700)
commit id: http://marc.info/?l=linux-scsi&m=134401185006275

Signed-off-by: Jerry Snitselaar <jerry.snitselaar@oracle.com>
drivers/scsi/lpfc/lpfc_bsg.c
drivers/scsi/lpfc/lpfc_hw4.h

index 1773e0ff10542ecee897e6f3d2a20f2211730473..b0af7e195538db71f0a045810786cb178a40d433 100644 (file)
@@ -1716,6 +1716,8 @@ lpfc_sli4_bsg_set_link_diag_state(struct lpfc_hba *phba, uint32_t diag)
                        phba->sli4_hba.lnk_info.lnk_no);
 
        link_diag_state = &pmboxq->u.mqe.un.link_diag_state;
+       bf_set(lpfc_mbx_set_diag_state_diag_bit_valid, &link_diag_state->u.req,
+              LPFC_DIAG_STATE_DIAG_BIT_VALID_CHANGE);
        bf_set(lpfc_mbx_set_diag_state_link_num, &link_diag_state->u.req,
               phba->sli4_hba.lnk_info.lnk_no);
        bf_set(lpfc_mbx_set_diag_state_link_type, &link_diag_state->u.req,
index 953603a7a43c9c1072f2fcf23ae9b6cca31f7882..9f5c93c5fda36c418eb9e23091b5bd9e0e7d44f1 100644 (file)
@@ -1382,6 +1382,11 @@ struct lpfc_mbx_set_link_diag_state {
 #define lpfc_mbx_set_diag_state_diag_SHIFT     0
 #define lpfc_mbx_set_diag_state_diag_MASK      0x00000001
 #define lpfc_mbx_set_diag_state_diag_WORD      word0
+#define lpfc_mbx_set_diag_state_diag_bit_valid_SHIFT   2
+#define lpfc_mbx_set_diag_state_diag_bit_valid_MASK    0x00000001
+#define lpfc_mbx_set_diag_state_diag_bit_valid_WORD    word0
+#define LPFC_DIAG_STATE_DIAG_BIT_VALID_NO_CHANGE       0
+#define LPFC_DIAG_STATE_DIAG_BIT_VALID_CHANGE          1
 #define lpfc_mbx_set_diag_state_link_num_SHIFT 16
 #define lpfc_mbx_set_diag_state_link_num_MASK  0x0000003F
 #define lpfc_mbx_set_diag_state_link_num_WORD  word0