> -----Original Message----- > From: Andrew Lunn <andrew@xxxxxxx> > Sent: 28 January 2025 19:19 > To: Swathi K S <swathi.ks@xxxxxxxxxxx> > Cc: krzk@xxxxxxxxxx; robh@xxxxxxxxxx; davem@xxxxxxxxxxxxx; > edumazet@xxxxxxxxxx; kuba@xxxxxxxxxx; pabeni@xxxxxxxxxx; > conor+dt@xxxxxxxxxx; richardcochran@xxxxxxxxx; > mcoquelin.stm32@xxxxxxxxx; alim.akhtar@xxxxxxxxxxx; linux- > fsd@xxxxxxxxx; netdev@xxxxxxxxxxxxxxx; devicetree@xxxxxxxxxxxxxxx; linux- > kernel@xxxxxxxxxxxxxxx; linux-stm32@xxxxxxxxxxxxxxxxxxxxxxxxxxxx; > linux-arm-kernel@xxxxxxxxxxxxxxxxxxx; linux-samsung-soc@xxxxxxxxxxxxxxx; > alexandre.torgue@xxxxxxxxxxx; peppe.cavallaro@xxxxxx; > joabreu@xxxxxxxxxxxx; rcsekar@xxxxxxxxxxx; ssiddha@xxxxxxxxx; > jayati.sahu@xxxxxxxxxxx; pankaj.dubey@xxxxxxxxxxx; > ravi.patel@xxxxxxxxxxx; gost.dev@xxxxxxxxxxx > Subject: Re: [PATCH v5 2/4] net: stmmac: dwc-qos: Add FSD EQoS support > > > +static int fsd_clks_endisable(void *priv, bool enabled) { > > + struct fsd_eqos_plat_data *plat = priv; > > + > > + if (enabled) { > > + return clk_bulk_prepare_enable(plat->num_clks, plat->clks); > > + } else { > > + clk_bulk_disable_unprepare(plat->num_clks, plat->clks); > > + return 0; > > + } > > +} > > + > > +static int fsd_eqos_probe(struct platform_device *pdev, > > + struct plat_stmmacenet_data *data, > > + struct stmmac_resources *res) > > +{ > > + struct fsd_eqos_plat_data *priv_plat; > > + struct clk *rx1 = NULL; > > + struct clk *rx2 = NULL; > > + int ret = 0; > > + > > + priv_plat = devm_kzalloc(&pdev->dev, sizeof(*priv_plat), > GFP_KERNEL); > > + if (!priv_plat) > > + return -ENOMEM; > > + > > + priv_plat->dev = &pdev->dev; > > + > > + ret = devm_clk_bulk_get_all(&pdev->dev, &priv_plat->clks); > > + if (ret < 0) > > + return dev_err_probe(&pdev->dev, ret, "No clocks > available\n"); > > + > > + priv_plat->num_clks = ret; > > It looks like you should be able to share all the clk_bulk code with > tegra_eqos_probe(). The stmmac driver suffers from lots of cut/paste code > with no consolidation. You can at least not make the tegra code worse by > doing a little refactoring. Hi Andrew, Just to clarify, you were referring to refactoring tegra code to use clk_bulk APIs, right? In that case, will look into this and evaluate the best approach for refactoring the code. - Swathi > > Andrew