1// SPDX-License-Identifier: GPL-2.0-only 2 3/dts-v1/; 4 5#include "msm8916.dtsi" 6#include "pm8916.dtsi" 7#include <dt-bindings/gpio/gpio.h> 8#include <dt-bindings/input/input.h> 9 10/ { 11 model = "Longcheer L8150"; 12 compatible = "longcheer,l8150", "qcom,msm8916-v1-qrd/9-v1", "qcom,msm8916"; 13 14 aliases { 15 serial0 = &blsp1_uart2; 16 }; 17 18 chosen { 19 stdout-path = "serial0"; 20 }; 21 22 reserved-memory { 23 // wcnss.mdt is not relocatable, so it must be loaded at 0x8b600000 24 /delete-node/ wcnss@89300000; 25 26 wcnss_mem: wcnss@8b600000 { 27 reg = <0x0 0x8b600000 0x0 0x600000>; 28 no-map; 29 }; 30 }; 31 32 soc { 33 sdhci@7824000 { 34 status = "okay"; 35 36 vmmc-supply = <&pm8916_l8>; 37 vqmmc-supply = <&pm8916_l5>; 38 39 pinctrl-names = "default", "sleep"; 40 pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on>; 41 pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off>; 42 }; 43 44 sdhci@7864000 { 45 status = "okay"; 46 47 vmmc-supply = <&pm8916_l11>; 48 vqmmc-supply = <&pm8916_l12>; 49 50 pinctrl-names = "default", "sleep"; 51 pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on>; 52 pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off>; 53 54 non-removable; 55 }; 56 57 serial@78b0000 { 58 status = "okay"; 59 pinctrl-names = "default", "sleep"; 60 pinctrl-0 = <&blsp1_uart2_default>; 61 pinctrl-1 = <&blsp1_uart2_sleep>; 62 }; 63 64 usb@78d9000 { 65 status = "okay"; 66 dr_mode = "peripheral"; 67 extcon = <&usb_vbus>; 68 69 hnp-disable; 70 srp-disable; 71 adp-disable; 72 73 ulpi { 74 phy { 75 extcon = <&usb_vbus>; 76 v1p8-supply = <&pm8916_l7>; 77 v3p3-supply = <&pm8916_l13>; 78 }; 79 }; 80 }; 81 82 wcnss@a21b000 { 83 status = "okay"; 84 }; 85 }; 86 87 // FIXME: Use extcon device provided by charger driver when available 88 usb_vbus: usb-vbus { 89 compatible = "linux,extcon-usb-gpio"; 90 vbus-gpio = <&msmgpio 62 GPIO_ACTIVE_HIGH>; 91 pinctrl-names = "default"; 92 pinctrl-0 = <&usb_vbus_default>; 93 }; 94 95 gpio-keys { 96 compatible = "gpio-keys"; 97 98 pinctrl-names = "default"; 99 pinctrl-0 = <&gpio_keys_default>; 100 101 label = "GPIO Buttons"; 102 103 volume-up { 104 label = "Volume Up"; 105 gpios = <&msmgpio 107 GPIO_ACTIVE_LOW>; 106 linux,code = <KEY_VOLUMEUP>; 107 }; 108 }; 109}; 110 111&msmgpio { 112 gpio_keys_default: gpio-keys-default { 113 pinmux { 114 function = "gpio"; 115 pins = "gpio107"; 116 }; 117 pinconf { 118 pins = "gpio107"; 119 drive-strength = <2>; 120 bias-pull-up; 121 }; 122 }; 123 124 usb_vbus_default: usb-vbus-default { 125 pinmux { 126 function = "gpio"; 127 pins = "gpio62"; 128 }; 129 pinconf { 130 pins = "gpio62"; 131 bias-pull-up; 132 }; 133 }; 134}; 135 136&spmi_bus { 137 pm8916@0 { 138 pon@800 { 139 volume-down { 140 compatible = "qcom,pm8941-resin"; 141 interrupts = <0x0 0x8 1 IRQ_TYPE_EDGE_BOTH>; 142 bias-pull-up; 143 linux,code = <KEY_VOLUMEDOWN>; 144 }; 145 }; 146 }; 147}; 148 149&smd_rpm_regulators { 150 vdd_l1_l2_l3-supply = <&pm8916_s3>; 151 vdd_l4_l5_l6-supply = <&pm8916_s4>; 152 vdd_l7-supply = <&pm8916_s4>; 153 154 s1 { 155 regulator-min-microvolt = <500000>; 156 regulator-max-microvolt = <1300000>; 157 }; 158 159 s3 { 160 regulator-min-microvolt = <1200000>; 161 regulator-max-microvolt = <1300000>; 162 }; 163 164 s4 { 165 regulator-min-microvolt = <1800000>; 166 regulator-max-microvolt = <2100000>; 167 }; 168 169 l1 { 170 regulator-min-microvolt = <1225000>; 171 regulator-max-microvolt = <1225000>; 172 }; 173 174 l2 { 175 regulator-min-microvolt = <1200000>; 176 regulator-max-microvolt = <1200000>; 177 }; 178 179 l3 { 180 regulator-min-microvolt = <500000>; 181 regulator-max-microvolt = <1287500>; 182 }; 183 184 l4 { 185 regulator-min-microvolt = <2050000>; 186 regulator-max-microvolt = <2050000>; 187 }; 188 189 l5 { 190 regulator-min-microvolt = <1800000>; 191 regulator-max-microvolt = <1800000>; 192 }; 193 194 l6 { 195 regulator-min-microvolt = <1800000>; 196 regulator-max-microvolt = <1800000>; 197 }; 198 199 l7 { 200 regulator-min-microvolt = <1800000>; 201 regulator-max-microvolt = <1800000>; 202 }; 203 204 l8 { 205 regulator-min-microvolt = <2850000>; 206 regulator-max-microvolt = <2900000>; 207 }; 208 209 l9 { 210 regulator-min-microvolt = <3300000>; 211 regulator-max-microvolt = <3300000>; 212 }; 213 214 l10 { 215 regulator-min-microvolt = <2700000>; 216 regulator-max-microvolt = <2800000>; 217 }; 218 219 l11 { 220 regulator-min-microvolt = <1800000>; 221 regulator-max-microvolt = <2950000>; 222 regulator-allow-set-load; 223 regulator-system-load = <200000>; 224 }; 225 226 l12 { 227 regulator-min-microvolt = <1800000>; 228 regulator-max-microvolt = <2950000>; 229 }; 230 231 l13 { 232 regulator-min-microvolt = <3075000>; 233 regulator-max-microvolt = <3075000>; 234 }; 235 236 l14 { 237 regulator-min-microvolt = <1800000>; 238 regulator-max-microvolt = <3300000>; 239 }; 240 241 l15 { 242 regulator-min-microvolt = <1800000>; 243 regulator-max-microvolt = <3300000>; 244 }; 245 246 l16 { 247 regulator-min-microvolt = <1800000>; 248 regulator-max-microvolt = <3300000>; 249 }; 250 251 l17 { 252 regulator-min-microvolt = <2850000>; 253 regulator-max-microvolt = <2850000>; 254 }; 255 256 l18 { 257 regulator-min-microvolt = <2700000>; 258 regulator-max-microvolt = <2700000>; 259 }; 260}; 261