1/* SPDX-License-Identifier: GPL-2.0-or-later */
2/*
3 * This header provides constants for AT91 pmc status.
4 *
5 * The constants defined in this header are being used in dts.
6 */
7
8#ifndef _DT_BINDINGS_CLK_AT91_H
9#define _DT_BINDINGS_CLK_AT91_H
10
11#define PMC_TYPE_CORE 0
12#define PMC_TYPE_SYSTEM 1
13#define PMC_TYPE_PERIPHERAL 2
14#define PMC_TYPE_GCK 3
15#define PMC_TYPE_PROGRAMMABLE 4
16
17#define PMC_SLOW 0
18#define PMC_MCK 1
19#define PMC_UTMI 2
20#define PMC_MAIN 3
21#define PMC_MCK2 4
22#define PMC_I2S0_MUX 5
23#define PMC_I2S1_MUX 6
24#define PMC_PLLACK 7
25#define PMC_PLLBCK 8
26#define PMC_AUDIOPLLCK 9
27#define PMC_AUDIOPINCK 10
28
29/* SAMA7G5 */
30#define PMC_CPUPLL (PMC_MAIN + 1)
31#define PMC_SYSPLL (PMC_MAIN + 2)
32#define PMC_DDRPLL (PMC_MAIN + 3)
33#define PMC_IMGPLL (PMC_MAIN + 4)
34#define PMC_BAUDPLL (PMC_MAIN + 5)
35#define PMC_AUDIOPMCPLL (PMC_MAIN + 6)
36#define PMC_AUDIOIOPLL (PMC_MAIN + 7)
37#define PMC_ETHPLL (PMC_MAIN + 8)
38#define PMC_CPU (PMC_MAIN + 9)
39#define PMC_MCK1 (PMC_MAIN + 10)
40
41#ifndef AT91_PMC_MOSCS
42#define AT91_PMC_MOSCS 0 /* MOSCS Flag */
43#define AT91_PMC_LOCKA 1 /* PLLA Lock */
44#define AT91_PMC_LOCKB 2 /* PLLB Lock */
45#define AT91_PMC_MCKRDY 3 /* Master Clock */
46#define AT91_PMC_LOCKU 6 /* UPLL Lock */
47#define AT91_PMC_PCKRDY(id) (8 + (id)) /* Programmable Clock */
48#define AT91_PMC_MOSCSELS 16 /* Main Oscillator Selection */
49#define AT91_PMC_MOSCRCS 17 /* Main On-Chip RC */
50#define AT91_PMC_CFDEV 18 /* Clock Failure Detector Event */
51#define AT91_PMC_GCKRDY 24 /* Generated Clocks */
52#endif
53
54#endif
55

source code of linux/include/dt-bindings/clock/at91.h