arm64: dts: qcom: msm8916/39-samsung-a2015: Add PMIC and charger

The phones listed below have Richtek RT5033 PMIC and charger.
Add them to the device trees.

- Samsung Galaxy A3/A5/A7 2015
- Samsung Galaxy E5/E7
- Samsung Galaxy Grand Max

Signed-off-by: Raymond Hackley <raymondhackley@protonmail.com>
Link: https://lore.kernel.org/r/20240424143158.24358-1-raymondhackley@protonmail.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
This commit is contained in:
Raymond Hackley 2024-04-24 14:32:10 +00:00 committed by Bjorn Andersson
parent 15476ccd3d
commit 6986a75d06
7 changed files with 138 additions and 2 deletions

View File

@ -28,6 +28,12 @@ tz-apps@85500000 {
};
};
battery: battery {
compatible = "simple-battery";
precharge-current-microamp = <450000>;
precharge-upper-limit-microvolt = <3500000>;
};
clk_pwm: pwm {
compatible = "clk-pwm";
#pwm-cells = <2>;
@ -245,7 +251,7 @@ magnetometer@12 {
&blsp_i2c4 {
status = "okay";
battery@35 {
fuel-gauge@35 {
compatible = "richtek,rt5033-battery";
reg = <0x35>;
interrupt-parent = <&tlmm>;
@ -253,6 +259,44 @@ battery@35 {
pinctrl-names = "default";
pinctrl-0 = <&fg_alert_default>;
power-supplies = <&charger>;
};
};
&blsp_i2c6 {
status = "okay";
pmic@34 {
compatible = "richtek,rt5033";
reg = <0x34>;
interrupts-extended = <&tlmm 62 IRQ_TYPE_EDGE_FALLING>;
pinctrl-0 = <&pmic_int_default>;
pinctrl-names = "default";
regulators {
rt5033_reg_safe_ldo: SAFE_LDO {
regulator-min-microvolt = <4900000>;
regulator-max-microvolt = <4900000>;
regulator-always-on;
};
/*
* Needed for camera, but not used yet.
* Define empty nodes to allow disabling the unused
* regulators.
*/
LDO {};
BUCK {};
};
charger: charger {
compatible = "richtek,rt5033-charger";
monitored-battery = <&battery>;
richtek,usb-connector = <&usb_con>;
};
};
};
@ -476,6 +520,13 @@ nfc_i2c_default: nfc-i2c-default-state {
bias-disable;
};
pmic_int_default: pmic-int-default-state {
pins = "gpio62";
function = "gpio";
drive-strength = <2>;
bias-disable;
};
sdc2_cd_default: sdc2-cd-default-state {
pins = "gpio38";
function = "gpio";

View File

@ -55,6 +55,12 @@ &accelerometer {
"0", "0", "1";
};
&battery {
charge-term-current-microamp = <150000>;
constant-charge-current-max-microamp = <1000000>;
constant-charge-voltage-max-microvolt = <4350000>;
};
&blsp_i2c5 {
status = "okay";

View File

@ -29,6 +29,12 @@ &accelerometer {
"0", "0", "1";
};
&battery {
charge-term-current-microamp = <200000>;
constant-charge-current-max-microamp = <1500000>;
constant-charge-voltage-max-microvolt = <4350000>;
};
&blsp_i2c5 {
status = "okay";

View File

@ -23,6 +23,12 @@ / {
chassis-type = "handset";
};
&battery {
charge-term-current-microamp = <200000>;
constant-charge-current-max-microamp = <1500000>;
constant-charge-voltage-max-microvolt = <4350000>;
};
&blsp_i2c5 {
status = "okay";

View File

@ -23,6 +23,13 @@ / {
chassis-type = "handset";
};
&battery {
charge-term-current-microamp = <200000>;
constant-charge-current-max-microamp = <1500000>;
constant-charge-voltage-max-microvolt = <4350000>;
};
&pm8916_l17 {
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;

View File

@ -41,6 +41,12 @@ led-keyled {
};
};
&battery {
charge-term-current-microamp = <150000>;
constant-charge-current-max-microamp = <1000000>;
constant-charge-voltage-max-microvolt = <4400000>;
};
&reg_motor_vdd {
gpio = <&tlmm 72 GPIO_ACTIVE_HIGH>;
};

View File

@ -33,6 +33,15 @@ tz-apps@85500000 {
};
};
battery: battery {
compatible = "simple-battery";
charge-term-current-microamp = <150000>;
constant-charge-current-max-microamp = <1500000>;
constant-charge-voltage-max-microvolt = <4300000>;
precharge-current-microamp = <450000>;
precharge-upper-limit-microvolt = <3500000>;
};
gpio-hall-sensor {
compatible = "gpio-keys";
@ -82,7 +91,7 @@ i2c-fg {
#address-cells = <1>;
#size-cells = <0>;
battery@35 {
fuel-gauge@35 {
compatible = "richtek,rt5033-battery";
reg = <0x35>;
@ -91,6 +100,8 @@ battery@35 {
pinctrl-0 = <&fg_alert_default>;
pinctrl-names = "default";
power-supplies = <&charger>;
};
};
@ -325,6 +336,42 @@ touchscreen@24 {
};
};
&blsp_i2c6 {
status = "okay";
pmic@34 {
compatible = "richtek,rt5033";
reg = <0x34>;
interrupts-extended = <&tlmm 62 IRQ_TYPE_EDGE_FALLING>;
pinctrl-0 = <&pmic_int_default>;
pinctrl-names = "default";
regulators {
rt5033_reg_safe_ldo: SAFE_LDO {
regulator-min-microvolt = <4900000>;
regulator-max-microvolt = <4900000>;
regulator-always-on;
};
/*
* Needed for camera, but not used yet.
* Define empty nodes to allow disabling the unused
* regulators.
*/
LDO {};
BUCK {};
};
charger: charger {
compatible = "richtek,rt5033-charger";
monitored-battery = <&battery>;
richtek,usb-connector = <&usb_con>;
};
};
};
&blsp_uart2 {
status = "okay";
};
@ -510,6 +557,13 @@ nfc_i2c_default: nfc-i2c-default-state {
bias-disable;
};
pmic_int_default: pmic-int-default-state {
pins = "gpio62";
function = "gpio";
drive-strength = <2>;
bias-disable;
};
reg_tsp_en_default: reg-tsp-en-default-state {
pins = "gpio73";
function = "gpio";