1// SPDX-License-Identifier: GPL-2.0-only 2 3/dts-v1/; 4 5#include "msm8916-pm8916.dtsi" 6#include <dt-bindings/gpio/gpio.h> 7#include <dt-bindings/input/input.h> 8#include <dt-bindings/interrupt-controller/irq.h> 9 10/ { 11 aliases { 12 serial0 = &blsp1_uart2; 13 }; 14 15 chosen { 16 stdout-path = "serial0"; 17 }; 18 19 reserved-memory { 20 /* Additional memory used by Samsung firmware modifications */ 21 tz-apps@85500000 { 22 reg = <0x0 0x85500000 0x0 0xb00000>; 23 no-map; 24 }; 25 }; 26 27 gpio-keys { 28 compatible = "gpio-keys"; 29 30 pinctrl-0 = <&gpio_keys_default>; 31 pinctrl-names = "default"; 32 33 label = "GPIO Buttons"; 34 35 volume-up-button { 36 label = "Volume Up"; 37 gpios = <&msmgpio 107 GPIO_ACTIVE_LOW>; 38 linux,code = <KEY_VOLUMEUP>; 39 }; 40 41 home-button { 42 label = "Home"; 43 gpios = <&msmgpio 109 GPIO_ACTIVE_LOW>; 44 linux,code = <KEY_HOMEPAGE>; 45 }; 46 }; 47 48 gpio-hall-sensor { 49 compatible = "gpio-keys"; 50 51 pinctrl-0 = <&gpio_hall_sensor_default>; 52 pinctrl-names = "default"; 53 54 label = "GPIO Hall Effect Sensor"; 55 56 hall-sensor-switch { 57 label = "Hall Effect Sensor"; 58 gpios = <&msmgpio 52 GPIO_ACTIVE_LOW>; 59 linux,input-type = <EV_SW>; 60 linux,code = <SW_LID>; 61 linux,can-disable; 62 }; 63 }; 64}; 65 66&blsp_i2c4 { 67 status = "okay"; 68 69 fuelgauge@36 { 70 compatible = "maxim,max77849-battery"; 71 reg = <0x36>; 72 73 maxim,rsns-microohm = <10000>; 74 maxim,over-heat-temp = <600>; 75 maxim,over-volt = <4400>; 76 77 interrupt-parent = <&msmgpio>; 78 interrupts = <121 IRQ_TYPE_EDGE_FALLING>; 79 80 pinctrl-0 = <&fuelgauge_int_default>; 81 pinctrl-names = "default"; 82 }; 83}; 84 85&blsp_i2c2 { 86 status = "okay"; 87 88 light-sensor@10 { 89 compatible = "capella,cm3323"; 90 reg = <0x10>; 91 }; 92 93 accelerometer@1d { 94 compatible = "st,lis2hh12"; 95 reg = <0x1d>; 96 97 vdd-supply = <&pm8916_l17>; 98 vddio-supply = <&pm8916_l5>; 99 100 interrupt-parent = <&msmgpio>; 101 interrupts = <115 IRQ_TYPE_LEVEL_HIGH>; 102 interrupt-names = "INT1"; 103 104 st,drdy-int-pin = <1>; 105 mount-matrix = "0", "1", "0", 106 "-1", "0", "0", 107 "0", "0", "1"; 108 109 pinctrl-0 = <&accel_int_default>; 110 pinctrl-names = "default"; 111 }; 112}; 113 114&blsp1_uart2 { 115 status = "okay"; 116}; 117 118&pm8916_resin { 119 linux,code = <KEY_VOLUMEDOWN>; 120 status = "okay"; 121}; 122 123/* FIXME: Replace with MAX77849 MUIC when driver is available */ 124&pm8916_usbin { 125 status = "okay"; 126}; 127 128&sdhc_1 { 129 pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on>; 130 pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off>; 131 pinctrl-names = "default", "sleep"; 132 133 status = "okay"; 134}; 135 136&sdhc_2 { 137 pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on>; 138 pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off &sdc2_cd_off>; 139 pinctrl-names = "default", "sleep"; 140 141 cd-gpios = <&msmgpio 38 GPIO_ACTIVE_LOW>; 142 143 status = "okay"; 144}; 145 146&usb { 147 dr_mode = "peripheral"; 148 extcon = <&pm8916_usbin>; 149 150 status = "okay"; 151}; 152 153&usb_hs_phy { 154 extcon = <&pm8916_usbin>; 155}; 156 157&wcnss { 158 status = "okay"; 159}; 160 161&wcnss_iris { 162 compatible = "qcom,wcn3660b"; 163}; 164 165&smd_rpm_regulators { 166 vdd_l1_l2_l3-supply = <&pm8916_s3>; 167 vdd_l4_l5_l6-supply = <&pm8916_s4>; 168 vdd_l7-supply = <&pm8916_s4>; 169 170 s3 { 171 regulator-min-microvolt = <1200000>; 172 regulator-max-microvolt = <1300000>; 173 }; 174 175 s4 { 176 regulator-min-microvolt = <1800000>; 177 regulator-max-microvolt = <2100000>; 178 }; 179 180 l1 { 181 regulator-min-microvolt = <1225000>; 182 regulator-max-microvolt = <1225000>; 183 }; 184 185 l2 { 186 regulator-min-microvolt = <1200000>; 187 regulator-max-microvolt = <1200000>; 188 }; 189 190 l4 { 191 regulator-min-microvolt = <2050000>; 192 regulator-max-microvolt = <2050000>; 193 }; 194 195 l5 { 196 regulator-min-microvolt = <1800000>; 197 regulator-max-microvolt = <1800000>; 198 }; 199 200 l6 { 201 regulator-min-microvolt = <1800000>; 202 regulator-max-microvolt = <1800000>; 203 }; 204 205 l7 { 206 regulator-min-microvolt = <1800000>; 207 regulator-max-microvolt = <1800000>; 208 }; 209 210 l8 { 211 regulator-min-microvolt = <2850000>; 212 regulator-max-microvolt = <2900000>; 213 }; 214 215 l9 { 216 regulator-min-microvolt = <3300000>; 217 regulator-max-microvolt = <3300000>; 218 }; 219 220 l10 { 221 regulator-min-microvolt = <2700000>; 222 regulator-max-microvolt = <2800000>; 223 }; 224 225 l11 { 226 regulator-min-microvolt = <1800000>; 227 regulator-max-microvolt = <2950000>; 228 regulator-system-load = <200000>; 229 regulator-allow-set-load; 230 }; 231 232 l12 { 233 regulator-min-microvolt = <1800000>; 234 regulator-max-microvolt = <2950000>; 235 }; 236 237 l13 { 238 regulator-min-microvolt = <3075000>; 239 regulator-max-microvolt = <3075000>; 240 }; 241 242 l14 { 243 regulator-min-microvolt = <1800000>; 244 regulator-max-microvolt = <3300000>; 245 }; 246 247 l15 { 248 regulator-min-microvolt = <1800000>; 249 regulator-max-microvolt = <3300000>; 250 }; 251 252 l16 { 253 regulator-min-microvolt = <1800000>; 254 regulator-max-microvolt = <3300000>; 255 }; 256 257 l17 { 258 regulator-min-microvolt = <2850000>; 259 regulator-max-microvolt = <2850000>; 260 }; 261 262 l18 { 263 regulator-min-microvolt = <2700000>; 264 regulator-max-microvolt = <2700000>; 265 }; 266}; 267 268&msmgpio { 269 accel_int_default: accel-int-default-state { 270 pins = "gpio115"; 271 function = "gpio"; 272 drive-strength = <2>; 273 bias-disable; 274 }; 275 276 fuelgauge_int_default: fuelgauge-int-default-state { 277 pins = "gpio121"; 278 function = "gpio"; 279 drive-strength = <2>; 280 bias-disable; 281 }; 282 283 gpio_keys_default: gpio-keys-default-state { 284 pins = "gpio107", "gpio109"; 285 function = "gpio"; 286 drive-strength = <2>; 287 bias-pull-up; 288 }; 289 290 gpio_hall_sensor_default: gpio-hall-sensor-default-state { 291 pins = "gpio52"; 292 function = "gpio"; 293 drive-strength = <2>; 294 bias-disable; 295 }; 296}; 297