| #include <dt-bindings/gpio/gpio.h> |
| #include <dt-bindings/clock/qcom,rpmh.h> |
| #include <dt-bindings/iio/qcom,spmi-vadc.h> |
| #include "yupik-pmic-overlay.dtsi" |
| #include "pm7250b.dtsi" |
| #include "yupik-audio-overlay.dtsi" |
| #include "yupik-pm7250b-thermal-overlay.dtsi" |
| #include "display/yupik-sde-display-idp-pm7250b.dtsi" |
| #include "haptic_hv.dtsi" |
| |
| / { |
| qcom,pmic-id = <0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x2e>; |
| qcom,pmic-id-size = <9>; |
| }; |
| |
| &soc { |
| gpio_keys { |
| compatible = "gpio-keys"; |
| label = "gpio-keys"; |
| |
| pinctrl-names = "default"; |
| pinctrl-0 = <&key_vol_up_default>; |
| |
| vol_up { |
| label = "volume_up"; |
| gpios = <&pm7325_gpios 6 GPIO_ACTIVE_LOW>; |
| linux,input-type = <1>; |
| linux,code = <KEY_VOLUMEUP>; |
| gpio-key,wakeup; |
| debounce-interval = <15>; |
| linux,can-disable; |
| }; |
| }; |
| |
| bsp-public-interfaces { |
| compatible = "t2,bsp-public-interfaces"; |
| board,name="t2,fp5"; |
| board_id0= <&tlmm 106 0>; |
| board_id1= <&tlmm 107 0>; |
| board_id2= <&tlmm 108 0>; |
| board_id3= <&tlmm 104 0>; |
| esim_regulator-supply = <&L5C>; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&board_id_default>; |
| status = "ok"; |
| }; |
| |
| /* Focaltech FP */ |
| focalfp_ft9362 { |
| compatible = "focaltech,fp"; |
| interrupt-parent = <&tlmm>; |
| status = "okay"; |
| interrupts = <34 IRQ_TYPE_EDGE_RISING>; |
| |
| focaltech_fp,reset-gpio = <&tlmm 35 0>; |
| focaltech_fp,irq-gpio = <&tlmm 34 0>; |
| focaltech_fp,vdd-gpio = <&tlmm 60 0>; |
| |
| pinctrl-names ="fpsensor_finger_rst_low", |
| "fpsensor_finger_rst_high", |
| "fpsensor_eint_as_int", |
| "fpsensor_finger_power_low", |
| "fpsensor_finger_power_high"; |
| pinctrl-0 = <&fingerprint_pins_eint_as_int>; |
| pinctrl-1 = <&fingerprint_pins_rst_output1>; |
| pinctrl-2 = <&fingerprint_pins_rst_output0>; |
| pinctrl-3 = <&fingerprint_pins_power_output0>; |
| pinctrl-4 = <&fingerprint_pins_power_output1>; |
| }; |
| |
| npi_down{ |
| compatible = "qcom,npi-down-status"; |
| qcom,npi-down-en-pin = <&pm7325_gpios 9 0>; |
| qcom,npi-down-gpio = <&tlmm 98 0x0>; |
| pinctrl-names = "default", "suspend"; |
| pinctrl-0 = <&npi_down_default &npi_down_en_pin_default>; |
| pinctrl-1 = <&npi_down_default &npi_down_en_pin_suspend>; |
| }; |
| |
| |
| }; |
| |
| &soc { |
| |
| gpio_keys { |
| hall_sensor-vdd-supply = <&L8C>; |
| pinctrl-0 = <&key_vol_up_default &hall_sensor_init_default>; |
| |
| hall_sensor_key { |
| label = "hall_sensor_key"; |
| gpios = <&tlmm 155 GPIO_ACTIVE_LOW>; |
| linux,input-type = <1>; |
| linux,code = <252>; |
| linux,can-disable; |
| gpio-key,wakeup; |
| debounce-interval = <15>; |
| }; |
| }; |
| |
| ///[ADD][EMKIT]/// |
| emkit_info { |
| compatible = "emkit-info,sys-emkit-info"; |
| status = "ok"; |
| }; |
| |
| |
| |
| }; |
| |
| |
| |
| &pm7325_gpios{ |
| npi_down { |
| npi_down_en_pin_default: npi_down_en_pin_default { |
| pins = "gpio9"; |
| function = "normal"; |
| output-high; |
| power-source = <0>; |
| }; |
| |
| npi_down_en_pin_suspend: npi_down_en_pin_suspend { |
| pins = "gpio9"; |
| function = "normal"; |
| input-enable; |
| power-source = <0>; |
| }; |
| }; |
| }; |
| &spmi_debug_bus { |
| qcom,pm8350b-debug@3 { |
| status = "disabled"; |
| }; |
| |
| qcom,pm7250b-debug@8 { |
| compatible = "qcom,spmi-pmic"; |
| reg = <8 SPMI_USID>; |
| #address-cells = <2>; |
| #size-cells = <0>; |
| qcom,can-sleep; |
| }; |
| |
| qcom,pm7250b-debug@9 { |
| compatible = "qcom,spmi-pmic"; |
| reg = <9 SPMI_USID>; |
| #address-cells = <2>; |
| #size-cells = <0>; |
| qcom,can-sleep; |
| }; |
| }; |
| |
| &spmi_glink_debug { |
| spmi@0 { |
| qcom,pm8350b-debug@3 { |
| status = "disabled"; |
| }; |
| |
| qcom,pm7250b-debug@8 { |
| compatible = "qcom,spmi-pmic"; |
| reg = <8 SPMI_USID>; |
| qcom,can-sleep; |
| }; |
| }; |
| }; |
| |
| |
| #include <dt-bindings/clock/qcom,rpmh.h> |
| &qupv3_se9_i2c { |
| status = "ok"; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| st21nfc@28 { |
| compatible = "st,st21nfc"; |
| reg = <0x08>; |
| interrupt-parent = <&tlmm>; |
| interrupts = <41 0>; |
| reset-gpios = <&tlmm 38 0x00>; |
| irq-gpios = <&tlmm 41 0x00>; |
| clkreq-gpios = <&tlmm 39 0x00>; |
| clocks = <&rpmhcc RPMH_LN_BB_CLK2>; |
| clock-names = "nfc_ref_clk"; |
| st,clk_pinctrl; |
| status = "ok"; |
| }; |
| }; |
| |
| |
| &ufsphy_mem { |
| compatible = "qcom,ufs-phy-qmp-v4-yupik"; |
| |
| vdda-phy-supply = <&L10C>; |
| vdda-pll-supply = <&L6B>; |
| vdda-phy-max-microamp = <97500>; |
| vdda-pll-max-microamp = <18400>; |
| |
| status = "ok"; |
| }; |
| |
| &ufshc_mem { |
| vdd-hba-supply = <&gcc_ufs_phy_gdsc>; |
| vdd-hba-fixed-regulator; |
| |
| vcc-supply = <&L7B>; |
| vcc-voltage-level = <2504000 2952000>; |
| vcc-low-voltage-sup; |
| vcc-max-microamp = <800000>; |
| |
| /* |
| * Yupik target supports both UFS2.2 & UFS3.1, here |
| * vccq2 is supplied via eLDO, and that is controlled via |
| * L9B which supports a max voltage of 1.2V, but eLDO would |
| * supply 1.8V. and same L9B acts as vccq voltage for UFS3.1 |
| * devices. |
| * Here L9B can max support for 1.2V but UFS GKI driver code |
| * votes for 1.8V, which is leading to failure from pmic |
| * regulator. |
| * |
| * Now since vccq and control of eLDO are common that is L9B |
| * we can use vccq vote as control of eLDO for vccq2. |
| * Hence vccq entries shall be used for both type of UFS |
| * devices only. And vccq entries should not be changed/removed |
| * for any design alteration. |
| */ |
| vccq-supply = <&L9B>; |
| vccq-max-microamp = <900000>; |
| vccq-min-microamp = <10000>; |
| |
| qcom,vddp-ref-clk-supply = <&L9B>; |
| qcom,vddp-ref-clk-max-microamp = <100>; |
| |
| status = "ok"; |
| }; |
| |
| &pm7250b_2 { |
| /* Slave ID - 8 */ |
| reg = <8 SPMI_USID>; |
| }; |
| |
| &pm7250b_3 { |
| /* Slave ID - 9 */ |
| reg = <9 SPMI_USID>; |
| }; |
| |
| &pmk8350_sdam_23 { |
| adc_scaling: scaling@bf { |
| reg = <0xbf 0x1>; |
| bits = <0 2>; |
| }; |
| }; |
| |
| &pm7250b_vadc { |
| interrupts = <0x8 0x31 0x0 IRQ_TYPE_EDGE_RISING>; |
| |
| smb1390_therm@e { |
| qcom,scale-fn-type = <ADC_SCALE_HW_CALIB_PM5_SMB1398_TEMP>; |
| }; |
| |
| charger_skin_therm { |
| reg = <ADC5_AMUX_THM1_100K_PU>; |
| label = "charger_skin_therm"; |
| qcom,ratiometric; |
| qcom,hw-settle-time = <200>; |
| qcom,pre-scaling = <1 1>; |
| }; |
| |
| conn_therm { |
| reg = <ADC5_AMUX_THM3_100K_PU>; |
| label = "conn_therm"; |
| qcom,ratiometric; |
| qcom,hw-settle-time = <200>; |
| qcom,pre-scaling = <1 1>; |
| }; |
| }; |
| |
| &pm7250b_adc_tm { |
| interrupts = <0x8 0x35 0x0 IRQ_TYPE_EDGE_RISING>; |
| io-channels = <&pm7250b_vadc ADC5_AMUX_THM1_100K_PU>, |
| <&pm7250b_vadc ADC5_AMUX_THM3_100K_PU>; |
| |
| /* Channel nodes */ |
| charger_skin_therm { |
| reg = <ADC5_AMUX_THM1_100K_PU>; |
| qcom,ratiometric; |
| qcom,hw-settle-time = <200>; |
| }; |
| |
| conn_therm { |
| reg = <ADC5_AMUX_THM3_100K_PU>; |
| qcom,ratiometric; |
| qcom,hw-settle-time = <200>; |
| }; |
| }; |
| |
| &thermal_zones { |
| chg-skin-therm-usr { |
| polling-delay-passive = <0>; |
| polling-delay = <0>; |
| thermal-governor = "user_space"; |
| thermal-sensors = <&pm7250b_adc_tm ADC5_AMUX_THM1_100K_PU>; |
| wake-capable-sensor; |
| trips { |
| active-config0 { |
| temperature = <125000>; |
| hysteresis = <1000>; |
| type = "passive"; |
| }; |
| }; |
| }; |
| |
| conn-therm-usr { |
| polling-delay-passive = <0>; |
| polling-delay = <0>; |
| thermal-governor = "user_space"; |
| thermal-sensors = <&pm7250b_adc_tm ADC5_AMUX_THM3_100K_PU>; |
| wake-capable-sensor; |
| trips { |
| active-config0 { |
| temperature = <125000>; |
| hysteresis = <1000>; |
| type = "passive"; |
| }; |
| }; |
| }; |
| }; |
| |
| &pm7250b_tz { |
| interrupts = <0x8 0x24 0x0 IRQ_TYPE_EDGE_BOTH>; |
| }; |
| |
| &pm7250b_bcl { |
| interrupts = <0x8 0x1d 0x0 IRQ_TYPE_NONE>, |
| <0x8 0x1d 0x1 IRQ_TYPE_NONE>, |
| <0x8 0x1d 0x2 IRQ_TYPE_NONE>; |
| }; |
| |
| &pm7250b_clkdiv { |
| clocks = <&rpmhcc RPMH_CXO_CLK>; |
| }; |
| |
| &pm7250b_charger { |
| status = "disabled"; |
| }; |
| |
| &pm7250b_qg { |
| status = "disabled"; |
| }; |
| |
| &pm7250b_pdphy { |
| status = "disabled"; |
| }; |
| |
| &spmi_debug_bus { |
| status = "ok"; |
| }; |
| |
| &spmi_glink_debug { |
| status = "ok"; |
| }; |
| |
| &pm8350c_pwm_2 { |
| status = "ok"; |
| }; |
| |
| &pm8350c_switch0 { |
| qcom,led-mask = <9>; /* Channels 1 & 4 */ |
| qcom,symmetry-en; |
| }; |
| |
| &pm8350c_switch1 { |
| qcom,led-mask = <6>; /* Channels 2 & 3 */ |
| qcom,symmetry-en; |
| }; |
| |
| &pm8350c_switch2 { |
| qcom,led-mask = <15>; /* All Channels */ |
| qcom,symmetry-en; |
| }; |
| |
| &pm8350c_flash { |
| status = "ok"; |
| }; |
| |
| &battery_charger { |
| qcom,thermal-mitigation = <3000000 1500000 1000000 500000>; |
| }; |
| |
| &sdhc_1 { |
| pinctrl-names = "default", "sleep"; |
| pinctrl-0 = <&sdc1_on>; |
| pinctrl-1 = <&sdc1_off>; |
| |
| vdd-supply = <&L7B>; |
| qcom,vdd-voltage-level = <2952000 2952000>; |
| qcom,vdd-current-level = <0 570000>; |
| |
| vdd-io-supply = <&L19B>; |
| qcom,vdd-io-always-on; |
| qcom,vdd-io-lpm-sup; |
| qcom,vdd-io-voltage-level = <1800000 1800000>; |
| qcom,vdd-io-current-level = <0 325000>; |
| |
| status = "disabled"; |
| }; |
| |
| &sdhc_2 { |
| pinctrl-names = "default", "sleep"; |
| pinctrl-0 = <&sdc2_on>; |
| pinctrl-1 = <&sdc2_off>; |
| |
| vdd-supply = <&L9C>; |
| qcom,vdd-voltage-level = <2960000 2960000>; |
| qcom,vdd-current-level = <0 800000>; |
| |
| vdd-io-supply = <&L6C>; |
| qcom,vdd-io-voltage-level = <1800000 2960000>; |
| qcom,vdd-io-current-level = <0 22000>; |
| |
| //cd-gpios = <&tlmm 91 GPIO_ACTIVE_LOW>; |
| |
| status = "ok"; |
| }; |
| |
| &qupv3_se13_spi { |
| status = "ok"; |
| qcom,spi-touch-active = "goodix,brl-a"; |
| |
| goodix-berlin@0 { |
| compatible = "goodix,brl-a"; |
| reg = <0>; |
| spi-max-frequency = <1000000>; |
| |
| goodix,avdd-name = "avdd"; //3.0v |
| avdd-supply = <&L3C>; |
| goodix,iovdd-name = "iovdd"; //1.8v |
| iovdd-supply = <&L2C>; |
| |
| goodix,irq-gpio = <&tlmm 81 0x0>; |
| goodix,irq-flags = <1>; // 1:trigger rising, 2:trigger falling; |
| goodix,reset-gpio = <&tlmm 105 0x0>; |
| |
| goodix,panel-max-x = <1224>; |
| goodix,panel-max-y = <2700>; |
| goodix,panel-max-w = <255>; |
| |
| panel = <&rm692e5_boe_amoled_cmd>; |
| |
| //goodix,panel-max-p = <4096>; // max pressure that pen device supported |
| //goodix,pen-enable; //support active stylus device |
| goodix.sleep-enable; // enter sleep mode |
| goodix,firmware-name = "GT9897_05.01.FF.17_4D6C5476.bin"; |
| goodix,config-name = "goodix_cfg_group_V15.bin"; |
| }; |
| }; |
| |
| &tlmm { |
| board_id { |
| board_id_default: board_id_default{ |
| mux { |
| pins = "gpio104","gpio106","gpio107","gpio108"; |
| function = "gpio"; |
| }; |
| |
| config { |
| pins = "gpio104","gpio106","gpio107","gpio108"; |
| drive-strength = <2>; |
| bias-disable; |
| input-enable; |
| }; |
| }; |
| }; |
| |
| npi_down_default: npi_down_default { |
| mux { |
| pins = "gpio98"; |
| function = "gpio"; |
| }; |
| |
| config { |
| pins = "gpio98"; |
| drive-strength = <2>; |
| input-enable; |
| bias-pull-up; |
| }; |
| }; |
| |
| hall_sensor_init_default:hall_sensor_init_default{ |
| |
| mux { |
| pins = "gpio155"; |
| function = "gpio"; |
| }; |
| |
| config { |
| pins = "gpio155"; |
| drive-strength = <2>; |
| input-enable; // MODIFIED by hongwei.tian, 2019-05-11,BUG-7754996 |
| bias-pull-up; |
| }; |
| }; |
| |
| }; |
| #include "camera/fp5-yupik-camera-sensor-idp.dtsi" |