# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/accel/kionix,kx022a.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: ROHM/Kionix KX022A, KX132/134-1211 and KX132/134ACR-LBZ Accelerometers

maintainers:
  - Matti Vaittinen <mazziesaccount@gmail.com>

description: |
  KX022A, KX132ACR-LBZ and KX132-1211 are 3-axis accelerometers supporting
  +/- 2G, 4G, 8G and 16G ranges. The KX134ACR-LBZ and KX134-1211 support
  +/- 8G, 16G, 32G and 64G. All the sensors also have variable output
  data-rates and a hardware-fifo buffering. These accelerometers can be
  accessed either via I2C or SPI.

properties:
  compatible:
    enum:
      - kionix,kx022a
      - kionix,kx132-1211
      - kionix,kx134-1211
      - rohm,kx132acr-lbz
      - rohm,kx134acr-lbz

  reg:
    maxItems: 1

  interrupts:
    minItems: 1
    maxItems: 2

  interrupt-names:
    minItems: 1
    items:
      - enum: [INT1, INT2]
      - const: INT2

  vdd-supply: true
  io-vdd-supply: true

  mount-matrix:
    description: |
      an optional 3x3 mounting rotation matrix.

required:
  - compatible
  - reg
  - interrupts

additionalProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/irq.h>
    i2c {
        #address-cells = <1>;
        #size-cells = <0>;
        accel@1f {
            compatible = "kionix,kx022a";
            reg = <0x1f>;

            interrupt-parent = <&gpio1>;
            interrupts = <29 IRQ_TYPE_LEVEL_LOW>;
            interrupt-names = "INT1";

            io-vdd-supply = <&iovdd>;
            vdd-supply = <&vdd>;
        };
    };
