#include "holi-audio-overlay.dtsi" #include #include #include "holi-pm7250b.dtsi" #include "holi-pmic-overlay-pm6125.dtsi" #include "holi-thermal-overlay-pm6125.dtsi" #include "display/holi-sde-display-cdp-pm6125.dtsi" #include #include "display/blair-sde-display-cdp.dtsi" &pm6125_pwm { status = "ok"; }; &wcd938x_codec { cdc-vdd-rxtx-supply = <&L9A>; cdc-vddio-supply = <&L9A>; qcom,cdc-static-supplies = "cdc-vdd-rxtx", "cdc-vddio"; /* * Overriding cdc-vdd-mic-bias-supply to dummy value * to avoid compilation errors as BOB is not definied * for pm6125 */ cdc-vdd-mic-bias-supply = <>; }; &wcd937x_codec { cdc-vdd-rxtx-supply = <&L9A>; cdc-vddpx-supply = <&L9A>; qcom,cdc-static-supplies = "cdc-vdd-rxtx", "cdc-vddpx"; /* * Overriding cdc-vdd-mic-bias-supply to dummy value * to avoid compilation errors as BOB is not definied * for pm6125 */ cdc-vdd-mic-bias-supply = <>; }; &wsa881x_i2c_e { cdc-vdd-1p8-supply = <&L9A>; }; &wsa881x_i2c_f { cdc-vdd-1p8-supply = <&L9A>; }; /* Dummy LDO reference */ &sdhc_1 { status = "ok"; pinctrl-names = "default", "sleep"; pinctrl-0 = <&sdc1_on>; pinctrl-1 = <&sdc1_off>; vdd-supply = <&L24A>; qcom,vdd-voltage-level = <2960000 2960000>; qcom,vdd-current-level = <0 570000>; vdd-io-supply = <&L11A>; qcom,vdd-io-always-on; qcom,vdd-io-lpm-sup; qcom,vdd-io-voltage-level = <1800000 1800000>; qcom,vdd-io-current-level = <0 325000>; }; &sdhc_2 { status = "ok"; pinctrl-names = "default", "sleep"; pinctrl-0 = <&sdc2_on>; pinctrl-1 = <&sdc2_off>; vdd-supply = <&L22A>; qcom,vdd-voltage-level = <2960000 2960000>; qcom,vdd-current-level = <0 800000>; vdd-io-supply = <&L5A>; qcom,vdd-io-voltage-level = <1800000 2960000>; qcom,vdd-io-current-level = <0 22000>; cd-gpios = <&tlmm 94 GPIO_ACTIVE_LOW>; }; &ufsphy_mem { compatible = "qcom,ufs-phy-qmp-v4-yupik"; vdda-phy-supply = <&L7A>; vdda-pll-supply = <&L4A>; vdda-phy-max-microamp = <85700>; vdda-pll-max-microamp = <18300>; status = "ok"; }; &ufshc_mem { vdd-hba-supply = <&gcc_ufs_phy_gdsc>; vdd-hba-fixed-regulator; vcc-supply = <&L24A>; vcc-voltage-level = <2950000 2960000>; vcc-max-microamp = <800000>; vccq2-supply = <&L11A>; vccq2-max-microamp = <800000>; vccq2-voltage-level = <1800000 1800000>; qcom,vddp-ref-clk-supply = <&L4A>; qcom,vddp-ref-clk-max-microamp = <100>; status = "ok"; }; &qupv3_se0_i2c { status = "ok"; #address-cells = <1>; #size-cells = <0>; nq@28 { compatible = "qcom,sn-nci"; reg = <0x28>; qcom,sn-irq = <&tlmm 9 0x00>; qcom,sn-ven = <&tlmm 6 0x00>; qcom,sn-firm = <&tlmm 8 0x00>; qcom,sn-clkreq = <&tlmm 7 0x00>; qcom,sn-vdd-1p8-supply = <&L9A>; qcom,sn-vdd-1p8-voltage = <1800000 1800000>; qcom,sn-vdd-1p8-current = <157000>; interrupt-parent = <&tlmm>; interrupts = <9 0>; interrupt-names = "nfc_irq"; pinctrl-names = "nfc_active", "nfc_suspend"; pinctrl-0 = <&nfc_int_active &nfc_enable_active>; pinctrl-1 = <&nfc_int_suspend &nfc_enable_suspend>; }; }; &soc { gpio_keys { compatible = "gpio-keys"; label = "gpio-keys"; pinctrl-names = "default"; pinctrl-0 = <&key_vol_up_default>; vol_up { label = "volume_up"; gpios = <&pmr735a_gpios 1 GPIO_ACTIVE_LOW>; linux,input-type = <1>; linux,code = ; gpio-key,wakeup; debounce-interval = <15>; linux,can-disable; }; }; }; &pm7250b_charger { status = "ok"; #io-channel-cells = <1>; io-channels = <&pm7250b_vadc ADC5_USB_IN_V_16>, <&pm7250b_vadc ADC5_USB_IN_I>, <&pm7250b_vadc ADC5_CHG_TEMP>, <&pm7250b_vadc ADC5_DIE_TEMP>, <&pm7250b_vadc ADC5_AMUX_THM3_100K_PU>, <&pm7250b_vadc ADC5_SBUx>, <&pm7250b_vadc ADC5_VPH_PWR>, <&pm7250b_vadc ADC5_AMUX_THM1_100K_PU>, <&pm7250b_qg PSY_IIO_RESISTANCE_ID>, <&pm7250b_qg PSY_IIO_VOLTAGE_NOW>, <&pm7250b_qg PSY_IIO_TEMP>, <&pm7250b_qg PSY_IIO_CAPACITY>, <&pm7250b_qg PSY_IIO_VOLTAGE_OCV>, <&pm7250b_qg PSY_IIO_VOLTAGE_AVG>, <&pm7250b_qg PSY_IIO_DEBUG_BATTERY>, <&pm7250b_qg PSY_IIO_REAL_CAPACITY>, <&pm7250b_qg PSY_IIO_CC_SOC>, <&pm7250b_qg PSY_IIO_CURRENT_NOW>, <&pm7250b_qg PSY_IIO_VOLTAGE_MAX>, <&pm7250b_qg PSY_IIO_CHARGE_FULL>, <&pm7250b_qg PSY_IIO_CHARGE_COUNTER>, <&pm7250b_qg PSY_IIO_CYCLE_COUNT>, <&pm7250b_qg PSY_IIO_CHARGE_FULL_DESIGN>, <&pm7250b_qg PSY_IIO_TIME_TO_FULL_NOW>; io-channel-names = "usb_in_voltage", "usb_in_current", "chg_temp", "die_temp", "conn_temp", "sbux_res", "vph_voltage", "skin_temp", "resistance_id", "voltage_now", "temp", "capacity", "voltage_ocv", "voltage_avg", "debug_battery", "real_capacity", "cc_soc", "current_now", "voltage_max", "charge_full", "charge_counter", "cycle_count", "charge_full_design", "time_to_full_now"; qcom,batteryless-platform; qcom,sec-charger-config = <0>; qcom,auto-recharge-soc = <98>; qcom,step-charging-enable; qcom,sw-jeita-enable; qcom,charger-temp-max = <800>; qcom,smb-temp-max = <800>; qcom,suspend-input-on-debug-batt; }; &pm7250b_qg { status = "ok"; #io-channel-cells = <1>; io-channels = <&pm7250b_vadc ADC5_BAT_THERM_100K_PU>, <&pm7250b_vadc ADC5_BAT_ID_100K_PU>, <&pm7250b_charger PSY_IIO_INPUT_CURRENT_LIMITED>, <&pm7250b_charger PSY_IIO_RECHARGE_SOC>, <&pm7250b_charger PSY_IIO_FORCE_RECHARGE>, <&pm7250b_charger PSY_IIO_CHARGE_DONE>; io-channel-names = "batt-therm", "batt-id", "input_current_limited", "recharge_soc", "force_recharge", "charge_done"; qcom,qg-iterm-ma = <100>; qcom,hold-soc-while-full; qcom,linearize-soc; qcom,cl-feedback-on; qcom,vbatt-cutoff-mv = <3400>; qcom,vbatt-empty-mv = <3200>; qcom,vbatt-empty-cold-mv = <3100>; qcom,vbatt-low-mv = <3500>; qcom,fvss-vbatt-mv = <3500>; }; &soc { touch_avdd: touch_avdd_stub { /* * Touch eLDO controlled by gpio#53 is always ON. * Using dummy regulator. */ compatible = "qcom,stub-regulator"; regulator-name = "touch_avdd_stub"; qcom,hpm-min-load = <10000>; regulator-min-microvolt = <2700000>; regulator-max-microvolt = <3544000>; }; }; &qupv3_se8_i2c { #address-cells = <1>; #size-cells = <0>; status = "okay"; qcom,i2c-touch-active= "synaptics,tcm-i2c"; synaptics_tcm@20 { compatible = "synaptics,tcm-i2c"; reg = <0x20>; interrupt-parent = <&tlmm>; interrupts = <22 0x2008>; pinctrl-names = "pmx_ts_active","pmx_ts_suspend", "pmx_ts_release"; pinctrl-0 = <&ts_active>; pinctrl-1 = <&ts_int_suspend &ts_reset_suspend>; pinctrl-2 = <&pmx_ts_release>; vdd-supply = <&L9A>; avdd-supply = <&touch_avdd>; synaptics,pwr-reg-name = "avdd"; synaptics,bus-reg-name = "vdd"; synaptics,irq-gpio = <&tlmm 22 0x2008>; synaptics,irq-on-state = <0>; synaptics,reset-gpio = <&tlmm 21 0x00>; synaptics,reset-on-state = <0>; synaptics,reset-active-ms = <20>; synaptics,reset-delay-ms = <200>; synaptics,power-delay-ms = <200>; synaptics,ubl-i2c-addr = <0x20>; synaptics,extend_report; synaptics,firmware-name = "synaptics_firmware.img"; panel = <&dsi_rm69299_visionox_amoled_video &dsi_rm69299_visionox_amoled_cmd>; }; focaltech@38 { compatible = "focaltech,fts_ts"; reg = <0x38>; interrupt-parent = <&tlmm>; interrupts = <22 0x2008>; focaltech,reset-gpio = <&tlmm 21 0x00>; focaltech,irq-gpio = <&tlmm 22 0x2008>; focaltech,max-touch-number = <5>; focaltech,display-coords = <0 0 1080 2340>; vdd-supply = <&touch_avdd>; pinctrl-names = "pmx_ts_active", "pmx_ts_suspend", "pmx_ts_release"; pinctrl-0 = <&ts_active>; pinctrl-1 = <&ts_int_suspend &ts_reset_suspend>; pinctrl-2 = <&pmx_ts_release>; panel = <&dsi_r66451_amoled_cmd &dsi_r66451_amoled_video>; }; novatek@62 { compatible = "novatek,NVT-ts"; reg = <0x62>; interrupt-parent = <&tlmm>; interrupts = <22 0x2008>; pinctrl-names = "pmx_ts_active","pmx_ts_suspend", "pmx_ts_release"; pinctrl-0 = <&ts_active>; pinctrl-1 = <&ts_int_suspend &ts_reset_suspend>; pinctrl-2 = <&pmx_ts_release>; novatek,reset-gpio = <&tlmm 21 0x00>; novatek,irq-gpio = <&tlmm 22 0x2008>; panel = <&dsi_nt36672e_fhd_plus_60_video &dsi_nt36672e_fhd_plus_120_video &dsi_nt36672e_fhd_plus_144_video>; }; }; #include "camera/blair-camera-sensor-cdp.dtsi" &pm7250b_charger { dpdm-supply = <&usb2_phy0>; smb5_vbus: qcom,smb5-vbus { regulator-name = "smb5-vbus"; }; smb5_vconn: qcom,smb5-vconn { regulator-name = "smb5-vconn"; }; }; &pm7250b_pdphy { vdd-pdphy-supply = <&L7E>; vbus-supply = <&smb5_vbus>; vconn-supply = <&smb5_vconn>; #io-channel-cells = <1>; io-channels = <&pm7250b_charger PSY_IIO_PD_ACTIVE>, <&pm7250b_charger PSY_IIO_TYPEC_CC_ORIENTATION>, <&pm7250b_charger PSY_IIO_CONNECTOR_TYPE>, <&pm7250b_charger PSY_IIO_TYPEC_POWER_ROLE>, <&pm7250b_charger PSY_IIO_PD_USB_SUSPEND_SUPPORTED>, <&pm7250b_charger PSY_IIO_TYPEC_SRC_RP>, <&pm7250b_charger PSY_IIO_PD_IN_HARD_RESET>, <&pm7250b_charger PSY_IIO_PD_CURRENT_MAX>, <&pm7250b_charger PSY_IIO_PR_SWAP>, <&pm7250b_charger PSY_IIO_PD_VOLTAGE_MIN>, <&pm7250b_charger PSY_IIO_PD_VOLTAGE_MAX>, <&pm7250b_charger PSY_IIO_USB_REAL_TYPE>, <&pm7250b_charger PSY_IIO_TYPEC_MODE>, <&pm7250b_charger PSY_IIO_PE_START>; io-channel-names = "pd_active", "typec_cc_orientation", "connector_type", "typec_power_role", "pd_usb_suspend_supported", "typec_src_rp", "pd_in_hard_reset", "pr_current_max", "pr_swap", "pd_voltage_min", "pd_voltage_max", "real_type", "typec_mode", "pe_start"; }; &usb0 { extcon = <&pm7250b_pdphy>, <&pm7250b_charger>, <&eud>; #io-channel-cells = <1>; io-channels= <&pm7250b_charger PSY_IIO_USB_REAL_TYPE>; io-channel-names = "chg_type"; }; &qupv3_se10_i2c { awinic@64 { compatible = "awinic,aw2016_led"; reg = <0x64>; awinic,red { awinic,name = "red"; awinic,id = <0>; awinic,imax = <2>; awinic,led-current = <3>; awinic,max-brightness = <255>; awinic,rise-time-ms = <6>; awinic,hold-time-ms = <0>; awinic,fall-time-ms = <6>; awinic,off-time-ms = <4>; }; awinic,green { awinic,name = "green"; awinic,id = <1>; awinic,imax = <2>; awinic,led-current = <3>; awinic,max-brightness = <255>; awinic,rise-time-ms = <6>; awinic,hold-time-ms = <0>; awinic,fall-time-ms = <6>; awinic,off-time-ms = <4>; }; awinic,blue { awinic,name = "blue"; awinic,id = <2>; awinic,imax = <2>; awinic,led-current = <3>; awinic,max-brightness = <255>; awinic,rise-time-ms = <6>; awinic,hold-time-ms = <0>; awinic,fall-time-ms = <6>; awinic,off-time-ms = <4>; }; }; };