From: Simon Glass Date: Fri, 19 May 2017 02:09:40 +0000 (-0600) Subject: clk: Modify xlate() method for livetree X-Git-Url: http://git.dujemihanovic.xyz/?a=commitdiff_plain;h=a4e0ef50dae404939f14e46493a3d5c2111a9d4c;p=u-boot.git clk: Modify xlate() method for livetree Update the xlate() method to use ofnode_phandle_args instead of the fdtdec variant. This will allow drivers to support a live device tree. Signed-off-by: Simon Glass --- diff --git a/drivers/clk/at91/pmc.c b/drivers/clk/at91/pmc.c index f4ec5fcb5e..be1d11ed4e 100644 --- a/drivers/clk/at91/pmc.c +++ b/drivers/clk/at91/pmc.c @@ -87,7 +87,7 @@ int at91_clk_sub_device_bind(struct udevice *dev, const char *drv_name) return 0; } -int at91_clk_of_xlate(struct clk *clk, struct fdtdec_phandle_args *args) +int at91_clk_of_xlate(struct clk *clk, struct ofnode_phandle_args *args) { int periph; diff --git a/drivers/clk/at91/pmc.h b/drivers/clk/at91/pmc.h index f222fce11f..bd3caba48d 100644 --- a/drivers/clk/at91/pmc.h +++ b/drivers/clk/at91/pmc.h @@ -15,7 +15,7 @@ struct pmc_platdata { int at91_pmc_core_probe(struct udevice *dev); int at91_clk_sub_device_bind(struct udevice *dev, const char *drv_name); -int at91_clk_of_xlate(struct clk *clk, struct fdtdec_phandle_args *args); +int at91_clk_of_xlate(struct clk *clk, struct ofnode_phandle_args *args); int at91_clk_probe(struct udevice *dev); #endif diff --git a/drivers/clk/clk-uclass.c b/drivers/clk/clk-uclass.c index 6fcfd6997c..f6194b60f9 100644 --- a/drivers/clk/clk-uclass.c +++ b/drivers/clk/clk-uclass.c @@ -38,7 +38,7 @@ int clk_get_by_index_platdata(struct udevice *dev, int index, } # else static int clk_of_xlate_default(struct clk *clk, - struct fdtdec_phandle_args *args) + struct ofnode_phandle_args *args) { debug("%s(clk=%p)\n", __func__, clk); @@ -86,9 +86,10 @@ int clk_get_by_index(struct udevice *dev, int index, struct clk *clk) ops = clk_dev_ops(dev_clk); if (ops->of_xlate) - ret = ops->of_xlate(clk, &args); + ret = ops->of_xlate(clk, (struct ofnode_phandle_args *)&args); else - ret = clk_of_xlate_default(clk, &args); + ret = clk_of_xlate_default(clk, + (struct ofnode_phandle_args *)&args); if (ret) { debug("of_xlate() failed: %d\n", ret); return ret; diff --git a/drivers/clk/clk_stm32f7.c b/drivers/clk/clk_stm32f7.c index da3c204ff5..fcdc3c052b 100644 --- a/drivers/clk/clk_stm32f7.c +++ b/drivers/clk/clk_stm32f7.c @@ -252,8 +252,7 @@ static int stm32_clk_probe(struct udevice *dev) return 0; } -static int stm32_clk_of_xlate(struct clk *clk, - struct fdtdec_phandle_args *args) +static int stm32_clk_of_xlate(struct clk *clk, struct ofnode_phandle_args *args) { debug("%s(clk=%p)\n", __func__, clk); diff --git a/include/clk-uclass.h b/include/clk-uclass.h index 07c1065495..e7ea334c60 100644 --- a/include/clk-uclass.h +++ b/include/clk-uclass.h @@ -12,7 +12,8 @@ /* See clk.h for background documentation. */ #include -#include + +struct ofnode_phandle_args; /** * struct clk_ops - The functions that a clock driver must implement. @@ -37,7 +38,7 @@ struct clk_ops { * @return 0 if OK, or a negative error code. */ int (*of_xlate)(struct clk *clock, - struct fdtdec_phandle_args *args); + struct ofnode_phandle_args *args); /** * request - Request a translated clock. *