diff --git a/qcom/Makefile b/qcom/Makefile index 12efead4bc85..e4df28eb5d6f 100644 --- a/qcom/Makefile +++ b/qcom/Makefile @@ -6,24 +6,29 @@ endif # Motorola Device Trees dtbo-$(CONFIG_GUAM_DTB) += \ - bengal-guam-evt-overlay.dtbo \ - bengal-guam-dvt-overlay.dtbo + bengal-guam-evt-overlay.dtbo \ + bengal-guam-dvt-overlay.dtbo bengal-guam-evt-overlay.dtbo-base := bengal-moto-base.dtb bengal-guam-dvt-overlay.dtbo-base := bengal-moto-base.dtb dtbo-$(CONFIG_GUAMP_DTB) += \ - bengal-guamp-evt-overlay.dtbo \ - bengal-guamp-dvt-overlay.dtbo + bengal-guamp-evt-overlay.dtbo \ + bengal-guamp-dvt-overlay.dtbo bengal-guamp-evt-overlay.dtbo-base := bengal-moto-base.dtb bengal-guamp-dvt-overlay.dtbo-base := bengal-moto-base.dtb dtbo-$(CONFIG_GUAMNA_DTB) += \ - bengal-guamna-evt-overlay.dtbo + bengal-guamna-evt-overlay.dtbo bengal-guamna-evt-overlay.dtbo-base := bengal-moto-base.dtb +dtbo-$(CONFIG_BORNEO_DTB) += \ + bengal-borneo-evt-overlay.dtbo + +bengal-borneo-evt-overlay.dtbo-base := bengal-moto-base.dtb + else ifeq ($(CONFIG_BUILD_ARM64_DT_OVERLAY),y) dtbo-$(CONFIG_ARCH_KONA) += \ diff --git a/qcom/bengal-borneo-audio-overlay.dtsi b/qcom/bengal-borneo-audio-overlay.dtsi new file mode 100644 index 000000000000..18a369567fbd --- /dev/null +++ b/qcom/bengal-borneo-audio-overlay.dtsi @@ -0,0 +1,65 @@ +/* Copyright (c) 2019, The Linux Foundation. All rights reserved. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 and + * only version 2 as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#include + +&qupv3_se1_i2c { + status = "ok"; + fs16xx@34 { + compatible = "foursemi,fs16xx"; + reg = <0x34>; + fs,fs-dev = "left"; + /* 1V8 supplied by LDO */ + vddcore-supply = <&L9A>; + status = "okay"; + }; +}; + +/* Add pinctrl for MI2S0 */ +&soc { + cdc_pri_mi2s_gpios: msm_cdc_pinctrl_pri { + compatible = "qcom,msm-cdc-pinctrl"; + pinctrl-names = "aud_active", "aud_sleep"; + pinctrl-0 = <&lpi_i2s1_sck_active &lpi_i2s1_ws_active + &lpi_i2s1_sd0_active &lpi_i2s1_sd1_active>; + pinctrl-1 = <&lpi_i2s1_sck_sleep &lpi_i2s1_ws_sleep + &lpi_i2s1_sd0_sleep &lpi_i2s1_sd1_sleep>; + }; +}; + +/* Configure MI2S0 SD0&SD1 */ +&dai_mi2s0 { + /* SD0 line for playback */ + qcom,msm-mi2s-rx-lines = <1>; + /* SD1 line for recording(SmartPA EC) */ + qcom,msm-mi2s-tx-lines = <2>; +}; + +/* Modify btfmslim_codec's compatible */ +&btfmslim_codec { + compatible = "btfmslim_slave"; + status = "ok"; +}; + + +&bengal_snd { + qcom,model = "bengal-fs-snd-card"; + fs,have-16xx = <1>; + + qcom,mi2s-audio-intf = <1>; + qcom,pri-mi2s-gpios = <&cdc_pri_mi2s_gpios>; + /delete-property/ qcom,cdc-dmic01-gpios; + /delete-property/ qcom,cdc-dmic23-gpios; + + qcom,wsa-max-devs = <0>; + qcom,wsa-devs = <0>; +}; diff --git a/qcom/bengal-borneo-common-overlay.dtsi b/qcom/bengal-borneo-common-overlay.dtsi new file mode 100644 index 000000000000..5b8223476f1d --- /dev/null +++ b/qcom/bengal-borneo-common-overlay.dtsi @@ -0,0 +1,281 @@ +/* Copyright (c) 2019, The Linux Foundation. All rights reserved. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 and + * only version 2 as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#include +#include "bengal-moto-common-overlay.dtsi" +#include "bengal-borneo-display.dtsi" +#include "bengal-audio-overlay.dtsi" +#include "bengal-borneo-touchscreen-overlay.dtsi" +#include "camera/bengal-camera-sensor-mot-guamp-overlay.dtsi" +#include "bengal-borneo-fps.dtsi" +#include "bengal-borneo-moto-thermal.dtsi" + +&qupv3_se4_2uart { + status = "ok"; +}; + + +&pm6125_gpios { + + key_vol_up { + key_vol_up_default: key_vol_up_default { + pins = "gpio5"; + function = "normal"; + input-enable; + bias-pull-up; + power-source = <0>; + }; + }; +}; + +&tlmm{ + capsense_sar_gpio_pins: capsense_sar_gpio_pins { + mux { + pins = "gpio36"; + function = "gpio"; + }; + + config { + pins = "gpio36"; + drive-strength = <2>; + bias-pull-up; + input-enable; + }; + }; +}; + +&soc { + gpio_keys { + compatible = "gpio-keys"; + label = "gpio-keys"; + + pinctrl-names = "default"; + pinctrl-0 = <&key_vol_up_default &gpio_key_active>; + + vol_up { + label = "volume_up"; + gpios = <&pm6125_gpios 5 GPIO_ACTIVE_LOW>; + linux,input-type = <1>; + linux,code = ; + linux,can-disable; + debounce-interval = <15>; + gpio-key,wakeup; + }; + }; +}; + + + +&sdhc_1 { + 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>; + + pinctrl-names = "active", "sleep"; + pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on + &sdc1_rclk_on>; + pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off + &sdc1_rclk_off>; + + status = "ok"; +}; + +&sdhc_2 { + 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>; + + pinctrl-names = "active", "sleep"; + pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on>; + pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off &sdc2_cd_off>; + + cd-gpios = <&tlmm 88 GPIO_ACTIVE_HIGH>; + + status = "ok"; +}; + +&ufsphy_mem { + compatible = "qcom,ufs-phy-qmp-v3-660"; + + vdda-phy-supply = <&L4A>; /* 0.9v */ + vdda-pll-supply = <&L12A>; /* 1.8v */ + vdda-phy-max-microamp = <51400>; + vdda-pll-max-microamp = <14200>; + + status = "ok"; +}; + +&ufshc_mem { + vdd-hba-supply = <&gcc_ufs_phy_gdsc>; + vdd-hba-fixed-regulator; + vcc-supply = <&L24A>; + vcc-voltage-level = <2950000 2960000>; + vccq2-supply = <&L11A>; + vcc-max-microamp = <600000>; + vccq2-max-microamp = <600000>; + + qcom,vddp-ref-clk-supply = <&L18A>; + qcom,vddp-ref-clk-max-microamp = <100>; + qcom,vddp-ref-clk-min-uV = <1232000>; + qcom,vddp-ref-clk-max-uV = <1232000>; + + status = "ok"; +}; + +&sde_dsi { + qcom,dsi-default-panel = <&dsi_hlt_hx83102d_video>; +}; + +&soc { + qcom,tz_gpio { + compatible = "qcom,tz_gpio"; + tlmm-tz = <14>, + <15>, + <16>, + <17>; + }; +}; + +&L21A { + regulator-min-microvolt = <2700000>; + regulator-max-microvolt = <3600000>; + qcom,init-voltage = <2800000>; +}; + +&qupv3_se0_i2c { + status = "ok"; + abov_sar@20 { + status = "ok"; + compatible = "abov,abov_sar_mmi_overlay"; + reg = <0x20>; + cap_vdd-supply = <&L21A>; + interrupt-parent = <&tlmm>; + interrupts = <36 0x2>; + gpios = <&tlmm 36 0x2>; + pinctrl-names = "default"; + pinctrl-0 = <&capsense_sar_gpio_pins>; + reg_array_len = <0x03>; + reg_array_val = <0x07 0x00 0x08 0x1B 0xFB 0x01>; + cap,use_channel_ch1 = <0x00>; + cap,use_channel_ch0 = <0x01>; + ch0_name = "capsense_top"; + ch1_name = "capsense_bottom"; + label = "AbovCapSense"; + cap,channel_number = <0x02>; + cap,fw_mode_ret = <0x3A>; + }; +}; + +&qupv3_se1_i2c { + status = "ok"; + #address-cells = <1>; + #size-cells = <0>; + nq@28 { + compatible = "qcom,nq-nci"; + reg = <0x28>; + qcom,nq-irq = <&tlmm 70 0x00>; + qcom,nq-ven = <&tlmm 69 0x00>; + qcom,nq-firm = <&tlmm 31 0x00>; + qcom,nq-clkreq = <&tlmm 86 0x00>; + interrupt-parent = <&tlmm>; + interrupts = <70 0>; + interrupt-names = "nfc_irq"; + pinctrl-names = "nfc_active", "nfc_suspend"; + pinctrl-0 = <&nfc_int_active &nfc_enable_active + &nfc_clk_req_active>; + pinctrl-1 = <&nfc_int_suspend &nfc_enable_suspend + &nfc_clk_req_suspend>; + }; +}; + +&soc{ + mtp_batterydata: qcom,battery-data { + qcom,batt-id-range-pct = <15>; + df-serialnum = "SB18C77591"; + #include "qg-batterydata-jk50-atl-4850mah.dtsi" + #include "qg-batterydata-jk50-scud-4850mah.dtsi" + #include "qg-batterydata-jk50-atl-flex-4850mah.dtsi" + #include "qg-batterydata-jk50-atl-unicoba-4850mah.dtsi" + }; +}; + +&pmi632_qg { + qcom,qg-iterm-ma = <300>; + qcom,vbatt-cutoff-mv = <3200>; + qcom,vbatt-empty-mv = <3000>; + qcom,vbatt-low-mv = <3300>; + qcom,vbatt-low-cold-mv = <3500>; + qcom,battery-data = <&mtp_batterydata>; + qcom,rbat-conn-mohm = <10>; + qcom,cl-feedback-on; + qcom,cl-min-start-soc = <0>; + qcom,cl-max-start-soc = <5>; + qcom,cl-min-temp = <150>; + qcom,cl-max-temp = <450>; + qcom,cl-max-increment = <5>; + qcom,cl-max-decrement = <10>; + qcom,cl-min-limit = <200>; + qcom,cl-max-limit = <30>; + qcom,s3-entry-ibat-ua = <15000>; + qcom,s3-exit-ibat-ua = <35000>; + qcom,vbatt-empty-cold-mv = <3000>; + qcom,ignore-shutdown-soc-secs = <1800>; + qcom.hold-soc-while-full; + qcom,linearize-soc; +}; + +&pmi632_charger { + qcom,iterm-ma = <200>; + qcom,fcc-max-ua = <3000000>; + qcom,fv-max-uv = <4400000>; + qcom,usb-icl-ua = <3000000>; + qcom,thermal-mitigation = <3000>, + <2600>, + <2300>, + <1800>, + <1500>, + <1000>, + <600>, + <400>; + qcom,battery-data = <&mtp_batterydata>; + qcom,mmi-temp-zones = <0 4200 1000 0>, + <10 4200 1000 1000>, + <15 0 1000 1000>, + <45 4200 3000 3000>, + <60 4200 2000 0>; + qcom,enable-charging-limit; + qcom,upper-limit-capacity = <75>; + qcom,lower-limit-capacity = <60>; + qcom,otg-cl-ua = <1000000>; + qcom,dc-unsupported; + qcom,wireless-unsupported; + qcom,usbeb-unsupported; + qcom,disable-suspend-on-collapse; + dpdm-supply = <&qusb_phy0>; + qcom,auto-recharge-soc = <99>; +}; + +&pmi632_rgb { + red { + label = "charging"; + }; +}; diff --git a/qcom/bengal-borneo-display.dtsi b/qcom/bengal-borneo-display.dtsi new file mode 100644 index 000000000000..f6d9af5c9727 --- /dev/null +++ b/qcom/bengal-borneo-display.dtsi @@ -0,0 +1,149 @@ +#include +#include "bengal-sde-display.dtsi" +#include "dsi-panel-mot-dummy-qhd-video.dtsi" +#include "dsi-panel-moto-hx83102d-hlt-hdplus-video.dtsi" +#include "dsi-panel-moto-nt36525b-djn-hdplus-video.dtsi" +#include "dsi-panel-moto-icnl9911s-tm-hdplus-video.dtsi" + + +&dsi_hlt_hx83102d_video { + qcom,mdss-dsi-t-clk-post = <0x0a>; + qcom,mdss-dsi-t-clk-pre = <0x21>; + qcom,dsi-supported-dfps-list = <60 55 48>; + qcom,mdss-dsi-pan-enable-dynamic-fps; + qcom,mdss-dsi-pan-fps-update = + "dfps_immediate_porch_mode_vfp"; + qcom,dsi-select-clocks = "mux_byte_clk0", "mux_pixel_clk0", + "src_byte_clk0", "src_pixel_clk0", + "shadow_byte_clk0", "shadow_pixel_clk0"; + + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs"; + qcom,mdss-dsi-bl-min-level = <1>; + qcom,mdss-dsi-bl-max-level = <4095>; + qcom,bklt-dcs-2bytes-enabled; + qcom,mdss-brightness-max-level = <4095>; + + qcom,esd-check-enabled; + qcom,mdss-dsi-panel-status-check-mode = "reg_read"; + qcom,mdss-dsi-panel-status-command =[06 01 00 01 00 00 01 0a]; + qcom,mdss-dsi-panel-status-command-state = "dsi_lp_mode"; + qcom,mdss-dsi-panel-status-value = <0x9d>; + qcom,mdss-dsi-panel-status-read-length = <4>; + qcom,mdss-dsi-panel-status-valid-params = <1>; + qcom,mdss-dsi-no-panel-on-read-support; + + qcom,panel-supply-entries = <&dsi_panel_pwr_supply>; + qcom,platform-reset-gpio = <&tlmm 82 0>; + + qcom,mdss-dsi-display-timings { + timing@0 { + qcom,mdss-dsi-panel-phy-timings = + [1F 1B 05 06 03 03 04 a0 + 1F 1B 05 06 03 03 04 a0 + 1F 1B 05 06 03 03 04 a0 + 1F 1B 05 06 03 03 04 a0 + 1F 10 04 06 03 03 04 a0]; + qcom,display-topology = <1 0 1>; + qcom,default-topology-index = <0>; + }; + }; +}; + +&dsi_djn_nt36525b_video { + qcom,mdss-dsi-t-clk-post = <0x0a>; + qcom,mdss-dsi-t-clk-pre = <0x20>; + qcom,dsi-select-clocks = "mux_byte_clk0", "mux_pixel_clk0", + "src_byte_clk0", "src_pixel_clk0", + "shadow_byte_clk0", "shadow_pixel_clk0"; + + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs"; + qcom,mdss-dsi-bl-min-level = <1>; + qcom,mdss-dsi-bl-max-level = <255>; + //qcom,bklt-dcs-2bytes-enabled; + qcom,mdss-brightness-max-level = <255>; + + qcom,esd-check-enabled; + qcom,mdss-dsi-panel-status-check-mode = "reg_read"; + qcom,mdss-dsi-panel-status-command =[06 01 00 01 00 00 01 0a]; + qcom,mdss-dsi-panel-status-command-state = "dsi_lp_mode"; + qcom,mdss-dsi-panel-status-value = <0x9c>; + qcom,mdss-dsi-panel-status-read-length = <1>; + qcom,mdss-dsi-no-panel-on-read-support; + + qcom,panel-supply-entries = <&dsi_panel_pwr_supply>; + qcom,platform-reset-gpio = <&tlmm 82 0>; + + qcom,mdss-dsi-display-timings { + timing@0 { + qcom,mdss-dsi-panel-phy-timings = + [1F 1C 04 06 03 03 04 a0 + 1F 1C 04 06 03 03 04 a0 + 1F 1C 04 06 03 03 04 a0 + 1F 1C 04 06 03 03 04 a0 + 1F 0F 04 06 03 03 04 a0]; + qcom,display-topology = <1 0 1>; + qcom,default-topology-index = <0>; + }; + }; +}; + +&dsi_tm_icnl9911s_video { + qcom,mdss-dsi-t-clk-post = <0x0a>; + qcom,mdss-dsi-t-clk-pre = <0x20>; + qcom,dsi-select-clocks = "mux_byte_clk0", "mux_pixel_clk0", + "src_byte_clk0", "src_pixel_clk0", + "shadow_byte_clk0", "shadow_pixel_clk0"; + + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs"; + qcom,mdss-dsi-bl-min-level = <1>; + qcom,mdss-dsi-bl-max-level = <4095>; + qcom,bklt-dcs-2bytes-enabled; + qcom,mdss-brightness-max-level = <4095>; + + //qcom,esd-check-enabled; + qcom,mdss-dsi-panel-status-check-mode = "reg_read"; + qcom,mdss-dsi-panel-status-command =[06 01 00 01 00 00 01 0a]; + qcom,mdss-dsi-panel-status-command-state = "dsi_lp_mode"; + qcom,mdss-dsi-panel-status-value = <0x9c>; + qcom,mdss-dsi-panel-status-read-length = <1>; + qcom,mdss-dsi-no-panel-on-read-support; + + qcom,panel-supply-entries = <&dsi_panel_pwr_supply>; + qcom,platform-reset-gpio = <&tlmm 82 0>; + + qcom,mdss-dsi-display-timings { + timing@0 { + qcom,mdss-dsi-panel-phy-timings = + [1F 1C 04 06 03 03 04 a0 + 1F 1C 04 06 03 03 04 a0 + 1F 1C 04 06 03 03 04 a0 + 1F 1C 04 06 03 03 04 a0 + 1F 0F 04 06 03 03 04 a0]; + qcom,display-topology = <1 0 1>; + qcom,default-topology-index = <0>; + }; + }; +}; + +&mot_dummy_vid_qhd { + qcom,dsi-select-clocks = "mux_byte_clk0", "mux_pixel_clk0", + "src_byte_clk0", "src_pixel_clk0", + "shadow_byte_clk0", "shadow_pixel_clk0"; + + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs"; + qcom,panel-supply-entries = <&dsi_panel_pwr_supply>; + qcom,platform-reset-gpio = <&tlmm 82 0>; + + qcom,mdss-dsi-display-timings { + timing@0 { + qcom,mdss-dsi-panel-phy-timings = + [1F 1B 05 06 03 03 04 a0 + 1F 1B 05 06 03 03 04 a0 + 1F 1B 05 06 03 03 04 a0 + 1F 1B 05 06 03 03 04 a0 + 1F 10 04 06 03 03 04 a0]; + qcom,display-topology = <1 0 1>; + qcom,default-topology-index = <0>; + }; + }; +}; diff --git a/qcom/bengal-borneo-evt-overlay.dts b/qcom/bengal-borneo-evt-overlay.dts new file mode 100644 index 000000000000..3bbc805e78c9 --- /dev/null +++ b/qcom/bengal-borneo-evt-overlay.dts @@ -0,0 +1,28 @@ +/* Copyright (c) 2020, The Linux Foundation. All rights reserved. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 and + * only version 2 as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +/dts-v1/; +/plugin/; + +#include "bengal-borneo-common-overlay.dtsi" +#include "bengal-borneo-audio-overlay.dtsi" + +/ { + model = "borneo"; + compatible = "qcom,bengal-borneo", "qcom,bengal-moto", "qcom,bengal"; + qcom,msm-id = <444 0x10000>; + qcom,board-id = <0 0xA000>; +}; + +/* + * Guam HW rev specific changes go here + */ diff --git a/qcom/bengal-borneo-fps.dtsi b/qcom/bengal-borneo-fps.dtsi new file mode 100644 index 000000000000..f9b56c69a7e7 --- /dev/null +++ b/qcom/bengal-borneo-fps.dtsi @@ -0,0 +1,146 @@ + +&tlmm { + fps_rst_active: fps_rst_active { + /* active state */ + mux { + pins = "gpio104"; + function = "gpio"; + }; + + config { + pins = "gpio104"; + drive-strength = <2>; /* 2 MA */ + output-low; + }; + }; + + fps_rst_suspend: fps_rst_suspend { + /* sleep state */ + mux { + pins = "gpio104"; + function = "gpio"; + }; + + config { + pins = "gpio104"; + drive-strength = <2>; /* 2 MA */ + }; + }; + + fps_int_active: fps_int_active { + /* active state */ + mux { + pins = "gpio65"; + function = "gpio"; + }; + + config { + pins = "gpio65"; + drive-strength = <2>; /* 2 MA */ + bias-disable; + input-enable; + }; + }; + + fps_int_suspend: fps_int_suspend { + /* sleep state */ + mux { + pins = "gpio65"; + function = "gpio"; + }; + + config { + pins = "gpio65"; + drive-strength = <2>; /* 2 MA */ + bias-disable; + input-enable; + }; + }; + + fps_ido3_en_active: ldo3_en_active { + /* active state */ + mux { + pins = "gpio34"; + function = "gpio"; + }; + + config { + pins = "gpio34"; + drive-strength = <2>; /* 2 MA */ + bias-pull-up; + output-high; + }; + }; + + fps_ido3_en_suspend: ldo3_en_suspend { + /* suspend state */ + mux { + pins = "gpio34"; + function = "gpio"; + }; + + config { + pins = "gpio34"; + drive-strength = <2>; /* 2 MA */ + bias-pull-up; + output-high; + }; + }; + + fps_ido1p8_en_active: ldo1p8_en_active { + /* active state */ + mux { + pins = "gpio106"; + function = "gpio"; + }; + + config { + pins = "gpio106"; + drive-strength = <2>; /* 2 MA */ + bias-pull-up; + output-high; + }; + }; + + fps_ido1p8_en_suspend: ldo1p8_en_suspend { + /* suspend state */ + mux { + pins = "gpio106"; + function = "gpio"; + }; + + config { + pins = "gpio106"; + drive-strength = <2>; /* 2 MA */ + bias-pull-up; + output-high; + }; + }; +}; + +&soc { + goodix_fingerprint{ + //status = "/chosen", "mmi,fps", "true"; + status = "ok"; + compatible = "goodix,fingerprint"; + fp-gpio-reset = <&tlmm 104 0x00>; + fp-gpio-irq = <&tlmm 65 0x00>; + fp-gpio-ven = <&tlmm 34 0x00>; + interrupt-parent = <&tlmm>; + interrupts = <65 0>; + interrupt-controller; + pinctrl-names = "default", "suspend"; + pinctrl-0 = <&fps_rst_active &fps_int_active &fps_ido3_en_active>; + pinctrl-1 = <&fps_rst_suspend &fps_int_suspend &fps_ido3_en_suspend>; + }; + + fpc: fpc_fpc1020 { + compatible = "fpc,fpc1020"; + status = "ok"; + irq = <&tlmm 65 0>; + rst = <&tlmm 104 0>; + pinctrl-names = "default", "suspend"; + pinctrl-0 = <&fps_rst_active &fps_int_active>; + pinctrl-1 = <&fps_rst_suspend &fps_int_suspend>; + }; +}; diff --git a/qcom/bengal-borneo-moto-thermal.dtsi b/qcom/bengal-borneo-moto-thermal.dtsi new file mode 100644 index 000000000000..dcc412a41683 --- /dev/null +++ b/qcom/bengal-borneo-moto-thermal.dtsi @@ -0,0 +1,113 @@ +#include +#include +#include + +&soc { + sys_temp_support { + compatible = "mmi,sys-temp"; + mmi,temperature-names = "front_temp", + "back_temp"; + status = "ok"; + }; +}; + +&thermal_zones { + camera-therm-usr { + status = "disabled"; + }; + + camera_therm { + polling-delay-passive = <0>; + polling-delay = <0>; + thermal-governor = "user_space"; + thermal-sensors = <&pm6125_adc_tm_iio ADC_GPIO1_PU2>; + wake-capable-sensor; + trips { + active-config0 { + temperature = <125000>; + hysteresis = <1000>; + type = "passive"; + }; + }; + }; + + xo-therm-usr { + status = "disabled"; + }; + + xo_therm { + polling-delay-passive = <0>; + polling-delay = <0>; + thermal-governor = "user_space"; + thermal-sensors = <&pm6125_adc_tm ADC_XO_THERM_PU2>; + wake-capable-sensor; + trips { + active-config0 { + temperature = <125000>; + hysteresis = <1000>; + type = "passive"; + }; + }; + }; + + pa-therm0-usr { + status = "disabled"; + }; + + pa_therm0 { + polling-delay-passive = <0>; + polling-delay = <0>; + thermal-governor = "user_space"; + thermal-sensors = <&pm6125_adc_tm ADC_AMUX_THM1_PU2>; + wake-capable-sensor; + trips { + active-config0 { + temperature = <125000>; + hysteresis = <1000>; + type = "passive"; + }; + }; + }; + + quiet-therm-usr { + status = "disabled"; + }; + + msm_therm { + polling-delay-passive = <0>; + polling-delay = <0>; + thermal-governor = "user_space"; + thermal-sensors = <&pm6125_adc_tm ADC_AMUX_THM2_PU2>; + wake-capable-sensor; + trips { + active-config0 { + temperature = <125000>; + hysteresis = <1000>; + type = "passive"; + }; + }; + }; + + chg-skin-therm-usr { + status = "disabled"; + }; + + chg_therm { + polling-delay-passive = <0>; + polling-delay = <0>; + thermal-governor = "user_space"; + thermal-sensors = <&pmi632_adc_tm ADC_GPIO2_PU2>; + wake-capable-sensor; + trips { + active-config0 { + temperature = <125000>; + hysteresis = <1000>; + type = "passive"; + }; + }; + }; +}; + +&mdss_mdp { + #cooling-cells = <2>; +}; diff --git a/qcom/bengal-borneo-touchscreen-overlay.dtsi b/qcom/bengal-borneo-touchscreen-overlay.dtsi new file mode 100644 index 000000000000..69592f6824c7 --- /dev/null +++ b/qcom/bengal-borneo-touchscreen-overlay.dtsi @@ -0,0 +1,158 @@ +&tlmm{ + pmx_ts_int_active { + ts_int_active: ts_int_active { + mux { + pins = "gpio67"; + function = "gpio"; + }; + + config { + pins = "gpio67"; + drive-strength = <8>; + bias-pull-up; + }; + }; + }; + + pmx_ts_int_suspend { + ts_int_suspend: ts_int_suspend { + mux { + pins = "gpio67"; + function = "gpio"; + }; + + config { + pins = "gpio67"; + drive-strength = <2>; + bias-disable; + }; + }; + }; + pmx_ts_reset_active { + ts_reset_active: ts_reset_active { + mux { + pins = "gpio66"; + function = "gpio"; + }; + + config { + pins = "gpio66"; + drive-strength = <8>; + bias-pull-up; + }; + }; + }; + + pmx_ts_reset_suspend { + ts_reset_suspend: ts_reset_suspend { + mux { + pins = "gpio66"; + function = "gpio"; + }; + + config { + pins = "gpio66"; + drive-strength = <2>; + bias-pull-down; + }; + }; + }; + pmx_ts_release { + ts_release: ts_release { + mux { + pins = "gpio67", "gpio66"; + function = "gpio"; + }; + + config { + pins = "gpio67", "gpio66"; + drive-strength = <2>; + bias-pull-down; + }; + }; + }; +}; + +&qupv3_se2_spi_pins { + qupv3_se2_spi_sleep: qupv3_se2_spi_sleep { + mux { + pins = "gpio6", "gpio7","gpio71"; + function = "gpio"; + }; + + config { + pins = "gpio6", "gpio7","gpio71"; + drive-strength = <6>; + bias-disable; + }; + }; + qupv3_se2_cs_sleep: qupv3_se2_cs_sleep { + mux { + pins = "gpio80"; + function = "gpio"; + }; + + config { + pins = "gpio80"; + drive-strength = <6>; + bias-pull-up; + }; + }; +}; + +&qupv3_se2_spi { + status = "ok"; + qcom,spi-touch-active="himax,hxcommon"; + pinctrl-1 = <&qupv3_se2_spi_sleep &qupv3_se2_cs_sleep>; + himax_0flash_ts@0 { + compatible = "himax,hxcommon"; + reg = <0>; + spi-max-frequency = <10000000>; + spi-cpha; + himax,panel-coords = <0 720 0 1600>; + himax,display-coords = <0 720 0 1600>; + /* himax,touch_info = <32 18 0 720 1600 10 0 1>;*/ + himax,irq-gpio = <&tlmm 67 0x2008>; + himax,rst-gpio = <&tlmm 66 0x00>; + report_type = <1>; + interrupt-parent = <&tlmm>; + interrupts = <67 0x02>; + /* lab-supply = <&lcdb_ldo_vreg>; + ibb-supply = <&lcdb_ncp_vreg>;*/ + pinctrl-names = "pmx_ts_active","pmx_ts_suspend"; + pinctrl-0 = <&ts_int_active &ts_reset_active>; + pinctrl-1 = <&ts_int_suspend &ts_reset_suspend>; + panel = <&dsi_hlt_hx83102d_video>; + }; + nova_0flash_ts@1 { + compatible = "novatek,NVT-ts-spi"; + reg = <1>; + spi-max-frequency = <9600000>; + novatek,swrst-n8-addr = <0x03F0FE>; + novatek,spi-rd-fast-addr = <0x03F310>; + spi-cpha; + novatek,irq-gpio = <&tlmm 67 0x2008>; + novatek,reset-gpio = <&tlmm 66 0x00>; + report_type = <1>; + novatek,def-max-resolution = <720 1600>; + interrupt-parent = <&tlmm>; + interrupts = <67 0x02>; + pinctrl-names = "pmx_ts_active","pmx_ts_suspend"; + pinctrl-0 = <&ts_int_active &ts_reset_active>; + pinctrl-1 = <&ts_int_suspend &ts_reset_suspend>; + }; + chipone_tddi@2 { + compatible = "chipone-tddi"; + reg = <2>; + interrupt-parent = <&tlmm>; + spi-max-frequency = <4000000>; + spi-cpha; + spi-cpol; + interrupts = <67 0x02>; + chipone,rst-gpio = <&tlmm 66 0x00>; + chipone,irq-gpio = <&tlmm 67 0x2008>; + chipone,x-res = <720>; + chipone,y-res = <1600>; + panel = <&dsi_tm_icnl9911s_video>; + }; +};