/*
 * Copyright (C) 2016 Freescale Semiconductor, Inc.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 *
 */

#ifndef __DT_BINDINGS_CLOCK_IMX7ULP_H
#define __DT_BINDINGS_CLOCK_IMX7ULP_H

#define IMX7ULP_CLK_DUMMY		0
#define IMX7ULP_CLK_CKIL		1
#define IMX7ULP_CLK_OSC			2
#define IMX7ULP_CLK_FIRC		3

/* SCG1 */
#define IMX7ULP_CLK_SPLL_PRE_SEL	4
#define IMX7ULP_CLK_SPLL_PRE_DIV	5
#define IMX7ULP_CLK_SPLL		6
#define IMX7ULP_CLK_SPLL_POST_DIV1	7
#define IMX7ULP_CLK_SPLL_POST_DIV2	8
#define IMX7ULP_CLK_SPLL_PFD0		9
#define IMX7ULP_CLK_SPLL_PFD1		10
#define IMX7ULP_CLK_SPLL_PFD2		11
#define IMX7ULP_CLK_SPLL_PFD3		12
#define IMX7ULP_CLK_SPLL_PFD_SEL	13
#define IMX7ULP_CLK_SPLL_SEL		14
#define IMX7ULP_CLK_APLL_PRE_SEL	15
#define IMX7ULP_CLK_APLL_PRE_DIV	16
#define IMX7ULP_CLK_APLL		17
#define IMX7ULP_CLK_APLL_POST_DIV1	18
#define IMX7ULP_CLK_APLL_POST_DIV2	19
#define IMX7ULP_CLK_APLL_PFD0		20
#define IMX7ULP_CLK_APLL_PFD1		21
#define IMX7ULP_CLK_APLL_PFD2		22
#define IMX7ULP_CLK_APLL_PFD3		23
#define IMX7ULP_CLK_APLL_PFD_SEL	24
#define IMX7ULP_CLK_APLL_SEL		25
#define IMX7ULP_CLK_UPLL		26
#define IMX7ULP_CLK_SYS_SEL		27
#define IMX7ULP_CLK_CORE_DIV		28
#define IMX7ULP_CLK_BUS_DIV		29
#define IMX7ULP_CLK_PLAT_DIV		30
#define IMX7ULP_CLK_DDR_SEL		31
#define IMX7ULP_CLK_DDR_DIV		32
#define IMX7ULP_CLK_NIC_SEL		33
#define IMX7ULP_CLK_NIC0_DIV		34
#define IMX7ULP_CLK_GPU_DIV		35
#define IMX7ULP_CLK_NIC1_DIV		36
#define IMX7ULP_CLK_NIC1_BUS_DIV	37
#define IMX7ULP_CLK_NIC1_EXT_DIV	38

/* PCG2 */
#define IMX7ULP_CLK_DMA1		39
#define IMX7ULP_CLK_RGPIO2P1		40
#define IMX7ULP_CLK_FLEXBUS		41
#define IMX7ULP_CLK_SEMA42_1		42
#define IMX7ULP_CLK_DMA_MUX1		43
#define IMX7ULP_CLK_SNVS		44
#define IMX7ULP_CLK_CAAM		45
#define IMX7ULP_CLK_LPTPM4		46
#define IMX7ULP_CLK_LPTPM5		47
#define IMX7ULP_CLK_LPIT1		48
#define IMX7ULP_CLK_LPSPI2		49
#define IMX7ULP_CLK_LPSPI3		50
#define IMX7ULP_CLK_LPI2C4		51
#define IMX7ULP_CLK_LPI2C5		52
#define IMX7ULP_CLK_LPUART4		53
#define IMX7ULP_CLK_LPUART5		54
#define IMX7ULP_CLK_FLEXIO1		55
#define IMX7ULP_CLK_USB0		56
#define IMX7ULP_CLK_USB1		57
#define IMX7ULP_CLK_USB_PHY		58
#define IMX7ULP_CLK_USB_PL301		59
#define IMX7ULP_CLK_USDHC0		60
#define IMX7ULP_CLK_USDHC1		61
#define IMX7ULP_CLK_WDG1		62
#define IMX7ULP_CLK_WDG2		63

