forked from Minki/linux
762227721f
The earlier deployed LIS3LV02DL driver had already defined a few DT bindings that need to be supported by the new more generic driver and listed as compatible but deprecated bindings in the documentation. After this we can start to activate the new driver with the old systems where applicable. As part of this enablement: make us depend on the old drivers not being in use so we don't get a kernel with two competing drivers. Cc: devicetree@vger.kernel.org Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Acked-by: Rob Herring <robh@kernel.org> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
120 lines
3.6 KiB
Plaintext
120 lines
3.6 KiB
Plaintext
LIS302 accelerometer devicetree bindings
|
|
|
|
This device is matched via its bus drivers, and has a number of properties
|
|
that apply in on the generic device (independent from the bus).
|
|
|
|
|
|
Required properties for the SPI bindings:
|
|
- compatible: should be set to "st,lis3lv02d-spi"
|
|
- reg: the chipselect index
|
|
- spi-max-frequency: maximal bus speed, should be set to 1000000 unless
|
|
constrained by external circuitry
|
|
- interrupts: the interrupt generated by the device
|
|
|
|
Required properties for the I2C bindings:
|
|
- compatible: should be set to "st,lis3lv02d"
|
|
- reg: i2c slave address
|
|
- Vdd-supply: The input supply for Vdd
|
|
- Vdd_IO-supply: The input supply for Vdd_IO
|
|
|
|
|
|
Optional properties for all bus drivers:
|
|
|
|
- st,click-single-{x,y,z}: if present, tells the device to issue an
|
|
interrupt on single click events on the
|
|
x/y/z axis.
|
|
- st,click-double-{x,y,z}: if present, tells the device to issue an
|
|
interrupt on double click events on the
|
|
x/y/z axis.
|
|
- st,click-thresh-{x,y,z}: set the x/y/z axis threshold
|
|
- st,click-click-time-limit: click time limit, from 0 to 127.5msec
|
|
with step of 0.5 msec
|
|
- st,click-latency: click latency, from 0 to 255 msec with
|
|
step of 1 msec.
|
|
- st,click-window: click window, from 0 to 255 msec with
|
|
step of 1 msec.
|
|
- st,irq{1,2}-disable: disable IRQ 1/2
|
|
- st,irq{1,2}-ff-wu-1: raise IRQ 1/2 on FF_WU_1 condition
|
|
- st,irq{1,2}-ff-wu-2: raise IRQ 1/2 on FF_WU_2 condition
|
|
- st,irq{1,2}-data-ready: raise IRQ 1/2 on data ready contition
|
|
- st,irq{1,2}-click: raise IRQ 1/2 on click condition
|
|
- st,irq-open-drain: consider IRQ lines open-drain
|
|
- st,irq-active-low: make IRQ lines active low
|
|
- st,wu-duration-1: duration register for Free-Fall/Wake-Up
|
|
interrupt 1
|
|
- st,wu-duration-2: duration register for Free-Fall/Wake-Up
|
|
interrupt 2
|
|
- st,wakeup-{x,y,z}-{lo,hi}: set wakeup condition on x/y/z axis for
|
|
upper/lower limit
|
|
- st,wakeup-threshold: set wakeup threshold
|
|
- st,wakeup2-{x,y,z}-{lo,hi}: set wakeup condition on x/y/z axis for
|
|
upper/lower limit for second wakeup
|
|
engine.
|
|
- st,wakeup2-threshold: set wakeup threshold for second wakeup
|
|
engine.
|
|
- st,highpass-cutoff-hz=: 1, 2, 4 or 8 for 1Hz, 2Hz, 4Hz or 8Hz of
|
|
highpass cut-off frequency
|
|
- st,hipass{1,2}-disable: disable highpass 1/2.
|
|
- st,default-rate=: set the default rate
|
|
- st,axis-{x,y,z}=: set the axis to map to the three coordinates.
|
|
Negative values can be used for inverted axis.
|
|
- st,{min,max}-limit-{x,y,z} set the min/max limits for x/y/z axis
|
|
(used by self-test)
|
|
|
|
|
|
Example for a SPI device node:
|
|
|
|
lis302@0 {
|
|
compatible = "st,lis302dl-spi";
|
|
reg = <0>;
|
|
spi-max-frequency = <1000000>;
|
|
interrupt-parent = <&gpio>;
|
|
interrupts = <104 0>;
|
|
|
|
st,click-single-x;
|
|
st,click-single-y;
|
|
st,click-single-z;
|
|
st,click-thresh-x = <10>;
|
|
st,click-thresh-y = <10>;
|
|
st,click-thresh-z = <10>;
|
|
st,irq1-click;
|
|
st,irq2-click;
|
|
st,wakeup-x-lo;
|
|
st,wakeup-x-hi;
|
|
st,wakeup-y-lo;
|
|
st,wakeup-y-hi;
|
|
st,wakeup-z-lo;
|
|
st,wakeup-z-hi;
|
|
};
|
|
|
|
Example for a I2C device node:
|
|
|
|
lis331dlh: lis331dlh@18 {
|
|
compatible = "st,lis331dlh", "st,lis3lv02d";
|
|
reg = <0x18>;
|
|
Vdd-supply = <&lis3_reg>;
|
|
Vdd_IO-supply = <&lis3_reg>;
|
|
|
|
st,click-single-x;
|
|
st,click-single-y;
|
|
st,click-single-z;
|
|
st,click-thresh-x = <10>;
|
|
st,click-thresh-y = <10>;
|
|
st,click-thresh-z = <10>;
|
|
st,irq1-click;
|
|
st,irq2-click;
|
|
st,wakeup-x-lo;
|
|
st,wakeup-x-hi;
|
|
st,wakeup-y-lo;
|
|
st,wakeup-y-hi;
|
|
st,wakeup-z-lo;
|
|
st,wakeup-z-hi;
|
|
st,min-limit-x = <120>;
|
|
st,min-limit-y = <120>;
|
|
st,min-limit-z = <140>;
|
|
st,max-limit-x = <550>;
|
|
st,max-limit-y = <550>;
|
|
st,max-limit-z = <750>;
|
|
};
|
|
|