xref: /freebsd/sys/contrib/device-tree/src/arm64/qcom/msm8916-motorola-harpia.dts (revision 0e8011faf58b743cc652e3b2ad0f7671227610df)
1*0e8011faSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-only
2*0e8011faSEmmanuel Vadot
3*0e8011faSEmmanuel Vadot/dts-v1/;
4*0e8011faSEmmanuel Vadot
5*0e8011faSEmmanuel Vadot#include "msm8916-motorola-common.dtsi"
6*0e8011faSEmmanuel Vadot
7*0e8011faSEmmanuel Vadot/ {
8*0e8011faSEmmanuel Vadot	model = "Motorola Moto G4 Play";
9*0e8011faSEmmanuel Vadot	compatible = "motorola,harpia", "qcom,msm8916";
10*0e8011faSEmmanuel Vadot	chassis-type = "handset";
11*0e8011faSEmmanuel Vadot};
12*0e8011faSEmmanuel Vadot
13*0e8011faSEmmanuel Vadot&blsp_i2c1 {
14*0e8011faSEmmanuel Vadot	status = "okay";
15*0e8011faSEmmanuel Vadot
16*0e8011faSEmmanuel Vadot	battery@36 {
17*0e8011faSEmmanuel Vadot		compatible = "maxim,max17050";
18*0e8011faSEmmanuel Vadot		reg = <0x36>;
19*0e8011faSEmmanuel Vadot
20*0e8011faSEmmanuel Vadot		interrupts-extended = <&tlmm 62 IRQ_TYPE_EDGE_FALLING>;
21*0e8011faSEmmanuel Vadot
22*0e8011faSEmmanuel Vadot		pinctrl-0 = <&battery_alert_default>;
23*0e8011faSEmmanuel Vadot		pinctrl-names = "default";
24*0e8011faSEmmanuel Vadot
25*0e8011faSEmmanuel Vadot		maxim,rsns-microohm = <10000>;
26*0e8011faSEmmanuel Vadot		maxim,over-heat-temp = <600>;
27*0e8011faSEmmanuel Vadot		maxim,cold-temp = <(-200)>;
28*0e8011faSEmmanuel Vadot		maxim,dead-volt = <3200>;
29*0e8011faSEmmanuel Vadot		maxim,over-volt = <4500>;
30*0e8011faSEmmanuel Vadot	};
31*0e8011faSEmmanuel Vadot
32*0e8011faSEmmanuel Vadot	/* charger@6b */
33*0e8011faSEmmanuel Vadot};
34*0e8011faSEmmanuel Vadot
35*0e8011faSEmmanuel Vadot&blsp_i2c4 {
36*0e8011faSEmmanuel Vadot	status = "okay";
37*0e8011faSEmmanuel Vadot
38*0e8011faSEmmanuel Vadot	accelerometer@19 {
39*0e8011faSEmmanuel Vadot		compatible = "bosch,bma253";
40*0e8011faSEmmanuel Vadot		reg = <0x19>;
41*0e8011faSEmmanuel Vadot
42*0e8011faSEmmanuel Vadot		interrupts-extended = <&tlmm 115 IRQ_TYPE_EDGE_RISING>,
43*0e8011faSEmmanuel Vadot				      <&tlmm 119 IRQ_TYPE_EDGE_RISING>;
44*0e8011faSEmmanuel Vadot
45*0e8011faSEmmanuel Vadot		vdd-supply = <&pm8916_l17>;
46*0e8011faSEmmanuel Vadot		vddio-supply = <&pm8916_l6>;
47*0e8011faSEmmanuel Vadot
48*0e8011faSEmmanuel Vadot		mount-matrix = "1",  "0", "0",
49*0e8011faSEmmanuel Vadot			       "0", "-1", "0",
50*0e8011faSEmmanuel Vadot			       "0",  "0", "1";
51*0e8011faSEmmanuel Vadot
52*0e8011faSEmmanuel Vadot		pinctrl-0 = <&accel_int_default>;
53*0e8011faSEmmanuel Vadot		pinctrl-names = "default";
54*0e8011faSEmmanuel Vadot	};
55*0e8011faSEmmanuel Vadot
56*0e8011faSEmmanuel Vadot	/* proximity@49 */
57*0e8011faSEmmanuel Vadot};
58*0e8011faSEmmanuel Vadot
59*0e8011faSEmmanuel Vadot&pm8916_codec {
60*0e8011faSEmmanuel Vadot	qcom,micbias-lvl = <2800>;
61*0e8011faSEmmanuel Vadot	qcom,mbhc-vthreshold-low = <75 150 237 450 500>;
62*0e8011faSEmmanuel Vadot	qcom,mbhc-vthreshold-high = <75 150 237 450 500>;
63*0e8011faSEmmanuel Vadot	qcom,micbias1-ext-cap;
64*0e8011faSEmmanuel Vadot};
65*0e8011faSEmmanuel Vadot
66*0e8011faSEmmanuel Vadot&pm8916_rpm_regulators {
67*0e8011faSEmmanuel Vadot	pm8916_l17: l17 {
68*0e8011faSEmmanuel Vadot		regulator-min-microvolt = <2850000>;
69*0e8011faSEmmanuel Vadot		regulator-max-microvolt = <2850000>;
70*0e8011faSEmmanuel Vadot	};
71*0e8011faSEmmanuel Vadot};
72*0e8011faSEmmanuel Vadot
73*0e8011faSEmmanuel Vadot&sdhc_2 {
74*0e8011faSEmmanuel Vadot	pinctrl-0 = <&sdc2_default &sdc2_cd_default>;
75*0e8011faSEmmanuel Vadot	pinctrl-1 = <&sdc2_sleep &sdc2_cd_default>;
76*0e8011faSEmmanuel Vadot	pinctrl-names = "default", "sleep";
77*0e8011faSEmmanuel Vadot
78*0e8011faSEmmanuel Vadot	cd-gpios = <&tlmm 118 GPIO_ACTIVE_LOW>;
79*0e8011faSEmmanuel Vadot};
80*0e8011faSEmmanuel Vadot
81*0e8011faSEmmanuel Vadot&sound {
82*0e8011faSEmmanuel Vadot	audio-routing =
83*0e8011faSEmmanuel Vadot		"AMIC1", "MIC BIAS External1",
84*0e8011faSEmmanuel Vadot		"AMIC2", "MIC BIAS Internal2",
85*0e8011faSEmmanuel Vadot		"AMIC3", "MIC BIAS External1";
86*0e8011faSEmmanuel Vadot
87*0e8011faSEmmanuel Vadot	pinctrl-0 = <&cdc_pdm_default &headset_switch_supply_en
88*0e8011faSEmmanuel Vadot		     &headset_switch_in>;
89*0e8011faSEmmanuel Vadot	pinctrl-1 = <&cdc_pdm_sleep &headset_switch_supply_en
90*0e8011faSEmmanuel Vadot		     &headset_switch_in>;
91*0e8011faSEmmanuel Vadot	pinctrl-names = "default", "sleep";
92*0e8011faSEmmanuel Vadot};
93*0e8011faSEmmanuel Vadot
94*0e8011faSEmmanuel Vadot&touchscreen {
95*0e8011faSEmmanuel Vadot	interrupts-extended = <&tlmm 13 IRQ_TYPE_EDGE_FALLING>;
96*0e8011faSEmmanuel Vadot
97*0e8011faSEmmanuel Vadot	vdd-supply = <&pm8916_l16>;
98*0e8011faSEmmanuel Vadot
99*0e8011faSEmmanuel Vadot	pinctrl-0 = <&ts_int_default>;
100*0e8011faSEmmanuel Vadot	pinctrl-names = "default";
101*0e8011faSEmmanuel Vadot};
102*0e8011faSEmmanuel Vadot
103*0e8011faSEmmanuel Vadot&tlmm {
104*0e8011faSEmmanuel Vadot	accel_int_default: accel-int-default-state {
105*0e8011faSEmmanuel Vadot		pins = "gpio115", "gpio119";
106*0e8011faSEmmanuel Vadot		function = "gpio";
107*0e8011faSEmmanuel Vadot		drive-strength = <2>;
108*0e8011faSEmmanuel Vadot		bias-disable;
109*0e8011faSEmmanuel Vadot	};
110*0e8011faSEmmanuel Vadot
111*0e8011faSEmmanuel Vadot	battery_alert_default: battery-alert-default-state {
112*0e8011faSEmmanuel Vadot		pins = "gpio62";
113*0e8011faSEmmanuel Vadot		function = "gpio";
114*0e8011faSEmmanuel Vadot		drive-strength = <2>;
115*0e8011faSEmmanuel Vadot		bias-pull-up;
116*0e8011faSEmmanuel Vadot	};
117*0e8011faSEmmanuel Vadot
118*0e8011faSEmmanuel Vadot	headset_switch_in: headset-switch-in-state {
119*0e8011faSEmmanuel Vadot		pins = "gpio112";
120*0e8011faSEmmanuel Vadot		function = "gpio";
121*0e8011faSEmmanuel Vadot		drive-strength = <2>;
122*0e8011faSEmmanuel Vadot		bias-disable;
123*0e8011faSEmmanuel Vadot		output-low;
124*0e8011faSEmmanuel Vadot	};
125*0e8011faSEmmanuel Vadot
126*0e8011faSEmmanuel Vadot	headset_switch_supply_en: headset-switch-supply-en-state {
127*0e8011faSEmmanuel Vadot		pins = "gpio111";
128*0e8011faSEmmanuel Vadot		function = "gpio";
129*0e8011faSEmmanuel Vadot		drive-strength = <2>;
130*0e8011faSEmmanuel Vadot		bias-disable;
131*0e8011faSEmmanuel Vadot		output-high;
132*0e8011faSEmmanuel Vadot	};
133*0e8011faSEmmanuel Vadot
134*0e8011faSEmmanuel Vadot	sdc2_cd_default: sdc2-cd-default-state {
135*0e8011faSEmmanuel Vadot		pins = "gpio118";
136*0e8011faSEmmanuel Vadot		function = "gpio";
137*0e8011faSEmmanuel Vadot		drive-strength = <2>;
138*0e8011faSEmmanuel Vadot		bias-disable;
139*0e8011faSEmmanuel Vadot	};
140*0e8011faSEmmanuel Vadot
141*0e8011faSEmmanuel Vadot	ts_int_default: ts-int-default-state {
142*0e8011faSEmmanuel Vadot		pins = "gpio13";
143*0e8011faSEmmanuel Vadot		function = "gpio";
144*0e8011faSEmmanuel Vadot		drive-strength = <2>;
145*0e8011faSEmmanuel Vadot		bias-disable;
146*0e8011faSEmmanuel Vadot	};
147*0e8011faSEmmanuel Vadot};
148