Messages in this thread | | | Date | Tue, 7 Dec 2021 09:58:16 +0200 | Subject | Re: [PATCH v1 1/2] dt-bindings: iio: accel: add ADXL367 | From | Cosmin Tanislav <> |
| |
On 12/6/21 21:31, Cosmin Tanislav wrote: > > > On 12/6/21 16:39, Jonathan Cameron wrote: >> On Mon, 6 Dec 2021 12:54:02 +0200 >> Cosmin Tanislav <demonsingur@gmail.com> wrote: >> >>> The ADXL367 is an ultralow power, 3-axis MEMS accelerometer. >>> >>> The ADXL367 does not alias input signals to achieve ultralow power >>> consumption, it samples the full bandwidth of the sensor at all >>> data rates. Measurement ranges of +-2g, +-4g, and +-8g are available, >>> with a resolution of 0.25mg/LSB on the +-2 g range. >>> >>> In addition to its ultralow power consumption, the ADXL367 >>> has many features to enable true system level power reduction. >>> It includes a deep multimode output FIFO, a built-in micropower >>> temperature sensor, and an internal ADC for synchronous conversion >>> of an additional analog input. >>> >>> Signed-off-by: Cosmin Tanislav <cosmin.tanislav@analog.com> >> >> Hi Cosmin, >> >> Given how often we get patches later to add regulators for devices like >> these I'd like them supported from the start. >> >> I'm guessing it needs power, but how many supplies? I'm not sure as >> doesn't >> seem to be a public datasheet yet. > > I'll add them. For the note, it has two supplies, one being the main one > and another one for the io. >
One question I have is whether I should disable the regulators on system suspend. If I do, I should also use a regmap cache so I can re-apply all registers on resume...
>> >>> --- >>> .../bindings/iio/accel/adi,adxl367.yaml | 79 +++++++++++++++++++ >>> 1 file changed, 79 insertions(+) >>> create mode 100644 >>> Documentation/devicetree/bindings/iio/accel/adi,adxl367.yaml >>> >>> diff --git >>> a/Documentation/devicetree/bindings/iio/accel/adi,adxl367.yaml >>> b/Docu`mentation/devicetree/bindings/iio/accel/adi,adxl367.yaml >>> new file mode 100644 >>> index 000000000000..1bf9e1602480 >>> --- /dev/null >>> +++ b/Documentation/devicetree/bindings/iio/accel/adi,adxl367.yaml >>> @@ -0,0 +1,79 @@ >>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) >>> +%YAML 1.2 >>> +--- >>> +$id: http://devicetree.org/schemas/iio/accel/adi,adxl367.yaml# >>> +$schema: http://devicetree.org/meta-schemas/core.yaml# >>> + >>> +title: Analog Devices ADXL367 3-Axis Digital Accelerometer >>> + >>> +maintainers: >>> + - Cosmin Tanislav <cosmin.tanislav@analog.com> >>> + >>> +description: | >>> + The ADXL367 is an ultralow power, 3-axis MEMS accelerometer. >>> + >>> + The ADXL367 does not alias input signals by to achieve ultralow power >>> + consumption, it samples the full bandwidth of the sensor at all >>> + data rates. Measurement ranges of +-2g, +-4g, and +-8g are available, >>> + with a resolution of 0.25mg/LSB on the +-2 g range. >>> + >>> + In addition to its ultralow power consumption, the ADXL367 >>> + has many features to enable true system level power reduction. >>> + It includes a deep multimode output FIFO, a built-in micropower >>> + temperature sensor, and an internal ADC for synchronous conversion >>> + of an additional analog input. >>> + https://www.analog.com/en/products/adxl367.html >> >> "We can't find that page". I guess this driver is running slightly ahead >> of the datasheet being made public. > > Yeah, the datasheet and product page isn't out yet. > >> >>> + >>> +properties: >>> + compatible: >>> + enum: >>> + - adi,adxl367 >>> + >>> + reg: >>> + maxItems: 1 >>> + >>> + interrupts: >>> + maxItems: 1 >> >> spi-max-frequency: true >> >> to fix the issue Rob's bot reported. >> >>> + >>> +required: >>> + - compatible >>> + - reg >>> + - interrupts >>> + >>> +additionalProperties: false >>> + >>> +examples: >>> + - | >>> + #include <dt-bindings/gpio/gpio.h> >>> + #include <dt-bindings/interrupt-controller/irq.h> >>> + >>> + i2c { >>> + #address-cells = <1>; >>> + #size-cells = <0>; >>> + >>> + adxl367@53 { >>> + compatible = "adi,adxl367"; >>> + reg = <0x53>; >>> + interrupt-parent = <&gpio>; >>> + interrupts = <25 IRQ_TYPE_EDGE_RISING>; >>> + }; >>> + }; >>> + - | >>> + #include <dt-bindings/gpio/gpio.h> >>> + #include <dt-bindings/interrupt-controller/irq.h> >>> + >>> + spi { >>> + #address-cells = <1>; >>> + #size-cells = <0>; >>> + >>> + cs-gpios = <&gpio 17 GPIO_ACTIVE_LOW>; >>> + status = "okay"; >> >> We don't normally list status in example bindings. >> Also, the cs-gpio is part of the spi master binding >> so no need to have it here as we are showing how the >> actual device binding works. >> >> That should let you drop the gpio.h header. >> > Interestingly, you forgot to say this for my AD74413R driver. > >> >>> + >>> + adxl367@0 { >>> + compatible = "adi,adxl367"; >>> + reg = <0>; >>> + spi-max-frequency = <1000000>; >>> + interrupt-parent = <&gpio>; >>> + interrupts = <25 IRQ_TYPE_EDGE_RISING>; >>> + }; >>> + }; >>
| |