Return proper error code when Firmware returns
HWRM_ERR_CODE_RESOURCE_ACCESS_DENIED for HWRM_NVM_GET/SET_VARIABLE
commands.

Signed-off-by: Vasundhara Volam <vasundhara-v.vo...@broadcom.com>
---
 drivers/net/ethernet/broadcom/bnxt/bnxt_devlink.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt_devlink.c 
b/drivers/net/ethernet/broadcom/bnxt/bnxt_devlink.c
index 582e5b5..8d4ba33 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt_devlink.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt_devlink.c
@@ -79,8 +79,12 @@ static int bnxt_hwrm_nvm_req(struct bnxt *bp, u32 param_id, 
void *msg,
                memcpy(buf, data_addr, bytesize);
 
        dma_free_coherent(&bp->pdev->dev, bytesize, data_addr, data_dma_addr);
-       if (rc)
+       if (rc == HWRM_ERR_CODE_RESOURCE_ACCESS_DENIED) {
+               netdev_err(bp->dev, "PF does not have admin privileges to 
modify NVM config\n");
+               return -EACCES;
+       } else if (rc) {
                return -EIO;
+       }
        return 0;
 }
 
-- 
1.8.3.1

Reply via email to