[PATCH linux dev-4.17 1/7] clk: Aspeed: Modify clk-aspeed.c driver probe sequence

Benjamin Herrenschmidt benh at kernel.crashing.org
Wed Jul 11 15:47:56 AEST 2018


On Wed, 2018-07-11 at 13:17 +0800, Ryan Chen wrote:
> In Aspeed's SoC, all IP clk gating and pll parameter is in scu
> controller, before IP driver probe, scu driver need prepare for it.
> So buildin_platform_driver to core_initcall.
> 
> Signed-off-by: Ryan Chen <ryanchen.aspeed at gmail.com>
> ---
>  drivers/clk/clk-aspeed.c | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/clk/clk-aspeed.c b/drivers/clk/clk-aspeed.c
> index 8796b8a..9e55743 100644
> --- a/drivers/clk/clk-aspeed.c
> +++ b/drivers/clk/clk-aspeed.c
> @@ -573,7 +573,12 @@ static struct platform_driver aspeed_clk_driver = {
>  		.suppress_bind_attrs = true,
>  	},
>  };
> -builtin_platform_driver(aspeed_clk_driver);
> +
> +static int __init aspeed_clk_init(void)
> +{
> +	return platform_driver_register(&aspeed_clk_driver);
> +}
> +core_initcall(aspeed_clk_init);
>  
>  static void __init aspeed_ast2400_cc(struct regmap *map)
>  {

It's generally considered dangerous to register drivers at core
initcall time.

Any reason we don't use the generic clock driver registration mechanism
that runs at of_clk_init() time ?

Cheers,
Ben.



More information about the openbmc mailing list