File Index
Files and directories
Sign in
FILE

atmel,at91rm9200-pmc.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/clock/atmel,at91rm9200-pmc.yaml YAML
  1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2%YAML 1.2
  3---
  4$id: http://devicetree.org/schemas/clock/atmel,at91rm9200-pmc.yaml#
  5$schema: http://devicetree.org/meta-schemas/core.yaml#
  6
  7title: Atmel Power Management Controller (PMC)
  8
  9maintainers:
 10  - Claudiu Beznea <claudiu.beznea@microchip.com>
 11
 12description:
 13  The power management controller optimizes power consumption by controlling all
 14  system and user peripheral clocks. The PMC enables/disables the clock inputs
 15  to many of the peripherals and to the processor.
 16
 17properties:
 18  compatible:
 19    oneOf:
 20      - items:
 21          - const: atmel,at91sam9g20-pmc
 22          - const: atmel,at91sam9260-pmc
 23          - const: syscon
 24      - items:
 25          - enum:
 26              - atmel,at91sam9g15-pmc
 27              - atmel,at91sam9g25-pmc
 28              - atmel,at91sam9g35-pmc
 29              - atmel,at91sam9x25-pmc
 30              - atmel,at91sam9x35-pmc
 31          - const: atmel,at91sam9x5-pmc
 32          - const: syscon
 33      - items:
 34          - enum:
 35              - atmel,at91rm9200-pmc
 36              - atmel,at91sam9260-pmc
 37              - atmel,at91sam9261-pmc
 38              - atmel,at91sam9263-pmc
 39              - atmel,at91sam9g45-pmc
 40              - atmel,at91sam9n12-pmc
 41              - atmel,at91sam9rl-pmc
 42              - atmel,at91sam9x5-pmc
 43              - atmel,sama5d2-pmc
 44              - atmel,sama5d3-pmc
 45              - atmel,sama5d4-pmc
 46              - microchip,sam9x60-pmc
 47              - microchip,sam9x7-pmc
 48              - microchip,sama7d65-pmc
 49              - microchip,sama7g5-pmc
 50          - const: syscon
 51
 52  reg:
 53    maxItems: 1
 54
 55  interrupts:
 56    maxItems: 1
 57
 58  "#clock-cells":
 59    description: |
 60      - 1st cell is the clock type, one of PMC_TYPE_CORE, PMC_TYPE_SYSTEM,
 61        PMC_TYPE_PERIPHERAL, PMC_TYPE_GCK, PMC_TYPE_PROGRAMMABLE (as defined
 62        in <dt-bindings/clock/at91.h>)
 63      - 2nd cell is the clock identifier as defined in <dt-bindings/clock/at91.h
 64        (for core clocks) or as defined in datasheet (for system, peripheral,
 65        gck and programmable clocks).
 66    const: 2
 67
 68  clocks:
 69    minItems: 2
 70    maxItems: 3
 71
 72  clock-names:
 73    minItems: 2
 74    maxItems: 3
 75
 76  atmel,osc-bypass:
 77    description: set when a clock signal is directly provided on XIN
 78    type: boolean
 79
 80required:
 81  - compatible
 82  - reg
 83  - interrupts
 84  - "#clock-cells"
 85  - clocks
 86  - clock-names
 87
 88allOf:
 89  - if:
 90      properties:
 91        compatible:
 92          contains:
 93            enum:
 94              - microchip,sam9x60-pmc
 95              - microchip,sam9x7-pmc
 96              - microchip,sama7d65-pmc
 97              - microchip,sama7g5-pmc
 98    then:
 99      properties:
100        clocks:
101          minItems: 3
102          maxItems: 3
103        clock-names:
104          items:
105            - const: td_slck
106            - const: md_slck
107            - const: main_xtal
108
109  - if:
110      properties:
111        compatible:
112          contains:
113            enum:
114              - atmel,at91rm9200-pmc
115              - atmel,at91sam9260-pmc
116              - atmel,at91sam9261-pmc
117              - atmel,at91sam9263-pmc
118              - atmel,at91sam9g20-pmc
119    then:
120      properties:
121        clocks:
122          minItems: 2
123          maxItems: 2
124        clock-names:
125          items:
126            - const: slow_xtal
127            - const: main_xtal
128
129  - if:
130      properties:
131        compatible:
132          contains:
133            enum:
134              - atmel,sama5d2-pmc
135              - atmel,sama5d3-pmc
136              - atmel,sama5d4-pmc
137    then:
138      properties:
139        clocks:
140          minItems: 2
141          maxItems: 2
142        clock-names:
143          items:
144            - const: slow_clk
145            - const: main_xtal
146
147additionalProperties: false
148
149examples:
150  - |
151    #include <dt-bindings/interrupt-controller/irq.h>
152
153    pmc: clock-controller@f0018000 {
154        compatible = "atmel,sama5d4-pmc", "syscon";
155        reg = <0xf0018000 0x120>;
156        interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
157        #clock-cells = <2>;
158        clocks = <&clk32k>, <&main_xtal>;
159        clock-names = "slow_clk", "main_xtal";
160    };
161
162...
~/ Read-only file preview.