1// SPDX-License-Identifier: BSD-3-Clause 2/* 3 * Copyright (c) 2025, Gabriel Gonzales <semfault@disroot.org> 4 */ 5 6/dts-v1/; 7 8#include <dt-bindings/arm/qcom,ids.h> 9#include <dt-bindings/gpio/gpio.h> 10#include <dt-bindings/input/input.h> 11#include <dt-bindings/input/gpio-keys.h> 12#include <dt-bindings/pinctrl/qcom,pmic-gpio.h> 13#include "sm6125.dtsi" 14#include "pm6125.dtsi" 15 16/delete-node/ &adsp_pil_mem; 17/delete-node/ &cont_splash_mem; 18/delete-node/ &gpu_mem; 19/delete-node/ &ipa_fw_mem; 20/delete-node/ &ipa_gsi_mem; 21 22/ { 23 model = "Xiaomi Redmi Note 8"; 24 compatible = "xiaomi,ginkgo", "qcom,sm6125"; 25 chassis-type = "handset"; 26 27 qcom,msm-id = <QCOM_ID_SM6125 0x10000>; 28 29 aliases { 30 serial0 = &uart4; 31 }; 32 33 chosen { 34 #address-cells = <2>; 35 #size-cells = <2>; 36 ranges; 37 38 framebuffer { 39 compatible = "simple-framebuffer"; 40 memory-region = <&framebuffer_mem>; 41 width = <1080>; 42 height = <2340>; 43 stride = <(1080 * 4)>; 44 format = "a8r8g8b8"; 45 }; 46 }; 47 48 reserved-memory { 49 adsp_pil_mem: adsp_pil_mem@55300000 { 50 reg = <0x0 0x55300000 0x0 0x2200000>; 51 no-map; 52 }; 53 54 ipa_fw_mem: ipa_fw_mem@57500000 { 55 reg = <0x0 0x57500000 0x0 0x10000>; 56 no-map; 57 }; 58 59 ipa_gsi_mem: ipa_gsi_mem@57510000 { 60 reg = <0x0 0x57510000 0x0 0x5000>; 61 no-map; 62 }; 63 64 gpu_mem: gpu_mem@57515000 { 65 reg = <0x0 0x57515000 0x0 0x2000>; 66 no-map; 67 }; 68 69 framebuffer_mem: framebuffer@5c000000 { 70 reg = <0x0 0x5c000000 0x0 (2340 * 1080 * 4)>; 71 no-map; 72 }; 73 74 /* Matching with recovery values to be able to get the results. */ 75 ramoops@61600000 { 76 compatible = "ramoops"; 77 reg = <0x0 0x61600000 0x0 0x400000>; 78 record-size = <0x80000>; 79 pmsg-size = <0x200000>; 80 console-size = <0x100000>; 81 }; 82 }; 83 84 gpio-keys { 85 compatible = "gpio-keys"; 86 87 pinctrl-0 = <&vol_up_n>; 88 pinctrl-names = "default"; 89 90 key-volume-up { 91 label = "Volume Up"; 92 gpios = <&pm6125_gpios 5 GPIO_ACTIVE_LOW>; 93 linux,code = <KEY_VOLUMEUP>; 94 debounce-interval = <15>; 95 linux,can-disable; 96 wakeup-source; 97 }; 98 }; 99}; 100 101&pm6125_gpios { 102 vol_up_n: vol-up-n-state { 103 pins = "gpio5"; 104 function = "normal"; 105 power-source = <0>; 106 bias-pull-up; 107 input-enable; 108 }; 109}; 110 111&hsusb_phy1 { 112 vdd-supply = <&vreg_l7a>; 113 vdda-pll-supply = <&vreg_l10a>; 114 vdda-phy-dpdm-supply = <&vreg_l15a>; 115 status = "okay"; 116}; 117 118&pon_pwrkey { 119 status = "okay"; 120}; 121 122&pon_resin { 123 linux,code = <KEY_VOLUMEDOWN>; 124 status = "okay"; 125}; 126 127&qupv3_id_0 { 128 status = "okay"; 129}; 130 131&rpm_requests { 132 regulators-0 { 133 compatible = "qcom,rpm-pm6125-regulators"; 134 135 vreg_s6a: s6 { 136 regulator-min-microvolt = <936000>; 137 regulator-max-microvolt = <1422000>; 138 }; 139 140 vreg_l1a: l1 { 141 regulator-min-microvolt = <1200000>; 142 regulator-max-microvolt = <1256000>; 143 }; 144 145 vreg_l2a: l2 { 146 regulator-min-microvolt = <1000000>; 147 regulator-max-microvolt = <1056000>; 148 }; 149 150 vreg_l3a: l3 { 151 regulator-min-microvolt = <1000000>; 152 regulator-max-microvolt = <1064000>; 153 }; 154 155 vreg_l4a: l4 { 156 regulator-min-microvolt = <872000>; 157 regulator-max-microvolt = <976000>; 158 regulator-allow-set-load; 159 }; 160 161 vreg_l5a: l5 { 162 regulator-min-microvolt = <1648000>; 163 regulator-max-microvolt = <2950000>; 164 regulator-allow-set-load; 165 }; 166 167 vreg_l6a: l6 { 168 regulator-min-microvolt = <576000>; 169 regulator-max-microvolt = <656000>; 170 }; 171 172 vreg_l7a: l7 { 173 regulator-min-microvolt = <872000>; 174 regulator-max-microvolt = <976000>; 175 }; 176 177 vreg_l8a: l8 { 178 regulator-min-microvolt = <400000>; 179 regulator-max-microvolt = <728000>; 180 }; 181 182 vreg_l9a: l9 { 183 regulator-min-microvolt = <1800000>; 184 regulator-max-microvolt = <1896000>; 185 }; 186 187 vreg_l10a: l10 { 188 regulator-min-microvolt = <1800000>; 189 regulator-max-microvolt = <1896000>; 190 regulator-allow-set-load; 191 }; 192 193 vreg_l11a: l11 { 194 regulator-min-microvolt = <1800000>; 195 regulator-max-microvolt = <1952000>; 196 regulator-allow-set-load; 197 }; 198 199 vreg_l12a: l12 { 200 regulator-min-microvolt = <1800000>; 201 regulator-max-microvolt = <1996000>; 202 }; 203 204 vreg_l13a: l13 { 205 regulator-min-microvolt = <1800000>; 206 regulator-max-microvolt = <1832000>; 207 }; 208 209 vreg_l14a: l14 { 210 regulator-min-microvolt = <1800000>; 211 regulator-max-microvolt = <1904000>; 212 }; 213 214 vreg_l15a: l15 { 215 regulator-min-microvolt = <3104000>; 216 regulator-max-microvolt = <3232000>; 217 }; 218 219 vreg_l16a: l16 { 220 regulator-min-microvolt = <1800000>; 221 regulator-max-microvolt = <1904000>; 222 }; 223 224 vreg_l17a: l17 { 225 regulator-min-microvolt = <1248000>; 226 regulator-max-microvolt = <1304000>; 227 }; 228 229 vreg_l18a: l18 { 230 regulator-min-microvolt = <1200000>; 231 regulator-max-microvolt = <1264000>; 232 regulator-allow-set-load; 233 }; 234 235 vreg_l19a: l19 { 236 regulator-min-microvolt = <1648000>; 237 regulator-max-microvolt = <2952000>; 238 }; 239 240 vreg_l20a: l20 { 241 regulator-min-microvolt = <1648000>; 242 regulator-max-microvolt = <2952000>; 243 }; 244 245 vreg_l21a: l21 { 246 regulator-min-microvolt = <2600000>; 247 regulator-max-microvolt = <2856000>; 248 }; 249 250 vreg_l22a: l22 { 251 regulator-min-microvolt = <2944000>; 252 regulator-max-microvolt = <2950000>; 253 regulator-allow-set-load; 254 }; 255 256 vreg_l23a: l23 { 257 regulator-min-microvolt = <3000000>; 258 regulator-max-microvolt = <3400000>; 259 }; 260 261 vreg_l24a: l24 { 262 regulator-min-microvolt = <2944000>; 263 regulator-max-microvolt = <2950000>; 264 regulator-allow-set-load; 265 }; 266 267 }; 268}; 269 270&sdc2_off_state { 271 sd-cd-pins { 272 pins = "gpio98"; 273 function = "gpio"; 274 drive-strength = <2>; 275 bias-disable; 276 }; 277}; 278 279&sdc2_on_state { 280 sd-cd-pins { 281 pins = "gpio98"; 282 function = "gpio"; 283 drive-strength = <2>; 284 bias-pull-up; 285 }; 286}; 287 288&sdhc_1 { 289 vmmc-supply = <&vreg_l24a>; 290 vqmmc-supply = <&vreg_l11a>; 291 status = "okay"; 292}; 293 294&sdhc_2 { 295 cd-gpios = <&tlmm 98 GPIO_ACTIVE_HIGH>; 296 vmmc-supply = <&vreg_l22a>; 297 vqmmc-supply = <&vreg_l5a>; 298 no-sdio; 299 no-mmc; 300 status = "okay"; 301}; 302 303&tlmm { 304 gpio-reserved-ranges = <0 4>, <30 4>; 305}; 306 307&uart4 { 308 status = "okay"; 309}; 310 311&usb3 { 312 status = "okay"; 313}; 314