xref: /linux/Documentation/devicetree/bindings/mfd/stericsson,ab8500.yaml (revision f2161d5f1aae21a42b0a64d87e10cb31db423f42)
1a002f65aSLinus Walleij# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2a002f65aSLinus Walleij%YAML 1.2
3a002f65aSLinus Walleij---
4a002f65aSLinus Walleij$id: http://devicetree.org/schemas/mfd/stericsson,ab8500.yaml#
5a002f65aSLinus Walleij$schema: http://devicetree.org/meta-schemas/core.yaml#
6a002f65aSLinus Walleij
7a002f65aSLinus Walleijtitle: ST-Ericsson Analog Baseband AB8500 and AB8505
8a002f65aSLinus Walleij
9a002f65aSLinus Walleijmaintainers:
10*54de247aSLinus Walleij  - Linus Walleij <linusw@kernel.org>
11a002f65aSLinus Walleij
12a002f65aSLinus Walleijdescription:
13a002f65aSLinus Walleij  the AB8500 "Analog Baseband" is the mixed-signals integrated circuit
14a002f65aSLinus Walleij  handling power management (regulators), analog-to-digital conversion
15a002f65aSLinus Walleij  (ADC), battery charging, fuel gauging of the battery, battery-backed
16a002f65aSLinus Walleij  RTC, PWM, USB PHY and some GPIO lines in the ST-Ericsson U8500 platforms
17a002f65aSLinus Walleij  in connection with the DB8500 digital baseband. The DB8500 PRCMU
18a002f65aSLinus Walleij  communicates directly and autonomously with the AB8500 and thus it
19a002f65aSLinus Walleij  appears as a subnode of the DB8500 PRCMU. An altered version called
20a002f65aSLinus Walleij  AB8505 also exist, the difference in AB8505 is that some of the USB and
21a002f65aSLinus Walleij  USB charging handling has changed, and it has an embedded USB-to-serial
22a002f65aSLinus Walleij  converter. Most subblocks takes their interrupts directly from the
23a002f65aSLinus Walleij  AB8500 embedded interrupt controller.
24a002f65aSLinus Walleij
25a002f65aSLinus Walleijproperties:
26a002f65aSLinus Walleij  $nodename:
27a002f65aSLinus Walleij    pattern: '^ab850[05]$'
28a002f65aSLinus Walleij
29a002f65aSLinus Walleij  compatible:
30a002f65aSLinus Walleij    enum:
31a002f65aSLinus Walleij      - stericsson,ab8500
32a002f65aSLinus Walleij      - stericsson,ab8505
33a002f65aSLinus Walleij
34a002f65aSLinus Walleij  interrupts:
35a002f65aSLinus Walleij    maxItems: 1
36a002f65aSLinus Walleij
37a002f65aSLinus Walleij  interrupt-controller: true
38a002f65aSLinus Walleij
39a002f65aSLinus Walleij  '#interrupt-cells':
40a002f65aSLinus Walleij    const: 2
41a002f65aSLinus Walleij
42a002f65aSLinus Walleij  # Some subnodes use a reg, some don't. Those that do use a single cell.
43a002f65aSLinus Walleij  '#address-cells':
44a002f65aSLinus Walleij    const: 1
45a002f65aSLinus Walleij
46a002f65aSLinus Walleij  '#size-cells':
47a002f65aSLinus Walleij    const: 0
48a002f65aSLinus Walleij
49a002f65aSLinus Walleij  clock-controller:
50a002f65aSLinus Walleij    description: Node describing the AB8500 clock controller. This
51a002f65aSLinus Walleij      provides the reference clock for the entire U8500 system and
52a002f65aSLinus Walleij      the DB8500 counterpart.
53a002f65aSLinus Walleij    type: object
5442839dcaSRob Herring    additionalProperties: false
55a002f65aSLinus Walleij
56a002f65aSLinus Walleij    properties:
57a002f65aSLinus Walleij      compatible:
58a002f65aSLinus Walleij        const: stericsson,ab8500-clk
59a002f65aSLinus Walleij
60a002f65aSLinus Walleij      '#clock-cells':
61a002f65aSLinus Walleij        const: 1
62a002f65aSLinus Walleij
63a002f65aSLinus Walleij  gpio:
64a002f65aSLinus Walleij    description: Node describing the AB8500 GPIO controller. A few
65a002f65aSLinus Walleij      GPIO pins available for misc usage.
66a002f65aSLinus Walleij    type: object
6742839dcaSRob Herring    additionalProperties: false
68a002f65aSLinus Walleij
69a002f65aSLinus Walleij    properties:
70a002f65aSLinus Walleij      compatible:
71a002f65aSLinus Walleij        enum:
72a002f65aSLinus Walleij          - stericsson,ab8500-gpio
73a002f65aSLinus Walleij          - stericsson,ab8505-gpio
74a002f65aSLinus Walleij
75a002f65aSLinus Walleij      gpio-controller: true
76a002f65aSLinus Walleij
77a002f65aSLinus Walleij      '#gpio-cells':
78a002f65aSLinus Walleij        const: 2
79a002f65aSLinus Walleij
80a002f65aSLinus Walleij  rtc:
81a002f65aSLinus Walleij    description: Node describing the AB8500 battery-backed RTC.
82a002f65aSLinus Walleij    type: object
8342839dcaSRob Herring    additionalProperties: false
84a002f65aSLinus Walleij
85a002f65aSLinus Walleij    properties:
86a002f65aSLinus Walleij      compatible:
87a002f65aSLinus Walleij        const: stericsson,ab8500-rtc
88a002f65aSLinus Walleij
89a002f65aSLinus Walleij      interrupts:
90a002f65aSLinus Walleij        items:
91a002f65aSLinus Walleij          - description: 60 second interval alarm interrupt
92a002f65aSLinus Walleij          - description: RTC alarm
93a002f65aSLinus Walleij
94a002f65aSLinus Walleij      interrupt-names:
95a002f65aSLinus Walleij        items:
96a002f65aSLinus Walleij          - const: 60S
97a002f65aSLinus Walleij          - const: ALARM
98a002f65aSLinus Walleij
99a002f65aSLinus Walleij  adc:
100a002f65aSLinus Walleij    description: Node describing the AB8500 general purpose analog to digital
101a002f65aSLinus Walleij      converter, GPADC.
102a002f65aSLinus Walleij    type: object
103a002f65aSLinus Walleij
104a002f65aSLinus Walleij    properties:
105a002f65aSLinus Walleij      compatible:
106a002f65aSLinus Walleij        const: stericsson,ab8500-gpadc
107a002f65aSLinus Walleij
108a002f65aSLinus Walleij      # AB8505 only supports one (software) EOC interrupt
109a002f65aSLinus Walleij      interrupts:
110a002f65aSLinus Walleij        minItems: 1
111a002f65aSLinus Walleij        maxItems: 2
112a002f65aSLinus Walleij
113a002f65aSLinus Walleij      interrupt-names: true
114a002f65aSLinus Walleij
115a002f65aSLinus Walleij      vddadc-supply: true
116a002f65aSLinus Walleij
117a002f65aSLinus Walleij      '#address-cells':
118a002f65aSLinus Walleij        const: 1
119a002f65aSLinus Walleij
120a002f65aSLinus Walleij      '#size-cells':
121a002f65aSLinus Walleij        const: 0
122a002f65aSLinus Walleij
123a002f65aSLinus Walleij      '#io-channel-cells':
124a002f65aSLinus Walleij        const: 1
125a002f65aSLinus Walleij
126a002f65aSLinus Walleij    patternProperties:
127a002f65aSLinus Walleij      "^channel@[0-9a-f]+$":
128a002f65aSLinus Walleij        type: object
1291482489bSKrzysztof Kozlowski        $ref: /schemas/iio/adc/adc.yaml#
130a002f65aSLinus Walleij        description: Represents each of the external channels which are
131a002f65aSLinus Walleij          connected to the ADC.
132a002f65aSLinus Walleij
133a002f65aSLinus Walleij        properties:
134a002f65aSLinus Walleij          reg:
135a002f65aSLinus Walleij            items:
136a002f65aSLinus Walleij              minimum: 1
137a002f65aSLinus Walleij              maximum: 31
138a002f65aSLinus Walleij
139a002f65aSLinus Walleij        required:
140a002f65aSLinus Walleij          - reg
141a002f65aSLinus Walleij
142a002f65aSLinus Walleij        additionalProperties: false
143a002f65aSLinus Walleij
144a002f65aSLinus Walleij    required:
145a002f65aSLinus Walleij      - compatible
146a002f65aSLinus Walleij      - interrupts
147a002f65aSLinus Walleij      - interrupt-names
148a002f65aSLinus Walleij      - vddadc-supply
149a002f65aSLinus Walleij      - '#address-cells'
150a002f65aSLinus Walleij      - '#size-cells'
151a002f65aSLinus Walleij      - '#io-channel-cells'
152a002f65aSLinus Walleij
153a002f65aSLinus Walleij    additionalProperties: false
154a002f65aSLinus Walleij
155a002f65aSLinus Walleij  thermal:
156a002f65aSLinus Walleij    description: Node describing the AB8500 thermal control block. All this block
157a002f65aSLinus Walleij      really does is to fire an interrupt when the die becomes 130 degrees Celsius
158a002f65aSLinus Walleij      in temperature.
159a002f65aSLinus Walleij    type: object
160a002f65aSLinus Walleij
161a002f65aSLinus Walleij    properties:
162a002f65aSLinus Walleij      compatible:
163a002f65aSLinus Walleij        const: stericsson,abx500-temp
164a002f65aSLinus Walleij
165a002f65aSLinus Walleij      interrupts:
166a002f65aSLinus Walleij        items:
167a002f65aSLinus Walleij          - description: Thermal warm warning interrupt
168a002f65aSLinus Walleij
169a002f65aSLinus Walleij      interrupt-names:
170a002f65aSLinus Walleij        items:
171a002f65aSLinus Walleij          - const: ABX500_TEMP_WARM
172a002f65aSLinus Walleij
173a002f65aSLinus Walleij    required:
174a002f65aSLinus Walleij      - compatible
175a002f65aSLinus Walleij      - interrupts
176a002f65aSLinus Walleij      - interrupt-names
177a002f65aSLinus Walleij
178a002f65aSLinus Walleij    additionalProperties: false
179a002f65aSLinus Walleij
180a002f65aSLinus Walleij  ab8500_fg:
181a002f65aSLinus Walleij    description: Node describing the AB8500 fuel gauge control block.
182a002f65aSLinus Walleij    type: object
1831482489bSKrzysztof Kozlowski    $ref: /schemas/power/supply/stericsson,ab8500-fg.yaml
184a002f65aSLinus Walleij
185a002f65aSLinus Walleij  ab8500_btemp:
186a002f65aSLinus Walleij    description: Node describing the AB8500 battery temperature control block.
187a002f65aSLinus Walleij    type: object
1881482489bSKrzysztof Kozlowski    $ref: /schemas/power/supply/stericsson,ab8500-btemp.yaml
189a002f65aSLinus Walleij
190a002f65aSLinus Walleij  ab8500_charger:
191a002f65aSLinus Walleij    description: Node describing the AB8500 battery charger control block.
192a002f65aSLinus Walleij    type: object
1931482489bSKrzysztof Kozlowski    $ref: /schemas/power/supply/stericsson,ab8500-charger.yaml
194a002f65aSLinus Walleij
195a002f65aSLinus Walleij  ab8500_chargalg:
196a002f65aSLinus Walleij    description: Node describing the AB8500 battery charger algorithm.
197a002f65aSLinus Walleij    type: object
1981482489bSKrzysztof Kozlowski    $ref: /schemas/power/supply/stericsson,ab8500-chargalg.yaml
199a002f65aSLinus Walleij
200a002f65aSLinus Walleij  phy:
201a002f65aSLinus Walleij    description: Node describing the AB8500 USB PHY control block.
202a002f65aSLinus Walleij    type: object
203a002f65aSLinus Walleij
204a002f65aSLinus Walleij    properties:
205a002f65aSLinus Walleij      compatible:
206a002f65aSLinus Walleij        const: stericsson,ab8500-usb
207a002f65aSLinus Walleij
208a002f65aSLinus Walleij      interrupts:
209a002f65aSLinus Walleij        items:
210a002f65aSLinus Walleij          - description: ID wakeup rising IRQ
211a002f65aSLinus Walleij          - description: ID wakeup falling IRQ
212a002f65aSLinus Walleij          - description: VBUS detection falling IRQ
213a002f65aSLinus Walleij          - description: VBUS detection rising IRQ
214a002f65aSLinus Walleij          - description: USB link status change IRQ
215a002f65aSLinus Walleij          - description: ADP probe plug IRQ
216a002f65aSLinus Walleij          - description: ADP probe unplug IRQ
217a002f65aSLinus Walleij
218a002f65aSLinus Walleij      interrupt-names:
219a002f65aSLinus Walleij        items:
220a002f65aSLinus Walleij          - const: ID_WAKEUP_R
221a002f65aSLinus Walleij          - const: ID_WAKEUP_F
222a002f65aSLinus Walleij          - const: VBUS_DET_F
223a002f65aSLinus Walleij          - const: VBUS_DET_R
224a002f65aSLinus Walleij          - const: USB_LINK_STATUS
225a002f65aSLinus Walleij          - const: USB_ADP_PROBE_PLUG
226a002f65aSLinus Walleij          - const: USB_ADP_PROBE_UNPLUG
227a002f65aSLinus Walleij
228a002f65aSLinus Walleij      vddulpivio18-supply: true
229a002f65aSLinus Walleij      v-ape-supply: true
230a002f65aSLinus Walleij      musb_1v8-supply: true
231a002f65aSLinus Walleij
232a002f65aSLinus Walleij      clocks:
233a002f65aSLinus Walleij        items:
234a002f65aSLinus Walleij          - description: PRCMY system clock
235a002f65aSLinus Walleij
236a002f65aSLinus Walleij      clock-names:
237a002f65aSLinus Walleij        items:
238a002f65aSLinus Walleij          - const: sysclk
239a002f65aSLinus Walleij
240a002f65aSLinus Walleij      '#phy-cells':
241a002f65aSLinus Walleij        const: 0
242a002f65aSLinus Walleij
243a002f65aSLinus Walleij    required:
244a002f65aSLinus Walleij      - compatible
245a002f65aSLinus Walleij      - interrupts
246a002f65aSLinus Walleij      - interrupt-names
247a002f65aSLinus Walleij      - vddulpivio18-supply
248a002f65aSLinus Walleij      - v-ape-supply
249a002f65aSLinus Walleij      - musb_1v8-supply
250a002f65aSLinus Walleij      - clocks
251a002f65aSLinus Walleij      - clock-names
252a002f65aSLinus Walleij      - '#phy-cells'
253a002f65aSLinus Walleij
254a002f65aSLinus Walleij    additionalProperties: false
255a002f65aSLinus Walleij
256a002f65aSLinus Walleij  key:
257a002f65aSLinus Walleij    description: Node describing the AB8500 power-on key control block.
258a002f65aSLinus Walleij    type: object
259a002f65aSLinus Walleij
260a002f65aSLinus Walleij    properties:
261a002f65aSLinus Walleij      compatible:
262a002f65aSLinus Walleij        const: stericsson,ab8500-poweron-key
263a002f65aSLinus Walleij
264a002f65aSLinus Walleij      interrupts:
265a002f65aSLinus Walleij        items:
266a002f65aSLinus Walleij          - description: ON key falling IRQ
267a002f65aSLinus Walleij          - description: ON key rising IRQ
268a002f65aSLinus Walleij
269a002f65aSLinus Walleij      interrupt-names:
270a002f65aSLinus Walleij        items:
271a002f65aSLinus Walleij          - const: ONKEY_DBF
272a002f65aSLinus Walleij          - const: ONKEY_DBR
273a002f65aSLinus Walleij
274a002f65aSLinus Walleij    required:
275a002f65aSLinus Walleij      - compatible
276a002f65aSLinus Walleij      - interrupts
277a002f65aSLinus Walleij      - interrupt-names
278a002f65aSLinus Walleij
279a002f65aSLinus Walleij    additionalProperties: false
280a002f65aSLinus Walleij
281a002f65aSLinus Walleij  ab8500-sysctrl:
282a002f65aSLinus Walleij    description: Node describing the AB8500 system control block.
283a002f65aSLinus Walleij    type: object
284a002f65aSLinus Walleij
285a002f65aSLinus Walleij    properties:
286a002f65aSLinus Walleij      compatible:
287a002f65aSLinus Walleij        const: stericsson,ab8500-sysctrl
288a002f65aSLinus Walleij
289a002f65aSLinus Walleij    required:
290a002f65aSLinus Walleij      - compatible
291a002f65aSLinus Walleij
292a002f65aSLinus Walleij    additionalProperties: false
293a002f65aSLinus Walleij
294a002f65aSLinus Walleij  codec:
295a002f65aSLinus Walleij    description: Node describing the AB8500 audio codec block.
296a002f65aSLinus Walleij    type: object
297a002f65aSLinus Walleij
298a002f65aSLinus Walleij    properties:
299a002f65aSLinus Walleij      compatible:
300a002f65aSLinus Walleij        const: stericsson,ab8500-codec
301a002f65aSLinus Walleij
302a002f65aSLinus Walleij      V-AUD-supply: true
303a002f65aSLinus Walleij      V-AMIC1-supply: true
304a002f65aSLinus Walleij      V-AMIC2-supply: true
305a002f65aSLinus Walleij      V-DMIC-supply: true
306a002f65aSLinus Walleij
307a002f65aSLinus Walleij      clocks:
308a002f65aSLinus Walleij        items:
309a002f65aSLinus Walleij          - description: Audio system clock
310a002f65aSLinus Walleij
311a002f65aSLinus Walleij      clock-names:
312a002f65aSLinus Walleij        items:
313a002f65aSLinus Walleij          - const: audioclk
314a002f65aSLinus Walleij
315a002f65aSLinus Walleij      stericsson,earpeice-cmv:
31647aab533SBjorn Helgaas        description: Earpiece voltage
317a002f65aSLinus Walleij        $ref: /schemas/types.yaml#/definitions/uint32
318a002f65aSLinus Walleij        enum: [ 950, 1100, 1270, 1580 ]
319a002f65aSLinus Walleij
320a002f65aSLinus Walleij    required:
321a002f65aSLinus Walleij      - compatible
322a002f65aSLinus Walleij
323a002f65aSLinus Walleij    additionalProperties: false
324a002f65aSLinus Walleij
325a002f65aSLinus Walleij  regulator:
326a002f65aSLinus Walleij    description: Node describing the AB8500 internal regulators.
327a002f65aSLinus Walleij    type: object
328a002f65aSLinus Walleij
329a002f65aSLinus Walleij    properties:
330a002f65aSLinus Walleij      compatible:
331a002f65aSLinus Walleij        enum:
332a002f65aSLinus Walleij          - stericsson,ab8500-regulator
333a002f65aSLinus Walleij          - stericsson,ab8505-regulator
334a002f65aSLinus Walleij
335a002f65aSLinus Walleij      vin-supply:
336a002f65aSLinus Walleij        description: The regulator supplying all of the internal regulators
337a002f65aSLinus Walleij          with power.
338a002f65aSLinus Walleij
339a002f65aSLinus Walleij      ab8500_ldo_aux1:
34047aab533SBjorn Helgaas        description: The voltage for the auxiliary LDO regulator 1
341a002f65aSLinus Walleij        type: object
3421482489bSKrzysztof Kozlowski        $ref: /schemas/regulator/regulator.yaml#
34342839dcaSRob Herring        unevaluatedProperties: false
344a002f65aSLinus Walleij
345a002f65aSLinus Walleij      ab8500_ldo_aux2:
34647aab533SBjorn Helgaas        description: The voltage for the auxiliary LDO regulator 2
347a002f65aSLinus Walleij        type: object
3481482489bSKrzysztof Kozlowski        $ref: /schemas/regulator/regulator.yaml#
34942839dcaSRob Herring        unevaluatedProperties: false
350a002f65aSLinus Walleij
351a002f65aSLinus Walleij      ab8500_ldo_aux3:
35247aab533SBjorn Helgaas        description: The voltage for the auxiliary LDO regulator 3
353a002f65aSLinus Walleij        type: object
3541482489bSKrzysztof Kozlowski        $ref: /schemas/regulator/regulator.yaml#
35542839dcaSRob Herring        unevaluatedProperties: false
356a002f65aSLinus Walleij
357a002f65aSLinus Walleij      ab8500_ldo_aux4:
35847aab533SBjorn Helgaas        description: The voltage for the auxiliary LDO regulator 4
359a002f65aSLinus Walleij          only present on AB8505
360a002f65aSLinus Walleij        type: object
3611482489bSKrzysztof Kozlowski        $ref: /schemas/regulator/regulator.yaml#
36242839dcaSRob Herring        unevaluatedProperties: false
363a002f65aSLinus Walleij
364a002f65aSLinus Walleij      ab8500_ldo_aux5:
36547aab533SBjorn Helgaas        description: The voltage for the auxiliary LDO regulator 5
366a002f65aSLinus Walleij          only present on AB8505
367a002f65aSLinus Walleij        type: object
3681482489bSKrzysztof Kozlowski        $ref: /schemas/regulator/regulator.yaml#
36942839dcaSRob Herring        unevaluatedProperties: false
370a002f65aSLinus Walleij
371a002f65aSLinus Walleij      ab8500_ldo_aux6:
37247aab533SBjorn Helgaas        description: The voltage for the auxiliary LDO regulator 6
373a002f65aSLinus Walleij          only present on AB8505
374a002f65aSLinus Walleij        type: object
3751482489bSKrzysztof Kozlowski        $ref: /schemas/regulator/regulator.yaml#
37642839dcaSRob Herring        unevaluatedProperties: false
377a002f65aSLinus Walleij
378a002f65aSLinus Walleij      # There is never any AUX7 regulator which is confusing
379a002f65aSLinus Walleij
380a002f65aSLinus Walleij      ab8500_ldo_aux8:
38147aab533SBjorn Helgaas        description: The voltage for the auxiliary LDO regulator 8
382a002f65aSLinus Walleij          only present on AB8505
383a002f65aSLinus Walleij        type: object
3841482489bSKrzysztof Kozlowski        $ref: /schemas/regulator/regulator.yaml#
38542839dcaSRob Herring        unevaluatedProperties: false
386a002f65aSLinus Walleij
387a002f65aSLinus Walleij      ab8500_ldo_intcore:
388a002f65aSLinus Walleij        description: The LDO regulator for the internal core voltage
389a002f65aSLinus Walleij          of the AB8500
390a002f65aSLinus Walleij        type: object
3911482489bSKrzysztof Kozlowski        $ref: /schemas/regulator/regulator.yaml#
39242839dcaSRob Herring        unevaluatedProperties: false
393a002f65aSLinus Walleij
394a002f65aSLinus Walleij      ab8500_ldo_adc:
395a002f65aSLinus Walleij        description: Analog power regulator for the analog to digital converter
396a002f65aSLinus Walleij          ADC, only present on AB8505
397a002f65aSLinus Walleij        type: object
3981482489bSKrzysztof Kozlowski        $ref: /schemas/regulator/regulator.yaml#
39942839dcaSRob Herring        unevaluatedProperties: false
400a002f65aSLinus Walleij
401a002f65aSLinus Walleij      ab8500_ldo_tvout:
402a002f65aSLinus Walleij        description: The voltage for the TV output regulator, incidentally
403a002f65aSLinus Walleij          this voltage is also used for other purposes such as measuring
404a002f65aSLinus Walleij          the temperature of the NTC thermistor on the battery.
405a002f65aSLinus Walleij          Only present on AB8500.
406a002f65aSLinus Walleij        type: object
4071482489bSKrzysztof Kozlowski        $ref: /schemas/regulator/regulator.yaml#
40842839dcaSRob Herring        unevaluatedProperties: false
409a002f65aSLinus Walleij
410a002f65aSLinus Walleij      ab8500_ldo_audio:
411a002f65aSLinus Walleij        description: The LDO regulator for the audio codec output
412a002f65aSLinus Walleij        type: object
4131482489bSKrzysztof Kozlowski        $ref: /schemas/regulator/regulator.yaml#
41442839dcaSRob Herring        unevaluatedProperties: false
415a002f65aSLinus Walleij
416a002f65aSLinus Walleij      ab8500_ldo_anamic1:
417a002f65aSLinus Walleij        description: The LDO regulator for the analog microphone 1
418a002f65aSLinus Walleij        type: object
4191482489bSKrzysztof Kozlowski        $ref: /schemas/regulator/regulator.yaml#
42042839dcaSRob Herring        unevaluatedProperties: false
421a002f65aSLinus Walleij
422a002f65aSLinus Walleij      ab8500_ldo_anamic2:
423a002f65aSLinus Walleij        description: The LDO regulator for the analog microphone 2
424a002f65aSLinus Walleij        type: object
4251482489bSKrzysztof Kozlowski        $ref: /schemas/regulator/regulator.yaml#
42642839dcaSRob Herring        unevaluatedProperties: false
427a002f65aSLinus Walleij
428a002f65aSLinus Walleij      ab8500_ldo_dmic:
429a002f65aSLinus Walleij        description: The LDO regulator for the digital microphone
430a002f65aSLinus Walleij          only present on AB8500
431a002f65aSLinus Walleij        type: object
4321482489bSKrzysztof Kozlowski        $ref: /schemas/regulator/regulator.yaml#
43342839dcaSRob Herring        unevaluatedProperties: false
434a002f65aSLinus Walleij
435a002f65aSLinus Walleij      ab8500_ldo_ana:
436a002f65aSLinus Walleij        description: Analog power regulator for CSI and DSI interfaces,
437a002f65aSLinus Walleij          Camera Serial Interface CSI and Display Serial Interface DSI.
438a002f65aSLinus Walleij        type: object
4391482489bSKrzysztof Kozlowski        $ref: /schemas/regulator/regulator.yaml#
44042839dcaSRob Herring        unevaluatedProperties: false
441a002f65aSLinus Walleij
442a002f65aSLinus Walleij    required:
443a002f65aSLinus Walleij      - compatible
444a002f65aSLinus Walleij
445a002f65aSLinus Walleij    additionalProperties: false
446a002f65aSLinus Walleij
447a002f65aSLinus Walleij  regulator-external:
448a002f65aSLinus Walleij    description: Node describing the AB8500 external regulators. This
449a002f65aSLinus Walleij      concerns the autonomous regulators VSMPS1, VSMPS2 and VSMPS3
450a002f65aSLinus Walleij      that are normally controlled by external electronics but also
451a002f65aSLinus Walleij      sometimes need to be explicitly controlled by software.
452a002f65aSLinus Walleij    type: object
453a002f65aSLinus Walleij
454a002f65aSLinus Walleij    properties:
455a002f65aSLinus Walleij      compatible:
456a002f65aSLinus Walleij        const: stericsson,ab8500-ext-regulator
457a002f65aSLinus Walleij
458a002f65aSLinus Walleij      ab8500_ext1:
459a002f65aSLinus Walleij        description: The voltage for the VSMPS1 external regulator
460a002f65aSLinus Walleij        type: object
4611482489bSKrzysztof Kozlowski        $ref: /schemas/regulator/regulator.yaml#
46242839dcaSRob Herring        unevaluatedProperties: false
463a002f65aSLinus Walleij
464a002f65aSLinus Walleij      ab8500_ext2:
465a002f65aSLinus Walleij        description: The voltage for the VSMPS2 external regulator
466a002f65aSLinus Walleij        type: object
4671482489bSKrzysztof Kozlowski        $ref: /schemas/regulator/regulator.yaml#
46842839dcaSRob Herring        unevaluatedProperties: false
469a002f65aSLinus Walleij
470a002f65aSLinus Walleij      ab8500_ext3:
471a002f65aSLinus Walleij        description: The voltage for the VSMPS3 external regulator
472a002f65aSLinus Walleij        type: object
4731482489bSKrzysztof Kozlowski        $ref: /schemas/regulator/regulator.yaml#
47442839dcaSRob Herring        unevaluatedProperties: false
475a002f65aSLinus Walleij
476a002f65aSLinus Walleij    required:
477a002f65aSLinus Walleij      - compatible
478a002f65aSLinus Walleij
479a002f65aSLinus Walleij    additionalProperties: false
480a002f65aSLinus Walleij
481a002f65aSLinus WalleijpatternProperties:
482a002f65aSLinus Walleij  "^pwm@[1-9]+?$":
483a002f65aSLinus Walleij    type: object
4841482489bSKrzysztof Kozlowski    $ref: /schemas/pwm/pwm.yaml#
48542839dcaSRob Herring    unevaluatedProperties: false
486a002f65aSLinus Walleij    description: Represents each of the PWM blocks in the AB8500
487a002f65aSLinus Walleij
488a002f65aSLinus Walleij    properties:
489a002f65aSLinus Walleij      compatible:
490a002f65aSLinus Walleij        const: stericsson,ab8500-pwm
491a002f65aSLinus Walleij
492a002f65aSLinus Walleij      reg: true
493a002f65aSLinus Walleij
494a002f65aSLinus Walleij      clocks:
495a002f65aSLinus Walleij        items:
496a002f65aSLinus Walleij          - description: internal clock
497a002f65aSLinus Walleij
498a002f65aSLinus Walleij      clock-names:
499a002f65aSLinus Walleij        items:
500a002f65aSLinus Walleij          - const: intclk
501a002f65aSLinus Walleij
502a002f65aSLinus Walleij    required:
503a002f65aSLinus Walleij      - compatible
504a002f65aSLinus Walleij      - reg
505a002f65aSLinus Walleij
506a002f65aSLinus Walleijrequired:
507a002f65aSLinus Walleij  - compatible
508a002f65aSLinus Walleij  - clock-controller
509a002f65aSLinus Walleij  - gpio
510a002f65aSLinus Walleij  - rtc
511a002f65aSLinus Walleij  - adc
512a002f65aSLinus Walleij  - thermal
513a002f65aSLinus Walleij  - ab8500_fg
514a002f65aSLinus Walleij  - ab8500_btemp
515a002f65aSLinus Walleij  - ab8500_charger
516a002f65aSLinus Walleij  - ab8500_chargalg
517a002f65aSLinus Walleij  - phy
518a002f65aSLinus Walleij  - key
519a002f65aSLinus Walleij  - regulator
520a002f65aSLinus Walleij
521a002f65aSLinus WalleijadditionalProperties: false
522