| 4366 | } |
| 4367 | |
| 4368 | static int bnxt_check_fw_ready(struct bnxt *bp) |
| 4369 | { |
| 4370 | int timeout = bp->fw_reset_max_msecs ? : BNXT_MAX_FW_RESET_TIMEOUT; |
| 4371 | int rc = 0; |
| 4372 | |
| 4373 | do { |
| 4374 | rc = bnxt_hwrm_poll_ver_get(bp); |
| 4375 | if (rc == 0) |
| 4376 | break; |
| 4377 | rte_delay_ms(BNXT_FW_READY_WAIT_INTERVAL); |
| 4378 | timeout -= BNXT_FW_READY_WAIT_INTERVAL; |
| 4379 | } while (rc && timeout > 0); |
| 4380 | |
| 4381 | if (rc) |
| 4382 | PMD_DRV_LOG(ERR, "FW is not Ready after reset\n"); |
| 4383 | |
| 4384 | return rc; |
| 4385 | } |
| 4386 | |
| 4387 | static void bnxt_dev_recover(void *arg) |
| 4388 | { |
no test coverage detected