Message ID | 20240901205354.3201261-2-lanzano.alex@gmail.com (mailing list archive) |
---|---|
State | Changes Requested |
Headers | show |
Series | Add I2C driver for Bosch BMI270 IMU | expand |
On Sun, Sep 01, 2024 at 04:53:23PM -0400, Alex Lanzano wrote: > Add device tree bindings for the bmi270 IMU > > Signed-off-by: Alex Lanzano <lanzano.alex@gmail.com> > --- > .../bindings/iio/imu/bosch,bmi270.yaml | 80 +++++++++++++++++++ > 1 file changed, 80 insertions(+) > create mode 100644 Documentation/devicetree/bindings/iio/imu/bosch,bmi270.yaml > > diff --git a/Documentation/devicetree/bindings/iio/imu/bosch,bmi270.yaml b/Documentation/devicetree/bindings/iio/imu/bosch,bmi270.yaml > new file mode 100644 > index 000000000000..44534ef36378 > --- /dev/null > +++ b/Documentation/devicetree/bindings/iio/imu/bosch,bmi270.yaml > @@ -0,0 +1,80 @@ > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/iio/imu/bosch,bmi270.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Bosch BMI270 6-Axis IMU > + > +maintainers: > + - Alex Lanzano <lanzano.alex@gmail.com> > + > +description: | > + BMI270 is a 6-axis inertial measurement unit that can measure acceleration and > + angular velocity. The sensor also supports configurable interrupt events such > + as motion, step counter, and wrist motion gestures. The sensor can communicate > + I2C or SPI. > + https://www.bosch-sensortec.com/products/motion-sensors/imus/bmi270/ > + > +properties: > + compatible: > + const: bosch,bmi270 > + > + reg: > + maxItems: 1 > + > + vdd-supply: true > + vddio-supply: true > + > + interrupts: > + minItems: 1 > + maxItems: 2 > + > + interrupt-names: > + minItems: 1 > + maxItems: 2 > + items: > + enum: > + - INT1 > + - INT2 > + > + drive-open-drain: > + description: > + set if the specified interrupt pin should be configured as > + open drain. If not set, defaults to push-pull. > + > + mount-matrix: > + description: > + an optional 3x3 mounting rotation matrix. > + > +required: > + - compatible > + - reg Device can operate without power provided? > + > +allOf: > + - $ref: /schemas/spi/spi-peripheral-props.yaml# > + > +unevaluatedProperties: false > + > +examples: > + - | > + i2c { > + #address-cells = <1>; > + #size-cells = <0>; > + > + imu@68 { > + compatible = "bosch,bmi270"; > + reg = <0x68>; > + }; > + }; Keep just one, complete example. You miss here several properties. > + - | > + spi { Not much differences in this example, but if you want to keep it, then make it complete and fix the node name, Node names should be generic. See also an explanation and list of examples (not exhaustive) in DT specification: https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation Best regards, Krzysztof
On Mon, Sep 02, 2024 at 09:21:33AM GMT, Krzysztof Kozlowski wrote: > On Sun, Sep 01, 2024 at 04:53:23PM -0400, Alex Lanzano wrote: > > Add device tree bindings for the bmi270 IMU > > > > Signed-off-by: Alex Lanzano <lanzano.alex@gmail.com> > > --- > > .../bindings/iio/imu/bosch,bmi270.yaml | 80 +++++++++++++++++++ > > 1 file changed, 80 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/iio/imu/bosch,bmi270.yaml > > > > diff --git a/Documentation/devicetree/bindings/iio/imu/bosch,bmi270.yaml b/Documentation/devicetree/bindings/iio/imu/bosch,bmi270.yaml > > new file mode 100644 > > index 000000000000..44534ef36378 > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/iio/imu/bosch,bmi270.yaml > > @@ -0,0 +1,80 @@ > > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/iio/imu/bosch,bmi270.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: Bosch BMI270 6-Axis IMU > > + > > +maintainers: > > + - Alex Lanzano <lanzano.alex@gmail.com> > > + > > +description: | > > + BMI270 is a 6-axis inertial measurement unit that can measure acceleration and > > + angular velocity. The sensor also supports configurable interrupt events such > > + as motion, step counter, and wrist motion gestures. The sensor can communicate > > + I2C or SPI. > > + https://www.bosch-sensortec.com/products/motion-sensors/imus/bmi270/ > > + > > +properties: > > + compatible: > > + const: bosch,bmi270 > > + > > + reg: > > + maxItems: 1 > > + > > + vdd-supply: true > > + vddio-supply: true > > + > > + interrupts: > > + minItems: 1 > > + maxItems: 2 > > + > > + interrupt-names: > > + minItems: 1 > > + maxItems: 2 > > + items: > > + enum: > > + - INT1 > > + - INT2 > > + > > + drive-open-drain: > > + description: > > + set if the specified interrupt pin should be configured as > > + open drain. If not set, defaults to push-pull. > > + > > + mount-matrix: > > + description: > > + an optional 3x3 mounting rotation matrix. > > + > > +required: > > + - compatible > > + - reg > > Device can operate without power provided? > Will fix! > > + > > +allOf: > > + - $ref: /schemas/spi/spi-peripheral-props.yaml# > > + > > +unevaluatedProperties: false > > + > > +examples: > > + - | > > + i2c { > > + #address-cells = <1>; > > + #size-cells = <0>; > > + > > + imu@68 { > > + compatible = "bosch,bmi270"; > > + reg = <0x68>; > > + }; > > + }; > > Keep just one, complete example. You miss here several properties. > > > + - | > > + spi { > > Not much differences in this example, but if you want to keep it, then > make it complete and fix the node name, > > Node names should be generic. See also an explanation and list of > examples (not exhaustive) in DT specification: > https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation > > Best regards, > Krzysztof > I'll make more complete examples in v2. Thank you for the review! Much appreciated.
diff --git a/Documentation/devicetree/bindings/iio/imu/bosch,bmi270.yaml b/Documentation/devicetree/bindings/iio/imu/bosch,bmi270.yaml new file mode 100644 index 000000000000..44534ef36378 --- /dev/null +++ b/Documentation/devicetree/bindings/iio/imu/bosch,bmi270.yaml @@ -0,0 +1,80 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/iio/imu/bosch,bmi270.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Bosch BMI270 6-Axis IMU + +maintainers: + - Alex Lanzano <lanzano.alex@gmail.com> + +description: | + BMI270 is a 6-axis inertial measurement unit that can measure acceleration and + angular velocity. The sensor also supports configurable interrupt events such + as motion, step counter, and wrist motion gestures. The sensor can communicate + I2C or SPI. + https://www.bosch-sensortec.com/products/motion-sensors/imus/bmi270/ + +properties: + compatible: + const: bosch,bmi270 + + reg: + maxItems: 1 + + vdd-supply: true + vddio-supply: true + + interrupts: + minItems: 1 + maxItems: 2 + + interrupt-names: + minItems: 1 + maxItems: 2 + items: + enum: + - INT1 + - INT2 + + drive-open-drain: + description: + set if the specified interrupt pin should be configured as + open drain. If not set, defaults to push-pull. + + mount-matrix: + description: + an optional 3x3 mounting rotation matrix. + +required: + - compatible + - reg + +allOf: + - $ref: /schemas/spi/spi-peripheral-props.yaml# + +unevaluatedProperties: false + +examples: + - | + i2c { + #address-cells = <1>; + #size-cells = <0>; + + imu@68 { + compatible = "bosch,bmi270"; + reg = <0x68>; + }; + }; + - | + spi { + #address-cells = <1>; + #size-cells = <0>; + + bmi270@0 { + compatible = "bosch,bmi270"; + reg = <0>; + spi-max-frequency = <10000000>; + }; + };
Add device tree bindings for the bmi270 IMU Signed-off-by: Alex Lanzano <lanzano.alex@gmail.com> --- .../bindings/iio/imu/bosch,bmi270.yaml | 80 +++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 Documentation/devicetree/bindings/iio/imu/bosch,bmi270.yaml