sfc_ef100: PHY probe stub
authorEdward Cree <ecree@solarflare.com>
Mon, 27 Jul 2020 11:56:26 +0000 (12:56 +0100)
committerDavid S. Miller <davem@davemloft.net>
Mon, 27 Jul 2020 19:26:55 +0000 (12:26 -0700)
We can't actually do the MCDI to probe it fully until we have working
 MCDI, which comes later, but we need efx->phy_data to be allocated so
 that when we get MCDI events the link-state change handler doesn't
 NULL-dereference.

Signed-off-by: Edward Cree <ecree@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/sfc/ef100_nic.c

index 875bbbdf606c97532b704ea72944d1efe5dd2419..802ab0ce00fe0de1b380ba4c0de74a5df132d7ce 100644 (file)
@@ -77,6 +77,16 @@ static irqreturn_t ef100_msi_interrupt(int irq, void *dev_id)
        return IRQ_HANDLED;
 }
 
+static int ef100_phy_probe(struct efx_nic *efx)
+{
+       /* stub: allocate the phy_data */
+       efx->phy_data = kzalloc(sizeof(struct efx_mcdi_phy_data), GFP_KERNEL);
+       if (!efx->phy_data)
+               return -ENOMEM;
+
+       return 0;
+}
+
 /*     Other
  */
 
@@ -193,6 +203,10 @@ static int ef100_probe_main(struct efx_nic *efx)
 
        efx->max_vis = EF100_MAX_VIS;
 
+       rc = ef100_phy_probe(efx);
+       if (rc)
+               goto fail;
+
        rc = efx_init_channels(efx);
        if (rc)
                goto fail;