Skip to content
Snippets Groups Projects
Verified Commit ebecf3eb authored by Newbyte's avatar Newbyte :snowflake: Committed by Dylan Van Assche
Browse files

main/linux-postmarketos-exynos4: upgrade to 5.14 (MR 2423)

parent 9ccae77a
Branches
No related tags found
No related merge requests found
Showing
with 187 additions and 316 deletions
From 1287ea6219ef4ebc461214e67d6b98ee99023b3e Mon Sep 17 00:00:00 2001
From: Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de>
Date: Sun, 25 Sep 2016 20:06:40 +0200
Subject: [PATCH] power: supply: max17042_battery: use VF SOC register for
capacity property
The capacity property uses the RepSOC register to report the current state
of charge. This register did not provide a reliable SOC value during my
testing with the max17047 variant on a Galaxy S3 (Trats2/GT-I9300). The
reported value did not change or even stayed 0 in some cases.
However, the VF SOC register provided an accurate SOC value at all times.
It uses the voltage fuel gauge to determine the SOC.
Signed-off-by: Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de>
---
drivers/power/supply/max17042_battery.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/power/supply/max17042_battery.c b/drivers/power/supply/max17042_battery.c
index 2e9672fe4df1..87d90eaeed0c 100644
--- a/drivers/power/supply/max17042_battery.c
+++ b/drivers/power/supply/max17042_battery.c
@@ -316,7 +316,7 @@ static int max17042_get_property(struct power_supply *psy,
val->intval = data * 625 / 8;
break;
case POWER_SUPPLY_PROP_CAPACITY:
- ret = regmap_read(map, MAX17042_RepSOC, &data);
+ ret = regmap_read(map, MAX17042_VFSOC, &data);
if (ret < 0)
return ret;
--
2.31.1
From f91cadd693f173d671f15a6d9386dcb2a033f5b2 Mon Sep 17 00:00:00 2001
From: Shilin Victor <chrono.monochrome@gmail.com>
Date: Fri, 19 Mar 2021 19:10:37 +0300
Subject: [PATCH] power_supply: max77693: change the supply type to
POWER_SUPPLY_TYPE_MAINS
---
drivers/power/supply/max77693_charger.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/power/supply/max77693_charger.c b/drivers/power/supply/max77693_charger.c
index 00672f132c29..fcd3708718f6 100644
--- a/drivers/power/supply/max77693_charger.c
+++ b/drivers/power/supply/max77693_charger.c
@@ -590,7 +590,7 @@ static int max77693_charger_get_property(struct power_supply *psy,
static const struct power_supply_desc max77693_charger_desc = {
.name = MAX77693_CHARGER_NAME,
- .type = POWER_SUPPLY_TYPE_BATTERY,
+ .type = POWER_SUPPLY_TYPE_MAINS,
.properties = max77693_charger_props,
.num_properties = ARRAY_SIZE(max77693_charger_props),
.get_property = max77693_charger_get_property,
--
2.31.1
From 226d336c1c75b7003ab70693cb332a1be19f1802 Mon Sep 17 00:00:00 2001
From: Timon Baetz <timon.baetz@protonmail.com>
Date: Wed, 30 Dec 2020 20:51:53 +0000
Subject: [PATCH] extcon: max8997: Add CHGINS and CHGRM interrupt handling
This allows the MAX8997 charger to set the current limit depending on
the detected extcon charger type.
Signed-off-by: Timon Baetz <timon.baetz@protonmail.com>
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
---
drivers/extcon/extcon-max8997.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/extcon/extcon-max8997.c b/drivers/extcon/extcon-max8997.c
index 337b0eea4e62..e1408075ef7d 100644
--- a/drivers/extcon/extcon-max8997.c
+++ b/drivers/extcon/extcon-max8997.c
@@ -44,6 +44,8 @@ static struct max8997_muic_irq muic_irqs[] = {
{ MAX8997_MUICIRQ_ChgDetRun, "muic-CHGDETRUN" },
{ MAX8997_MUICIRQ_ChgTyp, "muic-CHGTYP" },
{ MAX8997_MUICIRQ_OVP, "muic-OVP" },
+ { MAX8997_PMICIRQ_CHGINS, "pmic-CHGINS" },
+ { MAX8997_PMICIRQ_CHGRM, "pmic-CHGRM" },
};
/* Define supported cable type */
@@ -538,6 +540,8 @@ static void max8997_muic_irq_work(struct work_struct *work)
case MAX8997_MUICIRQ_DCDTmr:
case MAX8997_MUICIRQ_ChgDetRun:
case MAX8997_MUICIRQ_ChgTyp:
+ case MAX8997_PMICIRQ_CHGINS:
+ case MAX8997_PMICIRQ_CHGRM:
/* Handle charger cable */
ret = max8997_muic_chg_handler(info);
break;
--
2.25.1
From 590d39ce7b457815f60899c6f38d3aa4b5665c37 Mon Sep 17 00:00:00 2001
From: Timon Baetz <timon.baetz@protonmail.com>
Date: Sun, 24 Jan 2021 18:17:06 +0100
Subject: [PATCH] ARM: dts: exynos: Add charger supply for I9100
The regulator is used for charging control by max8997_charger driver.
Signed-off-by: Timon Baetz <timon.baetz@protonmail.com>
---
arch/arm/boot/dts/exynos4210-i9100.dts | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arch/arm/boot/dts/exynos4210-i9100.dts b/arch/arm/boot/dts/exynos4210-i9100.dts
index 304a8ee2364c..dad950daafb4 100644
--- a/arch/arm/boot/dts/exynos4210-i9100.dts
+++ b/arch/arm/boot/dts/exynos4210-i9100.dts
@@ -384,6 +384,8 @@ pmic@66 {
pinctrl-0 = <&max8997_irq>, <&otg_gp>, <&usb_sel>;
pinctrl-names = "default";
+ charger-supply = <&charger_reg>;
+
regulators {
vadc_reg: LDO1 {
regulator-name = "VADC_3.3V_C210";
--
2.25.1
From 601b2f6ce656d0e29724131511e9b58da9c703d4 Mon Sep 17 00:00:00 2001
From: Timon Baetz <timon.baetz@protonmail.com>
Date: Sun, 24 Jan 2021 18:22:14 +0100
Subject: [PATCH] power: supply: max8997_charger: Switch to new binding
Get regulator from parent device's node and extcon by name.
Signed-off-by: Timon Baetz <timon.baetz@protonmail.com>
---
drivers/power/supply/max8997_charger.c | 12 ++++++++----
1 file changed, 8 insertions(+), 4 deletions(-)
diff --git a/drivers/power/supply/max8997_charger.c b/drivers/power/supply/max8997_charger.c
index 321bd6b8ee41..625d8cc4312a 100644
--- a/drivers/power/supply/max8997_charger.c
+++ b/drivers/power/supply/max8997_charger.c
@@ -168,6 +168,7 @@ static int max8997_battery_probe(struct platform_device *pdev)
int ret = 0;
struct charger_data *charger;
struct max8997_dev *iodev = dev_get_drvdata(pdev->dev.parent);
+ struct device_node *np = pdev->dev.of_node;
struct i2c_client *i2c = iodev->i2c;
struct max8997_platform_data *pdata = iodev->pdata;
struct power_supply_config psy_cfg = {};
@@ -237,20 +238,23 @@ static int max8997_battery_probe(struct platform_device *pdev)
return PTR_ERR(charger->battery);
}
+ // grab regulator from parent device's node
+ pdev->dev.of_node = iodev->dev->of_node;
charger->reg = devm_regulator_get_optional(&pdev->dev, "charger");
+ pdev->dev.of_node = np;
if (IS_ERR(charger->reg)) {
if (PTR_ERR(charger->reg) == -EPROBE_DEFER)
return -EPROBE_DEFER;
dev_info(&pdev->dev, "couldn't get charger regulator\n");
}
- charger->edev = extcon_get_edev_by_phandle(&pdev->dev, 0);
- if (IS_ERR(charger->edev)) {
- if (PTR_ERR(charger->edev) == -EPROBE_DEFER)
+ charger->edev = extcon_get_extcon_dev("max8997-muic");
+ if (IS_ERR_OR_NULL(charger->edev)) {
+ if (!charger->edev)
return -EPROBE_DEFER;
dev_info(charger->dev, "couldn't get extcon device\n");
}
- if (!IS_ERR(charger->reg) && !IS_ERR(charger->edev)) {
+ if (!IS_ERR(charger->reg) && !IS_ERR_OR_NULL(charger->edev)) {
INIT_WORK(&charger->extcon_work, max8997_battery_extcon_evt_worker);
ret = devm_add_action(&pdev->dev, max8997_battery_extcon_evt_stop_work, charger);
if (ret) {
--
2.25.1
From 0c13c224414a56f6112f915bdd866569975dab27 Mon Sep 17 00:00:00 2001
From: Timon Baetz <timon.baetz@protonmail.com>
Date: Fri, 26 Mar 2021 16:56:01 +0100
Subject: [PATCH] ARM: dts: exynos: Add front camera support to I9100
Add node for Samsung S5K5BAF CMOS image sensor and
enable the associated MIPI CSI-2 receiver node.
Signed-off-by: Timon Baetz <timon.baetz@protonmail.com>
---
v2: Rename node from s5k5bafx to image-sensor and use GPIO_ACTIVE_LOW
arch/arm/boot/dts/exynos4210-i9100.dts | 52 ++++++++++++++++++++++++++
1 file changed, 52 insertions(+)
diff --git a/arch/arm/boot/dts/exynos4210-i9100.dts b/arch/arm/boot/dts/exynos4210-i9100.dts
index 228de6d8c9d1..f47b6eaf208f 100644
--- a/arch/arm/boot/dts/exynos4210-i9100.dts
+++ b/arch/arm/boot/dts/exynos4210-i9100.dts
@@ -147,6 +147,36 @@ battery@36 {
};
};
+ i2c_s5k5baf: i2c-gpio-1 {
+ compatible = "i2c-gpio";
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ sda-gpios = <&gpc1 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+ scl-gpios = <&gpc1 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+ i2c-gpio,delay-us = <2>;
+
+ image-sensor@2d {
+ compatible = "samsung,s5k5baf";
+ reg = <0x2d>;
+ vdda-supply = <&cam_io_en_reg>;
+ vddreg-supply = <&vt_core_15v_reg>;
+ vddio-supply = <&vtcam_reg>;
+ clocks = <&camera 0>;
+ clock-names = "mclk";
+ stbyn-gpios = <&gpl2 0 GPIO_ACTIVE_LOW>;
+ rstn-gpios = <&gpl2 1 GPIO_ACTIVE_LOW>;
+ clock-frequency = <24000000>;
+
+ port {
+ s5k5bafx_ep: endpoint {
+ remote-endpoint = <&csis1_ep>;
+ data-lanes = <1>;
+ };
+ };
+ };
+ };
+
spi-3 {
compatible = "spi-gpio";
#address-cells = <1>;
@@ -220,7 +250,11 @@ pmic_ap_clk: pmic-ap-clk {
};
&camera {
+ pinctrl-0 = <&cam_port_a_clk_active>;
+ pinctrl-names = "default";
status = "okay";
+ assigned-clocks = <&clock CLK_MOUT_CAM0>, <&clock CLK_MOUT_CAM1>;
+ assigned-clock-parents = <&clock CLK_XUSBXTI>, <&clock CLK_XUSBXTI>;
};
&cpu0 {
@@ -794,3 +828,21 @@ &serial_3 {
&tmu {
status = "okay";
};
+
+&csis_1 {
+ status = "okay";
+ vddcore-supply = <&vusb_reg>;
+ vddio-supply = <&vmipi_reg>;
+ clock-frequency = <160000000>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@4 {
+ reg = <4>;
+ csis1_ep: endpoint {
+ remote-endpoint = <&s5k5bafx_ep>;
+ data-lanes = <1>;
+ samsung,csis-hs-settle = <6>;
+ };
+ };
+};
--
2.25.1
From 7111a207fbb09619618f5c1095f0d31067590c03 Mon Sep 17 00:00:00 2001
From: Timon Baetz <timon.baetz@protonmail.com>
Date: Sat, 29 May 2021 13:47:57 +0200
Subject: [PATCH] ARM: dts: exynos: Disable unused camera input for I9100
As the back camera is not implemented disable the second pair of fimc
child nodes as they are not functional. This prevents creating the
associated /dev/videoX devices.
Signed-off-by: Timon Baetz <timon.baetz@protonmail.com>
---
arch/arm/boot/dts/exynos4210-i9100.dts | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/arch/arm/boot/dts/exynos4210-i9100.dts b/arch/arm/boot/dts/exynos4210-i9100.dts
index dec223bbf4eb..4a669abf4842 100644
--- a/arch/arm/boot/dts/exynos4210-i9100.dts
+++ b/arch/arm/boot/dts/exynos4210-i9100.dts
@@ -296,7 +296,8 @@ &fimc_0 {
};
&fimc_1 {
- status = "okay";
+ /* Back camera not implemented */
+ status = "disabled";
assigned-clocks = <&clock CLK_MOUT_FIMC1>, <&clock CLK_SCLK_FIMC1>;
assigned-clock-parents = <&clock CLK_SCLK_MPLL>;
@@ -312,7 +313,8 @@ &fimc_2 {
};
&fimc_3 {
- status = "okay";
+ /* Back camera not implemented */
+ status = "disabled";
assigned-clocks = <&clock CLK_MOUT_FIMC3>, <&clock CLK_SCLK_FIMC3>;
assigned-clock-parents = <&clock CLK_SCLK_MPLL>;
--
2.25.1
......@@ -3,8 +3,8 @@
# Kernel config based on: arch/arm/configs/exynos_defconfig
pkgname=linux-postmarketos-exynos4
pkgver=5.12.8
pkgrel=3
pkgver=5.14
pkgrel=0
pkgdesc="Mainline kernel fork for Samsung Exynos4 devices"
arch="armv7"
_carch="arm"
......@@ -28,11 +28,8 @@ source="
https://cdn.kernel.org/pub/linux/kernel/v${_kernver%%.*}.x/linux-$_kernver.tar.xz
$_config
0001-ARM-decompressor-Flush-tlb-before-swiching-domain-0-.patch
0002-extcon-max8997-Add-CHGINS-and-CHGRM-interrupt-handli.patch
0003-ARM-dts-exynos-Add-charger-supply-for-I9100.patch
0004-power-supply-max8997_charger-Switch-to-new-binding.patch
0005-ARM-dts-exynos-Add-front-camera-support-to-I9100.patch
0006-ARM-dts-exynos-Disable-unused-camra-input-for-I9100.patch
0001-power-supply-max17042_battery-use-VF-SOC-register-fo.patch
0001-power_supply-max77693-change-the-supply-type-to-POWE.patch
initramfs.list
init
"
......@@ -72,14 +69,11 @@ package() {
}
sha512sums="
8a5f1774bee223445ad147d2f83a7b3a2c19ea620d0f3964344bb33d003fec17d36279b522745c03467e361ebd61479a4f7122e5911bb6b817ff52ee55c736d9 linux-5.12.8.tar.xz
203a6265a0f7671c726d7525949f1913d37a9f3ba27460279cb8e9593bdca3b231258e8afeb2608fb9190aa944a2b5859e12c4225929bfb391c0155d5fbb9c92 config-postmarketos-exynos4.armv7
8e4f3ec3d36f774280f75dc7b004a43e09417af58f12e9c9f8348976659d4cfda7ad905f306f43fed66a27922e5c45db22e46bbfa7a0b9f365012380de3b6f64 linux-5.14.tar.xz
16f0b591a73fe8d7a9159b1391147acbf1b276f579e168045cf4393f58bc0d85b45e9c8467257180f6a34574451f2447068dde5995099d5c3db0e45285186c9f config-postmarketos-exynos4.armv7
4bb111db4396a1981ad0883737c6594ca93701699846298b940d2ea202c666be0158a0f9ddc5b95b9147fa4cfe62639512ae78e9315f8d975b379ccc4e15da36 0001-ARM-decompressor-Flush-tlb-before-swiching-domain-0-.patch
dffe9934281e81b20e158ce9b80c6f1a91c5eaa06eb92ee655ee9430dba8aa066dd70a9fb163007f37556ea696ae0256a58f87408c8b7571d6d20f99c9492db2 0002-extcon-max8997-Add-CHGINS-and-CHGRM-interrupt-handli.patch
b70e8afa3779d471835bbdda4c8ddcf882bce58752993314655596961210235558e87dce3d1f07810ab5bb3d0471e89933a8008d7b97d8ebd05a408ffc947054 0003-ARM-dts-exynos-Add-charger-supply-for-I9100.patch
11160ac085aa912439a18995e323dfc89dfc61d85f1221af8f0116eed0f5b1fd087fc2828174c8c60f937495c31d72240c2f3c4249c29ceda6acd92f08d235c4 0004-power-supply-max8997_charger-Switch-to-new-binding.patch
30b457377bcf750a083b8a8acc3b91c7049c69b7f2e3e0dba9afe00e2c8918b1a9b2314fe553cbd808d827e845bdca10986c731d29082e20d2599d25c1956276 0005-ARM-dts-exynos-Add-front-camera-support-to-I9100.patch
96f629a33ef6001e6457331d627c3778232478969d4745b49b29a9e9cf33249508b12170bee5d3b28ec85775dd5e669d933d3d3852c2acd09d0df59266ac6f65 0006-ARM-dts-exynos-Disable-unused-camra-input-for-I9100.patch
166fe4dff1cdc451a9a32a5240adb93b534b8c576c5ac8d995401ebbf676385a6d8b5a6a21f556df588dee41cc4e5b8ede9eff3dd4c7835c0ca374882784d42e 0001-power-supply-max17042_battery-use-VF-SOC-register-fo.patch
e581eb55eb4cdfdac2cbe713a5044077a9b2f15881f0bed03cc89ecb1e38d19a1c9cfbaf53ee184c4a64b10bfe071e289f4fb2230e2420e4f0042f1f301a325c 0001-power_supply-max77693-change-the-supply-type-to-POWE.patch
aaff0332b90e1f9f62de1128cace934717336e54ab09de46477369fa808302482d97334e43a85ee8597c1bcab64d3484750103559fea2ce8cd51776156bf7591 initramfs.list
09f1f214a24300696809727a7b04378887c06ca6f40803ca51a12bf2176a360b2eb8632139d6a0722094e05cb2038bdb04018a1e3d33fc2697674552ade03bee init
"
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment