clk.h (470663e0781c06234235a025a5455c0e15925f0c) clk.h (8646d4dcc7fb2e6e771f8cee500950f3f69aa1ea)
1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef __MACH_IMX_CLK_H
3#define __MACH_IMX_CLK_H
4
5#include <linux/spinlock.h>
6#include <linux/clk-provider.h>
7
8extern spinlock_t imx_ccm_lock;

--- 13 unchanged lines hidden (view full) ---

22 IMX_PLLV1_IMX35,
23};
24
25enum imx_sccg_pll_type {
26 SCCG_PLL1,
27 SCCG_PLL2,
28};
29
1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef __MACH_IMX_CLK_H
3#define __MACH_IMX_CLK_H
4
5#include <linux/spinlock.h>
6#include <linux/clk-provider.h>
7
8extern spinlock_t imx_ccm_lock;

--- 13 unchanged lines hidden (view full) ---

22 IMX_PLLV1_IMX35,
23};
24
25enum imx_sccg_pll_type {
26 SCCG_PLL1,
27 SCCG_PLL2,
28};
29
30enum imx_pll14xx_type {
31 PLL_1416X,
32 PLL_1443X,
33};
34
35/* NOTE: Rate table should be kept sorted in descending order. */
36struct imx_pll14xx_rate_table {
37 unsigned int rate;
38 unsigned int pdiv;
39 unsigned int mdiv;
40 unsigned int sdiv;
41 unsigned int kdiv;
42};
43
44struct imx_pll14xx_clk {
45 enum imx_pll14xx_type type;
46 const struct imx_pll14xx_rate_table *rate_table;
47 int rate_count;
48 int flags;
49};
50
51struct clk *imx_clk_pll14xx(const char *name, const char *parent_name,
52 void __iomem *base, const struct imx_pll14xx_clk *pll_clk);
53
30struct clk *imx_clk_pllv1(enum imx_pllv1_type type, const char *name,
31 const char *parent, void __iomem *base);
32
33struct clk *imx_clk_pllv2(const char *name, const char *parent,
34 void __iomem *base);
35
36struct clk *imx_clk_frac_pll(const char *name, const char *parent_name,
37 void __iomem *base);

--- 340 unchanged lines hidden ---
54struct clk *imx_clk_pllv1(enum imx_pllv1_type type, const char *name,
55 const char *parent, void __iomem *base);
56
57struct clk *imx_clk_pllv2(const char *name, const char *parent,
58 void __iomem *base);
59
60struct clk *imx_clk_frac_pll(const char *name, const char *parent_name,
61 void __iomem *base);

--- 340 unchanged lines hidden ---