diff options
| author | Dean Luick <[email protected]> | 2016-02-03 14:32:06 -0800 |
|---|---|---|
| committer | Doug Ledford <[email protected]> | 2016-03-10 20:37:48 -0500 |
| commit | fe072e205a685cfba285259d779dd3bda5e250f2 (patch) | |
| tree | b72e6bbb347de74887d3a09f72a2218427ee9459 | |
| parent | 845f876d0819e2b941b1dbe92e0d219df8010035 (diff) | |
staging/rdma/hfi1: Make firmware failure messages warnings
Make firmware validation failure and missing firmware messages
a warning since alternates can be tried. Add an error message
when all attempts fail.
Reviewed-by: Dennis Dalessandro <[email protected]>
Signed-off-by: Dean Luick <[email protected]>
Signed-off-by: Doug Ledford <[email protected]>
| -rw-r--r-- | drivers/staging/rdma/hfi1/firmware.c | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/drivers/staging/rdma/hfi1/firmware.c b/drivers/staging/rdma/hfi1/firmware.c index d954e1ab4bbe..817cbf94f973 100644 --- a/drivers/staging/rdma/hfi1/firmware.c +++ b/drivers/staging/rdma/hfi1/firmware.c @@ -433,8 +433,8 @@ static int obtain_one_firmware(struct hfi1_devdata *dd, const char *name, ret = request_firmware(&fdet->fw, name, &dd->pcidev->dev); if (ret) { - dd_dev_err(dd, "cannot find firmware \"%s\", err %d\n", - name, ret); + dd_dev_warn(dd, "cannot find firmware \"%s\", err %d\n", + name, ret); return ret; } @@ -572,7 +572,7 @@ retry: * We tried the original and it failed. Move to the * alternate. */ - dd_dev_info(dd, "using alternate firmware names\n"); + dd_dev_warn(dd, "using alternate firmware names\n"); /* * Let others run. Some systems, when missing firmware, does * something that holds for 30 seconds. If we do that twice @@ -626,6 +626,7 @@ done: fw_state = FW_TRY; goto retry; } + dd_dev_err(dd, "unable to obtain working firmware\n"); fw_state = FW_ERR; fw_err = -ENOENT; } else { @@ -896,16 +897,17 @@ static int run_rsa(struct hfi1_devdata *dd, const char *who, MISC_ERR_STATUS_MISC_FW_AUTH_FAILED_ERR_SMASK | MISC_ERR_STATUS_MISC_KEY_MISMATCH_ERR_SMASK); /* - * All that is left are the current errors. Print failure details, - * if any. + * All that is left are the current errors. Print warnings on + * authorization failure details, if any. Firmware authorization + * can be retried, so these are only warnings. */ reg = read_csr(dd, MISC_ERR_STATUS); if (ret) { if (reg & MISC_ERR_STATUS_MISC_FW_AUTH_FAILED_ERR_SMASK) - dd_dev_err(dd, "%s firmware authorization failed\n", - who); + dd_dev_warn(dd, "%s firmware authorization failed\n", + who); if (reg & MISC_ERR_STATUS_MISC_KEY_MISMATCH_ERR_SMASK) - dd_dev_err(dd, "%s firmware key mismatch\n", who); + dd_dev_warn(dd, "%s firmware key mismatch\n", who); } return ret; |