Message ID | 20230623100845.114085-3-brgl@bgdev.pl (mailing list archive) |
---|---|
State | Changes Requested |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | net: stmmac: replace boolean fields in plat_stmmacenet_data with flags | expand |
On Fri, Jun 23, 2023 at 12:08:35PM +0200, Bartosz Golaszewski wrote: > From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org> > > Drop the boolean field of the plat_stmmacenet_data structure in favor of a > simple bitfield flag. > > Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org> ... > diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-intel.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-intel.c > index ab9f876b6df7..70e91bbef2a6 100644 > --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-intel.c > +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-intel.c > @@ -459,7 +459,7 @@ static int intel_mgbe_common_data(struct pci_dev *pdev, > plat->has_gmac4 = 1; > plat->force_sf_dma_mode = 0; > plat->tso_en = 1; > - plat->sph_disable = 1; > + data->flags |= STMMAC_FLAG_SPH_DISABLE; Hi Bartosz, I think something must have got mixed-up here. An x86_64 allmodconfig reports that data is undeclared here. ...
On Fri, Jun 23, 2023 at 9:22 PM Simon Horman <simon.horman@corigine.com> wrote: > > On Fri, Jun 23, 2023 at 12:08:35PM +0200, Bartosz Golaszewski wrote: > > From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org> > > > > Drop the boolean field of the plat_stmmacenet_data structure in favor of a > > simple bitfield flag. > > > > Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org> > > ... > > > diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-intel.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-intel.c > > index ab9f876b6df7..70e91bbef2a6 100644 > > --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-intel.c > > +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-intel.c > > @@ -459,7 +459,7 @@ static int intel_mgbe_common_data(struct pci_dev *pdev, > > plat->has_gmac4 = 1; > > plat->force_sf_dma_mode = 0; > > plat->tso_en = 1; > > - plat->sph_disable = 1; > > + data->flags |= STMMAC_FLAG_SPH_DISABLE; > > Hi Bartosz, > > I think something must have got mixed-up here. > An x86_64 allmodconfig reports that data is undeclared here. > Cr*p, I thought I build-tested everything... My bad, I'll resend a v3 after the merge window. Bart > ... > > -- > pw-bot: changes-requested >
On Fri, Jun 23, 2023 at 10:00:18PM +0200, Bartosz Golaszewski wrote: > On Fri, Jun 23, 2023 at 9:22 PM Simon Horman <simon.horman@corigine.com> wrote: > > > > On Fri, Jun 23, 2023 at 12:08:35PM +0200, Bartosz Golaszewski wrote: > > > From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org> > > > > > > Drop the boolean field of the plat_stmmacenet_data structure in favor of a > > > simple bitfield flag. > > > > > > Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org> > > > > ... > > > > > diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-intel.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-intel.c > > > index ab9f876b6df7..70e91bbef2a6 100644 > > > --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-intel.c > > > +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-intel.c > > > @@ -459,7 +459,7 @@ static int intel_mgbe_common_data(struct pci_dev *pdev, > > > plat->has_gmac4 = 1; > > > plat->force_sf_dma_mode = 0; > > > plat->tso_en = 1; > > > - plat->sph_disable = 1; > > > + data->flags |= STMMAC_FLAG_SPH_DISABLE; > > > > Hi Bartosz, > > > > I think something must have got mixed-up here. > > An x86_64 allmodconfig reports that data is undeclared here. > > > > Cr*p, I thought I build-tested everything... > > My bad, I'll resend a v3 after the merge window. Sorry to have been the bearer of bad news :(
diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-dwc-qos-eth.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-dwc-qos-eth.c index 9f88530c5e8c..0c12ab67c27b 100644 --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-dwc-qos-eth.c +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-dwc-qos-eth.c @@ -359,7 +359,7 @@ static int tegra_eqos_probe(struct platform_device *pdev, data->fix_mac_speed = tegra_eqos_fix_speed; data->init = tegra_eqos_init; data->bsp_priv = eqos; - data->sph_disable = 1; + data->flags |= STMMAC_FLAG_SPH_DISABLE; err = tegra_eqos_init(pdev, eqos); if (err < 0) diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-intel.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-intel.c index ab9f876b6df7..70e91bbef2a6 100644 --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-intel.c +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-intel.c @@ -459,7 +459,7 @@ static int intel_mgbe_common_data(struct pci_dev *pdev, plat->has_gmac4 = 1; plat->force_sf_dma_mode = 0; plat->tso_en = 1; - plat->sph_disable = 1; + data->flags |= STMMAC_FLAG_SPH_DISABLE; /* Multiplying factor to the clk_eee_i clock time * period to make it closer to 100 ns. This value diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c index 38b6cbd8a133..18e56299363d 100644 --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c @@ -7258,7 +7258,8 @@ int stmmac_dvr_probe(struct device *device, dev_info(priv->device, "TSO feature enabled\n"); } - if (priv->dma_cap.sphen && !priv->plat->sph_disable) { + if (priv->dma_cap.sphen && + !(priv->plat->flags & STMMAC_FLAG_SPH_DISABLE)) { ndev->hw_features |= NETIF_F_GRO; priv->sph_cap = true; priv->sph = priv->sph_cap; diff --git a/include/linux/stmmac.h b/include/linux/stmmac.h index 8e7511071ef1..1b02f866316c 100644 --- a/include/linux/stmmac.h +++ b/include/linux/stmmac.h @@ -205,6 +205,7 @@ struct dwmac4_addrs { }; #define STMMAC_FLAG_HAS_INTEGRATED_PCS BIT(0) +#define STMMAC_FLAG_SPH_DISABLE BIT(1) struct plat_stmmacenet_data { int bus_id; @@ -292,7 +293,6 @@ struct plat_stmmacenet_data { int msi_rx_base_vec; int msi_tx_base_vec; bool use_phy_wol; - bool sph_disable; bool serdes_up_after_phy_linkup; const struct dwmac4_addrs *dwmac4_addrs; unsigned int flags;