diff options
author | Tero Kristo <t-kristo@ti.com> | 2015-04-27 20:55:42 +0200 |
---|---|---|
committer | Tero Kristo <t-kristo@ti.com> | 2015-06-02 11:31:46 +0200 |
commit | e9e63088e4f93cf4ed7999294c09905b7dcb4d32 (patch) | |
tree | e22481c9cc1c77e98cb34dd484bdd2b977ea0a96 /drivers/clk/ti/clk.c | |
parent | ARM: OMAP2+: clock: remove dead definitions from the clock header file (diff) | |
download | linux-e9e63088e4f93cf4ed7999294c09905b7dcb4d32.tar.xz linux-e9e63088e4f93cf4ed7999294c09905b7dcb4d32.zip |
clk: ti: remove exported ll_ops struct, instead add an API for registration
We should avoid exporting data from drivers, instead use an API for
registering the clock low level operations.
Signed-off-by: Tero Kristo <t-kristo@ti.com>
Diffstat (limited to 'drivers/clk/ti/clk.c')
-rw-r--r-- | drivers/clk/ti/clk.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/drivers/clk/ti/clk.c b/drivers/clk/ti/clk.c index 5baea03cfc92..58b83e0af90f 100644 --- a/drivers/clk/ti/clk.c +++ b/drivers/clk/ti/clk.c @@ -33,6 +33,27 @@ static struct device_node *clocks_node_ptr[CLK_MAX_MEMMAPS]; struct ti_clk_features ti_clk_features; /** + * ti_clk_setup_ll_ops - setup low level clock operations + * @ops: low level clock ops descriptor + * + * Sets up low level clock operations for TI clock driver. This is used + * to provide various callbacks for the clock driver towards platform + * specific code. Returns 0 on success, -EBUSY if ll_ops have been + * registered already. + */ +int ti_clk_setup_ll_ops(struct ti_clk_ll_ops *ops) +{ + if (ti_clk_ll_ops) { + pr_err("Attempt to register ll_ops multiple times.\n"); + return -EBUSY; + } + + ti_clk_ll_ops = ops; + + return 0; +} + +/** * ti_dt_clocks_register - register DT alias clocks during boot * @oclks: list of clocks to register * |