Re: [PATCH v8 1/3] dt-bindings: iio: accel: Add DT binding doc for ADXL355
From: Puranjay Mohan <hidden>
Date: 2021-08-09 07:37:39
Also in:
linux-iio, lkml
On Sun, Aug 8, 2021 at 9:10 PM Jonathan Cameron [off-list ref] wrote:
On Sun, 8 Aug 2021 16:06:28 +0100 Jonathan Cameron [off-list ref] wrote:quoted
On Wed, 4 Aug 2021 19:33:07 +0530 Puranjay Mohan [off-list ref] wrote:quoted
Add devicetree binding document for ADXL355, a 3-Axis MEMS Accelerometer. Signed-off-by: Puranjay Mohan <redacted>Looks good to me. I'll pick this up once Rob and anyone else interested has had time to take a look assuming they don't ask for any changes. Thanks, Jonathanquoted
--- .../bindings/iio/accel/adi,adxl355.yaml | 88 +++++++++++++++++++ 1 file changed, 88 insertions(+) create mode 100644 Documentation/devicetree/bindings/iio/accel/adi,adxl355.yamldiff --git a/Documentation/devicetree/bindings/iio/accel/adi,adxl355.yaml b/Documentation/devicetree/bindings/iio/accel/adi,adxl355.yaml new file mode 100644 index 000000000..5da3fd5ad --- /dev/null +++ b/Documentation/devicetree/bindings/iio/accel/adi,adxl355.yaml@@ -0,0 +1,88 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/iio/accel/adi,adxl355.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Analog Devices ADXL355 3-Axis, Low noise MEMS Accelerometer + +maintainers: + - Puranjay Mohan <puranjay12@gmail.com> + +description: | + Analog Devices ADXL355 3-Axis, Low noise MEMS Accelerometer that supports + both I2C & SPI interfaces + https://www.analog.com/en/products/adxl355.html + +properties: + compatible: + enum: + - adi,adxl355 + + reg: + maxItems: 1 + + interrupts: + minItems: 1 + maxItems: 3 + description: | + Type should be IRQ_TYPE_LEVEL_HIGH. + Three configurable interrupt lines exist.I just noticed from the datasheet, that INT1 and INT2 have controllable polarity on the device. We should look to support that rather than stating all 3 interrupts are LEVEL_HIGH. For now, I'd just not state the type here, or make that statement only for the dataready pin.
Hi Jonathan, I will be sending v9 of this series where I will state this only for the DRDY pin. I will also make the scale defines inline for the other patch. Also, I will not send the third patch: trigger support in v9 because it needs a lot of work. It would be great if the base driver gets accepted and I will keep working on the trigger support separately and not as a part of this patch series. I am also interested in looking into fwnode_get_irq_byname() for the trigger patch.
Once you enable these interrupts, you will want to handle the polarity setting in a similar fashion to the bmi160. It is a bit messy to combine the interrupt polarity at the interrupt controller with that at the device, but that is how we've handled these in the past. Jonathanquoted
quoted
+ + interrupt-names: + description: Specify which interrupt line is in use. + items: + enum: + - INT1 + - INT2 + - DRDY + minItems: 1 + maxItems: 3 + + vdd-supply: + description: Regulator that provides power to the sensor + + vddio-supply: + description: Regulator that provides power to the bus + + spi-max-frequency: true + +required: + - compatible + - reg + +additionalProperties: false + +examples: + - | + #include <dt-bindings/gpio/gpio.h> + #include <dt-bindings/interrupt-controller/irq.h> + i2c { + #address-cells = <1>; + #size-cells = <0>; + + /* Example for a I2C device node */ + accelerometer@1d { + compatible = "adi,adxl355"; + reg = <0x1d>; + interrupt-parent = <&gpio>; + interrupts = <25 IRQ_TYPE_EDGE_RISING>; + interrupt-names = "DRDY"; + }; + }; + - | + #include <dt-bindings/gpio/gpio.h> + #include <dt-bindings/interrupt-controller/irq.h> + spi { + #address-cells = <1>; + #size-cells = <0>; + + accelerometer@0 { + compatible = "adi,adxl355"; + reg = <0>; + spi-max-frequency = <1000000>; + interrupt-parent = <&gpio>; + interrupts = <25 IRQ_TYPE_EDGE_RISING>; + interrupt-names = "DRDY"; + }; + };
-- Thanks and Regards Yours Truly, Puranjay Mohan