mirror of
https://github.com/Evolution-X-Devices/kernel_xiaomi_sm8450-devicetrees
synced 2026-01-27 14:44:08 +00:00
Add support for Xiaomi 12S Pro (unicorn|L2S)
Change-Id: I610dd49877a1c517d9001ac8d249e87b4e9092ec
This commit is contained in:
@@ -325,7 +325,8 @@ dtbo-$(CONFIG_ARCH_CAPE) += cape-mtp-pm8008-overlay.dtbo \
|
||||
ukee-mtp-nodisplay-pm8008-overlay.dtbo \
|
||||
ukee-mtp-nodisplay-pm8010-overlay.dtbo \
|
||||
ukee-qrd-pm8008-overlay.dtbo \
|
||||
ukee-qrd-pm8010-overlay.dtbo
|
||||
ukee-qrd-pm8010-overlay.dtbo \
|
||||
unicorn-sm8475-pm8008-overlay.dtbo
|
||||
|
||||
cape-mtp-pm8008-overlay.dtbo-base := cape.dtb cape-v2.dtb capep.dtb
|
||||
cape-mtp-120fps-pm8008-overlay.dtbo-base := cape.dtb cape-v2.dtb capep.dtb
|
||||
@@ -359,6 +360,7 @@ ukee-mtp-nodisplay-pm8008-overlay.dtbo-base := ukee.dtb
|
||||
ukee-mtp-nodisplay-pm8010-overlay.dtbo-base := ukee.dtb
|
||||
ukee-qrd-pm8008-overlay.dtbo-base := ukee.dtb
|
||||
ukee-qrd-pm8010-overlay.dtbo-base := ukee.dtb
|
||||
unicorn-sm8475-pm8008-overlay.dtbo-base := cape.dtb cape-v2.dtb capep.dtb
|
||||
|
||||
else
|
||||
dtb-$(CONFIG_ARCH_CAPE) += cape-mtp-pm8008.dtb \
|
||||
|
||||
102
qcom/unicorn-pinctrl.dtsi
Normal file
102
qcom/unicorn-pinctrl.dtsi
Normal file
@@ -0,0 +1,102 @@
|
||||
/*for unicorn pinctrl */
|
||||
|
||||
&tlmm {
|
||||
cirrus_reset_default_0: cirrus_reset_default_0 {
|
||||
mux {
|
||||
pins = "gpio120";
|
||||
function = "gpio";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio120";
|
||||
drive-strength = <16>; /* 16 mA */
|
||||
bias-disable;
|
||||
output-high;
|
||||
};
|
||||
};
|
||||
|
||||
cirrus_reset_default_3: cirrus_reset_default_3 {
|
||||
mux {
|
||||
pins = "gpio1";
|
||||
function = "gpio";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio1";
|
||||
drive-strength = <16>; /* 16 mA */
|
||||
bias-disable;
|
||||
output-high;
|
||||
};
|
||||
};
|
||||
|
||||
cirrus_irq_default {
|
||||
cirrus_irq_default_0: cirrus_irq_default_0 {
|
||||
mux {
|
||||
pins = "gpio117";
|
||||
function = "gpio";
|
||||
};
|
||||
config {
|
||||
pins = "gpio117";
|
||||
drive-strength = <2>;
|
||||
input-enable;
|
||||
bias-pull-up;
|
||||
};
|
||||
};
|
||||
cirrus_irq_default_3: cirrus_irq_default_3 {
|
||||
mux {
|
||||
pins = "gpio88";
|
||||
function = "gpio";
|
||||
};
|
||||
config {
|
||||
pins = "gpio88";
|
||||
drive-strength = <2>;
|
||||
input-enable;
|
||||
bias-pull-up;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
/* AW8697_RESET_N */
|
||||
awinic_gpio_reset: awinic_gpio_reset {
|
||||
mux {
|
||||
pins = "gpio89";
|
||||
unction = "gpio";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio89";
|
||||
drive-strength = <2>;
|
||||
bias-disable;
|
||||
output-low;
|
||||
};
|
||||
};
|
||||
/* AW8697_RESET_N, state device active*/
|
||||
awinic_gpio_reset_output_high: awinic_gpio_reset_output_high {
|
||||
mux {
|
||||
pins = "gpio89";
|
||||
function = "gpio";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio89";
|
||||
drive-strength = <2>;
|
||||
bias-disable;
|
||||
output-high;
|
||||
};
|
||||
};
|
||||
/* AW8697_INTERRUPT_N */
|
||||
awinic_gpio_int: awinic_gpio_int {
|
||||
mux {
|
||||
pins = "gpio90";
|
||||
function = "gpio";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio90";
|
||||
drive-strength = <2>;
|
||||
bias-pull-up;
|
||||
input-enable;
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
14
qcom/unicorn-sm8475-pm8008-overlay.dts
Normal file
14
qcom/unicorn-sm8475-pm8008-overlay.dts
Normal file
@@ -0,0 +1,14 @@
|
||||
/dts-v1/;
|
||||
/plugin/;
|
||||
|
||||
#include "unicorn-sm8475.dtsi"
|
||||
#include "unicorn-sm8475-pm8008.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Unicorn based on Qualcomm Technologies, Inc SM8475";
|
||||
compatible = "qcom,cape-mtp", "qcom,cape", "qcom,mtp";
|
||||
qcom,msm-id = <530 0x10000>, <531 0x10000>, <540 0x10000>;
|
||||
qcom,board-id = <0x10008 0>;
|
||||
xiaomi,miboard-id = <0x8 0>;
|
||||
};
|
||||
|
||||
130
qcom/unicorn-sm8475-pm8008.dtsi
Normal file
130
qcom/unicorn-sm8475-pm8008.dtsi
Normal file
@@ -0,0 +1,130 @@
|
||||
/* Waipio configurations for PM8008I and PM8008J connected via I2C */
|
||||
|
||||
/ {
|
||||
qcom,pmic-id = <0x2f 0x0 0x0 0x0 0x0 0x0 0x0 0x0>;
|
||||
qcom,pmic-id-size = <8>;
|
||||
};
|
||||
|
||||
/*
|
||||
* Each QUP device that's a parent to PMIC must be listed as a critical device
|
||||
* to GCC.
|
||||
*/
|
||||
&clock_gcc {
|
||||
qcom,critical-devices = <&qupv3_se5_i2c>;
|
||||
};
|
||||
|
||||
&qupv3_se5_i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
status = "ok";
|
||||
|
||||
pm8008j@c {
|
||||
compatible = "qcom,i2c-pmic";
|
||||
reg = <0xc>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pm8008j_active>;
|
||||
|
||||
pm8008-chip@900 {
|
||||
compatible = "qcom,pm8008-chip";
|
||||
reg = <0x900>;
|
||||
|
||||
PM8008J_EN: qcom,pm8008-chip-en {
|
||||
regulator-name = "pm8008j-chip-en";
|
||||
};
|
||||
};
|
||||
|
||||
qcom,revid@100 {
|
||||
compatible = "qcom,qpnp-revid";
|
||||
reg = <0x100>;
|
||||
};
|
||||
};
|
||||
|
||||
pm8008j@d {
|
||||
compatible = "qcom,i2c-pmic";
|
||||
reg = <0xd>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
qcom,pm8008j-regulator {
|
||||
compatible = "qcom,pm8008-regulator";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
pm8008_en-supply = <&PM8008J_EN>;
|
||||
vdd_l1_l2-supply = <&S12B>;
|
||||
vdd_l3_l4-supply = <&BOB>;
|
||||
vdd_l5-supply = <&S1C>;
|
||||
vdd_l6-supply = <&BOB>;
|
||||
vdd_l7-supply = <&BOB>;
|
||||
|
||||
L1J: pm8008j_l1: regulator@4000 {
|
||||
reg = <0x4000>;
|
||||
regulator-name = "pm8008j_l1";
|
||||
regulator-min-microvolt = <1056000>;
|
||||
regulator-max-microvolt = <1056000>;
|
||||
qcom,min-dropout-voltage = <64000>;
|
||||
qcom,hpm-min-load = <0>;
|
||||
};
|
||||
|
||||
L2J: pm8008j_l2: regulator@4100 {
|
||||
reg = <0x4100>;
|
||||
regulator-name = "pm8008j_l2";
|
||||
regulator-min-microvolt = <1056000>;
|
||||
regulator-max-microvolt = <1056000>;
|
||||
qcom,min-dropout-voltage = <24000>;
|
||||
qcom,hpm-min-load = <0>;
|
||||
};
|
||||
|
||||
L3J: pm8008j_l3: regulator@4200 {
|
||||
reg = <0x4200>;
|
||||
regulator-name = "pm8008j_l3";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3304000>;
|
||||
qcom,min-dropout-voltage = <224000>;
|
||||
qcom,hpm-min-load = <0>;
|
||||
};
|
||||
|
||||
L4J: pm8008j_l4: regulator@4300 {
|
||||
reg = <0x4300>;
|
||||
regulator-name = "pm8008j_l4";
|
||||
regulator-min-microvolt = <2808000>;
|
||||
regulator-max-microvolt = <2808000>;
|
||||
qcom,min-dropout-voltage = <192000>;
|
||||
qcom,hpm-min-load = <0>;
|
||||
};
|
||||
|
||||
L5J: pm8008j_l5: regulator@4400 {
|
||||
reg = <0x4400>;
|
||||
regulator-name = "pm8008j_l5";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
qcom,min-dropout-voltage = <56000>;
|
||||
qcom,hpm-min-load = <0>;
|
||||
};
|
||||
|
||||
L6J: pm8008j_l6: regulator@4500 {
|
||||
reg = <0x4500>;
|
||||
regulator-name = "pm8008j_l6";
|
||||
regulator-min-microvolt = <3104000>;
|
||||
regulator-max-microvolt = <3104000>;
|
||||
qcom,min-dropout-voltage = <120000>;
|
||||
qcom,hpm-min-load = <0>;
|
||||
};
|
||||
|
||||
L7J: pm8008j_l7: regulator@4600 {
|
||||
reg = <0x4600>;
|
||||
regulator-name = "pm8008j_l7";
|
||||
regulator-min-microvolt = <3104000>;
|
||||
regulator-max-microvolt = <3104000>;
|
||||
qcom,min-dropout-voltage = <96000>;
|
||||
qcom,hpm-min-load = <0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
/delete-node/ pm8008i@8;
|
||||
/delete-node/ pm8008i@9;
|
||||
};
|
||||
687
qcom/unicorn-sm8475.dtsi
Normal file
687
qcom/unicorn-sm8475.dtsi
Normal file
@@ -0,0 +1,687 @@
|
||||
/*
|
||||
this file is for attribution only of unicorn
|
||||
And public attribution of xiaomi platforms(like K2 and so and)
|
||||
*/
|
||||
#include "unicorn-pinctrl.dtsi"
|
||||
#include "xiaomi-sm8475-common.dtsi"
|
||||
|
||||
&qupv3_se15_i2c {
|
||||
status = "ok";
|
||||
cs35l41_0: cs35l41@40 {
|
||||
status = "ok";
|
||||
compatible = "cirrus,cs35l41";
|
||||
reset-gpios = <&tlmm 120 0>;
|
||||
reg = <0x40>;
|
||||
interrupt-parent = <&tlmm>;
|
||||
interrupts = <117 0x2008>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&cirrus_reset_default_0 &cirrus_irq_default_0>;
|
||||
cirrus,temp-warn_threshold = <3>;
|
||||
cirrus,boost-peak-milliamp = <4000>;
|
||||
cirrus,boost-ind-nanohenry = <1000>;
|
||||
cirrus,boost-cap-microfarad = <15>;
|
||||
cirrus,asp-sdout-hiz = <3>;
|
||||
cirrus,right-channel-amp;
|
||||
sound-name-prefix = "B";
|
||||
cirrus,fast-switch = "B-music.txt", "B-handfree.txt";
|
||||
cirrus,gpio-config2 {
|
||||
cirrus,gpio-src-select = <0x4>;
|
||||
cirrus,gpio-output-enable;
|
||||
};
|
||||
};
|
||||
cs35l41_3: cs35l41@43 {
|
||||
status = "ok";
|
||||
compatible = "cirrus,cs35l41";
|
||||
reset-gpios = <&tlmm 1 0>;
|
||||
spk-sw-gpios = <&tlmm 52 0>;
|
||||
reg = <0x43>;
|
||||
interrupt-parent = <&tlmm>;
|
||||
interrupts = <88 0x2008>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&cirrus_reset_default_3 &cirrus_irq_default_3>;
|
||||
cirrus,temp-warn_threshold = <3>;
|
||||
cirrus,boost-peak-milliamp = <4000>;
|
||||
cirrus,boost-ind-nanohenry = <1000>;
|
||||
cirrus,boost-cap-microfarad = <15>;
|
||||
cirrus,asp-sdout-hiz = <3>;
|
||||
sound-name-prefix = "T";
|
||||
cirrus,fast-switch = "T-music.txt", "T-handset.txt", "T-handfree.txt";
|
||||
cirrus,gpio-config2 {
|
||||
cirrus,gpio-src-select = <0x4>;
|
||||
cirrus,gpio-output-enable;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&qupv3_se18_i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
clock-frequency = <400000>;
|
||||
status = "ok";
|
||||
aw8697_haptic@5A {
|
||||
compatible = "awinic,awinic_haptic";
|
||||
reg = <0x5a>;
|
||||
reset-gpio = <&tlmm 89 0x00>;
|
||||
irq-gpio = <&tlmm 90 0x00>;
|
||||
pinctrl-names = "awinic_reset_reset","awinic_reset_active","awinic_interrupt_active";
|
||||
pinctrl-0 = <&awinic_gpio_reset>;
|
||||
pinctrl-1 = <&awinic_gpio_reset_output_high>;
|
||||
pinctrl-2 = <&awinic_gpio_int>;
|
||||
/*----------------------aw8697----------------------*/
|
||||
aw8697_vib_mode = < 0 >; /*mode: RAM mode->0; CONT mode -> 1*/
|
||||
aw8697_vib_f0_pre = < 1300 >;
|
||||
aw8697_vib_f0_cali_percen = < 7 >;
|
||||
aw8697_vib_cont_drv_lev = < 60 >;
|
||||
aw8697_vib_cont_drv_lvl_ov = < 60 >;
|
||||
aw8697_vib_cont_td = < 0xef >;
|
||||
aw8697_vib_cont_zc_thr = < 0x08f8 >; /*hq 0x08F8 */
|
||||
aw8697_vib_cont_num_brk = < 3 >;
|
||||
aw8697_vib_f0_coeff = < 260 >; /*Don't modify it 2.604167*/
|
||||
aw8697_vib_f0_trace_parameter = < 9 3 1 31 >;
|
||||
aw8697_vib_bemf_config = < 0 0x08 0x03 0xf8 >;
|
||||
aw8697_vib_sw_brake = < 0x2c >;
|
||||
aw8697_vib_tset = < 0x1a >;
|
||||
aw8697_vib_r_spare = < 0x68 >;
|
||||
aw8697_vib_bstdbg = < 0x30 0xeb 0xd4 0 0 0 >;
|
||||
aw8697_vib_trig_config = < 0 1 0 1 2
|
||||
0 1 0 1 2
|
||||
0 1 0 1 2 >;
|
||||
aw8697_vib_bst_vol_default = < 0x0e >;
|
||||
aw8697_vib_bst_vol_ram = < 0x0e >;
|
||||
aw8697_vib_bst_vol_rtp = < 0x0e >;
|
||||
/*----------------------aw8692x----------------------*/
|
||||
aw86927_vib_mode = < 0 >; /* mode: RAM mode->0; CONT mode->1 */
|
||||
aw86927_vib_f0_pre = < 1300 >;
|
||||
aw86927_vib_f0_cali_percen = < 7 >;
|
||||
aw86927_vib_cont_drv1_lvl = < 0x7F >;
|
||||
aw86927_vib_cont_drv2_lvl = < 0x36 >;
|
||||
aw86927_vib_cont_drv1_time = < 0x04 >;
|
||||
aw86927_vib_cont_drv2_time = < 0x06 >;
|
||||
aw86927_vib_cont_drv_width = < 0x6A >;
|
||||
aw86927_vib_cont_wait_num = < 0x06 >;
|
||||
aw86927_vib_cont_brk_time = < 0x08 >;
|
||||
aw86927_vib_cont_track_margin = < 0x0C >;
|
||||
aw86927_vib_brk_bst_md = < 0 >;
|
||||
aw86927_vib_cont_tset = < 0x06 >;
|
||||
aw86927_vib_cont_bemf_set = < 0x02 >;
|
||||
aw86927_vib_cont_bst_brk_gain = < 0x05 >;
|
||||
aw86927_vib_cont_brk_gain = < 0x08 >;
|
||||
aw86927_vib_d2s_gain = < 0x04 >;
|
||||
aw86927_vib_trig_config = < 0 0 0 1 0 2 0 0
|
||||
0 0 0 1 0 2 0 0
|
||||
0 0 0 1 0 2 0 0 >;
|
||||
aw86927_vib_bst_vol_default = < 0x47 >;
|
||||
aw86927_vib_bst_vol_ram = < 0x47 >;
|
||||
aw86927_vib_bst_vol_rtp = < 0x47 >;
|
||||
/*--------------------common--------------------*/
|
||||
vib_effect_id_boundary = < 10 >;
|
||||
vib_effect_max = < 197 >; /*vib_effect_max must bigger than vib_effect_id*/
|
||||
vib_rtp_time = < 20 20 20 20 20 20 20 20 20000 15000
|
||||
15000 20000 25000 15000 30000 25000 20000 20000 20000 20000
|
||||
20000 20000 20000 20000 20000 20000 20000 20000 20000 20000
|
||||
20000 20000 20000 20000 20000 20000 20000 20000 20000 20000
|
||||
20000 20000 20000 20000 20000 20000 20000 20000 20000 20000
|
||||
20000 20000 20000 20000 20000 20000 20000 20000 20000 20000
|
||||
20000 20000 20000 20000 20000 20000 20000 20000 20000 20000
|
||||
20000 20000 20000 20000 20000 20000 20000 20000 20000 20000
|
||||
20000 20000 20000 20000 20000 20000 20000 20000 20000 20000
|
||||
20000 20000 20000 20000 20000 20000 20000 20000 20000 20000
|
||||
20000 20000 20000 20000 20000 20000 20000 20000 20000 20000
|
||||
20000 20000 20000 20000 20000 20000 20000 20000 20000 20000
|
||||
20000 20000 20000 20000 20000 20000 20000 20000 20000 20000
|
||||
20000 20000 20000 20000 20000 20000 20000 20000 20000 20000
|
||||
20000 20000 20000 20000 20000 20000 20000 20000 20000 20000
|
||||
20000 20000 20000 20000 20000 20000 20000 20000 20000 20000
|
||||
20000 20000 20000 20000 20000 20000 20000 20000 20000 20000
|
||||
20000 20000 20000 20000 20000 >;
|
||||
status = "ok";
|
||||
wf_0 {
|
||||
/*CLICK*/
|
||||
qcom,effect-id = <0>;
|
||||
qcom,wf-vmax-mv = <3600>;
|
||||
qcom,wf-pattern = [3e 3e];
|
||||
qcom,wf-brake-pattern = [02 01 00 00];
|
||||
qcom,wf-play-rate-us = <20000>;
|
||||
};
|
||||
wf_1 {
|
||||
/*DOUBLE CLICK*/
|
||||
qcom,effect-id = <1>;
|
||||
qcom,wf-vmax-mv = <3600>;
|
||||
qcom,wf-pattern = [7e 3e];
|
||||
qcom,wf-brake-pattern = [03 01 00 00];
|
||||
qcom,wf-play-rate-us = <20000>;
|
||||
};
|
||||
wf_2 {
|
||||
/*TICK*/
|
||||
qcom,effect-id = <2>;
|
||||
qcom,wf-vmax-mv = <3600>;
|
||||
qcom,wf-pattern = [7e 3e];
|
||||
qcom,wf-brake-pattern = [02 01 00 00];
|
||||
qcom,wf-play-rate-us = <20000>;
|
||||
};
|
||||
wf_3 {
|
||||
/*THUD*/
|
||||
qcom,effect-id = <3>;
|
||||
qcom,wf-vmax-mv = <3600>;
|
||||
qcom,wf-pattern = [3e 3e];
|
||||
qcom,wf-brake-pattern = [02 01 00 00];
|
||||
qcom,wf-play-rate-us = <20000>;
|
||||
};
|
||||
wf_4 {
|
||||
/*POP*/
|
||||
qcom,effect-id = <4>;
|
||||
qcom,wf-vmax-mv = <3600>;
|
||||
qcom,wf-pattern = [3e 3e];
|
||||
qcom,wf-brake-pattern = [02 01 00 00];
|
||||
qcom,wf-play-rate-us = <28000>;
|
||||
};
|
||||
wf_5 {
|
||||
/*HEAVY CLICK*/
|
||||
qcom,effect-id = <5>;
|
||||
qcom,wf-vmax-mv = <3600>;
|
||||
qcom,wf-pattern = [7e 7e 7e];
|
||||
qcom,wf-brake-pattern = [03 03 01 00];
|
||||
qcom,wf-play-rate-us = <20000>;
|
||||
};
|
||||
wf_6 {
|
||||
/*id 6*/
|
||||
qcom,effect-id = <6>;
|
||||
qcom,wf-vmax-mv = <3600>;
|
||||
qcom,wf-pattern = [3e 3e];
|
||||
qcom,wf-brake-pattern = [02 01 00 00];
|
||||
qcom,wf-play-rate-us = <20000>;
|
||||
};
|
||||
wf_7 {
|
||||
/*id 7*/
|
||||
qcom,effect-id = <7>;
|
||||
qcom,wf-vmax-mv = <3600>;
|
||||
qcom,wf-pattern = [3e 3e];
|
||||
qcom,wf-brake-pattern = [02 01 00 00];
|
||||
qcom,wf-play-rate-us = <20000>;
|
||||
};
|
||||
wf_8 {
|
||||
/*id 8*/
|
||||
qcom,effect-id = <8>;
|
||||
qcom,wf-vmax-mv = <3600>;
|
||||
qcom,wf-pattern = [3e 3e];
|
||||
qcom,wf-brake-pattern = [02 01 00 00];
|
||||
qcom,wf-play-rate-us = <20000>;
|
||||
};
|
||||
wf_9 {
|
||||
/*id 9*/
|
||||
qcom,effect-id = <9>;
|
||||
qcom,wf-vmax-mv = <3600>;
|
||||
qcom,wf-pattern = [3e 3e];
|
||||
qcom,wf-brake-pattern = [02 01 00 00];
|
||||
qcom,wf-play-rate-us = <20000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&soc {
|
||||
fingerprint_goodix {
|
||||
compatible = "goodix,fingerprint";
|
||||
l11c_vdd-supply = <&L11C>;
|
||||
goodix,gpio-reset = <&tlmm 41 0x0>;
|
||||
goodix,gpio-irq = <&tlmm 40 0x0>;
|
||||
status = "ok";
|
||||
};
|
||||
};
|
||||
|
||||
&L11C {
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <3008000>;
|
||||
regulator-max-microvolt = <3008000>;
|
||||
qcom,init-voltage = <3008000>;
|
||||
};
|
||||
|
||||
|
||||
&soc {
|
||||
touch_avdd_vreg: touch_avdd_vreg {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "touch_avdd_vreg";
|
||||
enable-active-high;
|
||||
gpio = <&tlmm 97 0>;
|
||||
};
|
||||
|
||||
xiaomi_touch {
|
||||
compatible = "xiaomi-touch";
|
||||
status = "ok";
|
||||
touch,name = "xiaomi-touch";
|
||||
};
|
||||
};
|
||||
|
||||
&tlmm {
|
||||
mi_ts_active: mi_ts_active {
|
||||
mux {
|
||||
pins = "gpio21", "gpio20";
|
||||
function = "gpio";
|
||||
};
|
||||
|
||||
config {
|
||||
pins = "gpio21", "gpio20";
|
||||
drive-strength = <8>;
|
||||
bias-pull-up;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&L9C {
|
||||
regulator-min-microvolt = <3224000>;
|
||||
regulator-max-microvolt = <3224000>;
|
||||
qcom,init-voltage = <3224000>;
|
||||
};
|
||||
|
||||
&L2C {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
qcom,init-voltage = <1800000>;
|
||||
};
|
||||
|
||||
&BOB {
|
||||
regulator-min-microvolt = <3296000>;
|
||||
regulator-max-microvolt = <3296000>;
|
||||
qcom,init-voltage = <3296000>;
|
||||
};
|
||||
|
||||
|
||||
&qupv3_se4_spi {
|
||||
status = "ok";
|
||||
qcom,rt;
|
||||
fts@0 {
|
||||
status = "ok";
|
||||
compatible = "st,spi";
|
||||
reg = <0x0>;
|
||||
interrupt-parent = <&tlmm>;
|
||||
interrupts = <21 0x2008>;
|
||||
pinctrl-names = "pmx_ts_active", "pmx_ts_suspend";
|
||||
pinctrl-0 = <&mi_ts_active>;
|
||||
pinctrl-1 = <&ts_int_suspend &ts_reset_suspend>;
|
||||
avdd-supply = <&L9C>;
|
||||
vdd-supply = <&L2C>;
|
||||
fts,pwr-reg-name = "avdd";
|
||||
fts,bus-reg-name = "vdd";
|
||||
fts,irq-gpio = <&tlmm 21 0x2008>;
|
||||
fts,irq-gpio-name = "fts_irq";
|
||||
fts,reset-gpio-enable;
|
||||
fts,reset-gpio = <&tlmm 20 0x00>;
|
||||
fts,reset-gpio-name = "fts_rst";
|
||||
fts,irq-flags = <0x2008>;
|
||||
fts,x-max = <14400>;
|
||||
fts,y-max = <32000>;
|
||||
fts,fod-lx = <5860>;
|
||||
fts,fod-ly = <23460>;
|
||||
fts,fod-x-size = <2680>;
|
||||
fts,fod-y-size = <2660>;
|
||||
fts,support-fod;
|
||||
fts,support-thp;
|
||||
fts,support-thp-fw;
|
||||
spi-max-frequency = <12000000>;
|
||||
fts,support-super-resolution = <1>;
|
||||
fts,default-fw-name = "st_fts_l2s.ftb";
|
||||
fts,thp-fw-name = "st_fts_l2s_thp.ftb";
|
||||
fts,config-array-size = <1>;
|
||||
fts,touch-follow-performance-def = <3>;
|
||||
fts,touch-tap-sensitivity-def = <4>;
|
||||
fts,touch-aim-sensitivity-def = <3>;
|
||||
fts,touch-tap-stability-def = <3>;
|
||||
fts,cornerfilter-area-step1 = <150>;
|
||||
fts,cornerfilter-area-step2 = <280>;
|
||||
fts,cornerfilter-area-step3 = <400>;
|
||||
fts,touch-deadzone-filter-ver = <2 0 0 0 0 0 0 0
|
||||
2 1 0 0 0 0 0 0
|
||||
2 2 0 0 0 3199 0 0
|
||||
2 3 1439 0 1439 3199 0 0>;
|
||||
fts,touch-deadzone-filter-hor = <2 0 0 0 1439 7 0 0
|
||||
2 1 0 3192 1439 3199 0 0
|
||||
2 2 0 0 0 3199 0 0
|
||||
2 3 1439 0 1439 3199 0 0>;
|
||||
fts,touch-edgezone-filter-ver = <1 0 0 0 0 0 0 0
|
||||
1 1 0 0 0 0 0 0
|
||||
1 2 0 0 60 3199 0 0
|
||||
1 3 1379 0 1439 3199 0 0>;
|
||||
fts,touch-edgezone-filter-hor = <1 0 0 0 1439 70 0 0
|
||||
1 1 0 3129 1439 3199 0 0
|
||||
1 2 0 0 60 3199 0 0
|
||||
1 3 1379 0 1439 3199 0 0>;
|
||||
fts,touch-cornerzone-filter-ver = <0 0 0 0 0 0 0 0
|
||||
0 1 0 0 0 0 0 0
|
||||
0 2 0 2799 250 3199 0 0
|
||||
0 3 1189 2799 1439 3199 0 0>;
|
||||
fts,touch-cornerzone-filter-hor1 = <0 0 0 0 280 280 0 0
|
||||
0 1 0 0 0 0 0 0
|
||||
0 2 0 2919 280 3199 0 0
|
||||
0 3 0 0 0 0 0 0>;
|
||||
fts,touch-cornerzone-filter-hor2 = <0 0 0 0 0 0 0 0
|
||||
0 1 1159 0 1439 280 0 0
|
||||
0 2 0 0 0 0 0 0
|
||||
0 3 1159 2919 1439 3199 0 0>;
|
||||
fts,touch-follow-performance = <10 15 1
|
||||
8 15 1
|
||||
6 15 1
|
||||
4 15 1
|
||||
2 15 1>;
|
||||
fts,touch-tap-sensitivity = <160 150 140 120 100>;
|
||||
fts,touch-aim-sensitivity = <10 8 6 4 2>;
|
||||
fts,touch-tap-stability = <8 12 15 18 25>;
|
||||
fts,touch-expert-array = <6 15 1 120 6 15
|
||||
2 15 1 120 4 15
|
||||
4 15 1 120 2 15>;
|
||||
fts,cfg_0 {
|
||||
fts,tp-vendor = <0x38>;
|
||||
fts,fw-name = "st_fts_l2s.ftb";
|
||||
fts,limit-name = "stm_fts_production_limits.csv";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&pmk8350_vadc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pm8350b_rear_tof_therm_default>;
|
||||
|
||||
pm8350_msm_therm {
|
||||
reg = <PM8350_ADC7_AMUX_THM1_100K_PU>;
|
||||
label = "pm8350_msm_therm";
|
||||
qcom,ratiometric;
|
||||
qcom,hw-settle-time = <200>;
|
||||
qcom,pre-scaling = <1 1>;
|
||||
};
|
||||
|
||||
pm8350_cam_flash_therm {
|
||||
reg = <PM8350_ADC7_AMUX_THM2_100K_PU>;
|
||||
label = "pm8350_cam_flash_therm";
|
||||
qcom,ratiometric;
|
||||
qcom,hw-settle-time = <200>;
|
||||
qcom,pre-scaling = <1 1>;
|
||||
};
|
||||
|
||||
pm8350_hot_pocket_therm {
|
||||
reg = <PM8350_ADC7_AMUX_THM3_100K_PU>;
|
||||
label = "pm8350_hot_pocket_therm";
|
||||
qcom,ratiometric;
|
||||
qcom,hw-settle-time = <200>;
|
||||
qcom,pre-scaling = <1 1>;
|
||||
};
|
||||
|
||||
pm8350_wide_rfc_therm {
|
||||
reg = <PM8350B_ADC7_GPIO4_100K_PU>;
|
||||
label = "pm8350_wide_rfc_therm";
|
||||
qcom,ratiometric;
|
||||
qcom,hw-settle-time = <200>;
|
||||
qcom,pre-scaling = <1 1>;
|
||||
};
|
||||
|
||||
pm8350b_rear_tof_therm {
|
||||
reg = <PM8350B_ADC7_GPIO2_100K_PU>;
|
||||
label = "pm8350b_rear_tof_therm";
|
||||
qcom,ratiometric;
|
||||
qcom,hw-settle-time = <200>;
|
||||
qcom,pre-scaling = <1 1>;
|
||||
};
|
||||
|
||||
pm8350b_usb_conn_therm {
|
||||
reg = <PMR735A_ADC7_GPIO1_100K_PU>;
|
||||
label = "pm8350b_usb_conn_therm";
|
||||
qcom,ratiometric;
|
||||
qcom,hw-settle-time = <200>;
|
||||
qcom,pre-scaling = <1 1>;
|
||||
};
|
||||
|
||||
pm8350b_wl_chg_therm {
|
||||
reg = <PMR735A_ADC7_GPIO2_100K_PU>;
|
||||
label = "pm8350b_wl_chg_therm";
|
||||
qcom,ratiometric;
|
||||
qcom,hw-settle-time = <200>;
|
||||
qcom,pre-scaling = <1 1>;
|
||||
};
|
||||
|
||||
pmk8350_wifi_therm {
|
||||
reg = <PMR735A_ADC7_GPIO3_100K_PU>;
|
||||
label = "pmk8350_wifi_therm";
|
||||
qcom,ratiometric;
|
||||
qcom,hw-settle-time = <200>;
|
||||
qcom,pre-scaling = <1 1>;
|
||||
};
|
||||
pmk8350_xo_therm {
|
||||
reg = <PMK8350_ADC7_AMUX_THM1_100K_PU>;
|
||||
label = "pmk8350_xo_therm";
|
||||
qcom,ratiometric;
|
||||
qcom,hw-settle-time = <200>;
|
||||
qcom,pre-scaling = <1 1>;
|
||||
};
|
||||
};
|
||||
|
||||
&pmk8350_adc_tm {
|
||||
io-channels = <&pmk8350_vadc PM8350_ADC7_AMUX_THM1_100K_PU>,
|
||||
<&pmk8350_vadc PM8350_ADC7_AMUX_THM2_100K_PU>,
|
||||
<&pmk8350_vadc PM8350_ADC7_AMUX_THM3_100K_PU>,
|
||||
<&pmk8350_vadc PM8350B_ADC7_GPIO4_100K_PU>,
|
||||
<&pmk8350_vadc PM8350B_ADC7_GPIO2_100K_PU>,
|
||||
<&pmk8350_vadc PMR735A_ADC7_GPIO1_100K_PU>,
|
||||
<&pmk8350_vadc PMR735A_ADC7_GPIO2_100K_PU>,
|
||||
<&pmk8350_vadc PMR735A_ADC7_GPIO3_100K_PU>;
|
||||
|
||||
pm8350_msm_therm {
|
||||
reg = <PM8350_ADC7_AMUX_THM1_100K_PU>;
|
||||
qcom,ratiometric;
|
||||
qcom,hw-settle-time = <200>;
|
||||
};
|
||||
|
||||
pm8350_cam_flash_therm {
|
||||
reg = <PM8350_ADC7_AMUX_THM2_100K_PU>;
|
||||
qcom,ratiometric;
|
||||
qcom,hw-settle-time = <200>;
|
||||
};
|
||||
|
||||
pm8350_hot_pocket_therm {
|
||||
reg = <PM8350_ADC7_AMUX_THM3_100K_PU>;
|
||||
qcom,ratiometric;
|
||||
qcom,hw-settle-time = <200>;
|
||||
};
|
||||
|
||||
pm8350_wide_rfc_therm {
|
||||
reg = <PM8350B_ADC7_GPIO4_100K_PU>;
|
||||
qcom,ratiometric;
|
||||
qcom,hw-settle-time = <200>;
|
||||
};
|
||||
|
||||
pm8350b_rear_tof_therm {
|
||||
reg = <PM8350B_ADC7_GPIO2_100K_PU>;
|
||||
qcom,ratiometric;
|
||||
qcom,hw-settle-time = <200>;
|
||||
};
|
||||
|
||||
pm8350b_usb_conn_therm {
|
||||
reg = <PMR735A_ADC7_GPIO1_100K_PU>;
|
||||
qcom,ratiometric;
|
||||
qcom,hw-settle-time = <200>;
|
||||
};
|
||||
|
||||
pm8350b_wl_chg_therm {
|
||||
reg = <PMR735A_ADC7_GPIO2_100K_PU>;
|
||||
qcom,ratiometric;
|
||||
qcom,hw-settle-time = <200>;
|
||||
};
|
||||
|
||||
pmk8350_wifi_therm {
|
||||
reg = <PMR735A_ADC7_GPIO3_100K_PU>;
|
||||
qcom,ratiometric;
|
||||
qcom,hw-settle-time = <200>;
|
||||
};
|
||||
};
|
||||
|
||||
&pmk8350 {
|
||||
pm8350_adc_tm_iio: adc_tm_e {
|
||||
compatible = "qcom,adc-tm7-iio";
|
||||
reg = <0x3400>;
|
||||
#thermal-sensor-cells = <1>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
io-channels = <&pmk8350_vadc PMK8350_ADC7_AMUX_THM1_100K_PU>;
|
||||
|
||||
pmk8350_xo_therm {
|
||||
reg = <PMK8350_ADC7_AMUX_THM1_100K_PU>;
|
||||
qcom,ratiometric;
|
||||
qcom,hw-settle-time = <200>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&thermal_zones {
|
||||
cpu_therm {
|
||||
polling-delay-passive = <0>;
|
||||
polling-delay = <0>;
|
||||
thermal-governor = "user_space";
|
||||
thermal-sensors = <&pmk8350_adc_tm PM8350_ADC7_AMUX_THM1_100K_PU>;
|
||||
wake-capable-sensor;
|
||||
trips {
|
||||
active-config0 {
|
||||
temperature = <125000>;
|
||||
hysteresis = <1000>;
|
||||
type = "passive";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
flash_therm {
|
||||
polling-delay-passive = <0>;
|
||||
polling-delay = <0>;
|
||||
thermal-governor = "user_space";
|
||||
thermal-sensors = <&pmk8350_adc_tm PM8350_ADC7_AMUX_THM2_100K_PU>;
|
||||
wake-capable-sensor;
|
||||
trips {
|
||||
active-config0 {
|
||||
temperature = <125000>;
|
||||
hysteresis = <1000>;
|
||||
type = "passive";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
quiet_therm {
|
||||
polling-delay-passive = <0>;
|
||||
polling-delay = <0>;
|
||||
thermal-governor = "user_space";
|
||||
thermal-sensors = <&pmk8350_adc_tm PM8350_ADC7_AMUX_THM3_100K_PU>;
|
||||
wake-capable-sensor;
|
||||
trips {
|
||||
active-config0 {
|
||||
temperature = <125000>;
|
||||
hysteresis = <1000>;
|
||||
type = "passive";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
charger_therm0 {
|
||||
polling-delay-passive = <0>;
|
||||
polling-delay = <0>;
|
||||
thermal-governor = "user_space";
|
||||
thermal-sensors = <&pmk8350_adc_tm PM8350B_ADC7_GPIO4_100K_PU>;
|
||||
wake-capable-sensor;
|
||||
trips {
|
||||
active-config0 {
|
||||
temperature = <125000>;
|
||||
hysteresis = <1000>;
|
||||
type = "passive";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
wireless_therm {
|
||||
polling-delay-passive = <0>;
|
||||
polling-delay = <0>;
|
||||
thermal-governor = "user_space";
|
||||
thermal-sensors = <&pmk8350_adc_tm PM8350B_ADC7_GPIO2_100K_PU>;
|
||||
wake-capable-sensor;
|
||||
trips {
|
||||
active-config0 {
|
||||
temperature = <125000>;
|
||||
hysteresis = <1000>;
|
||||
type = "passive";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
pa_therm0 {
|
||||
polling-delay-passive = <0>;
|
||||
polling-delay = <0>;
|
||||
thermal-governor = "user_space";
|
||||
thermal-sensors = <&pmk8350_adc_tm PMR735A_ADC7_GPIO1_100K_PU>;
|
||||
wake-capable-sensor;
|
||||
trips {
|
||||
active-config0 {
|
||||
temperature = <125000>;
|
||||
hysteresis = <1000>;
|
||||
type = "passive";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
pa_therm1 {
|
||||
polling-delay-passive = <0>;
|
||||
polling-delay = <0>;
|
||||
thermal-governor = "user_space";
|
||||
thermal-sensors = <&pmk8350_adc_tm PMR735A_ADC7_GPIO2_100K_PU>;
|
||||
wake-capable-sensor;
|
||||
trips {
|
||||
active-config0 {
|
||||
temperature = <125000>;
|
||||
hysteresis = <1000>;
|
||||
type = "passive";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
wifi_therm {
|
||||
polling-delay-passive = <0>;
|
||||
polling-delay = <0>;
|
||||
thermal-governor = "user_space";
|
||||
thermal-sensors = <&pmk8350_adc_tm PMR735A_ADC7_GPIO3_100K_PU>;
|
||||
wake-capable-sensor;
|
||||
trips {
|
||||
active-config0 {
|
||||
temperature = <125000>;
|
||||
hysteresis = <1000>;
|
||||
type = "passive";
|
||||
};
|
||||
};
|
||||
};
|
||||
xo-therm {
|
||||
polling-delay-passive = <0>;
|
||||
polling-delay = <0>;
|
||||
thermal-governor = "user_space";
|
||||
thermal-sensors = <&pm8350_adc_tm_iio PMK8350_ADC7_AMUX_THM1_100K_PU>;
|
||||
wake-capable-sensor;
|
||||
trips {
|
||||
active-config0 {
|
||||
temperature = <125000>;
|
||||
hysteresis = <1000>;
|
||||
type = "passive";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&qseecom_ta_mem {
|
||||
size = <0x0 0x2000000>;
|
||||
};
|
||||
|
||||
&qseecom_mem {
|
||||
size = <0x0 0x2400000>;
|
||||
};
|
||||
|
||||
&nxp_eusb2_repeater {
|
||||
qcom,param-override-seq =
|
||||
<0x62 0x08
|
||||
0x00 0x07>;
|
||||
qcom,param-override-seq-host =
|
||||
<0x63 0x08
|
||||
0x22 0x07>;
|
||||
};
|
||||
|
||||
&battery_charger {
|
||||
qcom,shutdown-voltage = <3350>;
|
||||
};
|
||||
Reference in New Issue
Block a user