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