Re: [PATCH v3 1/2] dt-bindings: iio: imu: add fxos8700 imu binding

Rob Herring
2019-10-11T13:58:14Z

On Thu, Oct 10, 2019 at 10:56:47AM -0700, Robert Jones wrote:
> This adds documentation for the Freescale FXOS8700 Inertial Measurement Unit
> device-tree bindings.
>
> Signed-off-by: Robert Jones <rjones@gateworks.com>
> ---
> .../devicetree/bindings/iio/imu/nxp,fxos8700.yaml | 69 ++++++++++++++++++++++
> 1 file changed, 69 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/iio/imu/nxp,fxos8700.yaml
>
> diff --git a/Documentation/devicetree/bindings/iio/imu/nxp,fxos8700.yaml b/Documentation/devicetree/bindings/iio/imu/nxp,fxos8700.yaml
> new file mode 100644
> index 0000000..d33a1cc
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/iio/imu/nxp,fxos8700.yaml
> @@ -0,0 +1,69 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/iio/imu/fxos8700.yaml#

Documentation/devicetree/bindings/iio/imu/nxp,fxos8700.yaml: $id:
path/filename 'iio/imu/fxos8700.yaml' doesn't match actual filename

Test your binding with 'make dt_binding_check'.

> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Freescale FXOS8700 Inertial Measurement Unit
> +
> +maintainers:
> + - Robert Jones <rjones@gateworks.com>
> +
> +description: |
> + Accelerometer and magnetometer combo device with an i2c and SPI interface.
> + https://www.nxp.com/products/sensors/motion-sensors/6-axis/digital-motion-sensor-3d-accelerometer-2g-4g-8g-plus-3d-magnetometer:FXOS8700CQ
> +
> +properties:
> + compatible:
> + enum:
> + - nxp,fxos8700
> +
> + reg:
> + maxItems: 1
> +
> + interrupts:
> + maxItems: 2
> +
> + interrupt-names:
> + maxItems: 2
> + items:
> + - const: INT1
> + - const: INT2

This doesn't match the example now. You need 'minItems: 1' if you need
to support 1 or 2 interrupts. If it can be either one, then you need:

items:
enum: [ INT1, INT2 ]

> +
> + drive-open-drain:
> + type: boolean
> +
> +required:
> + - compatible
> + - reg
> +
> +examples:
> + - |
> + i2c {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + fxos8700@1e {
> + compatible = "nxp,fxos8700";
> + reg = <0x1e>;
> +
> + interrupt-parent = <&gpio2>;
> + interrupts = <7 IRQ_TYPE_EDGE_RISING>;
> + interrupt-names = "INT1";
> + };
> + };
> + - |
> + spi {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + fxos8700@1e {
> + compatible = "nxp,fxos8700";
> + reg = <0x1e>;

I guess you could have SPI chip select # 30...

> +
> + interrupt-parent = <&gpio2>;
> + spi-max-frequency = <1000000>
> + interrupts = <7 IRQ_TYPE_EDGE_RISING>;
> + interrupt-names = "INT1";
> + };
> + };
> --
> 2.9.2
>