# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/temperature/maxim,max31855k.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Maxim MAX31855 and similar thermocouples

maintainers:
  - Matt Ranostay <matt.ranostay@konsulko.com>

description: |
  https://datasheets.maximintegrated.com/en/ds/MAX6675.pdf
  https://datasheets.maximintegrated.com/en/ds/MAX31855.pdf

properties:
  compatible:
    description:
      The generic maxim,max31855 compatible is deprecated in favour of
      the thermocouple type specific variants.
    enum:
      - maxim,max6675
      - maxim,max31855
      - maxim,max31855k
      - maxim,max31855j
      - maxim,max31855n
      - maxim,max31855s
      - maxim,max31855t
      - maxim,max31855e
      - maxim,max31855r

  reg:
    maxItems: 1

  spi-cpha: true

required:
  - compatible
  - reg

allOf:
  - $ref: /schemas/spi/spi-peripheral-props.yaml#
  - if:
      properties:
        compatible:
          contains:
            enum:
              - maxim,max6675
    then:
      required:
        - spi-cpha
    else:
      properties:
        spi-cpha: false

unevaluatedProperties: false

examples:
  - |
    spi {
        #address-cells = <1>;
        #size-cells = <0>;

        temp-sensor@0 {
            compatible = "maxim,max31855k";
            reg = <0>;
            spi-max-frequency = <4300000>;
        };
        temp-sensor@1 {
            compatible = "maxim,max6675";
            reg = <1>;
            spi-max-frequency = <4300000>;
            spi-cpha;
        };
    };
...