Commit b52e2f19 authored by Matti Vaittinen's avatar Matti Vaittinen Committed by Jonathan Cameron
Browse files

dt-bindings: iio: Add KX022A accelerometer



KX022A is a 3-axis Accelerometer from ROHM/Kionix. The sensor features
include variable ODRs, I2C and SPI control, FIFO/LIFO with watermark IRQ,
tap/motion detection, wake-up & back-to-sleep events, four acceleration
ranges (2, 4, 8 and 16g) and probably some other cool features.

Add the basic device tree description for the accelerometer. Only basic
accelerometer features are considered as of now - new properties may or
may not be needed in the future when rest of the features are supported.

Signed-off-by: default avatarMatti Vaittinen <mazziesaccount@gmail.com>
Reviewed-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/06f8e1ab29d02ed216db10091a269df4b6abad9a.1666614295.git.mazziesaccount@gmail.com


Signed-off-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
parent f7626504
Loading
Loading
Loading
Loading
+65 −0
Original line number Diff line number Diff line
# 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 Accelerometer

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

description: |
  KX022A is a 3-axis accelerometer supporting +/- 2G, 4G, 8G and 16G ranges,
  output data-rates from 0.78Hz to 1600Hz and a hardware-fifo buffering.
  KX022A can be accessed either via I2C or SPI.

properties:
  compatible:
    const: kionix,kx022a

  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>;
        };
    };