summaryrefslogtreecommitdiff
path: root/Documentation/devicetree/bindings/misc/lis302.txt
blob: 6def86f6b053bea992004509bd812c4e56627aed (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
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,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
 - 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>;
	};