Rtwo/kernel/motorola/sm8550-devicetrees/qcom/trinketp-iot-idp.dtsi
2025-09-30 19:22:48 -05:00

310 lines
6.2 KiB
Text

#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
#include <dt-bindings/iio/qcom,spmi-vadc.h>
#include <dt-bindings/iio/qti_power_supply_iio.h>
&qupv3_se4_2uart {
status = "ok";
};
&usb0 {
extcon = <&pmi632_charger>, <&eud>;
};
&qupv3_se1_i2c {
status = "ok";
#include "smb1355.dtsi"
};
&soc {
mtp_batterydata: qcom,battery-data {
qcom,batt-id-range-pct = <15>;
#include "qg-batterydata-ascent-3450mah.dtsi"
#include "qg-batterydata-mlp356477-2800mah.dtsi"
};
};
&pm6125_vadc {
rf_pa1_therm {
reg = <ADC5_GPIO4_100K_PU>;
label = "rf_pa1_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
};
};
&pm6125_adc_tm {
io-channels = <&pm6125_vadc ADC5_AMUX_THM1_100K_PU>,
<&pm6125_vadc ADC5_AMUX_THM2_100K_PU>,
<&pm6125_vadc ADC5_XO_THERM_100K_PU>,
<&pm6125_vadc ADC5_GPIO4_100K_PU>;
rf_pa1_therm {
reg = <3>;
io-channels = <&pm6125_vadc ADC5_GPIO4_100K_PU>;
qcom,ratiometric;
qcom,hw-settle-time = <200>;
};
};
&thermal_zones {
rf-pa1-therm-adc {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm6125_adc_tm 3>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
};
&pmi632_qg {
status = "ok";
#io-channel-cells = <1>;
io-channels = <&pmi632_vadc ADC5_BAT_THERM_100K_PU>,
<&pmi632_vadc ADC5_BAT_ID_100K_PU>,
<&pmi632_charger PSY_IIO_INPUT_CURRENT_LIMITED>,
<&pmi632_charger PSY_IIO_RECHARGE_SOC>,
<&pmi632_charger PSY_IIO_FORCE_RECHARGE>,
<&pmi632_charger PSY_IIO_CHARGE_DONE>;
io-channel-names = "batt-therm",
"batt-id",
"input_current_limited",
"recharge_soc",
"force_recharge",
"charge_done",
"cp_charging_enabled";
qcom,battery-data = <&mtp_batterydata>;
qcom,qg-iterm-ma = <100>;
qcom,hold-soc-while-full;
qcom,linearize-soc;
qcom,qg-use-s7-ocv;
};
&pmi632_charger {
status = "ok";
#io-channel-cells = <1>;
io-channels = <&pmi632_qg PSY_IIO_RESISTANCE_ID>,
<&pmi632_qg PSY_IIO_VOLTAGE_NOW>,
<&pmi632_qg PSY_IIO_TEMP>,
<&pmi632_qg PSY_IIO_CAPACITY>,
<&pmi632_qg PSY_IIO_VOLTAGE_OCV>,
<&pmi632_qg PSY_IIO_VOLTAGE_AVG>,
<&pmi632_qg PSY_IIO_DEBUG_BATTERY>,
<&pmi632_qg PSY_IIO_REAL_CAPACITY>,
<&pmi632_qg PSY_IIO_CC_SOC>,
<&pmi632_qg PSY_IIO_CURRENT_NOW>,
<&pmi632_qg PSY_IIO_VOLTAGE_MAX>,
<&pmi632_qg PSY_IIO_CHARGE_FULL>,
<&pmi632_qg PSY_IIO_CHARGE_COUNTER>,
<&pmi632_qg PSY_IIO_CYCLE_COUNT>,
<&pmi632_qg PSY_IIO_CHARGE_FULL_DESIGN>,
<&pmi632_qg PSY_IIO_TIME_TO_FULL_NOW>;
io-channel-names = "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,battery-data = <&mtp_batterydata>;
qcom,suspend-input-on-debug-batt;
qcom,sw-jeita-enable;
qcom,step-charging-enable;
/* SMB1355 only */
qcom,sec-charger-config = <2>;
qcom,hvdcp2-max-icl-ua = <2000000>;
dpdm-supply = <&qusb_phy0>;
qcom,charger-temp-max = <800>;
qcom,smb-temp-max = <800>;
qcom,auto-recharge-soc = <98>;
qcom,flash-disable-soc = <10>;
qcom,hw-die-temp-mitigation;
qcom,hw-connector-mitigation;
qcom,connector-internal-pull-kohm = <100>;
qcom,float-option = <1>;
qcom,thermal-mitigation = <3000000 2500000
2000000 1500000 1000000 500000>;
};
&pmi632_gpios {
smb_en {
smb_en_default: smb_en_default {
pins = "gpio2";
function = "func1";
output-enable;
};
};
pmi632_sense {
/* GPIO 7 and 8 are external-sense pins for PMI632 */
pmi632_sense_default: pmi632_sense_default {
pins = "gpio7", "gpio8";
bias-high-impedance; /* disable the GPIO */
bias-disable; /* no-pull */
};
};
pmi632_ctm {
/* Disable GPIO1 for h/w base mitigation */
pmi632_ctm_default: pmi632_ctm_default {
pins = "gpio1";
bias-high-impedance; /* disable the GPIO */
bias-disable; /* no-pull */
};
};
};
&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>;
};
};
};
&soc {
gpio_keys {
compatible = "gpio-keys";
label = "gpio-keys";
pinctrl-names = "default";
pinctrl-0 = <&key_vol_up_default>;
vol_up {
label = "volume_up";
gpios = <&pm6125_gpios 5 GPIO_ACTIVE_LOW>;
linux,input-type = <1>;
linux,code = <KEY_VOLUMEUP>;
linux,can-disable;
debounce-interval = <15>;
gpio-key,wakeup;
};
};
};
&tlmm {
smb_int_default: smb_int_default {
mux {
pins = "gpio130";
function = "gpio";
};
config {
pins = "gpio130";
bias-pull-up;
input-enable;
};
};
};
&smb1355 {
pinctrl-names = "default";
pinctrl-0 = <&smb_int_default>;
interrupt-parent = <&tlmm>;
interrupts = <130 IRQ_TYPE_LEVEL_LOW>;
status = "ok";
};
&smb1355_charger {
pinctrl-names = "default";
pinctrl-0 = <&smb_en_default &pmi632_sense_default &pmi632_ctm_default>;
qcom,parallel-mode = <1>;
qcom,disable-ctm;
qcom,hw-die-temp-mitigation;
status = "ok";
};
&pm6125_pwm {
status = "ok";
};
&qupv3_se1_i2c {
status = "ok";
#include "pm8008.dtsi"
};
&tlmm {
pm8008_active: pm8008_active {
mux {
pins = "gpio49";
function = "gpio";
};
config {
pins = "gpio49";
bias-pull-up;
output-high;
drive-strength = <2>;
};
};
};
&pm8008_chip {
pinctrl-names = "default";
pinctrl-0 = <&pm8008_active>;
};
&pm8008_regulators {
vdd_l1_l2-supply = <&S6A>;
};
&pm8008_9 {
pinctrl-names = "default";
pinctrl-0 = <&pm8008_gpio1_active>;
};
&L1P {
regulator-max-microvolt = <1200000>;
qcom,min-dropout-voltage = <100000>;
};
&L2P {
regulator-max-microvolt = <1104000>;
qcom,min-dropout-voltage = <100000>;
};
&L3P {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
};
&L4P {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
};
&L5P {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
};
&L6P {
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
};
&L7P {
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
};