[U-Boot] [PATCH 28/41] net: fec_mxc: Add the init_clk_fec function
Joe Hershberger
joe.hershberger at ni.com
Tue Jun 12 18:27:57 UTC 2018
Hi Peng,
On Mon, May 28, 2018 at 7:25 AM, Peng Fan <peng.fan at nxp.com> wrote:
> From: Ye Li <ye.li at nxp.com>
>
> When the power domain driver is enabled, we need to enable clocks after power
> domain on. So the clock settings can't set in board_init, needs to set them
> when the device is probed. Add this weak function in driver, that SoC codes
> can implement the clock settings.
Can you not use clock infrastructure in DM to handle this. We don't
really want these direct calls out of drivers like this. Simon?
Thanks,
-Joe
> Reviewed-by: Peng Fan <peng.fan at nxp.com>
> Signed-off-by: Ye Li <ye.li at nxp.com>
> Cc: Joe Hershberger <joe.hershberger at ni.com>
> ---
> drivers/net/fec_mxc.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/drivers/net/fec_mxc.c b/drivers/net/fec_mxc.c
> index b512a71c0c..d4e5a2a776 100644
> --- a/drivers/net/fec_mxc.c
> +++ b/drivers/net/fec_mxc.c
> @@ -1037,6 +1037,10 @@ struct mii_dev *fec_get_miibus(ulong base_addr, int dev_id)
> return bus;
> }
>
> +__weak void init_clk_fec(int index)
> +{
> +}
> +
> #ifndef CONFIG_DM_ETH
> #ifdef CONFIG_PHYLIB
> int fec_probe(bd_t *bd, int dev_id, uint32_t base_addr,
> @@ -1154,6 +1158,7 @@ int fecmxc_initialize_multi(bd_t *bd, int dev_id, int phy_id, uint32_t addr)
> #else
> base_mii = addr;
> #endif
> + init_clk_fec(dev_id);
> debug("eth_init: fec_probe(bd, %i, %i) @ %08x\n", dev_id, phy_id, addr);
> bus = fec_get_miibus(base_mii, dev_id);
> if (!bus)
> @@ -1253,6 +1258,8 @@ static int fecmxc_probe(struct udevice *dev)
> uint32_t start;
> int ret;
>
> + init_clk_fec(dev->seq);
> +
> ret = fec_alloc_descs(priv);
> if (ret)
> return ret;
> --
> 2.14.1
>
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> https://lists.denx.de/listinfo/u-boot
More information about the U-Boot
mailing list