提交 2b81f942 编写于 作者: J James Smart 提交者: James Bottomley

[SCSI] lpfc 8.3.30: Flush reset register write

Used PCI configure space read to flush PCI function reset register write
Signed-off-by: NAlex Iannicelli <alex.iannicelli@emulex.com>
Signed-off-by: NJames Smart <james.smart@emulex.com>
Signed-off-by: NJames Bottomley <JBottomley@Parallels.com>
上级 d4379acd
...@@ -7232,6 +7232,7 @@ lpfc_pci_function_reset(struct lpfc_hba *phba) ...@@ -7232,6 +7232,7 @@ lpfc_pci_function_reset(struct lpfc_hba *phba)
uint32_t rdy_chk, num_resets = 0, reset_again = 0; uint32_t rdy_chk, num_resets = 0, reset_again = 0;
union lpfc_sli4_cfg_shdr *shdr; union lpfc_sli4_cfg_shdr *shdr;
struct lpfc_register reg_data; struct lpfc_register reg_data;
uint16_t devid;
if_type = bf_get(lpfc_sli_intf_if_type, &phba->sli4_hba.sli_intf); if_type = bf_get(lpfc_sli_intf_if_type, &phba->sli4_hba.sli_intf);
switch (if_type) { switch (if_type) {
...@@ -7279,7 +7280,8 @@ lpfc_pci_function_reset(struct lpfc_hba *phba) ...@@ -7279,7 +7280,8 @@ lpfc_pci_function_reset(struct lpfc_hba *phba)
writel(reg_data.word0, phba->sli4_hba.u.if_type2. writel(reg_data.word0, phba->sli4_hba.u.if_type2.
CTRLregaddr); CTRLregaddr);
/* flush */ /* flush */
readl(phba->sli4_hba.u.if_type2.STATUSregaddr); pci_read_config_word(phba->pcidev,
PCI_DEVICE_ID, &devid);
/* /*
* Poll the Port Status Register and wait for RDY for * Poll the Port Status Register and wait for RDY for
* up to 10 seconds. If the port doesn't respond, treat * up to 10 seconds. If the port doesn't respond, treat
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册