diff options
Diffstat (limited to 'drivers/net/ethernet/brocade')
-rw-r--r-- | drivers/net/ethernet/brocade/bna/bfa_ioc.c | 4 | ||||
-rw-r--r-- | drivers/net/ethernet/brocade/bna/bnad.c | 4 | ||||
-rw-r--r-- | drivers/net/ethernet/brocade/bna/cna_fwimg.c | 7 |
3 files changed, 9 insertions, 6 deletions
diff --git a/drivers/net/ethernet/brocade/bna/bfa_ioc.c b/drivers/net/ethernet/brocade/bna/bfa_ioc.c index 594a2ab36d31..68f3c13c9ef6 100644 --- a/drivers/net/ethernet/brocade/bna/bfa_ioc.c +++ b/drivers/net/ethernet/brocade/bna/bfa_ioc.c | |||
@@ -2414,7 +2414,7 @@ bfa_ioc_boot(struct bfa_ioc *ioc, enum bfi_fwboot_type boot_type, | |||
2414 | if (status == BFA_STATUS_OK) | 2414 | if (status == BFA_STATUS_OK) |
2415 | bfa_ioc_lpu_start(ioc); | 2415 | bfa_ioc_lpu_start(ioc); |
2416 | else | 2416 | else |
2417 | bfa_nw_iocpf_timeout(ioc); | 2417 | bfa_fsm_send_event(&ioc->iocpf, IOCPF_E_TIMEOUT); |
2418 | 2418 | ||
2419 | return status; | 2419 | return status; |
2420 | } | 2420 | } |
@@ -3029,7 +3029,7 @@ bfa_ioc_poll_fwinit(struct bfa_ioc *ioc) | |||
3029 | } | 3029 | } |
3030 | 3030 | ||
3031 | if (ioc->iocpf.poll_time >= BFA_IOC_TOV) { | 3031 | if (ioc->iocpf.poll_time >= BFA_IOC_TOV) { |
3032 | bfa_nw_iocpf_timeout(ioc); | 3032 | bfa_fsm_send_event(&ioc->iocpf, IOCPF_E_TIMEOUT); |
3033 | } else { | 3033 | } else { |
3034 | ioc->iocpf.poll_time += BFA_IOC_POLL_TOV; | 3034 | ioc->iocpf.poll_time += BFA_IOC_POLL_TOV; |
3035 | mod_timer(&ioc->iocpf_timer, jiffies + | 3035 | mod_timer(&ioc->iocpf_timer, jiffies + |
diff --git a/drivers/net/ethernet/brocade/bna/bnad.c b/drivers/net/ethernet/brocade/bna/bnad.c index 37072a83f9d6..caae6cb2bc1a 100644 --- a/drivers/net/ethernet/brocade/bna/bnad.c +++ b/drivers/net/ethernet/brocade/bna/bnad.c | |||
@@ -3701,10 +3701,6 @@ bnad_pci_probe(struct pci_dev *pdev, | |||
3701 | setup_timer(&bnad->bna.ioceth.ioc.sem_timer, bnad_iocpf_sem_timeout, | 3701 | setup_timer(&bnad->bna.ioceth.ioc.sem_timer, bnad_iocpf_sem_timeout, |
3702 | ((unsigned long)bnad)); | 3702 | ((unsigned long)bnad)); |
3703 | 3703 | ||
3704 | /* Now start the timer before calling IOC */ | ||
3705 | mod_timer(&bnad->bna.ioceth.ioc.iocpf_timer, | ||
3706 | jiffies + msecs_to_jiffies(BNA_IOC_TIMER_FREQ)); | ||
3707 | |||
3708 | /* | 3704 | /* |
3709 | * Start the chip | 3705 | * Start the chip |
3710 | * If the call back comes with error, we bail out. | 3706 | * If the call back comes with error, we bail out. |
diff --git a/drivers/net/ethernet/brocade/bna/cna_fwimg.c b/drivers/net/ethernet/brocade/bna/cna_fwimg.c index ebf462d8082f..badea368bdc8 100644 --- a/drivers/net/ethernet/brocade/bna/cna_fwimg.c +++ b/drivers/net/ethernet/brocade/bna/cna_fwimg.c | |||
@@ -30,6 +30,7 @@ cna_read_firmware(struct pci_dev *pdev, u32 **bfi_image, | |||
30 | u32 *bfi_image_size, char *fw_name) | 30 | u32 *bfi_image_size, char *fw_name) |
31 | { | 31 | { |
32 | const struct firmware *fw; | 32 | const struct firmware *fw; |
33 | u32 n; | ||
33 | 34 | ||
34 | if (request_firmware(&fw, fw_name, &pdev->dev)) { | 35 | if (request_firmware(&fw, fw_name, &pdev->dev)) { |
35 | pr_alert("Can't locate firmware %s\n", fw_name); | 36 | pr_alert("Can't locate firmware %s\n", fw_name); |
@@ -40,6 +41,12 @@ cna_read_firmware(struct pci_dev *pdev, u32 **bfi_image, | |||
40 | *bfi_image_size = fw->size/sizeof(u32); | 41 | *bfi_image_size = fw->size/sizeof(u32); |
41 | bfi_fw = fw; | 42 | bfi_fw = fw; |
42 | 43 | ||
44 | /* Convert loaded firmware to host order as it is stored in file | ||
45 | * as sequence of LE32 integers. | ||
46 | */ | ||
47 | for (n = 0; n < *bfi_image_size; n++) | ||
48 | le32_to_cpus(*bfi_image + n); | ||
49 | |||
43 | return *bfi_image; | 50 | return *bfi_image; |
44 | error: | 51 | error: |
45 | return NULL; | 52 | return NULL; |