2022-07-23 19:29:27

by Lin, Meng-Bo

[permalink] [raw]
Subject: [PATCH v6 3/5] ARM: dts: qcom-msm8916-samsung-e2015: Include dts from arm64

After adding all necessary support for MSM8916 SMP/cpuidle without PSCI
on ARM32, build the Samsung Galaxy E5/E7/Grand Max device trees from the
arm64 tree together with the ARM32 include to allow booting this device on
ARM32.

The approach to include device tree files from other architectures is
inspired from e.g. the Raspberry Pi (bcm2711-rpi-4-b.dts) where this is
used to build the device tree for both ARM32 and ARM64.

Signed-off-by: Lin, Meng-Bo <[email protected]>

arm64: dts: qcom: msm8916-samsung-e2015: Add regulator haptic
---
arch/arm/boot/dts/Makefile | 3 +++
arch/arm/boot/dts/qcom-msm8916-samsung-e5.dts | 3 +++
arch/arm/boot/dts/qcom-msm8916-samsung-e7.dts | 3 +++
.../boot/dts/qcom-msm8916-samsung-grandmax.dts | 3 +++
.../dts/qcom/msm8916-samsung-e2015-common.dtsi | 18 +++---------------
.../boot/dts/qcom/msm8916-samsung-grandmax.dts | 4 ++--
6 files changed, 17 insertions(+), 17 deletions(-)
create mode 100644 arch/arm/boot/dts/qcom-msm8916-samsung-e5.dts
create mode 100644 arch/arm/boot/dts/qcom-msm8916-samsung-e7.dts
create mode 100644 arch/arm/boot/dts/qcom-msm8916-samsung-grandmax.dts

diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 5112f493f494..b7a6983ee6fa 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -1030,6 +1030,9 @@ dtb-$(CONFIG_ARCH_QCOM) += \
qcom-ipq8064-rb3011.dtb \
qcom-msm8226-samsung-s3ve3g.dtb \
qcom-msm8660-surf.dtb \
+ qcom-msm8916-samsung-e5.dtb \
+ qcom-msm8916-samsung-e7.dtb \
+ qcom-msm8916-samsung-grandmax.dtb \
qcom-msm8916-samsung-serranove.dtb \
qcom-msm8960-cdp.dtb \
qcom-msm8974-lge-nexus5-hammerhead.dtb \
diff --git a/arch/arm/boot/dts/qcom-msm8916-samsung-e5.dts b/arch/arm/boot/dts/qcom-msm8916-samsung-e5.dts
new file mode 100644
index 000000000000..c8d34de8a71e
--- /dev/null
+++ b/arch/arm/boot/dts/qcom-msm8916-samsung-e5.dts
@@ -0,0 +1,3 @@
+// SPDX-License-Identifier: GPL-2.0-only
+#include "arm64/qcom/msm8916-samsung-e5.dts"
+#include "qcom-msm8916-smp.dtsi"
diff --git a/arch/arm/boot/dts/qcom-msm8916-samsung-e7.dts b/arch/arm/boot/dts/qcom-msm8916-samsung-e7.dts
new file mode 100644
index 000000000000..85be286c8608
--- /dev/null
+++ b/arch/arm/boot/dts/qcom-msm8916-samsung-e7.dts
@@ -0,0 +1,3 @@
+// SPDX-License-Identifier: GPL-2.0-only
+#include "arm64/qcom/msm8916-samsung-e7.dts"
+#include "qcom-msm8916-smp.dtsi"
diff --git a/arch/arm/boot/dts/qcom-msm8916-samsung-grandmax.dts b/arch/arm/boot/dts/qcom-msm8916-samsung-grandmax.dts
new file mode 100644
index 000000000000..d3abe0536238
--- /dev/null
+++ b/arch/arm/boot/dts/qcom-msm8916-samsung-grandmax.dts
@@ -0,0 +1,3 @@
+// SPDX-License-Identifier: GPL-2.0-only
+#include "arm64/qcom/msm8916-samsung-grandmax.dts"
+#include "qcom-msm8916-smp.dtsi"
diff --git a/arch/arm64/boot/dts/qcom/msm8916-samsung-e2015-common.dtsi b/arch/arm64/boot/dts/qcom/msm8916-samsung-e2015-common.dtsi
index 9caa8a161d31..3677fd81b6c1 100644
--- a/arch/arm64/boot/dts/qcom/msm8916-samsung-e2015-common.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8916-samsung-e2015-common.dtsi
@@ -3,13 +3,6 @@
#include "msm8916-samsung-a2015-common.dtsi"

/ {
- haptic {
- compatible = "regulator-haptic";
- haptic-supply = <&reg_motor_vdd>;
- min-microvolt = <3300000>;
- max-microvolt = <3300000>;
- };
-
i2c-muic {
/* SM5504 MUIC instead of SM5502 */
/delete-node/ extcon@25;
@@ -26,14 +19,9 @@ muic: extcon@14 {
};
};

- reg_motor_vdd: regulator-motor-vdd {
- compatible = "regulator-fixed";
- regulator-name = "motor_vdd";
- regulator-min-microvolt = <3300000>;
- regulator-max-microvolt = <3300000>;
-
- gpio = <&msmgpio 76 GPIO_ACTIVE_HIGH>;
- enable-active-high;
+ vibrator: vibrator {
+ compatible = "gpio-vibrator";
+ enable-gpios = <&msmgpio 76 GPIO_ACTIVE_HIGH>;

pinctrl-names = "default";
pinctrl-0 = <&motor_en_default>;
diff --git a/arch/arm64/boot/dts/qcom/msm8916-samsung-grandmax.dts b/arch/arm64/boot/dts/qcom/msm8916-samsung-grandmax.dts
index 4c1becdb9428..74c07a970317 100644
--- a/arch/arm64/boot/dts/qcom/msm8916-samsung-grandmax.dts
+++ b/arch/arm64/boot/dts/qcom/msm8916-samsung-grandmax.dts
@@ -37,8 +37,8 @@ keyled {
};
};

-&reg_motor_vdd {
- gpio = <&msmgpio 72 GPIO_ACTIVE_HIGH>;
+&vibrator {
+ enable-gpios = <&msmgpio 72 GPIO_ACTIVE_HIGH>;
};

&msmgpio {
--
2.30.2