diff options
author | Viresh Kumar <viresh.kumar@linaro.org> | 2025-05-20 11:24:12 +0530 |
---|---|---|
committer | Viresh Kumar <viresh.kumar@linaro.org> | 2025-05-20 11:24:12 +0530 |
commit | c410aabd0321468b6569f31931aa32ddc5897ca9 (patch) | |
tree | 6eaa0c4b230076bf6d71c8c1ae873c4506fc9c23 /rust/helpers/clk.c | |
parent | a374f28700abd20e8a7d026f89aa26f759445918 (diff) | |
parent | 06149d8f2216894cee86106c701d13141948f159 (diff) |
Merge branch 'rust/cpufreq-dt' into cpufreq/arm/linux-next
Diffstat (limited to 'rust/helpers/clk.c')
-rw-r--r-- | rust/helpers/clk.c | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/rust/helpers/clk.c b/rust/helpers/clk.c new file mode 100644 index 0000000000000..6d04372c9f3bb --- /dev/null +++ b/rust/helpers/clk.c @@ -0,0 +1,66 @@ +// SPDX-License-Identifier: GPL-2.0 + +#include <linux/clk.h> + +/* + * The "inline" implementation of below helpers are only available when + * CONFIG_HAVE_CLK or CONFIG_HAVE_CLK_PREPARE aren't set. + */ +#ifndef CONFIG_HAVE_CLK +struct clk *rust_helper_clk_get(struct device *dev, const char *id) +{ + return clk_get(dev, id); +} + +void rust_helper_clk_put(struct clk *clk) +{ + clk_put(clk); +} + +int rust_helper_clk_enable(struct clk *clk) +{ + return clk_enable(clk); +} + +void rust_helper_clk_disable(struct clk *clk) +{ + clk_disable(clk); +} + +unsigned long rust_helper_clk_get_rate(struct clk *clk) +{ + return clk_get_rate(clk); +} + +int rust_helper_clk_set_rate(struct clk *clk, unsigned long rate) +{ + return clk_set_rate(clk, rate); +} +#endif + +#ifndef CONFIG_HAVE_CLK_PREPARE +int rust_helper_clk_prepare(struct clk *clk) +{ + return clk_prepare(clk); +} + +void rust_helper_clk_unprepare(struct clk *clk) +{ + clk_unprepare(clk); +} +#endif + +struct clk *rust_helper_clk_get_optional(struct device *dev, const char *id) +{ + return clk_get_optional(dev, id); +} + +int rust_helper_clk_prepare_enable(struct clk *clk) +{ + return clk_prepare_enable(clk); +} + +void rust_helper_clk_disable_unprepare(struct clk *clk) +{ + clk_disable_unprepare(clk); +} |