xref: /linux/arch/arm64/boot/dts/qcom/msm8917-xiaomi-riva.dts (revision ec71f661a572a770d7c861cd52a50cbbb0e1a8d1)
126633b58SBarnabás Czémán// SPDX-License-Identifier: GPL-2.0-only
226633b58SBarnabás Czémán/*
326633b58SBarnabás Czémán * Copyright (c) 2023, Barnabas Czeman
426633b58SBarnabás Czémán */
526633b58SBarnabás Czémán
626633b58SBarnabás Czémán/dts-v1/;
726633b58SBarnabás Czémán
826633b58SBarnabás Czémán#include <dt-bindings/arm/qcom,ids.h>
926633b58SBarnabás Czémán#include <dt-bindings/gpio/gpio.h>
1026633b58SBarnabás Czémán#include "msm8917.dtsi"
1126633b58SBarnabás Czémán#include "pm8937.dtsi"
1226633b58SBarnabás Czémán
1326633b58SBarnabás Czémán/delete-node/ &qseecom_mem;
1426633b58SBarnabás Czémán
1526633b58SBarnabás Czémán/ {
1626633b58SBarnabás Czémán	model = "Xiaomi Redmi 5A (riva)";
1726633b58SBarnabás Czémán	compatible = "xiaomi,riva", "qcom,msm8917";
1826633b58SBarnabás Czémán	chassis-type = "handset";
1926633b58SBarnabás Czémán
2026633b58SBarnabás Czémán	qcom,msm-id = <QCOM_ID_MSM8917 0>;
2126633b58SBarnabás Czémán	qcom,board-id = <0x1000b 2>, <0x2000b 2>;
2226633b58SBarnabás Czémán
23*5b74065eSBarnabás Czémán	pwm_backlight: backlight {
24*5b74065eSBarnabás Czémán		compatible = "pwm-backlight";
25*5b74065eSBarnabás Czémán		pwms = <&pm8937_pwm 0 100000>;
26*5b74065eSBarnabás Czémán		brightness-levels = <0 255>;
27*5b74065eSBarnabás Czémán		num-interpolated-steps = <255>;
28*5b74065eSBarnabás Czémán		default-brightness-level = <128>;
29*5b74065eSBarnabás Czémán	};
30*5b74065eSBarnabás Czémán
3126633b58SBarnabás Czémán	battery: battery {
3226633b58SBarnabás Czémán		compatible = "simple-battery";
3326633b58SBarnabás Czémán		charge-full-design-microamp-hours = <3000000>;
3426633b58SBarnabás Czémán		energy-full-design-microwatt-hours = <11500000>;
3526633b58SBarnabás Czémán		constant-charge-current-max-microamp = <1000000>;
3626633b58SBarnabás Czémán		constant-charge-voltage-max-microvolt = <4400000>;
3726633b58SBarnabás Czémán		precharge-current-microamp = <256000>;
3826633b58SBarnabás Czémán		charge-term-current-microamp = <60000>;
3926633b58SBarnabás Czémán		voltage-min-design-microvolt = <3400000>;
4026633b58SBarnabás Czémán	};
4126633b58SBarnabás Czémán
4226633b58SBarnabás Czémán	chosen {
4326633b58SBarnabás Czémán		#address-cells = <2>;
4426633b58SBarnabás Czémán		#size-cells = <2>;
4526633b58SBarnabás Czémán		ranges;
4626633b58SBarnabás Czémán
4726633b58SBarnabás Czémán		stdout-path = "framebuffer0";
4826633b58SBarnabás Czémán
4926633b58SBarnabás Czémán		framebuffer0: framebuffer@90001000 {
5026633b58SBarnabás Czémán			compatible = "simple-framebuffer";
5126633b58SBarnabás Czémán			reg = <0x0 0x90001000 0x0 (720 * 1280 * 3)>;
5226633b58SBarnabás Czémán			width = <720>;
5326633b58SBarnabás Czémán			height = <1280>;
5426633b58SBarnabás Czémán			stride = <(720 * 3)>;
5526633b58SBarnabás Czémán			format = "r8g8b8";
5626633b58SBarnabás Czémán
5726633b58SBarnabás Czémán			clocks = <&gcc GCC_MDSS_AHB_CLK>,
5826633b58SBarnabás Czémán				 <&gcc GCC_MDSS_AXI_CLK>,
5926633b58SBarnabás Czémán				 <&gcc GCC_MDSS_VSYNC_CLK>,
6026633b58SBarnabás Czémán				 <&gcc GCC_MDSS_MDP_CLK>,
6126633b58SBarnabás Czémán				 <&gcc GCC_MDSS_BYTE0_CLK>,
6226633b58SBarnabás Czémán				 <&gcc GCC_MDSS_PCLK0_CLK>,
6326633b58SBarnabás Czémán				 <&gcc GCC_MDSS_ESC0_CLK>;
6426633b58SBarnabás Czémán			power-domains = <&gcc MDSS_GDSC>;
6526633b58SBarnabás Czémán		};
6626633b58SBarnabás Czémán	};
6726633b58SBarnabás Czémán
6826633b58SBarnabás Czémán	gpio-keys {
6926633b58SBarnabás Czémán		compatible = "gpio-keys";
7026633b58SBarnabás Czémán
7126633b58SBarnabás Czémán		pinctrl-0 = <&gpio_keys_default>;
7226633b58SBarnabás Czémán		pinctrl-names = "default";
7326633b58SBarnabás Czémán
7426633b58SBarnabás Czémán		key-volup {
7526633b58SBarnabás Czémán			label = "Volume Up";
7626633b58SBarnabás Czémán			linux,code = <KEY_VOLUMEUP>;
7726633b58SBarnabás Czémán			gpios = <&tlmm 91 GPIO_ACTIVE_LOW>;
7826633b58SBarnabás Czémán			debounce-interval = <15>;
7926633b58SBarnabás Czémán		};
8026633b58SBarnabás Czémán	};
8126633b58SBarnabás Czémán
8226633b58SBarnabás Czémán	vph_pwr: regulator-vph-pwr {
8326633b58SBarnabás Czémán		compatible = "regulator-fixed";
8426633b58SBarnabás Czémán		regulator-name = "vph_pwr";
8526633b58SBarnabás Czémán		regulator-min-microvolt = <3700000>;
8626633b58SBarnabás Czémán		regulator-max-microvolt = <3700000>;
8726633b58SBarnabás Czémán		regulator-always-on;
8826633b58SBarnabás Czémán		regulator-boot-on;
8926633b58SBarnabás Czémán	};
9026633b58SBarnabás Czémán
9126633b58SBarnabás Czémán	reserved-memory {
9226633b58SBarnabás Czémán		qseecom_mem: qseecom@84a00000 {
9326633b58SBarnabás Czémán			reg = <0x0 0x84a00000 0x0 0x1900000>;
9426633b58SBarnabás Czémán			no-map;
9526633b58SBarnabás Czémán		};
9626633b58SBarnabás Czémán
9726633b58SBarnabás Czémán		framebuffer_mem: memory@90001000 {
9826633b58SBarnabás Czémán			reg = <0x0 0x90001000 0x0 (720 * 1280 * 3)>;
9926633b58SBarnabás Czémán			no-map;
10026633b58SBarnabás Czémán		};
10126633b58SBarnabás Czémán	};
10226633b58SBarnabás Czémán};
10326633b58SBarnabás Czémán
10426633b58SBarnabás Czémán&blsp1_i2c3 {
10526633b58SBarnabás Czémán	status = "okay";
10626633b58SBarnabás Czémán
10726633b58SBarnabás Czémán	touchscreen@38 {
10826633b58SBarnabás Czémán		compatible = "edt,edt-ft5306";
10926633b58SBarnabás Czémán		reg = <0x38>;
11026633b58SBarnabás Czémán		interrupts-extended = <&tlmm 65 IRQ_TYPE_LEVEL_LOW>;
11126633b58SBarnabás Czémán		reset-gpios = <&tlmm 64 GPIO_ACTIVE_LOW>;
11226633b58SBarnabás Czémán		pinctrl-0 = <&tsp_int_rst_default>;
11326633b58SBarnabás Czémán		pinctrl-names = "default";
11426633b58SBarnabás Czémán		vcc-supply = <&pm8937_l10>;
11526633b58SBarnabás Czémán		iovcc-supply = <&pm8937_l5>;
11626633b58SBarnabás Czémán		touchscreen-size-x = <720>;
11726633b58SBarnabás Czémán		touchscreen-size-y = <1280>;
11826633b58SBarnabás Czémán	};
11926633b58SBarnabás Czémán};
12026633b58SBarnabás Czémán
12126633b58SBarnabás Czémán&blsp2_i2c1 {
12226633b58SBarnabás Czémán	status = "okay";
12326633b58SBarnabás Czémán
12426633b58SBarnabás Czémán	bq27426@55 {
12526633b58SBarnabás Czémán		compatible = "ti,bq27426";
12626633b58SBarnabás Czémán		reg = <0x55>;
12726633b58SBarnabás Czémán		monitored-battery = <&battery>;
12826633b58SBarnabás Czémán	};
12926633b58SBarnabás Czémán
13026633b58SBarnabás Czémán	bq25601@6b {
13126633b58SBarnabás Czémán		compatible = "ti,bq25601";
13226633b58SBarnabás Czémán		reg = <0x6b>;
13326633b58SBarnabás Czémán		interrupts-extended = <&tlmm 61 IRQ_TYPE_EDGE_FALLING>;
13426633b58SBarnabás Czémán		pinctrl-0 = <&bq25601_int_default>;
13526633b58SBarnabás Czémán		pinctrl-names = "default";
13626633b58SBarnabás Czémán		input-voltage-limit-microvolt = <4400000>;
13726633b58SBarnabás Czémán		input-current-limit-microamp = <1000000>;
13826633b58SBarnabás Czémán		monitored-battery = <&battery>;
13926633b58SBarnabás Czémán	};
14026633b58SBarnabás Czémán};
14126633b58SBarnabás Czémán
142*5b74065eSBarnabás Czémán&pm8937_gpios {
143*5b74065eSBarnabás Czémán	pwm_enable_default: pwm-enable-default-state {
144*5b74065eSBarnabás Czémán		pins = "gpio8";
145*5b74065eSBarnabás Czémán		function = "dtest2";
146*5b74065eSBarnabás Czémán		output-low;
147*5b74065eSBarnabás Czémán		bias-disable;
148*5b74065eSBarnabás Czémán		qcom,drive-strength = <2>;
149*5b74065eSBarnabás Czémán	};
150*5b74065eSBarnabás Czémán};
151*5b74065eSBarnabás Czémán
152*5b74065eSBarnabás Czémán&pm8937_pwm {
153*5b74065eSBarnabás Czémán	pinctrl-0 = <&pwm_enable_default>;
154*5b74065eSBarnabás Czémán	pinctrl-names = "default";
155*5b74065eSBarnabás Czémán
156*5b74065eSBarnabás Czémán	status = "okay";
157*5b74065eSBarnabás Czémán};
158*5b74065eSBarnabás Czémán
15926633b58SBarnabás Czémán&pm8937_resin {
16026633b58SBarnabás Czémán	linux,code = <KEY_VOLUMEDOWN>;
16126633b58SBarnabás Czémán
16226633b58SBarnabás Czémán	status = "okay";
16326633b58SBarnabás Czémán};
16426633b58SBarnabás Czémán
16526633b58SBarnabás Czémán&rpm_requests {
16626633b58SBarnabás Czémán	regulators-0 {
16726633b58SBarnabás Czémán		compatible = "qcom,rpm-pm8937-regulators";
16826633b58SBarnabás Czémán
16926633b58SBarnabás Czémán		vdd_s1-supply = <&vph_pwr>;
17026633b58SBarnabás Czémán		vdd_s2-supply = <&vph_pwr>;
17126633b58SBarnabás Czémán		vdd_s3-supply = <&vph_pwr>;
17226633b58SBarnabás Czémán		vdd_s4-supply = <&vph_pwr>;
17326633b58SBarnabás Czémán
17426633b58SBarnabás Czémán		vdd_l1_l19-supply = <&pm8937_s3>;
17526633b58SBarnabás Czémán		vdd_l2_l23-supply = <&pm8937_s3>;
17626633b58SBarnabás Czémán		vdd_l3-supply = <&pm8937_s3>;
17726633b58SBarnabás Czémán		vdd_l4_l5_l6_l7_l16-supply = <&pm8937_s4>;
17826633b58SBarnabás Czémán		vdd_l8_l11_l12_l17_l22-supply = <&vph_pwr>;
17926633b58SBarnabás Czémán		vdd_l9_l10_l13_l14_l15_l18-supply = <&vph_pwr>;
18026633b58SBarnabás Czémán
18126633b58SBarnabás Czémán		pm8937_s1: s1 {
18226633b58SBarnabás Czémán			regulator-min-microvolt = <1000000>;
18326633b58SBarnabás Czémán			regulator-max-microvolt = <1225000>;
18426633b58SBarnabás Czémán		};
18526633b58SBarnabás Czémán
18626633b58SBarnabás Czémán		pm8937_s3: s3 {
18726633b58SBarnabás Czémán			regulator-min-microvolt = <1300000>;
18826633b58SBarnabás Czémán			regulator-max-microvolt = <1300000>;
18926633b58SBarnabás Czémán		};
19026633b58SBarnabás Czémán
19126633b58SBarnabás Czémán		pm8937_s4: s4 {
19226633b58SBarnabás Czémán			regulator-min-microvolt = <2050000>;
19326633b58SBarnabás Czémán			regulator-max-microvolt = <2050000>;
19426633b58SBarnabás Czémán		};
19526633b58SBarnabás Czémán
19626633b58SBarnabás Czémán		pm8937_l2: l2 {
19726633b58SBarnabás Czémán			regulator-min-microvolt = <1200000>;
19826633b58SBarnabás Czémán			regulator-max-microvolt = <1200000>;
19926633b58SBarnabás Czémán		};
20026633b58SBarnabás Czémán
20126633b58SBarnabás Czémán		pm8937_l5: l5 {
20226633b58SBarnabás Czémán			regulator-min-microvolt = <1800000>;
20326633b58SBarnabás Czémán			regulator-max-microvolt = <1800000>;
20426633b58SBarnabás Czémán		};
20526633b58SBarnabás Czémán
20626633b58SBarnabás Czémán		pm8937_l6: l6 {
20726633b58SBarnabás Czémán			regulator-min-microvolt = <1800000>;
20826633b58SBarnabás Czémán			regulator-max-microvolt = <1800000>;
20926633b58SBarnabás Czémán		};
21026633b58SBarnabás Czémán
21126633b58SBarnabás Czémán		pm8937_l7: l7 {
21226633b58SBarnabás Czémán			regulator-min-microvolt = <1800000>;
21326633b58SBarnabás Czémán			regulator-max-microvolt = <1800000>;
21426633b58SBarnabás Czémán		};
21526633b58SBarnabás Czémán
21626633b58SBarnabás Czémán		pm8937_l8: l8 {
21726633b58SBarnabás Czémán			regulator-min-microvolt = <2850000>;
21826633b58SBarnabás Czémán			regulator-max-microvolt = <2900000>;
21926633b58SBarnabás Czémán		};
22026633b58SBarnabás Czémán
22126633b58SBarnabás Czémán		pm8937_l9: l9 {
22226633b58SBarnabás Czémán			regulator-min-microvolt = <3000000>;
22326633b58SBarnabás Czémán			regulator-max-microvolt = <3300000>;
22426633b58SBarnabás Czémán		};
22526633b58SBarnabás Czémán
22626633b58SBarnabás Czémán		pm8937_l10: l10 {
22726633b58SBarnabás Czémán			regulator-min-microvolt = <2800000>;
22826633b58SBarnabás Czémán			regulator-max-microvolt = <3000000>;
22926633b58SBarnabás Czémán		};
23026633b58SBarnabás Czémán
23126633b58SBarnabás Czémán		pm8937_l11: l11 {
23226633b58SBarnabás Czémán			regulator-min-microvolt = <2950000>;
23326633b58SBarnabás Czémán			regulator-max-microvolt = <2950000>;
23426633b58SBarnabás Czémán			regulator-allow-set-load;
23526633b58SBarnabás Czémán			regulator-system-load = <200000>;
23626633b58SBarnabás Czémán		};
23726633b58SBarnabás Czémán
23826633b58SBarnabás Czémán		pm8937_l12: l12 {
23926633b58SBarnabás Czémán			regulator-min-microvolt = <1800000>;
24026633b58SBarnabás Czémán			regulator-max-microvolt = <2950000>;
24126633b58SBarnabás Czémán		};
24226633b58SBarnabás Czémán
24326633b58SBarnabás Czémán		pm8937_l13: l13 {
24426633b58SBarnabás Czémán			regulator-min-microvolt = <3075000>;
24526633b58SBarnabás Czémán			regulator-max-microvolt = <3075000>;
24626633b58SBarnabás Czémán		};
24726633b58SBarnabás Czémán
24826633b58SBarnabás Czémán		pm8937_l14: l14 {
24926633b58SBarnabás Czémán			regulator-min-microvolt = <1800000>;
25026633b58SBarnabás Czémán			regulator-max-microvolt = <3300000>;
25126633b58SBarnabás Czémán		};
25226633b58SBarnabás Czémán
25326633b58SBarnabás Czémán		pm8937_l15: l15 {
25426633b58SBarnabás Czémán			regulator-min-microvolt = <1800000>;
25526633b58SBarnabás Czémán			regulator-max-microvolt = <3300000>;
25626633b58SBarnabás Czémán		};
25726633b58SBarnabás Czémán
25826633b58SBarnabás Czémán		pm8937_l16: l16 {
25926633b58SBarnabás Czémán			regulator-min-microvolt = <1800000>;
26026633b58SBarnabás Czémán			regulator-max-microvolt = <1800000>;
26126633b58SBarnabás Czémán		};
26226633b58SBarnabás Czémán
26326633b58SBarnabás Czémán		pm8937_l17: l17 {
26426633b58SBarnabás Czémán			regulator-min-microvolt = <2800000>;
26526633b58SBarnabás Czémán			regulator-max-microvolt = <2900000>;
26626633b58SBarnabás Czémán		};
26726633b58SBarnabás Czémán
26826633b58SBarnabás Czémán		pm8937_l19: l19 {
26926633b58SBarnabás Czémán			regulator-min-microvolt = <1225000>;
27026633b58SBarnabás Czémán			regulator-max-microvolt = <1350000>;
27126633b58SBarnabás Czémán		};
27226633b58SBarnabás Czémán
27326633b58SBarnabás Czémán		pm8937_l22: l22 {
27426633b58SBarnabás Czémán			regulator-min-microvolt = <2800000>;
27526633b58SBarnabás Czémán			regulator-max-microvolt = <2800000>;
27626633b58SBarnabás Czémán		};
27726633b58SBarnabás Czémán
27826633b58SBarnabás Czémán		pm8937_l23: l23 {
27926633b58SBarnabás Czémán			regulator-min-microvolt = <1200000>;
28026633b58SBarnabás Czémán			regulator-max-microvolt = <1200000>;
28126633b58SBarnabás Czémán		};
28226633b58SBarnabás Czémán	};
28326633b58SBarnabás Czémán
28426633b58SBarnabás Czémán};
28526633b58SBarnabás Czémán
28626633b58SBarnabás Czémán&sdhc_1 {
28726633b58SBarnabás Czémán	vmmc-supply = <&pm8937_l8>;
28826633b58SBarnabás Czémán	vqmmc-supply = <&pm8937_l5>;
28926633b58SBarnabás Czémán
29026633b58SBarnabás Czémán	status = "okay";
29126633b58SBarnabás Czémán};
29226633b58SBarnabás Czémán
29326633b58SBarnabás Czémán&sdhc_2 {
29426633b58SBarnabás Czémán	cd-gpios = <&tlmm 67 GPIO_ACTIVE_LOW>;
29526633b58SBarnabás Czémán	vmmc-supply = <&pm8937_l11>;
29626633b58SBarnabás Czémán	vqmmc-supply = <&pm8937_l12>;
29726633b58SBarnabás Czémán	pinctrl-0 = <&sdc2_default &sdc2_cd_default>;
29826633b58SBarnabás Czémán	pinctrl-1 = <&sdc2_sleep &sdc2_cd_default>;
29926633b58SBarnabás Czémán	pinctrl-names = "default", "sleep";
30026633b58SBarnabás Czémán
30126633b58SBarnabás Czémán	status = "okay";
30226633b58SBarnabás Czémán};
30326633b58SBarnabás Czémán
30426633b58SBarnabás Czémán&sleep_clk {
30526633b58SBarnabás Czémán	clock-frequency = <32768>;
30626633b58SBarnabás Czémán};
30726633b58SBarnabás Czémán
30826633b58SBarnabás Czémán&tlmm {
30926633b58SBarnabás Czémán	bq25601_int_default: bq25601-int-default-state {
31026633b58SBarnabás Czémán		pins = "gpio61";
31126633b58SBarnabás Czémán		function = "gpio";
31226633b58SBarnabás Czémán		drive-strength = <2>;
31326633b58SBarnabás Czémán		bias-pull-up;
31426633b58SBarnabás Czémán	};
31526633b58SBarnabás Czémán
31626633b58SBarnabás Czémán	gpio_keys_default: gpio-keys-default-state {
31726633b58SBarnabás Czémán		pins = "gpio91";
31826633b58SBarnabás Czémán		function = "gpio";
31926633b58SBarnabás Czémán		drive-strength = <2>;
32026633b58SBarnabás Czémán		bias-pull-up;
32126633b58SBarnabás Czémán	};
32226633b58SBarnabás Czémán
32326633b58SBarnabás Czémán	sdc2_cd_default: sdc2-cd-default-state {
32426633b58SBarnabás Czémán		pins = "gpio67";
32526633b58SBarnabás Czémán		function = "gpio";
32626633b58SBarnabás Czémán		drive-strength = <2>;
32726633b58SBarnabás Czémán		bias-disable;
32826633b58SBarnabás Czémán	};
32926633b58SBarnabás Czémán
33026633b58SBarnabás Czémán	tsp_int_rst_default: tsp-int-rst-default-state {
33126633b58SBarnabás Czémán		pins = "gpio64", "gpio65";
33226633b58SBarnabás Czémán		function = "gpio";
33326633b58SBarnabás Czémán		drive-strength = <8>;
33426633b58SBarnabás Czémán		bias-pull-up;
33526633b58SBarnabás Czémán	};
33626633b58SBarnabás Czémán};
33726633b58SBarnabás Czémán
33826633b58SBarnabás Czémán&wcnss {
33926633b58SBarnabás Czémán	vddpx-supply = <&pm8937_l5>;
34026633b58SBarnabás Czémán
34126633b58SBarnabás Czémán	status = "okay";
34226633b58SBarnabás Czémán};
34326633b58SBarnabás Czémán
34426633b58SBarnabás Czémán&wcnss_iris {
34526633b58SBarnabás Czémán	compatible = "qcom,wcn3620";
34626633b58SBarnabás Czémán	vddxo-supply = <&pm8937_l7>;
34726633b58SBarnabás Czémán	vddrfa-supply = <&pm8937_l19>;
34826633b58SBarnabás Czémán	vddpa-supply = <&pm8937_l9>;
34926633b58SBarnabás Czémán	vdddig-supply = <&pm8937_l5>;
35026633b58SBarnabás Czémán};
35126633b58SBarnabás Czémán
35226633b58SBarnabás Czémán&wcnss_mem {
35326633b58SBarnabás Czémán	status = "okay";
35426633b58SBarnabás Czémán};
35526633b58SBarnabás Czémán
35626633b58SBarnabás Czémán&xo_board {
35726633b58SBarnabás Czémán	clock-frequency = <19200000>;
35826633b58SBarnabás Czémán};
359