clk: si570: 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: Guenter Roeck <linux@roeck-us.net> Cc: Sören Brinkmann <soren.brinkmann@xilinx.com> Signed-off-by: Stephen Boyd <stephen.boyd@linaro.org> Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
This commit is contained in:
parent
4d89c3d54e
commit
a340dae9de
|
@ -408,7 +408,6 @@ static int si570_probe(struct i2c_client *client,
|
||||||
{
|
{
|
||||||
struct clk_si570 *data;
|
struct clk_si570 *data;
|
||||||
struct clk_init_data init;
|
struct clk_init_data init;
|
||||||
struct clk *clk;
|
|
||||||
u32 initial_fout, factory_fout, stability;
|
u32 initial_fout, factory_fout, stability;
|
||||||
int err;
|
int err;
|
||||||
enum clk_si570_variant variant = id->driver_data;
|
enum clk_si570_variant variant = id->driver_data;
|
||||||
|
@ -462,13 +461,13 @@ static int si570_probe(struct i2c_client *client,
|
||||||
if (err)
|
if (err)
|
||||||
return err;
|
return err;
|
||||||
|
|
||||||
clk = devm_clk_register(&client->dev, &data->hw);
|
err = devm_clk_hw_register(&client->dev, &data->hw);
|
||||||
if (IS_ERR(clk)) {
|
if (err) {
|
||||||
dev_err(&client->dev, "clock registration failed\n");
|
dev_err(&client->dev, "clock registration failed\n");
|
||||||
return PTR_ERR(clk);
|
return err;
|
||||||
}
|
}
|
||||||
err = of_clk_add_provider(client->dev.of_node, of_clk_src_simple_get,
|
err = of_clk_add_hw_provider(client->dev.of_node, of_clk_hw_simple_get,
|
||||||
clk);
|
&data->hw);
|
||||||
if (err) {
|
if (err) {
|
||||||
dev_err(&client->dev, "unable to add clk provider\n");
|
dev_err(&client->dev, "unable to add clk provider\n");
|
||||||
return err;
|
return err;
|
||||||
|
@ -477,7 +476,7 @@ static int si570_probe(struct i2c_client *client,
|
||||||
/* Read the requested initial output frequency from device tree */
|
/* Read the requested initial output frequency from device tree */
|
||||||
if (!of_property_read_u32(client->dev.of_node, "clock-frequency",
|
if (!of_property_read_u32(client->dev.of_node, "clock-frequency",
|
||||||
&initial_fout)) {
|
&initial_fout)) {
|
||||||
err = clk_set_rate(clk, initial_fout);
|
err = clk_set_rate(data->hw.clk, initial_fout);
|
||||||
if (err) {
|
if (err) {
|
||||||
of_clk_del_provider(client->dev.of_node);
|
of_clk_del_provider(client->dev.of_node);
|
||||||
return err;
|
return err;
|
||||||
|
|
Loading…
Reference in New Issue