Loading drivers/clk/ti/apll.c +1 −1 Original line number Diff line number Diff line Loading @@ -164,7 +164,7 @@ static void __init omap_clk_register_apll(struct clk_hw *hw, ad->clk_bypass = __clk_get_hw(clk); clk = clk_register(NULL, &clk_hw->hw); clk = ti_clk_register(NULL, &clk_hw->hw, node->name); if (!IS_ERR(clk)) { of_clk_add_provider(node, of_clk_src_simple_get, clk); kfree(clk_hw->hw.init->parent_names); Loading drivers/clk/ti/clk-dra7-atl.c +10 −1 Original line number Diff line number Diff line Loading @@ -24,6 +24,9 @@ #include <linux/of_address.h> #include <linux/platform_device.h> #include <linux/pm_runtime.h> #include <linux/clk/ti.h> #include "clock.h" #define DRA7_ATL_INSTANCES 4 Loading Loading @@ -171,6 +174,7 @@ static void __init of_dra7_atl_clock_setup(struct device_node *node) struct clk_init_data init = { NULL }; const char **parent_names = NULL; struct clk *clk; int ret; clk_hw = kzalloc(sizeof(*clk_hw), GFP_KERNEL); if (!clk_hw) { Loading Loading @@ -200,9 +204,14 @@ static void __init of_dra7_atl_clock_setup(struct device_node *node) init.parent_names = parent_names; clk = clk_register(NULL, &clk_hw->hw); clk = ti_clk_register(NULL, &clk_hw->hw, node->name); if (!IS_ERR(clk)) { ret = ti_clk_add_alias(NULL, clk, node->name); if (ret) { clk_unregister(clk); goto cleanup; } of_clk_add_provider(node, of_clk_src_simple_get, clk); kfree(parent_names); return; Loading drivers/clk/ti/clk.c +15 −5 Original line number Diff line number Diff line Loading @@ -298,6 +298,7 @@ struct clk __init *ti_clk_register_clk(struct ti_clk *setup) struct ti_clk_fixed *fixed; struct ti_clk_fixed_factor *fixed_factor; struct clk_hw *clk_hw; int ret; if (setup->clk) return setup->clk; Loading @@ -308,6 +309,13 @@ struct clk __init *ti_clk_register_clk(struct ti_clk *setup) clk = clk_register_fixed_rate(NULL, setup->name, NULL, 0, fixed->frequency); if (!IS_ERR(clk)) { ret = ti_clk_add_alias(NULL, clk, setup->name); if (ret) { clk_unregister(clk); clk = ERR_PTR(ret); } } break; case TI_CLK_MUX: clk = ti_clk_register_mux(setup); Loading @@ -325,6 +333,13 @@ struct clk __init *ti_clk_register_clk(struct ti_clk *setup) fixed_factor->parent, 0, fixed_factor->mult, fixed_factor->div); if (!IS_ERR(clk)) { ret = ti_clk_add_alias(NULL, clk, setup->name); if (ret) { clk_unregister(clk); clk = ERR_PTR(ret); } } break; case TI_CLK_GATE: clk = ti_clk_register_gate(setup); Loading Loading @@ -378,9 +393,6 @@ int __init ti_clk_register_legacy_clks(struct ti_clk_alias *clks) clks->clk->name, PTR_ERR(clk)); return PTR_ERR(clk); } } else { clks->lk.clk = clk; clkdev_add(&clks->lk); } clks++; } Loading @@ -403,8 +415,6 @@ int __init ti_clk_register_legacy_clks(struct ti_clk_alias *clks) } } else { retry = true; retry_clk->lk.clk = clk; clkdev_add(&retry_clk->lk); list_del(&retry_clk->link); } } Loading drivers/clk/ti/composite.c +15 −1 Original line number Diff line number Diff line Loading @@ -126,6 +126,7 @@ struct clk *ti_clk_register_composite(struct ti_clk *setup) int num_parents = 1; const char **parent_names = NULL; struct clk *clk; int ret; comp = setup->data; Loading @@ -150,6 +151,12 @@ struct clk *ti_clk_register_composite(struct ti_clk *setup) &ti_composite_divider_ops, gate, &ti_composite_gate_ops, 0); ret = ti_clk_add_alias(NULL, clk, setup->name); if (ret) { clk_unregister(clk); return ERR_PTR(ret); } return clk; } #endif Loading @@ -163,6 +170,7 @@ static void __init _register_composite(struct clk_hw *hw, int num_parents = 0; const char **parent_names = NULL; int i; int ret; /* Check for presence of each component clock */ for (i = 0; i < CLK_COMPONENT_TYPE_MAX; i++) { Loading Loading @@ -217,8 +225,14 @@ static void __init _register_composite(struct clk_hw *hw, _get_hw(cclk, CLK_COMPONENT_TYPE_GATE), &ti_composite_gate_ops, 0); if (!IS_ERR(clk)) if (!IS_ERR(clk)) { ret = ti_clk_add_alias(NULL, clk, node->name); if (ret) { clk_unregister(clk); goto cleanup; } of_clk_add_provider(node, of_clk_src_simple_get, clk); } cleanup: /* Free component clock list entries */ Loading drivers/clk/ti/divider.c +1 −1 Original line number Diff line number Diff line Loading @@ -311,7 +311,7 @@ static struct clk *_register_divider(struct device *dev, const char *name, div->table = table; /* register the clock */ clk = clk_register(dev, &div->hw); clk = ti_clk_register(dev, &div->hw, name); if (IS_ERR(clk)) kfree(div); Loading Loading
drivers/clk/ti/apll.c +1 −1 Original line number Diff line number Diff line Loading @@ -164,7 +164,7 @@ static void __init omap_clk_register_apll(struct clk_hw *hw, ad->clk_bypass = __clk_get_hw(clk); clk = clk_register(NULL, &clk_hw->hw); clk = ti_clk_register(NULL, &clk_hw->hw, node->name); if (!IS_ERR(clk)) { of_clk_add_provider(node, of_clk_src_simple_get, clk); kfree(clk_hw->hw.init->parent_names); Loading
drivers/clk/ti/clk-dra7-atl.c +10 −1 Original line number Diff line number Diff line Loading @@ -24,6 +24,9 @@ #include <linux/of_address.h> #include <linux/platform_device.h> #include <linux/pm_runtime.h> #include <linux/clk/ti.h> #include "clock.h" #define DRA7_ATL_INSTANCES 4 Loading Loading @@ -171,6 +174,7 @@ static void __init of_dra7_atl_clock_setup(struct device_node *node) struct clk_init_data init = { NULL }; const char **parent_names = NULL; struct clk *clk; int ret; clk_hw = kzalloc(sizeof(*clk_hw), GFP_KERNEL); if (!clk_hw) { Loading Loading @@ -200,9 +204,14 @@ static void __init of_dra7_atl_clock_setup(struct device_node *node) init.parent_names = parent_names; clk = clk_register(NULL, &clk_hw->hw); clk = ti_clk_register(NULL, &clk_hw->hw, node->name); if (!IS_ERR(clk)) { ret = ti_clk_add_alias(NULL, clk, node->name); if (ret) { clk_unregister(clk); goto cleanup; } of_clk_add_provider(node, of_clk_src_simple_get, clk); kfree(parent_names); return; Loading
drivers/clk/ti/clk.c +15 −5 Original line number Diff line number Diff line Loading @@ -298,6 +298,7 @@ struct clk __init *ti_clk_register_clk(struct ti_clk *setup) struct ti_clk_fixed *fixed; struct ti_clk_fixed_factor *fixed_factor; struct clk_hw *clk_hw; int ret; if (setup->clk) return setup->clk; Loading @@ -308,6 +309,13 @@ struct clk __init *ti_clk_register_clk(struct ti_clk *setup) clk = clk_register_fixed_rate(NULL, setup->name, NULL, 0, fixed->frequency); if (!IS_ERR(clk)) { ret = ti_clk_add_alias(NULL, clk, setup->name); if (ret) { clk_unregister(clk); clk = ERR_PTR(ret); } } break; case TI_CLK_MUX: clk = ti_clk_register_mux(setup); Loading @@ -325,6 +333,13 @@ struct clk __init *ti_clk_register_clk(struct ti_clk *setup) fixed_factor->parent, 0, fixed_factor->mult, fixed_factor->div); if (!IS_ERR(clk)) { ret = ti_clk_add_alias(NULL, clk, setup->name); if (ret) { clk_unregister(clk); clk = ERR_PTR(ret); } } break; case TI_CLK_GATE: clk = ti_clk_register_gate(setup); Loading Loading @@ -378,9 +393,6 @@ int __init ti_clk_register_legacy_clks(struct ti_clk_alias *clks) clks->clk->name, PTR_ERR(clk)); return PTR_ERR(clk); } } else { clks->lk.clk = clk; clkdev_add(&clks->lk); } clks++; } Loading @@ -403,8 +415,6 @@ int __init ti_clk_register_legacy_clks(struct ti_clk_alias *clks) } } else { retry = true; retry_clk->lk.clk = clk; clkdev_add(&retry_clk->lk); list_del(&retry_clk->link); } } Loading
drivers/clk/ti/composite.c +15 −1 Original line number Diff line number Diff line Loading @@ -126,6 +126,7 @@ struct clk *ti_clk_register_composite(struct ti_clk *setup) int num_parents = 1; const char **parent_names = NULL; struct clk *clk; int ret; comp = setup->data; Loading @@ -150,6 +151,12 @@ struct clk *ti_clk_register_composite(struct ti_clk *setup) &ti_composite_divider_ops, gate, &ti_composite_gate_ops, 0); ret = ti_clk_add_alias(NULL, clk, setup->name); if (ret) { clk_unregister(clk); return ERR_PTR(ret); } return clk; } #endif Loading @@ -163,6 +170,7 @@ static void __init _register_composite(struct clk_hw *hw, int num_parents = 0; const char **parent_names = NULL; int i; int ret; /* Check for presence of each component clock */ for (i = 0; i < CLK_COMPONENT_TYPE_MAX; i++) { Loading Loading @@ -217,8 +225,14 @@ static void __init _register_composite(struct clk_hw *hw, _get_hw(cclk, CLK_COMPONENT_TYPE_GATE), &ti_composite_gate_ops, 0); if (!IS_ERR(clk)) if (!IS_ERR(clk)) { ret = ti_clk_add_alias(NULL, clk, node->name); if (ret) { clk_unregister(clk); goto cleanup; } of_clk_add_provider(node, of_clk_src_simple_get, clk); } cleanup: /* Free component clock list entries */ Loading
drivers/clk/ti/divider.c +1 −1 Original line number Diff line number Diff line Loading @@ -311,7 +311,7 @@ static struct clk *_register_divider(struct device *dev, const char *name, div->table = table; /* register the clock */ clk = clk_register(dev, &div->hw); clk = ti_clk_register(dev, &div->hw, name); if (IS_ERR(clk)) kfree(div); Loading