2018-12-11 20:43:03 +03:00
|
|
|
/* SPDX-License-Identifier: GPL-2.0 */
|
2013-08-23 19:03:43 +04:00
|
|
|
/*
|
|
|
|
* Copyright (C) 2013 Samsung Electronics Co., Ltd.
|
|
|
|
* Sylwester Nawrocki <s.nawrocki@samsung.com>
|
|
|
|
*/
|
|
|
|
|
2015-01-23 14:03:30 +03:00
|
|
|
struct clk_hw;
|
2018-12-11 19:34:16 +03:00
|
|
|
struct device;
|
|
|
|
struct of_phandle_args;
|
2015-01-23 14:03:30 +03:00
|
|
|
|
2013-08-23 19:03:43 +04:00
|
|
|
#if defined(CONFIG_OF) && defined(CONFIG_COMMON_CLK)
|
2018-12-19 21:59:55 +03:00
|
|
|
int of_parse_clkspec(const struct device_node *np, int index, const char *name,
|
|
|
|
struct of_phandle_args *out_args);
|
|
|
|
struct clk_hw *of_clk_get_hw_from_clkspec(struct of_phandle_args *clkspec);
|
2013-08-23 19:03:43 +04:00
|
|
|
#endif
|
2015-01-23 14:03:30 +03:00
|
|
|
|
2015-02-06 22:42:43 +03:00
|
|
|
#ifdef CONFIG_COMMON_CLK
|
2018-12-11 19:34:16 +03:00
|
|
|
struct clk *clk_hw_create_clk(struct device *dev, struct clk_hw *hw,
|
2018-12-11 19:32:04 +03:00
|
|
|
const char *dev_id, const char *con_id);
|
2018-01-03 03:54:16 +03:00
|
|
|
void __clk_put(struct clk *clk);
|
2015-02-06 22:42:43 +03:00
|
|
|
#else
|
|
|
|
/* All these casts to avoid ifdefs in clkdev... */
|
|
|
|
static inline struct clk *
|
2018-12-11 19:34:16 +03:00
|
|
|
clk_hw_create_clk(struct device *dev, struct clk_hw *hw, const char *dev_id,
|
|
|
|
const char *con_id)
|
2015-02-06 22:42:43 +03:00
|
|
|
{
|
|
|
|
return (struct clk *)hw;
|
|
|
|
}
|
|
|
|
static struct clk_hw *__clk_get_hw(struct clk *clk)
|
|
|
|
{
|
|
|
|
return (struct clk_hw *)clk;
|
|
|
|
}
|
2018-01-03 03:54:16 +03:00
|
|
|
static inline void __clk_put(struct clk *clk) { }
|
2015-02-06 22:42:43 +03:00
|
|
|
|
|
|
|
#endif
|