1 /* SPDX-License-Identifier: GPL-2.0+
2  *
3  * (C) Copyright 2016 Nexell
4  * Hyunseok, Jung <hsjung@nexell.co.kr>
5  */
6 
7 #ifndef __ASM_ARM_ARCH_CLK_H_
8 #define __ASM_ARM_ARCH_CLK_H_
9 
10 struct clk {
11 	unsigned long rate;
12 };
13 
14 void clk_init(void);
15 
16 struct clk *clk_get(const char *id);
17 void clk_put(struct clk *clk);
18 unsigned long clk_get_rate(struct clk *clk);
19 long clk_round_rate(struct clk *clk, unsigned long rate);
20 int clk_set_rate(struct clk *clk, unsigned long rate);
21 int clk_enable(struct clk *clk);
22 void clk_disable(struct clk *clk);
23 
24 #endif
25