[PATCH v8 1/2] dt-bindings: iio: health: add adi,max86150

From: Md Shofiqul Islam

Date: Tue Jul 07 2026 - 06:43:26 EST


Add Device Tree binding schema for the Analog Devices MAX86150
integrated ECG and PPG biosensor.

The device exposes two PPG channels (Red LED and IR LED) and one ECG
channel over I2C, with a 32-entry hardware FIFO and an active-low
interrupt.

Signed-off-by: Md Shofiqul Islam <shofiqtest@xxxxxxxxx>
---
.../bindings/iio/health/adi,max86150.yaml | 65 +++++++++++++++++++
1 file changed, 65 insertions(+)
create mode 100644 Documentation/devicetree/bindings/iio/health/adi,max86150.yaml

diff --git a/Documentation/devicetree/bindings/iio/health/adi,max86150.yaml b/Documentation/devicetree/bindings/iio/health/adi,max86150.yaml
new file mode 100644
index 0000000000000..b0ae7d2ecfcec
--- /dev/null
+++ b/Documentation/devicetree/bindings/iio/health/adi,max86150.yaml
@@ -0,0 +1,65 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/iio/health/adi,max86150.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Analog Devices MAX86150 ECG and PPG Biosensor
+
+maintainers:
+ - Md Shofiqul Islam <shofiqtest@xxxxxxxxx>
+
+description: |
+ The MAX86150 is an integrated biosensor that combines two
+ photoplethysmography (PPG) channels (Red LED and IR LED) and one
+ electrocardiogram (ECG) channel for biopotential recording. Samples
+ are buffered in a 32-entry hardware FIFO with a configurable
+ almost-full interrupt.
+
+ Datasheet:
+ https://www.analog.com/media/en/technical-documentation/data-sheets/MAX86150.pdf
+
+properties:
+ compatible:
+ const: adi,max86150
+
+ reg:
+ maxItems: 1
+
+ interrupts:
+ maxItems: 1
+ description:
+ Interrupt line, asserted when the FIFO almost-full threshold is
+ reached.
+
+ vdd-supply:
+ description: VDD power supply (1.8 V).
+
+ vled-supply:
+ description: VLED LED anode supply (3.3 V to 5 V).
+
+required:
+ - compatible
+ - reg
+ - vdd-supply
+ - vled-supply
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/interrupt-controller/irq.h>
+
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ heart-rate@5e {
+ compatible = "adi,max86150";
+ reg = <0x5e>;
+ interrupt-parent = <&gpio1>;
+ interrupts = <5 IRQ_TYPE_LEVEL_LOW>;
+ vdd-supply = <&vdd_1v8>;
+ vled-supply = <&vdd_3v3>;
+ };
+ };
--
2.51.1