aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm27xx/patches-5.15/950-0659-power-rpi-poe-Drop-CURRENT_AVG-as-it-is-not-hardware.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/bcm27xx/patches-5.15/950-0659-power-rpi-poe-Drop-CURRENT_AVG-as-it-is-not-hardware.patch')
-rw-r--r--target/linux/bcm27xx/patches-5.15/950-0659-power-rpi-poe-Drop-CURRENT_AVG-as-it-is-not-hardware.patch43
1 files changed, 43 insertions, 0 deletions
diff --git a/target/linux/bcm27xx/patches-5.15/950-0659-power-rpi-poe-Drop-CURRENT_AVG-as-it-is-not-hardware.patch b/target/linux/bcm27xx/patches-5.15/950-0659-power-rpi-poe-Drop-CURRENT_AVG-as-it-is-not-hardware.patch
new file mode 100644
index 0000000000..d324323075
--- /dev/null
+++ b/target/linux/bcm27xx/patches-5.15/950-0659-power-rpi-poe-Drop-CURRENT_AVG-as-it-is-not-hardware.patch
@@ -0,0 +1,43 @@
+From dd73451d7f93925a0aca446c5fef68c543658637 Mon Sep 17 00:00:00 2001
+From: Dave Stevenson <dave.stevenson@raspberrypi.com>
+Date: Thu, 20 Jan 2022 15:48:03 +0000
+Subject: [PATCH] power: rpi-poe: Drop CURRENT_AVG as it is not
+ hardware averaged
+
+As documented the _AVG parameters are meant to be hardware
+averaged, but the implementation for the PoE+ HAT was done in
+software in the firmware.
+
+Drop the property.
+
+Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
+---
+ drivers/power/supply/rpi_poe_power.c | 10 ----------
+ 1 file changed, 10 deletions(-)
+
+--- a/drivers/power/supply/rpi_poe_power.c
++++ b/drivers/power/supply/rpi_poe_power.c
+@@ -106,15 +106,6 @@ static int rpi_poe_power_supply_get_prop
+ r_val->intval = (val > 5);
+ return 0;
+
+- case POWER_SUPPLY_PROP_CURRENT_AVG:
+- val = 50;
+- ret = read_reg(ctx->fw, RPI_POE_ADC_REG, &val);
+- if (ret)
+- return ret;
+- val = (val * 3300)/9821;
+- r_val->intval = val * 1000;
+- return 0;
+-
+ case POWER_SUPPLY_PROP_CURRENT_NOW:
+ ret = read_reg(ctx->fw, RPI_POE_ADC_REG, &val);
+ if (ret)
+@@ -145,7 +136,6 @@ static int rpi_poe_power_supply_get_prop
+ static enum power_supply_property rpi_poe_power_supply_properties[] = {
+ POWER_SUPPLY_PROP_HEALTH,
+ POWER_SUPPLY_PROP_ONLINE,
+- POWER_SUPPLY_PROP_CURRENT_AVG,
+ POWER_SUPPLY_PROP_CURRENT_NOW,
+ POWER_SUPPLY_PROP_CURRENT_MAX,
+ };