[RFC PATCH 2/2] Droid3: add initial DTS

Subsystems: arm and arm64 soc sub-architectures (common parts), the rest

STALE1691d

4 messages, 3 authors, 2021-12-19 · open the first message on its own page

[RFC PATCH 2/2] Droid3: add initial DTS

From: Merlijn Wajer <hidden>
Date: 2021-12-12 22:59:43

Not everything works yet, but a lot does work:

* serial
* display
* keyboard
* touchscreen
* slider/power button

What doesn't work yet:

* display backlight
* keyboard backlight

Signed-off-by: Merlijn Wajer <redacted>
---
 arch/arm/boot/dts/Makefile                    |   1 +
 .../boot/dts/motorola-mapphone-common.dtsi    |   4 +-
 arch/arm/boot/dts/omap4-droid3-xt862.dts      | 163 ++++++++++++++++++
 3 files changed, 166 insertions(+), 2 deletions(-)
 create mode 100644 arch/arm/boot/dts/omap4-droid3-xt862.dts
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 7e0934180724..7ea8441817e5 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -874,6 +874,7 @@ dtb-$(CONFIG_SOC_AM33XX) += \
 	am335x-osd3358-sm-red.dtb
 dtb-$(CONFIG_ARCH_OMAP4) += \
 	omap4-droid-bionic-xt875.dtb \
+	omap4-droid3-xt862.dtb \
 	omap4-droid4-xt894.dtb \
 	omap4-duovero-parlor.dtb \
 	omap4-kc1.dtb \
