1/*	$NetBSD: imx51_ccmvar.h,v 1.1 2012/04/17 09:33:31 bsh Exp $	*/
2/*-
3 * SPDX-License-Identifier: BSD-2-Clause AND BSD-2-Clause-FreeBSD
4 *
5 * Copyright (c) 2012  Genetec Corporation.  All rights reserved.
6 * Written by Hashimoto Kenichi for Genetec Corporation.
7 *
8 * Redistribution and use in source and binary forms, with or without
9 * modification, are permitted provided that the following conditions
10 * are met:
11 * 1. Redistributions of source code must retain the above copyright
12 *    notice, this list of conditions and the following disclaimer.
13 * 2. Redistributions in binary form must reproduce the above copyright
14 *    notice, this list of conditions and the following disclaimer in the
15 *    documentation and/or other materials provided with the distribution.
16 *
17 * THIS SOFTWARE IS PROVIDED BY GENETEC CORPORATION ``AS IS'' AND
18 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
19 * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
20 * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL GENETEC CORPORATION
21 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27 * POSSIBILITY OF SUCH DAMAGE.
28 */
29
30/*-
31 * Copyright (c) 2012, 2013 The FreeBSD Foundation
32 * All rights reserved.
33 *
34 * Portions of this software were developed by Oleksandr Rybalko
35 * under sponsorship from the FreeBSD Foundation.
36 *
37 * Redistribution and use in source and binary forms, with or without
38 * modification, are permitted provided that the following conditions
39 * are met:
40 * 1.	Redistributions of source code must retain the above copyright
41 *	notice, this list of conditions and the following disclaimer.
42 * 2.	Redistributions in binary form must reproduce the above copyright
43 *	notice, this list of conditions and the following disclaimer in the
44 *	documentation and/or other materials provided with the distribution.
45 *
46 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
47 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
48 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
49 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
50 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
51 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
52 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
53 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
54 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
55 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
56 * SUCH DAMAGE.
57 *
58 * $FreeBSD$
59 */
60
61#ifndef	_ARM_IMX_IMX51_CCMVAR_H_
62#define	_ARM_IMX_IMX51_CCMVAR_H_
63
64enum imx51_clock {
65	IMX51CLK_FPM,
66	IMX51CLK_PLL1,
67	IMX51CLK_PLL2,
68	IMX51CLK_PLL3,
69	IMX51CLK_PLL1SW,
70	IMX51CLK_PLL2SW,
71	IMX51CLK_PLL3SW,
72	IMX51CLK_PLL1STEP,
73	IMX51CLK_LP_APM,
74	IMX51CLK_ARM_ROOT,
75	IMX51CLK_MAIN_BUS_CLK_SRC,	/* XXX */
76	IMX51CLK_MAIN_BUS_CLK,
77	IMX51CLK_EMI_SLOW_CLK_ROOT,
78	IMX51CLK_ENFC_CLK_ROOT,
79	IMX51CLK_AHB_CLK_ROOT,
80	IMX51CLK_IPG_CLK_ROOT,
81	IMX51CLK_PERCLK_ROOT,
82	IMX51CLK_DDR_CLK_ROOT,
83	IMX51CLK_ARM_AXI_CLK_ROOT,
84	IMX51CLK_ARM_AXI_A_CLK,
85	IMX51CLK_ARM_AXI_B_CLK,
86	IMX51CLK_IPU_HSP_CLK_ROOT,
87	IMX51CLK_CKIL_SYNC_CLK_ROOT,
88	IMX51CLK_USBOH3_CLK_ROOT,
89	IMX51CLK_ESDHC1_CLK_ROOT,
90	IMX51CLK_ESDHC2_CLK_ROOT,
91	IMX51CLK_ESDHC3_CLK_ROOT,
92	IMX51CLK_UART_CLK_ROOT,
93	IMX51CLK_SSI1_CLK_ROOT,
94	IMX51CLK_SSI2_CLK_ROOT,
95	IMX51CLK_SSI_EXT1_CLK_ROOT,
96	IMX51CLK_SSI_EXT2_CLK_ROOT,
97	IMX51CLK_USB_PHY_CLK_ROOT,
98	IMX51CLK_TVE_216_54_CLK_ROOT,
99	IMX51CLK_DI_CLK_ROOT,
100	IMX51CLK_SPDIF0_CLK_ROOT,
101	IMX51CLK_SPDIF1_CLK_ROOT,
102	IMX51CLK_CSPI_CLK_ROOT,
103	IMX51CLK_WRCK_CLK_ROOT,
104	IMX51CLK_LPSR_CLK_ROOT,
105	IMX51CLK_PGC_CLK_ROOT
106};
107
108u_int imx51_get_clock(enum imx51_clock);
109void imx51_clk_gating(int, int);
110int imx51_get_clk_gating(int);
111
112#endif	/* _ARM_IMX_IMX51_CCMVAR_H_ */
113