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