diff --git a/arch/arm/boot/dts/motorola-mapphone-common.dtsi b/arch/arm/boot/dts/motorola-mapphone-common.dtsi
index bf18ff33d900..d0d1a1b1676c 100644
--- a/arch/arm/boot/dts/motorola-mapphone-common.dtsi
+++ b/arch/arm/boot/dts/motorola-mapphone-common.dtsi
@@ -19,7 +19,7 @@ aliases {
 	 * We seem to have only 1021 MB accessible, 1021 - 1022 is locked,
 	 * then 1023 - 1024 seems to contain mbm.
 	 */
-	memory {
+	memory0: memory {
 		device_type = "memory";
 		reg = <0x80000000 0x3fd00000>;	/* 1021 MB */
 	};
@@ -35,7 +35,7 @@ reserved-memory {
 		 * first 512K of that and just overwrite the rest and configure
 		 * only 384K instead of 2M.
 		 */
-		ramoops@a0080000 {
+		ramoops0: ramoops@a0080000 {
 			compatible = "ramoops";
 			reg = <0xa0080000 0x60000>;
 			record-size = <0x20000>;
diff --git a/arch/arm/boot/dts/omap4-droid3-xt862.dts b/arch/arm/boot/dts/omap4-droid3-xt862.dts
new file mode 100644
index 000000000000..f3a7175301ec
--- /dev/null
+++ b/arch/arm/boot/dts/omap4-droid3-xt862.dts
@@ -0,0 +1,163 @@
+// SPDX-License-Identifier: GPL-2.0-only
+/dts-v1/;
+
+#include "motorola-mapphone-common.dtsi"
+
+/ {
+	model = "Motorola Droid 3 XT862";
+	compatible = "motorola,droid3", "ti,omap4430", "ti,omap4";
+
+	/*
+	 * We use pad 0x4a100116 abe_dmic_din3.gpio_122 as the irq instead
+	 * of the gpio interrupt to avoid lost events in deeper idle states.
+	 */
+	gpio_keys {
+		compatible = "gpio-keys";
+
+		slider {
+			label = "Keypad Slide";
+			interrupts-extended = <&omap4_pmx_core 0xd6>;
+			gpios = <&gpio4 26 GPIO_ACTIVE_HIGH>; /* gpio122 */
+			linux,input-type = <EV_SW>;
+			linux,code = <SW_KEYPAD_SLIDE>;
+			linux,can-disable;
+			/* Value above 7.95ms for no GPIO hardware debounce */
+			debounce-interval = <10>;
+		};
+	};
+};
+
+// Do don't know if pstore is supported, but the current config causes panics,
+// so delete the node for now
+/delete-node/ &ramoops0;
+
+&memory0 {
+	reg = <0x80000000 0x1fd00000>;	/* 509 MB */
+};
+
+&dsi1_out_ep {
+	lanes = <1 0 3 2 5 4>;
+};
+
+&i2c1 {
+	led-controller@38 {
+		compatible = "ti,lm3532";
+		#address-cells = <1>;
+		#size-cells = <0>;
+		reg = <0x38>;
+
+		enable-gpios = <&gpio6 12 GPIO_ACTIVE_HIGH>;
+
+		ramp-up-us = <1024>;
+		ramp-down-us = <8193>;
+
+		backlight_led: led@0 {
+			reg = <0>;
+			led-sources = <2>;
+			ti,led-mode = <0>;
+			label = ":backlight";
+		};
+
+		led@1 {
+			reg = <1>;
+			led-sources = <1>;
+			ti,led-mode = <0>;
+			label = ":kbd_backlight";
+		};
+	};
+};
+
+&i2c4 {
+	kxtf9: accelerometer@f {
+		compatible = "kionix,kxtf9";
+		reg = <0x0f>;
+
+		vdd-supply = <&vhvio>;
+
+		interrupt-parent = <&gpio2>;
+		interrupts = <2 IRQ_TYPE_EDGE_RISING>;
+
+		rotation-matrix = "1", "0", "0",
+				  "0", "1", "0",
+				  "0", "0", "1";
+	};
+};
+
+&aes2_target {
+	status = "disabled";
+};
+
+&keypad {
+	keypad,num-rows = <8>;
+	keypad,num-columns = <8>;
+	linux,keymap = <
+
+	/* Row 1 */
+	MATRIX_KEY(0, 2, KEY_1)
+	MATRIX_KEY(0, 6, KEY_2)
+	MATRIX_KEY(2, 3, KEY_3)
+	MATRIX_KEY(0, 7, KEY_4)
+	MATRIX_KEY(0, 4, KEY_5)
+	MATRIX_KEY(5, 5, KEY_6)
+	MATRIX_KEY(0, 1, KEY_7)
+	MATRIX_KEY(0, 5, KEY_8)
+	MATRIX_KEY(0, 0, KEY_9)
+	MATRIX_KEY(1, 6, KEY_0)
+
+	/* Row 2 */
+	MATRIX_KEY(3, 4, KEY_APOSTROPHE)
+	MATRIX_KEY(7, 6, KEY_Q)
+	MATRIX_KEY(7, 7, KEY_W)
+	MATRIX_KEY(7, 2, KEY_E)
+	MATRIX_KEY(1, 0, KEY_R)
+	MATRIX_KEY(4, 4, KEY_T)
+	MATRIX_KEY(1, 2, KEY_Y)
+	MATRIX_KEY(6, 7, KEY_U)
+	MATRIX_KEY(2, 2, KEY_I)
+	MATRIX_KEY(5, 6, KEY_O)
+	MATRIX_KEY(3, 7, KEY_P)
+	MATRIX_KEY(6, 5, KEY_BACKSPACE)
+
+	/* Row 3 */
+	MATRIX_KEY(5, 4, KEY_TAB)
+	MATRIX_KEY(7, 5, KEY_A)
+	//MATRIX_KEY(5, 7, KEY_A)
+	MATRIX_KEY(2, 7, KEY_S)
+	MATRIX_KEY(7, 0, KEY_D)
+	MATRIX_KEY(2, 6, KEY_F)
+	MATRIX_KEY(6, 2, KEY_G)
+	MATRIX_KEY(6, 6, KEY_H)
+	MATRIX_KEY(1, 4, KEY_J)
+	MATRIX_KEY(3, 1, KEY_K)
+	MATRIX_KEY(2, 1, KEY_L)
+	MATRIX_KEY(4, 6, KEY_ENTER)
+
+	/* Row 4 */
+	MATRIX_KEY(3, 6, KEY_LEFTSHIFT)		/* KEY_CAPSLOCK */
+	MATRIX_KEY(6, 1, KEY_Z)
+	MATRIX_KEY(7, 4, KEY_X)
+	MATRIX_KEY(5, 1, KEY_C)
+	MATRIX_KEY(1, 7, KEY_V)
+	MATRIX_KEY(2, 4, KEY_B)
+	MATRIX_KEY(4, 1, KEY_N)
+	MATRIX_KEY(1, 1, KEY_M)
+	MATRIX_KEY(3, 5, KEY_COMMA)
+	MATRIX_KEY(5, 2, KEY_DOT)
+	MATRIX_KEY(6, 3, KEY_UP)
+	MATRIX_KEY(7, 3, KEY_OK)
+
+	/* Row 5 */
+	MATRIX_KEY(2, 5, KEY_LEFTCTRL)		/* KEY_LEFTSHIFT */
+	MATRIX_KEY(4, 5, KEY_LEFTALT)		/* SYM */
+	MATRIX_KEY(6, 0, KEY_MINUS)
+	MATRIX_KEY(4, 7, KEY_EQUAL)
+	MATRIX_KEY(1, 5, KEY_SPACE)
+	MATRIX_KEY(3, 2, KEY_SLASH)
+	MATRIX_KEY(4, 3, KEY_LEFT)
+	MATRIX_KEY(5, 3, KEY_DOWN)
+	MATRIX_KEY(3, 3, KEY_RIGHT)
+
+	MATRIX_KEY(5, 0, KEY_VOLUMEUP)
+	MATRIX_KEY(3, 0, KEY_VOLUMEDOWN)
+	>;
+};
-- 
2.32.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

Re: [RFC PATCH 2/2] Droid3: add initial DTS

From: Tony Lindgren <tony@atomide.com>
Date: 2021-12-13 06:01:15

* Merlijn Wajer [off-list ref] [211212 23:00]:
quoted hunk
@@ -35,7 +35,7 @@ reserved-memory {
 		 * first 512K of that and just overwrite the rest and configure
 		 * only 384K instead of 2M.
 		 */
-		ramoops@a0080000 {
+		ramoops0: ramoops@a0080000 {
 			compatible = "ramoops";
 			reg = <0xa0080000 0x60000>;
 			record-size = <0x20000>;
The stock kernel ramoops range might be different here because of less
memory. If the stock kernel has it, it should be in the platform data
somewhere in the stock kernel sources. Probably best to just leave it
out for now.
+// Do don't know if pstore is supported, but the current config causes panics,
+// so delete the node for now
+/delete-node/ &ramoops0;
Just leave this out too, I don't think we have the ramoops configured in
the mainline kernel.

Otherwise looks good to me.

Regards,

Tony

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

Re: [RFC PATCH 2/2] Droid3: add initial DTS

From: Merlijn Wajer <hidden>
Date: 2021-12-14 21:24:30

Hi Tony,

On 13/12/2021 07:01, Tony Lindgren wrote:
* Merlijn Wajer [off-list ref] [211212 23:00]:
quoted
@@ -35,7 +35,7 @@ reserved-memory {
 		 * first 512K of that and just overwrite the rest and configure
 		 * only 384K instead of 2M.
 		 */
-		ramoops@a0080000 {
+		ramoops0: ramoops@a0080000 {
 			compatible = "ramoops";
 			reg = <0xa0080000 0x60000>;
 			record-size = <0x20000>;
The stock kernel ramoops range might be different here because of less
memory. If the stock kernel has it, it should be in the platform data
somewhere in the stock kernel sources. Probably best to just leave it
out for now.
Understood -- I didn't see it in the stock kernel, so perhaps ramoops is
not available on this device.
quoted
+// Do don't know if pstore is supported, but the current config causes panics,
+// so delete the node for now
+/delete-node/ &ramoops0;
Just leave this out too, I don't think we have the ramoops configured in
the mainline kernel.
Oops, yeah.
Otherwise looks good to me.
Thanks for review!

Regards,
Merlijn

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

Re: [RFC PATCH 2/2] Droid3: add initial DTS

From: Pavel Machek <hidden>
Date: 2021-12-19 13:17:39

Hi!
+		backlight_led: led@0 {
...
+			label = ":backlight";
+		};
This is same as Droid 4, good.
+		led@1 {
...
+			label = ":kbd_backlight";
+		};
+	};
This one is new. We should make sure it is same label as on PCs, and
then document it in Documentation/leds/well-known-leds.txt .

Best regards,
								Pavel
-- 
http://www.livejournal.com/~pavelmachek
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help