# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/mfd/mxs-lradc.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Freescale MXS Low-Resolution ADC (LRADC) maintainers: - Dario Binacchi description: The LRADC provides 16 physical channels of 12-bit resolution for analog-to-digital conversion and includes an integrated 4-wire/5-wire touchscreen controller. properties: compatible: items: - enum: - fsl,imx23-lradc - fsl,imx28-lradc reg: maxItems: 1 clocks: minItems: 1 interrupts: minItems: 9 maxItems: 13 fsl,lradc-touchscreen-wires: $ref: /schemas/types.yaml#/definitions/uint32 enum: [4, 5] description: > Number of wires used to connect the touchscreen to LRADC. If this property is not present, then the touchscreen is disabled. fsl,ave-ctrl: $ref: /schemas/types.yaml#/definitions/uint32 minimum: 1 maximum: 32 default: 4 description: Number of samples per direction to calculate an average value. fsl,ave-delay: $ref: /schemas/types.yaml#/definitions/uint32 minimum: 2 maximum: 2048 default: 2 description: > Delay between consecutive samples. It is used if 'fsl,ave-ctrl' > 1, counts at 2 kHz and its default value (2) is 1 ms. fsl,settling: $ref: /schemas/types.yaml#/definitions/uint32 minimum: 1 maximum: 2047 default: 10 description: > Delay between plate switch to next sample. It counts at 2 kHz and its default (10) is 5 ms. "#io-channel-cells": const: 1 required: - compatible - reg - clocks - interrupts if: properties: compatible: contains: enum: - fsl,imx23-lradc then: properties: interrupts: items: - description: channel 0 - description: channel 1 - description: channel 2 - description: channel 3 - description: channel 4 - description: channel 5 - description: touchscreen - description: channel 6 - description: channel 7 fsl,lradc-touchscreen-wires: const: 4 else: properties: interrupts: items: - description: threshold 0 - description: threshold 1 - description: channel 0 - description: channel 1 - description: channel 2 - description: channel 3 - description: channel 4 - description: channel 5 - description: button 0 - description: button 1 - description: touchscreen - description: channel 6 - description: channel 7 additionalProperties: false examples: - | lradc@80050000 { compatible = "fsl,imx23-lradc"; reg = <0x80050000 0x2000>; interrupts = <36>, <37>, <38>, <39>, <40>, <41>, <42>, <43>, <44>; clocks = <&clks 26>; #io-channel-cells = <1>; fsl,lradc-touchscreen-wires = <4>; fsl,ave-ctrl = <4>; fsl,ave-delay = <2>; fsl,settling = <10>; };