xref: /freebsd/sys/contrib/device-tree/src/arm64/qcom/msm8916-lg-c50.dts (revision 9978553d0199e7ec0bdd1c44fc7f6c7b0c11e43b)
1// SPDX-License-Identifier: GPL-2.0-only
2
3/dts-v1/;
4
5#include "msm8916-pm8916.dtsi"
6
7#include <dt-bindings/gpio/gpio.h>
8
9/ {
10	model = "LG Leon LTE";
11	compatible = "lg,c50", "qcom,msm8916";
12	chassis-type = "handset";
13
14	aliases {
15		mmc0 = &sdhc_1; /* eMMC */
16		mmc1 = &sdhc_2; /* SD card */
17		serial0 = &blsp_uart2;
18	};
19
20	chosen {
21		stdout-path = "serial0";
22	};
23
24	gpio-keys {
25		compatible = "gpio-keys";
26
27		pinctrl-0 = <&gpio_keys_default>;
28		pinctrl-names = "default";
29
30		label = "GPIO Buttons";
31
32		volume-up-button {
33			label = "Volume Up";
34			gpios = <&tlmm 108 GPIO_ACTIVE_LOW>;
35			linux,code = <KEY_VOLUMEUP>;
36		};
37
38		volume-down-button {
39			label = "Volume Down";
40			gpios = <&tlmm 107 GPIO_ACTIVE_LOW>;
41			linux,code = <KEY_VOLUMEDOWN>;
42		};
43	};
44
45	reg_sd_vmmc: regulator-sdcard-vmmc {
46		compatible = "regulator-fixed";
47		regulator-name = "sdcard-vmmc";
48		regulator-min-microvolt = <2950000>;
49		regulator-max-microvolt = <2950000>;
50
51		gpio = <&tlmm 60 GPIO_ACTIVE_HIGH>;
52		enable-active-high;
53
54		startup-delay-us = <5000>;
55
56		pinctrl-0 = <&sd_vmmc_en_default>;
57		pinctrl-names = "default";
58	};
59};
60
61&blsp_uart2 {
62	pinctrl-0 = <&blsp_uart2_console_default>;
63	pinctrl-1 = <&blsp_uart2_console_sleep>;
64	pinctrl-names = "default", "sleep";
65	status = "okay";
66};
67
68&pm8916_usbin {
69	status = "okay";
70};
71
72&pm8916_vib {
73	status = "okay";
74};
75
76&sdhc_1 {
77	status = "okay";
78};
79
80&sdhc_2 {
81	vmmc-supply = <&reg_sd_vmmc>;
82
83	pinctrl-0 = <&sdc2_default &sdc2_cd_default>;
84	pinctrl-1 = <&sdc2_sleep &sdc2_cd_default>;
85	pinctrl-names = "default", "sleep";
86
87	cd-gpios = <&tlmm 38 GPIO_ACTIVE_HIGH>;
88
89	status = "okay";
90};
91
92&usb {
93	dr_mode = "peripheral";
94	extcon = <&pm8916_usbin>;
95	status = "okay";
96};
97
98&usb_hs_phy {
99	extcon = <&pm8916_usbin>;
100};
101
102&venus {
103	status = "okay";
104};
105
106&venus_mem {
107	status = "okay";
108};
109
110&wcnss {
111	status = "okay";
112};
113
114&wcnss_iris {
115	compatible = "qcom,wcn3620";
116};
117
118&wcnss_mem {
119	status = "okay";
120};
121
122&tlmm {
123	gpio_keys_default: gpio-keys-default-state {
124		pins = "gpio107", "gpio108";
125		function = "gpio";
126		drive-strength = <2>;
127		bias-pull-up;
128	};
129
130	sd_vmmc_en_default: sd-vmmc-en-default-state {
131		pins = "gpio60";
132		function = "gpio";
133		drive-strength = <2>;
134		bias-disable;
135	};
136
137	sdc2_cd_default: sdc2-cd-default-state {
138		pins = "gpio38";
139		function = "gpio";
140		drive-strength = <2>;
141		bias-pull-down;
142	};
143};
144