1 # SPDX-License-Identifier: (GPL-2.0-only OR BS 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 %YAML 1.2 2 %YAML 1.2 3 --- 3 --- 4 $id: http://devicetree.org/schemas/pwm/pwm-aml 4 $id: http://devicetree.org/schemas/pwm/pwm-amlogic.yaml# 5 $schema: http://devicetree.org/meta-schemas/co 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 6 6 7 title: Amlogic PWM 7 title: Amlogic PWM 8 8 9 maintainers: 9 maintainers: 10 - Heiner Kallweit <hkallweit1@gmail.com> 10 - Heiner Kallweit <hkallweit1@gmail.com> 11 11 12 properties: 12 properties: 13 compatible: 13 compatible: 14 oneOf: 14 oneOf: 15 - enum: 15 - enum: 16 - amlogic,meson8b-pwm 16 - amlogic,meson8b-pwm 17 - amlogic,meson-gxbb-pwm 17 - amlogic,meson-gxbb-pwm 18 - amlogic,meson-gxbb-ao-pwm 18 - amlogic,meson-gxbb-ao-pwm 19 - amlogic,meson-axg-ee-pwm 19 - amlogic,meson-axg-ee-pwm 20 - amlogic,meson-axg-ao-pwm 20 - amlogic,meson-axg-ao-pwm 21 - amlogic,meson-g12a-ee-pwm 21 - amlogic,meson-g12a-ee-pwm 22 - amlogic,meson-g12a-ao-pwm-ab 22 - amlogic,meson-g12a-ao-pwm-ab 23 - amlogic,meson-g12a-ao-pwm-cd 23 - amlogic,meson-g12a-ao-pwm-cd 24 deprecated: true 24 deprecated: true 25 - items: 25 - items: 26 - const: amlogic,meson-gx-pwm 26 - const: amlogic,meson-gx-pwm 27 - const: amlogic,meson-gxbb-pwm 27 - const: amlogic,meson-gxbb-pwm 28 deprecated: true 28 deprecated: true 29 - items: 29 - items: 30 - const: amlogic,meson-gx-ao-pwm 30 - const: amlogic,meson-gx-ao-pwm 31 - const: amlogic,meson-gxbb-ao-pwm 31 - const: amlogic,meson-gxbb-ao-pwm 32 deprecated: true 32 deprecated: true 33 - items: 33 - items: 34 - const: amlogic,meson8-pwm 34 - const: amlogic,meson8-pwm 35 - const: amlogic,meson8b-pwm 35 - const: amlogic,meson8b-pwm 36 deprecated: true 36 deprecated: true 37 - enum: 37 - enum: 38 - amlogic,meson8-pwm-v2 38 - amlogic,meson8-pwm-v2 39 - amlogic,meson-s4-pwm 39 - amlogic,meson-s4-pwm 40 - items: 40 - items: 41 - enum: 41 - enum: 42 - amlogic,meson-a1-pwm 42 - amlogic,meson-a1-pwm 43 - const: amlogic,meson-s4-pwm 43 - const: amlogic,meson-s4-pwm 44 - items: 44 - items: 45 - enum: 45 - enum: 46 - amlogic,meson8b-pwm-v2 46 - amlogic,meson8b-pwm-v2 47 - amlogic,meson-gxbb-pwm-v2 47 - amlogic,meson-gxbb-pwm-v2 48 - amlogic,meson-axg-pwm-v2 48 - amlogic,meson-axg-pwm-v2 49 - amlogic,meson-g12-pwm-v2 49 - amlogic,meson-g12-pwm-v2 50 - const: amlogic,meson8-pwm-v2 50 - const: amlogic,meson8-pwm-v2 51 51 52 reg: 52 reg: 53 maxItems: 1 53 maxItems: 1 54 54 55 clocks: 55 clocks: 56 minItems: 1 56 minItems: 1 57 maxItems: 4 57 maxItems: 4 58 58 59 clock-names: 59 clock-names: 60 minItems: 1 60 minItems: 1 61 maxItems: 2 61 maxItems: 2 62 62 63 power-domains: 63 power-domains: 64 maxItems: 1 64 maxItems: 1 65 65 66 "#pwm-cells": 66 "#pwm-cells": 67 const: 3 67 const: 3 68 68 69 required: 69 required: 70 - compatible 70 - compatible 71 - reg 71 - reg 72 72 73 allOf: 73 allOf: 74 - $ref: pwm.yaml# 74 - $ref: pwm.yaml# 75 75 76 - if: 76 - if: 77 properties: 77 properties: 78 compatible: 78 compatible: 79 contains: 79 contains: 80 enum: 80 enum: 81 - amlogic,meson8-pwm 81 - amlogic,meson8-pwm 82 - amlogic,meson8b-pwm 82 - amlogic,meson8b-pwm 83 - amlogic,meson-gxbb-pwm 83 - amlogic,meson-gxbb-pwm 84 - amlogic,meson-gxbb-ao-pwm 84 - amlogic,meson-gxbb-ao-pwm 85 - amlogic,meson-axg-ee-pwm 85 - amlogic,meson-axg-ee-pwm 86 - amlogic,meson-axg-ao-pwm 86 - amlogic,meson-axg-ao-pwm 87 - amlogic,meson-g12a-ee-pwm 87 - amlogic,meson-g12a-ee-pwm 88 - amlogic,meson-g12a-ao-pwm-ab 88 - amlogic,meson-g12a-ao-pwm-ab 89 - amlogic,meson-g12a-ao-pwm-cd 89 - amlogic,meson-g12a-ao-pwm-cd 90 then: 90 then: 91 # Obsolete historic bindings tied to the 91 # Obsolete historic bindings tied to the driver implementation 92 # The clocks provided here are meant to 92 # The clocks provided here are meant to be matched with the input 93 # known (hard-coded) in the driver and u 93 # known (hard-coded) in the driver and used to select pwm clock 94 # source. Currently, the linux driver ig 94 # source. Currently, the linux driver ignores this. 95 # This is kept to maintain ABI backward 95 # This is kept to maintain ABI backward compatibility. 96 properties: 96 properties: 97 clocks: 97 clocks: 98 maxItems: 2 98 maxItems: 2 99 clock-names: 99 clock-names: 100 oneOf: 100 oneOf: 101 - items: 101 - items: 102 - enum: [clkin0, clkin1] 102 - enum: [clkin0, clkin1] 103 - items: 103 - items: 104 - const: clkin0 104 - const: clkin0 105 - const: clkin1 105 - const: clkin1 106 106 107 # Newer binding where clock describe the act 107 # Newer binding where clock describe the actual clock inputs of the pwm 108 # block. These are necessary but some inputs 108 # block. These are necessary but some inputs may be grounded. 109 - if: 109 - if: 110 properties: 110 properties: 111 compatible: 111 compatible: 112 contains: 112 contains: 113 enum: 113 enum: 114 - amlogic,meson8-pwm-v2 114 - amlogic,meson8-pwm-v2 115 then: 115 then: 116 properties: 116 properties: 117 clocks: 117 clocks: 118 minItems: 1 118 minItems: 1 119 items: 119 items: 120 - description: input clock 0 of th 120 - description: input clock 0 of the pwm block 121 - description: input clock 1 of th 121 - description: input clock 1 of the pwm block 122 - description: input clock 2 of th 122 - description: input clock 2 of the pwm block 123 - description: input clock 3 of th 123 - description: input clock 3 of the pwm block 124 clock-names: false 124 clock-names: false 125 required: 125 required: 126 - clocks 126 - clocks 127 127 128 # Newer IP block take a single input per cha 128 # Newer IP block take a single input per channel, instead of 4 inputs 129 # for both channels 129 # for both channels 130 - if: 130 - if: 131 properties: 131 properties: 132 compatible: 132 compatible: 133 contains: 133 contains: 134 enum: 134 enum: 135 - amlogic,meson-s4-pwm 135 - amlogic,meson-s4-pwm 136 then: 136 then: 137 properties: 137 properties: 138 clocks: 138 clocks: 139 items: 139 items: 140 - description: input clock of PWM 140 - description: input clock of PWM channel A 141 - description: input clock of PWM 141 - description: input clock of PWM channel B 142 clock-names: false 142 clock-names: false 143 required: 143 required: 144 - clocks 144 - clocks 145 145 146 - if: 146 - if: 147 properties: 147 properties: 148 compatible: 148 compatible: 149 contains: 149 contains: 150 enum: 150 enum: 151 - amlogic,meson-a1-pwm 151 - amlogic,meson-a1-pwm 152 then: 152 then: 153 required: 153 required: 154 - power-domains 154 - power-domains 155 155 156 additionalProperties: false 156 additionalProperties: false 157 157 158 examples: 158 examples: 159 - | 159 - | 160 pwm@8550 { 160 pwm@8550 { 161 compatible = "amlogic,meson-gxbb-pwm"; 161 compatible = "amlogic,meson-gxbb-pwm"; 162 reg = <0x08550 0x10>; 162 reg = <0x08550 0x10>; 163 clocks = <&xtal>, <&xtal>; 163 clocks = <&xtal>, <&xtal>; 164 clock-names = "clkin0", "clkin1"; 164 clock-names = "clkin0", "clkin1"; 165 #pwm-cells = <3>; 165 #pwm-cells = <3>; 166 }; 166 }; 167 - | 167 - | 168 pwm@2000 { 168 pwm@2000 { 169 compatible = "amlogic,meson8-pwm-v2"; 169 compatible = "amlogic,meson8-pwm-v2"; 170 reg = <0x1000 0x10>; 170 reg = <0x1000 0x10>; 171 clocks = <&xtal>, <0>, <&fdiv4>, <&fdiv5 171 clocks = <&xtal>, <0>, <&fdiv4>, <&fdiv5>; 172 #pwm-cells = <3>; 172 #pwm-cells = <3>; 173 }; 173 }; 174 - | 174 - | 175 pwm@1000 { 175 pwm@1000 { 176 compatible = "amlogic,meson-s4-pwm"; 176 compatible = "amlogic,meson-s4-pwm"; 177 reg = <0x1000 0x10>; 177 reg = <0x1000 0x10>; 178 clocks = <&pwm_src_a>, <&pwm_src_b>; 178 clocks = <&pwm_src_a>, <&pwm_src_b>; 179 #pwm-cells = <3>; 179 #pwm-cells = <3>; 180 }; 180 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.