sfc: Merge efx_mcdi_mac_check_fault() and efx_mcdi_get_mac_faults()
authorBen Hutchings <bhutchings@solarflare.com>
Thu, 8 Sep 2011 01:09:42 +0000 (02:09 +0100)
committerBen Hutchings <bhutchings@solarflare.com>
Fri, 27 Jan 2012 00:10:47 +0000 (00:10 +0000)
The latter is only called by the former, which is a very short
wrapper.  Further, gcc 4.5 may currently wrongly warn that the
'faults' variable may be used uninitialised.

Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
drivers/net/ethernet/sfc/mcdi_mac.c

index 4907062b24a227bad268758f18a580361d34897d..559d79861faffbbda10428214e096e370e959baa 100644 (file)
@@ -51,7 +51,7 @@ static int efx_mcdi_set_mac(struct efx_nic *efx)
                            NULL, 0, NULL);
 }
 
-static int efx_mcdi_get_mac_faults(struct efx_nic *efx, u32 *faults)
+bool efx_mcdi_mac_check_fault(struct efx_nic *efx)
 {
        u8 outbuf[MC_CMD_GET_LINK_OUT_LEN];
        size_t outlength;
@@ -61,16 +61,13 @@ static int efx_mcdi_get_mac_faults(struct efx_nic *efx, u32 *faults)
 
        rc = efx_mcdi_rpc(efx, MC_CMD_GET_LINK, NULL, 0,
                          outbuf, sizeof(outbuf), &outlength);
-       if (rc)
-               goto fail;
-
-       *faults = MCDI_DWORD(outbuf, GET_LINK_OUT_MAC_FAULT);
-       return 0;
+       if (rc) {
+               netif_err(efx, hw, efx->net_dev, "%s: failed rc=%d\n",
+                         __func__, rc);
+               return true;
+       }
 
-fail:
-       netif_err(efx, hw, efx->net_dev, "%s: failed rc=%d\n",
-                 __func__, rc);
-       return rc;
+       return MCDI_DWORD(outbuf, GET_LINK_OUT_MAC_FAULT) != 0;
 }
 
 int efx_mcdi_mac_stats(struct efx_nic *efx, dma_addr_t dma_addr,
@@ -127,11 +124,3 @@ int efx_mcdi_mac_reconfigure(struct efx_nic *efx)
 
        return 0;
 }
-
-
-bool efx_mcdi_mac_check_fault(struct efx_nic *efx)
-{
-       u32 faults;
-       int rc = efx_mcdi_get_mac_faults(efx, &faults);
-       return (rc != 0) || (faults != 0);
-}