Commit 07a8531d authored by Russell King (Oracle)'s avatar Russell King (Oracle) Committed by Jakub Kicinski
Browse files

net: stmmac: move DMA configuration validation to driver probe



Move the DMA configuration validation from stmmac_init_dma_engine()
to the start of the driver probe function. The platform glue is
expected to supply the DMA configuration, and a non-zero programmable
burst length (bpl).

Signed-off-by: default avatarRussell King (Oracle) <rmk+kernel@armlinux.org.uk>
Link: https://patch.msgid.link/E1vvuY3-0000000Avnq-1Spv@rmk-PC.armlinux.org.uk


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent 93cde989
Loading
Loading
Loading
Loading
+5 −5
Original line number Diff line number Diff line
@@ -3244,11 +3244,6 @@ static int stmmac_init_dma_engine(struct stmmac_priv *priv)
	u32 chan = 0;
	int ret = 0;

	if (!priv->plat->dma_cfg || !priv->plat->dma_cfg->pbl) {
		netdev_err(priv->dev, "Invalid DMA configuration\n");
		return -EINVAL;
	}

	ret = stmmac_prereset_configure(priv);
	if (ret)
		return ret;
@@ -7728,6 +7723,11 @@ static int __stmmac_dvr_probe(struct device *device,
	u32 rxq;
	int i, ret = 0;

	if (!plat_dat->dma_cfg || !plat_dat->dma_cfg->pbl) {
		dev_err(device, "invalid DMA configuration\n");
		return -EINVAL;
	}

	ndev = devm_alloc_etherdev_mqs(device, sizeof(struct stmmac_priv),
				       MTL_MAX_TX_QUEUES, MTL_MAX_RX_QUEUES);
	if (!ndev)