arm64: dts: qcom: Add Motorola Moto G 2015 (osprey)
authorMartijn Braam <martijn@brixit.nl>
Fri, 5 Apr 2024 14:06:13 +0000 (19:06 +0500)
committerBjorn Andersson <andersson@kernel.org>
Tue, 28 May 2024 15:29:42 +0000 (10:29 -0500)
Motorola Moto G 2015 is an msm8916 based smartphone.

Supported features:

- eMMC and SD;
- Buttons;
- Touchscreen;
- USB;
- Fuel Gauge;
- Sound.

Signed-off-by: Martijn Braam <martijn@brixit.nl>
Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
[Nikita: Use common dtsi]
Signed-off-by: Nikita Travkin <nikita@trvn.ru>
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Link: https://lore.kernel.org/r/20240405-msm8916-moto-init-v1-4-502b58176d34@trvn.ru
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
arch/arm64/boot/dts/qcom/Makefile
arch/arm64/boot/dts/qcom/msm8916-motorola-osprey.dts [new file with mode: 0644]

index 5bdf6ab9639bc9e3ed3e253a767702af0e3a9267..99d606a154490fc90b7bcce46a3438f10fbf0fb4 100644 (file)
@@ -34,6 +34,7 @@ dtb-$(CONFIG_ARCH_QCOM)       += msm8916-huawei-g7.dtb
 dtb-$(CONFIG_ARCH_QCOM)        += msm8916-longcheer-l8150.dtb
 dtb-$(CONFIG_ARCH_QCOM)        += msm8916-longcheer-l8910.dtb
 dtb-$(CONFIG_ARCH_QCOM)        += msm8916-motorola-harpia.dtb
+dtb-$(CONFIG_ARCH_QCOM)        += msm8916-motorola-osprey.dtb
 dtb-$(CONFIG_ARCH_QCOM)        += msm8916-motorola-surnia.dtb
 dtb-$(CONFIG_ARCH_QCOM)        += msm8916-mtp.dtb
 dtb-$(CONFIG_ARCH_QCOM)        += msm8916-samsung-a3u-eur.dtb
diff --git a/arch/arm64/boot/dts/qcom/msm8916-motorola-osprey.dts b/arch/arm64/boot/dts/qcom/msm8916-motorola-osprey.dts
new file mode 100644 (file)
index 0000000..ec5589f
--- /dev/null
@@ -0,0 +1,105 @@
+// SPDX-License-Identifier: GPL-2.0-only
+
+/dts-v1/;
+
+#include "msm8916-motorola-common.dtsi"
+
+/ {
+       model = "Motorola Moto G 2015";
+       compatible = "motorola,osprey", "qcom,msm8916";
+       chassis-type = "handset";
+
+       reg_touch_vdda: regulator-touch-vdda {
+               compatible = "regulator-fixed";
+               regulator-name = "touch_vdda";
+               gpio = <&tlmm 114 GPIO_ACTIVE_HIGH>;
+               enable-active-high;
+               pinctrl-0 = <&touch_vdda_default>;
+               pinctrl-names = "default";
+               startup-delay-us = <300>;
+               vin-supply = <&pm8916_l16>;
+       };
+};
+
+&blsp_i2c1 {
+       status = "okay";
+
+       battery@36 {
+               compatible = "maxim,max17050";
+               reg = <0x36>;
+
+               interrupts-extended = <&tlmm 49 IRQ_TYPE_EDGE_FALLING>;
+
+               pinctrl-0 = <&battery_alert_default>;
+               pinctrl-names = "default";
+
+               maxim,rsns-microohm = <10000>;
+               maxim,over-heat-temp = <600>;
+               maxim,cold-temp = <(-200)>;
+               maxim,dead-volt = <3200>;
+               maxim,over-volt = <4500>;
+
+       };
+};
+
+&blsp_i2c6 {
+       /* magnetometer@c */
+};
+
+&pm8916_codec {
+       qcom,micbias1-ext-cap;
+       qcom,micbias2-ext-cap;
+};
+
+&sdhc_2 {
+       pinctrl-0 = <&sdc2_default &sdc2_cd_default>;
+       pinctrl-1 = <&sdc2_sleep &sdc2_cd_default>;
+       pinctrl-names = "default", "sleep";
+
+       cd-gpios = <&tlmm 25 GPIO_ACTIVE_LOW>;
+};
+
+&sound {
+       audio-routing =
+               "AMIC1", "MIC BIAS External1",
+               "AMIC3", "MIC BIAS External1";
+};
+
+&touchscreen {
+       interrupts-extended = <&tlmm 21 IRQ_TYPE_EDGE_FALLING>;
+
+       vdd-supply = <&reg_touch_vdda>;
+
+       pinctrl-0 = <&ts_int_default>;
+       pinctrl-names = "default";
+};
+
+&tlmm {
+       battery_alert_default: battery-alert-default-state {
+               pins = "gpio49";
+               function = "gpio";
+               drive-strength = <2>;
+               bias-pull-up;
+       };
+
+       sdc2_cd_default: sdc2-cd-default-state {
+               pins = "gpio25";
+               function = "gpio";
+               drive-strength = <2>;
+               bias-disable;
+       };
+
+       ts_int_default: ts-int-default-state {
+               pins = "gpio21";
+               function = "gpio";
+               drive-strength = <2>;
+               bias-disable;
+       };
+
+       touch_vdda_default: touch-vdda-default-state {
+               pins = "gpio114";
+               function = "gpio";
+               drive-strength = <2>;
+               bias-disable;
+       };
+};