Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

clk: si514: Migrate to clk_hw based OF and registration APIs

Now that we have clk_hw based provider APIs to register clks, we
can get rid of struct clk pointers while registering clks in
these drivers, allowing us to move closer to a clear split of
consumer and provider clk APIs.

Cc: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Cc: Guenter Roeck <linux@roeck-us.net>
Cc: Sören Brinkmann <soren.brinkmann@xilinx.com>
Cc: Mike Looijmans <mike.looijmans@topic.nl>
Signed-off-by: Stephen Boyd <stephen.boyd@linaro.org>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>

authored by

Stephen Boyd and committed by
Stephen Boyd
d06e46c2 93ae00be

+5 -6
+5 -6
drivers/clk/clk-si514.c
··· 305 305 { 306 306 struct clk_si514 *data; 307 307 struct clk_init_data init; 308 - struct clk *clk; 309 308 int err; 310 309 311 310 data = devm_kzalloc(&client->dev, sizeof(*data), GFP_KERNEL); ··· 329 330 330 331 i2c_set_clientdata(client, data); 331 332 332 - clk = devm_clk_register(&client->dev, &data->hw); 333 - if (IS_ERR(clk)) { 333 + err = devm_clk_hw_register(&client->dev, &data->hw); 334 + if (err) { 334 335 dev_err(&client->dev, "clock registration failed\n"); 335 - return PTR_ERR(clk); 336 + return err; 336 337 } 337 - err = of_clk_add_provider(client->dev.of_node, of_clk_src_simple_get, 338 - clk); 338 + err = of_clk_add_hw_provider(client->dev.of_node, of_clk_hw_simple_get, 339 + &data->hw); 339 340 if (err) { 340 341 dev_err(&client->dev, "unable to add clk provider\n"); 341 342 return err;