Skip to contentSkip to conversation

ARM: dts: n900: use iio driver for accelerometer

PATCH In review Sicelo A. Mhlongo 2 participants 4 messages Dec 29, 2022 – Jan 19, 2023 Device tree bindings

lore
Share & tools
lore
#0 lore raw

v3 cover ARM: dts: n900: use iio driver for accelerometer

The accelerometer in the N900 is now supported by the iio framework. This patch series makes the switch to the new compatible.

The iio framework does not support some of the extended properties in the previous driver, but the change is useful for modern userspace, which expects accelerometers to be exposed via iio.

Sicelo A. Mhlongo (2):
ARM: dts: n900: rename accelerometer node
ARM: dts: n900: use iio driver for accelerometer

 arch/arm/boot/dts/omap3-n900.dts | 54 ++++++--------------------------
 1 file changed, 9 insertions(+), 45 deletions(-)
Signature · 1 line
2.39.0
#1 lore raw

PATCH v3 1/2 ARM: dts: n900: rename accelerometer node

Use generic node naming for lis302dl accelerometer, and drop its label that is not used anywhere else.

---
 arch/arm/boot/dts/omap3-n900.dts | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
arch/arm/boot/dts/omap3-n900.dts +1 -1
index 6ba2e8f81973..20d7a7bb6b04 100644
@@ -767,7 +767,7 @@ &i2c3 {
 
 	clock-frequency = <400000>;
 
-	lis302dl: lis3lv02d@1d {
+	accelerometer@1d {
 		compatible = "st,lis3lv02d";
 		reg = <0x1d>;
 
Signature · 1 line
2.39.0
#2 lore raw

PATCH v3 2/2 ARM: dts: n900: use iio driver for accelerometer

In reply to Sicelo A. Mhlongo

The accelerometer in the N900 is supported by the iio-framework since commit 8a7449d68670a8f9 ("iio: accel: add support for LIS302DL variant). This commit switches to it and updates node properties to match the bindings of the new compatible.

---
 arch/arm/boot/dts/omap3-n900.dts | 52 +++++---------------------------
 1 file changed, 8 insertions(+), 44 deletions(-)
arch/arm/boot/dts/omap3-n900.dts +8 -44
index 20d7a7bb6b04..adee3da93421 100644
@@ -768,55 +768,19 @@ &i2c3 {
 	clock-frequency = <400000>;
 
 	accelerometer@1d {
-		compatible = "st,lis3lv02d";
+		compatible = "st,lis302dl";
 		reg = <0x1d>;
 
-		Vdd-supply = <&vaux1>;
-		Vdd_IO-supply = <&vio>;
+		vdd-supply = <&vaux1>;
+		vddio-supply = <&vio>;
 
 		interrupt-parent = <&gpio6>;
-		interrupts = <21 20>; /* 181 and 180 */
-
-		/* click flags */
-		st,click-single-x;
-		st,click-single-y;
-		st,click-single-z;
-
-		/* Limits are 0.5g * value */
-		st,click-threshold-x = <8>;
-		st,click-threshold-y = <8>;
-		st,click-threshold-z = <10>;
-
-		/* Click must be longer than time limit */
-		st,click-time-limit = <9>;
-
-		/* Kind of debounce filter */
-		st,click-latency = <50>;
-
-		/* Interrupt line 2 for click detection */
-		st,irq2-click;
-
-		st,wakeup-x-hi;
-		st,wakeup-y-hi;
-		st,wakeup-threshold = <(800/18)>; /* millig-value / 18 to get HW values */
-
-		st,wakeup2-z-hi;
-		st,wakeup2-threshold = <(900/18)>; /* millig-value / 18 to get HW values */
-
-		st,hipass1-disable;
-		st,hipass2-disable;
-
-		st,axis-x = <1>;    /* LIS3_DEV_X */
-		st,axis-y = <(-2)>; /* LIS3_INV_DEV_Y */
-		st,axis-z = <(-3)>; /* LIS3_INV_DEV_Z */
-
-		st,min-limit-x = <(-32)>;
-		st,min-limit-y = <3>;
-		st,min-limit-z = <3>;
+		interrupts = <21 IRQ_TYPE_EDGE_RISING>,
+			     <20 IRQ_TYPE_EDGE_RISING>; /* 181 and 180 */
 
-		st,max-limit-x = <(-3)>;
-		st,max-limit-y = <32>;
-		st,max-limit-z = <32>;
+		mount-matrix =	 "-1",  "0",  "0",
+				  "0",  "1",  "0",
+				  "0",  "0",  "1";
 	};
 
 	cam1: camera@3e {
Signature · 1 line
2.39.0
#3 lore raw
In reply to Sicelo A. Mhlongo
Quoted 6 lines · Sicelo A. Mhlongo

The accelerometer in the N900 is now supported by the iio framework. This patch series makes the switch to the new compatible.

The iio framework does not support some of the extended properties in the previous driver, but the change is useful for modern userspace, which expects accelerometers to be exposed via iio.

Applying these into omap-for-v6.3/dt thanks

Tony