xref: /linux/include/dt-bindings/clock/at91.h (revision 92499dec)
1a636cd6cSThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-or-later */
235d35aaeSTushar Behera /*
335d35aaeSTushar Behera  * This header provides constants for AT91 pmc status.
435d35aaeSTushar Behera  *
535d35aaeSTushar Behera  * The constants defined in this header are being used in dts.
635d35aaeSTushar Behera  */
735d35aaeSTushar Behera 
835d35aaeSTushar Behera #ifndef _DT_BINDINGS_CLK_AT91_H
935d35aaeSTushar Behera #define _DT_BINDINGS_CLK_AT91_H
1035d35aaeSTushar Behera 
11d387ff54SAlexandre Belloni #define PMC_TYPE_CORE		0
12d387ff54SAlexandre Belloni #define PMC_TYPE_SYSTEM		1
13d387ff54SAlexandre Belloni #define PMC_TYPE_PERIPHERAL	2
14d387ff54SAlexandre Belloni #define PMC_TYPE_GCK		3
1599767cd4SMichał Mirosław #define PMC_TYPE_PROGRAMMABLE	4
16d387ff54SAlexandre Belloni 
17d387ff54SAlexandre Belloni #define PMC_SLOW		0
18d387ff54SAlexandre Belloni #define PMC_MCK			1
19d387ff54SAlexandre Belloni #define PMC_UTMI		2
20d387ff54SAlexandre Belloni #define PMC_MAIN		3
21d387ff54SAlexandre Belloni #define PMC_MCK2		4
22d387ff54SAlexandre Belloni #define PMC_I2S0_MUX		5
23d387ff54SAlexandre Belloni #define PMC_I2S1_MUX		6
2403a1ee1dSMichał Mirosław #define PMC_PLLACK		7
2503a1ee1dSMichał Mirosław #define PMC_PLLBCK		8
2603a1ee1dSMichał Mirosław #define PMC_AUDIOPLLCK		9
27d387ff54SAlexandre Belloni #define PMC_AUDIOPINCK		10
283d86ee17SEugen Hristev 
293d86ee17SEugen Hristev /* SAMA7G5 */
303d86ee17SEugen Hristev #define PMC_CPUPLL		(PMC_MAIN + 1)
313d86ee17SEugen Hristev #define PMC_SYSPLL		(PMC_MAIN + 2)
323d86ee17SEugen Hristev #define PMC_DDRPLL		(PMC_MAIN + 3)
333d86ee17SEugen Hristev #define PMC_IMGPLL		(PMC_MAIN + 4)
343d86ee17SEugen Hristev #define PMC_BAUDPLL		(PMC_MAIN + 5)
353d86ee17SEugen Hristev #define PMC_AUDIOPMCPLL		(PMC_MAIN + 6)
363d86ee17SEugen Hristev #define PMC_AUDIOIOPLL		(PMC_MAIN + 7)
3791f3bf0dSClaudiu Beznea #define PMC_ETHPLL		(PMC_MAIN + 8)
3892499decSTudor Ambarus #define PMC_CPU			(PMC_MAIN + 9)
393d86ee17SEugen Hristev #define PMC_MCK1		(PMC_MAIN + 10)
40d387ff54SAlexandre Belloni 
4135d35aaeSTushar Behera #ifndef AT91_PMC_MOSCS
4235d35aaeSTushar Behera #define AT91_PMC_MOSCS		0		/* MOSCS Flag */
4335d35aaeSTushar Behera #define AT91_PMC_LOCKA		1		/* PLLA Lock */
4435d35aaeSTushar Behera #define AT91_PMC_LOCKB		2		/* PLLB Lock */
4535d35aaeSTushar Behera #define AT91_PMC_MCKRDY		3		/* Master Clock */
4635d35aaeSTushar Behera #define AT91_PMC_LOCKU		6		/* UPLL Lock */
4735d35aaeSTushar Behera #define AT91_PMC_PCKRDY(id)	(8 + (id))	/* Programmable Clock */
4835d35aaeSTushar Behera #define AT91_PMC_MOSCSELS	16		/* Main Oscillator Selection */
4935d35aaeSTushar Behera #define AT91_PMC_MOSCRCS	17		/* Main On-Chip RC */
50a5752e57SNicolas Ferre #define AT91_PMC_CFDEV		18		/* Clock Failure Detector Event */
51d387ff54SAlexandre Belloni #define AT91_PMC_GCKRDY		24		/* Generated Clocks */
5235d35aaeSTushar Behera #endif
5335d35aaeSTushar Behera 
54 #endif
55