* for handling possible port resource change.
  **/
 static int
-lpfc_sli4_port_sta_fn_reset(struct lpfc_hba *phba, int mbx_action)
+lpfc_sli4_port_sta_fn_reset(struct lpfc_hba *phba, int mbx_action,
+                           bool en_rn_msg)
 {
        int rc;
        uint32_t intr_mode;
        rc = lpfc_sli4_pdev_status_reg_wait(phba);
        if (!rc) {
                /* need reset: attempt for port recovery */
-               lpfc_printf_log(phba, KERN_ERR, LOG_INIT,
-                               "2887 Reset Needed: Attempting Port "
-                               "Recovery...\n");
+               if (en_rn_msg)
+                       lpfc_printf_log(phba, KERN_ERR, LOG_INIT,
+                                       "2887 Reset Needed: Attempting Port "
+                                       "Recovery...\n");
                lpfc_offline_prep(phba, mbx_action);
                lpfc_offline(phba);
                /* release interrupt for possible resource change */
        uint32_t reg_err1, reg_err2;
        uint32_t uerrlo_reg, uemasklo_reg;
        uint32_t pci_rd_rc1, pci_rd_rc2;
+       bool en_rn_msg = true;
        int rc;
 
        /* If the pci channel is offline, ignore possible errors, since
                        break;
                }
                if (reg_err1 == SLIPORT_ERR1_REG_ERR_CODE_2 &&
-                   reg_err2 == SLIPORT_ERR2_REG_FW_RESTART)
+                   reg_err2 == SLIPORT_ERR2_REG_FW_RESTART) {
                        lpfc_printf_log(phba, KERN_ERR, LOG_INIT,
-                                       "3143 Port Down: Firmware Restarted\n");
-               else if (reg_err1 == SLIPORT_ERR1_REG_ERR_CODE_2 &&
+                                       "3143 Port Down: Firmware Update "
+                                       "Detected\n");
+                       en_rn_msg = false;
+               } else if (reg_err1 == SLIPORT_ERR1_REG_ERR_CODE_2 &&
                         reg_err2 == SLIPORT_ERR2_REG_FORCED_DUMP)
                        lpfc_printf_log(phba, KERN_ERR, LOG_INIT,
                                        "3144 Port Down: Debug Dump\n");
                                        "3145 Port Down: Provisioning\n");
 
                /* Check port status register for function reset */
-               rc = lpfc_sli4_port_sta_fn_reset(phba, LPFC_MBX_NO_WAIT);
+               rc = lpfc_sli4_port_sta_fn_reset(phba, LPFC_MBX_NO_WAIT,
+                               en_rn_msg);
                if (rc == 0) {
                        /* don't report event on forced debug dump */
                        if (reg_err1 == SLIPORT_ERR1_REG_ERR_CODE_2 &&