dt-bindings: iio: adc: Add MediaTek MT6359 PMIC AUXADC
authorAngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Tue, 4 Jun 2024 12:30:04 +0000 (14:30 +0200)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Mon, 1 Jul 2024 18:28:22 +0000 (19:28 +0100)
Add a new binding for the MT6350 Series (MT6357/8/9) PMIC AUXADC,
providing various ADC channels for both internal temperatures and
voltages, audio accessory detection (hp/mic/hp+mic and buttons,
usually on a 3.5mm jack) other than some basic battery statistics
on boards where the battery is managed by this PMIC.

Also add the necessary dt-binding headers for devicetree consumers.

Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://patch.msgid.link/20240604123008.327424-2-angelogioacchino.delregno@collabora.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Documentation/devicetree/bindings/iio/adc/mediatek,mt6359-auxadc.yaml [new file with mode: 0644]
include/dt-bindings/iio/adc/mediatek,mt6357-auxadc.h [new file with mode: 0644]
include/dt-bindings/iio/adc/mediatek,mt6358-auxadc.h [new file with mode: 0644]
include/dt-bindings/iio/adc/mediatek,mt6359-auxadc.h [new file with mode: 0644]

diff --git a/Documentation/devicetree/bindings/iio/adc/mediatek,mt6359-auxadc.yaml b/Documentation/devicetree/bindings/iio/adc/mediatek,mt6359-auxadc.yaml
new file mode 100644 (file)
index 0000000..6497c41
--- /dev/null
@@ -0,0 +1,33 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/iio/adc/mediatek,mt6359-auxadc.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: MediaTek MT6350 series PMIC AUXADC
+
+maintainers:
+  - AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
+
+description:
+  The Auxiliary Analog/Digital Converter (AUXADC) is an ADC found
+  in some MediaTek PMICs, performing various PMIC related measurements
+  such as battery and PMIC internal voltage regulators temperatures,
+  accessory detection resistance (usually, for a 3.5mm audio jack)
+  other than voltages for various PMIC internal components.
+
+properties:
+  compatible:
+    enum:
+      - mediatek,mt6357-auxadc
+      - mediatek,mt6358-auxadc
+      - mediatek,mt6359-auxadc
+
+  "#io-channel-cells":
+    const: 1
+
+required:
+  - compatible
+  - "#io-channel-cells"
+
+additionalProperties: false
diff --git a/include/dt-bindings/iio/adc/mediatek,mt6357-auxadc.h b/include/dt-bindings/iio/adc/mediatek,mt6357-auxadc.h
new file mode 100644 (file)
index 0000000..03ebb1d
--- /dev/null
@@ -0,0 +1,21 @@
+/* SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause */
+
+#ifndef _DT_BINDINGS_MEDIATEK_MT6357_AUXADC_H
+#define _DT_BINDINGS_MEDIATEK_MT6357_AUXADC_H
+
+/* ADC Channel Index */
+#define MT6357_AUXADC_BATADC           0
+#define MT6357_AUXADC_ISENSE           1
+#define MT6357_AUXADC_VCDT             2
+#define MT6357_AUXADC_BAT_TEMP         3
+#define MT6357_AUXADC_CHIP_TEMP                4
+#define MT6357_AUXADC_ACCDET           5
+#define MT6357_AUXADC_VDCXO            6
+#define MT6357_AUXADC_TSX_TEMP         7
+#define MT6357_AUXADC_HPOFS_CAL                8
+#define MT6357_AUXADC_DCXO_TEMP                9
+#define MT6357_AUXADC_VCORE_TEMP       10
+#define MT6357_AUXADC_VPROC_TEMP       11
+#define MT6357_AUXADC_VBAT             12
+
+#endif
diff --git a/include/dt-bindings/iio/adc/mediatek,mt6358-auxadc.h b/include/dt-bindings/iio/adc/mediatek,mt6358-auxadc.h
new file mode 100644 (file)
index 0000000..efa0839
--- /dev/null
@@ -0,0 +1,22 @@
+/* SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause */
+
+#ifndef _DT_BINDINGS_MEDIATEK_MT6358_AUXADC_H
+#define _DT_BINDINGS_MEDIATEK_MT6358_AUXADC_H
+
+/* ADC Channel Index */
+#define MT6358_AUXADC_BATADC           0
+#define MT6358_AUXADC_VCDT             1
+#define MT6358_AUXADC_BAT_TEMP         2
+#define MT6358_AUXADC_CHIP_TEMP                3
+#define MT6358_AUXADC_ACCDET           4
+#define MT6358_AUXADC_VDCXO            5
+#define MT6358_AUXADC_TSX_TEMP         6
+#define MT6358_AUXADC_HPOFS_CAL                7
+#define MT6358_AUXADC_DCXO_TEMP                8
+#define MT6358_AUXADC_VBIF             9
+#define MT6358_AUXADC_VCORE_TEMP       10
+#define MT6358_AUXADC_VPROC_TEMP       11
+#define MT6358_AUXADC_VGPU_TEMP                12
+#define MT6358_AUXADC_VBAT             13
+
+#endif
diff --git a/include/dt-bindings/iio/adc/mediatek,mt6359-auxadc.h b/include/dt-bindings/iio/adc/mediatek,mt6359-auxadc.h
new file mode 100644 (file)
index 0000000..5982639
--- /dev/null
@@ -0,0 +1,22 @@
+/* SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause */
+
+#ifndef _DT_BINDINGS_MEDIATEK_MT6359_AUXADC_H
+#define _DT_BINDINGS_MEDIATEK_MT6359_AUXADC_H
+
+/* ADC Channel Index */
+#define MT6359_AUXADC_BATADC           0
+#define MT6359_AUXADC_BAT_TEMP         1
+#define MT6359_AUXADC_CHIP_TEMP                2
+#define MT6359_AUXADC_ACCDET           3
+#define MT6359_AUXADC_VDCXO            4
+#define MT6359_AUXADC_TSX_TEMP         5
+#define MT6359_AUXADC_HPOFS_CAL                6
+#define MT6359_AUXADC_DCXO_TEMP                7
+#define MT6359_AUXADC_VBIF             8
+#define MT6359_AUXADC_VCORE_TEMP       9
+#define MT6359_AUXADC_VPROC_TEMP       10
+#define MT6359_AUXADC_VGPU_TEMP                11
+#define MT6359_AUXADC_VBAT             12
+#define MT6359_AUXADC_IBAT             13
+
+#endif