xref: /linux/drivers/clk/berlin/berlin2-pll.h (revision 3932b9ca55b0be314a36d3e84faff3e823c081f5)
1 /*
2  * Copyright (c) 2014 Marvell Technology Group Ltd.
3  *
4  * Alexandre Belloni <alexandre.belloni@free-electrons.com>
5  * Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
6  *
7  * This program is free software; you can redistribute it and/or modify it
8  * under the terms and conditions of the GNU General Public License,
9  * version 2, as published by the Free Software Foundation.
10  *
11  * This program is distributed in the hope it will be useful, but WITHOUT
12  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
14  * more details.
15  *
16  * You should have received a copy of the GNU General Public License along with
17  * this program.  If not, see <http://www.gnu.org/licenses/>.
18  */
19 #ifndef __BERLIN2_PLL_H
20 #define __BERLIN2_PLL_H
21 
22 struct clk;
23 
24 struct berlin2_pll_map {
25 	const u8 vcodiv[16];
26 	u8 mult;
27 	u8 fbdiv_shift;
28 	u8 rfdiv_shift;
29 	u8 divsel_shift;
30 };
31 
32 struct clk * __init
33 berlin2_pll_register(const struct berlin2_pll_map *map,
34 		     void __iomem *base, const char *name,
35 		     const char *parent_name, unsigned long flags);
36 
37 #endif /* __BERLIN2_PLL_H */
38