xref: /freebsd/sys/contrib/device-tree/src/arm64/qcom/msm8916-motorola-common.dtsi (revision 0e8011faf58b743cc652e3b2ad0f7671227610df)
1*0e8011faSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-only
2*0e8011faSEmmanuel Vadot
3*0e8011faSEmmanuel Vadot#include "msm8916-pm8916.dtsi"
4*0e8011faSEmmanuel Vadot#include "msm8916-modem-qdsp6.dtsi"
5*0e8011faSEmmanuel Vadot
6*0e8011faSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
7*0e8011faSEmmanuel Vadot#include <dt-bindings/input/input.h>
8*0e8011faSEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h>
9*0e8011faSEmmanuel Vadot
10*0e8011faSEmmanuel Vadot/ {
11*0e8011faSEmmanuel Vadot	aliases {
12*0e8011faSEmmanuel Vadot		mmc0 = &sdhc_1; /* eMMC */
13*0e8011faSEmmanuel Vadot		mmc1 = &sdhc_2; /* SD card */
14*0e8011faSEmmanuel Vadot		serial0 = &blsp_uart1;
15*0e8011faSEmmanuel Vadot	};
16*0e8011faSEmmanuel Vadot
17*0e8011faSEmmanuel Vadot	chosen {
18*0e8011faSEmmanuel Vadot		stdout-path = "serial0";
19*0e8011faSEmmanuel Vadot	};
20*0e8011faSEmmanuel Vadot
21*0e8011faSEmmanuel Vadot	gpio-keys {
22*0e8011faSEmmanuel Vadot		compatible = "gpio-keys";
23*0e8011faSEmmanuel Vadot
24*0e8011faSEmmanuel Vadot		pinctrl-0 = <&gpio_keys_default>;
25*0e8011faSEmmanuel Vadot		pinctrl-names = "default";
26*0e8011faSEmmanuel Vadot
27*0e8011faSEmmanuel Vadot		label = "GPIO Buttons";
28*0e8011faSEmmanuel Vadot
29*0e8011faSEmmanuel Vadot		volume-up-button {
30*0e8011faSEmmanuel Vadot			label = "Volume Up";
31*0e8011faSEmmanuel Vadot			gpios = <&tlmm 107 GPIO_ACTIVE_LOW>;
32*0e8011faSEmmanuel Vadot			linux,code = <KEY_VOLUMEUP>;
33*0e8011faSEmmanuel Vadot			debounce-interval = <15>;
34*0e8011faSEmmanuel Vadot		};
35*0e8011faSEmmanuel Vadot	};
36*0e8011faSEmmanuel Vadot
37*0e8011faSEmmanuel Vadot	usb_id: usb-id {
38*0e8011faSEmmanuel Vadot		compatible = "linux,extcon-usb-gpio";
39*0e8011faSEmmanuel Vadot		id-gpios = <&tlmm 91 GPIO_ACTIVE_HIGH>;
40*0e8011faSEmmanuel Vadot		pinctrl-0 = <&usb_id_default>;
41*0e8011faSEmmanuel Vadot		pinctrl-1 = <&usb_id_sleep>;
42*0e8011faSEmmanuel Vadot		pinctrl-names = "default", "sleep";
43*0e8011faSEmmanuel Vadot	};
44*0e8011faSEmmanuel Vadot};
45*0e8011faSEmmanuel Vadot
46*0e8011faSEmmanuel Vadot&blsp_i2c2 {
47*0e8011faSEmmanuel Vadot	status = "okay";
48*0e8011faSEmmanuel Vadot
49*0e8011faSEmmanuel Vadot	touchscreen: touchscreen@20 {
50*0e8011faSEmmanuel Vadot		compatible = "syna,rmi4-i2c";
51*0e8011faSEmmanuel Vadot		reg = <0x20>;
52*0e8011faSEmmanuel Vadot		#address-cells = <1>;
53*0e8011faSEmmanuel Vadot		#size-cells = <0>;
54*0e8011faSEmmanuel Vadot
55*0e8011faSEmmanuel Vadot		vio-supply = <&pm8916_l6>;
56*0e8011faSEmmanuel Vadot
57*0e8011faSEmmanuel Vadot		syna,startup-delay-ms = <100>;
58*0e8011faSEmmanuel Vadot
59*0e8011faSEmmanuel Vadot		rmi4-f01@1 {
60*0e8011faSEmmanuel Vadot			reg = <1>;
61*0e8011faSEmmanuel Vadot			syna,nosleep-mode = <1>; /* Allow sleeping */
62*0e8011faSEmmanuel Vadot		};
63*0e8011faSEmmanuel Vadot
64*0e8011faSEmmanuel Vadot		rmi4-f11@11 {
65*0e8011faSEmmanuel Vadot			reg = <11>;
66*0e8011faSEmmanuel Vadot			syna,sensor-type = <1>; /* Touchscreen */
67*0e8011faSEmmanuel Vadot		};
68*0e8011faSEmmanuel Vadot	};
69*0e8011faSEmmanuel Vadot};
70*0e8011faSEmmanuel Vadot
71*0e8011faSEmmanuel Vadot&blsp_uart1 {
72*0e8011faSEmmanuel Vadot	status = "okay";
73*0e8011faSEmmanuel Vadot};
74*0e8011faSEmmanuel Vadot
75*0e8011faSEmmanuel Vadot&mpss_mem {
76*0e8011faSEmmanuel Vadot	reg = <0x0 0x86800000 0x0 0x5500000>;
77*0e8011faSEmmanuel Vadot};
78*0e8011faSEmmanuel Vadot
79*0e8011faSEmmanuel Vadot&pm8916_resin {
80*0e8011faSEmmanuel Vadot	linux,code = <KEY_VOLUMEDOWN>;
81*0e8011faSEmmanuel Vadot	status = "okay";
82*0e8011faSEmmanuel Vadot};
83*0e8011faSEmmanuel Vadot
84*0e8011faSEmmanuel Vadot&pm8916_rpm_regulators {
85*0e8011faSEmmanuel Vadot	pm8916_l16: l16 {
86*0e8011faSEmmanuel Vadot		regulator-min-microvolt = <3100000>;
87*0e8011faSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
88*0e8011faSEmmanuel Vadot	};
89*0e8011faSEmmanuel Vadot};
90*0e8011faSEmmanuel Vadot
91*0e8011faSEmmanuel Vadot&pm8916_vib {
92*0e8011faSEmmanuel Vadot	status = "okay";
93*0e8011faSEmmanuel Vadot};
94*0e8011faSEmmanuel Vadot
95*0e8011faSEmmanuel Vadot&sdhc_1 {
96*0e8011faSEmmanuel Vadot	status = "okay";
97*0e8011faSEmmanuel Vadot};
98*0e8011faSEmmanuel Vadot
99*0e8011faSEmmanuel Vadot&sdhc_2 {
100*0e8011faSEmmanuel Vadot	status = "okay";
101*0e8011faSEmmanuel Vadot};
102*0e8011faSEmmanuel Vadot
103*0e8011faSEmmanuel Vadot&usb {
104*0e8011faSEmmanuel Vadot	extcon = <&usb_id>, <&usb_id>;
105*0e8011faSEmmanuel Vadot	status = "okay";
106*0e8011faSEmmanuel Vadot};
107*0e8011faSEmmanuel Vadot
108*0e8011faSEmmanuel Vadot&usb_hs_phy {
109*0e8011faSEmmanuel Vadot	extcon = <&usb_id>;
110*0e8011faSEmmanuel Vadot};
111*0e8011faSEmmanuel Vadot
112*0e8011faSEmmanuel Vadot&venus {
113*0e8011faSEmmanuel Vadot	status = "okay";
114*0e8011faSEmmanuel Vadot};
115*0e8011faSEmmanuel Vadot
116*0e8011faSEmmanuel Vadot&venus_mem {
117*0e8011faSEmmanuel Vadot	status = "okay";
118*0e8011faSEmmanuel Vadot};
119*0e8011faSEmmanuel Vadot
120*0e8011faSEmmanuel Vadot&wcnss {
121*0e8011faSEmmanuel Vadot	status = "okay";
122*0e8011faSEmmanuel Vadot};
123*0e8011faSEmmanuel Vadot
124*0e8011faSEmmanuel Vadot&wcnss_iris {
125*0e8011faSEmmanuel Vadot	compatible = "qcom,wcn3620";
126*0e8011faSEmmanuel Vadot};
127*0e8011faSEmmanuel Vadot
128*0e8011faSEmmanuel Vadot&wcnss_mem {
129*0e8011faSEmmanuel Vadot	status = "okay";
130*0e8011faSEmmanuel Vadot};
131*0e8011faSEmmanuel Vadot
132*0e8011faSEmmanuel Vadot/* CTS/RTX are not used */
133*0e8011faSEmmanuel Vadot&blsp_uart1_default {
134*0e8011faSEmmanuel Vadot	pins = "gpio0", "gpio1";
135*0e8011faSEmmanuel Vadot};
136*0e8011faSEmmanuel Vadot&blsp_uart1_sleep {
137*0e8011faSEmmanuel Vadot	pins = "gpio0", "gpio1";
138*0e8011faSEmmanuel Vadot};
139*0e8011faSEmmanuel Vadot
140*0e8011faSEmmanuel Vadot&tlmm {
141*0e8011faSEmmanuel Vadot	gpio_keys_default: gpio-keys-default-state {
142*0e8011faSEmmanuel Vadot		pins = "gpio107";
143*0e8011faSEmmanuel Vadot		function = "gpio";
144*0e8011faSEmmanuel Vadot		drive-strength = <2>;
145*0e8011faSEmmanuel Vadot		bias-pull-up;
146*0e8011faSEmmanuel Vadot	};
147*0e8011faSEmmanuel Vadot
148*0e8011faSEmmanuel Vadot	usb_id_default: usb-id-default-state {
149*0e8011faSEmmanuel Vadot		pins = "gpio91";
150*0e8011faSEmmanuel Vadot		function = "gpio";
151*0e8011faSEmmanuel Vadot		drive-strength = <8>;
152*0e8011faSEmmanuel Vadot		bias-pull-up;
153*0e8011faSEmmanuel Vadot	};
154*0e8011faSEmmanuel Vadot
155*0e8011faSEmmanuel Vadot	usb_id_sleep: usb-id-sleep-state {
156*0e8011faSEmmanuel Vadot		pins = "gpio91";
157*0e8011faSEmmanuel Vadot		function = "gpio";
158*0e8011faSEmmanuel Vadot		drive-strength = <8>;
159*0e8011faSEmmanuel Vadot		bias-disable;
160*0e8011faSEmmanuel Vadot	};
161*0e8011faSEmmanuel Vadot};
162