/* PCG3 */
#define IMX7ULP_CLK_LPTPM6		64
#define IMX7ULP_CLK_LPTPM7		65
#define IMX7ULP_CLK_LPI2C6		66
#define IMX7ULP_CLK_LPI2C7		67
#define IMX7ULP_CLK_LPUART6		68
#define IMX7ULP_CLK_LPUART7		69
#define IMX7ULP_CLK_VIU			70
#define IMX7ULP_CLK_DSI			71
#define IMX7ULP_CLK_LCDIF		72
#define IMX7ULP_CLK_MMDC		73
#define IMX7ULP_CLK_PCTLC		74
#define IMX7ULP_CLK_PCTLD		75
#define IMX7ULP_CLK_PCTLE		76
#define IMX7ULP_CLK_PCTLF		77
#define IMX7ULP_CLK_GPU3D		78
#define IMX7ULP_CLK_GPU2D		79

#define IMX7ULP_CLK_MIPI_PLL		80
#define IMX7ULP_CLK_SIRC		81

#define IMX7ULP_CLK_SCG1_CLKOUT		82

#define IMX7ULP_CLK_END			83

/*cm4 clocks*/
#define IMX7ULP_CM4_CLK_DUMMY		0
#define IMX7ULP_CM4_CLK_CKIL		1
#define IMX7ULP_CM4_CLK_OSC		2
#define IMX7ULP_CM4_CLK_FIRC		3
#define IMX7ULP_CM4_CLK_SIRC		4

/* SCG0 */
#define IMX7ULP_CM4_CLK_SPLL_VCO_PRE_SEL	5
#define IMX7ULP_CM4_CLK_SPLL_VCO_PRE_DIV	6
#define IMX7ULP_CM4_CLK_SPLL		7
#define IMX7ULP_CM4_CLK_SPLL_VCO	8
#define IMX7ULP_CM4_CLK_SPLL_VCO_POST_DIV1	9
#define IMX7ULP_CM4_CLK_SPLL_VCO_POST_DIV2	10
#define IMX7ULP_CM4_CLK_SPLL_PFD0	11
#define IMX7ULP_CM4_CLK_SPLL_PFD1	12
#define IMX7ULP_CM4_CLK_SPLL_PFD2	13
#define IMX7ULP_CM4_CLK_SPLL_PFD3	14
#define IMX7ULP_CM4_CLK_SPLL_PFD_SEL	15
#define IMX7ULP_CM4_CLK_SPLL_PFD	16
#define IMX7ULP_CM4_CLK_SPLL_SEL	17
#define IMX7ULP_CM4_CLK_APLL_VCO_PRE_SEL	18
#define IMX7ULP_CM4_CLK_APLL_VCO_PRE_DIV	19
#define IMX7ULP_CM4_CLK_APLL		20
#define IMX7ULP_CM4_CLK_APLL_VCO	21
#define IMX7ULP_CM4_CLK_APLL_VCO_POST_DIV1	22
#define IMX7ULP_CM4_CLK_APLL_VCO_POST_DIV2	23
#define IMX7ULP_CM4_CLK_APLL_PFD0	24
#define IMX7ULP_CM4_CLK_APLL_PFD1	25
#define IMX7ULP_CM4_CLK_APLL_PFD2	26
#define IMX7ULP_CM4_CLK_APLL_PFD3	27
#define IMX7ULP_CM4_CLK_APLL_PFD_SEL	28
#define IMX7ULP_CM4_CLK_APLL_PFD	29
#define IMX7ULP_CM4_CLK_APLL_SEL	30
#define IMX7ULP_CM4_CLK_APLL_PFD0_PRE_DIV	31
#define IMX7ULP_CM4_CLK_SYS_SEL		32
#define IMX7ULP_CM4_CLK_CORE_DIV	33
#define IMX7ULP_CM4_CLK_BUS_DIV		34
#define IMX7ULP_CM4_CLK_PLAT_DIV	35
#define IMX7ULP_CM4_CLK_SLOW_DIV	36

#define IMX7ULP_CM4_CLK_SAI0_SEL	37
#define IMX7ULP_CM4_CLK_SAI0_DIV	38
#define IMX7ULP_CM4_CLK_SAI0_ROOT	39
#define IMX7ULP_CM4_CLK_SAI0_IPG	40
#define IMX7ULP_CM4_CLK_SAI1_SEL	41
#define IMX7ULP_CM4_CLK_SAI1_DIV	42
#define IMX7ULP_CM4_CLK_SAI1_ROOT	43
#define IMX7ULP_CM4_CLK_SAI1_IPG	44

#define IMX7ULP_CLK_SCG0_CLKOUT		45

#define IMX7ULP_CM4_CLK_END		46

#endif /* __DT_BINDINGS_CLOCK_IMX7ULP_H */
