power: supply: axp288_fuel_gauge: Add the ECS EF20EA to the blacklist
PATCH 1/1 power: supply: axp288_fuel_gauge: Add the ECS EF20EA to the blacklist
The ECS EF20EA laptop ships an AXP288 but it is actually using a different, separate FG chip for AC and battery monitoring. On this laptop we need to keep using the regular ACPI driver and disable the AXP288 FG to avoid reporting two batteries to userspace.
--- drivers/power/supply/axp288_fuel_gauge.c | 6 ++++++ 1 file changed, 6 insertions(+)
drivers/power/supply/axp288_fuel_gauge.c +6 -0
@@ -739,6 +739,12 @@ static const struct dmi_system_id axp288_fuel_gauge_blacklist[] = { DMI_MATCH(DMI_PRODUCT_NAME, "Z83-4"), } }, + { +/* ECS EF20 */ + .matches = { + DMI_MATCH(DMI_PRODUCT_NAME, "EF20"), + }, + }, {} };
Signature · 1 line
2.20.1
Hi,
Quoted 16 lines · Chris Chiu
The ECS EF20EA laptop ships an AXP288 but it is actually using a different, separate FG chip for AC and battery monitoring. On this laptop we need to keep using the regular ACPI driver and disable the AXP288 FG to avoid reporting two batteries to userspace.
Signed-off-by Chris Chiu <[email protected]>--- drivers/power/supply/axp288_fuel_gauge.c | 6 ++++++ 1 file changed, 6 insertions(+)drivers/power/supply/axp288_fuel_gauge.c +0
-0@@ -739,6 +739,12 @@ static const struct dmi_system_id axp288_fuel_gauge_blacklist[] = { DMI_MATCH(DMI_PRODUCT_NAME, "Z83-4"),
drivers/power/supply/axp288_fuel_gauge.c static const struct dmi_system_id axp288_fuel_gauge_blacklist[] = { · line 749
Quoted 10 lines
drivers/power/supply/axp288_fuel_gauge.c +6
-0} }, + { +/* ECS EF20 */ + .matches = { + DMI_MATCH(DMI_PRODUCT_NAME, "EF20"), + }, + }, {} };
The axp288_fuel_gauge_blacklist already has the following entry:
{
/* ECS EF20EA */
.matches = {
DMI_MATCH(DMI_PRODUCT_NAME, "EF20EA"),
},
},So is this real entry really necessary? The existing entry matches the quirk for this in drivers/acpi/battery.c:
{
/* ECS EF20EA, AXP288 PMIC but uses separate fuel-gauge */
.callback = battery_do_not_check_pmic_quirk,
.matches = {
DMI_MATCH(DMI_PRODUCT_NAME, "EF20EA"),
},
},And the one in drivers/acpi/ac.c:
{
/* ECS EF20EA, AXP288 PMIC but uses separate fuel-gauge */
.callback = ac_do_not_check_pmic_quirk,
.matches = {
DMI_MATCH(DMI_PRODUCT_NAME, "EF20EA"),
},
},So I don't think that this patch is necessary...
Regards,
Hans
Quoted 61 lines · Hans de Goede
Hi,
Quoted 16 lines · Chris Chiu
The ECS EF20EA laptop ships an AXP288 but it is actually using a different, separate FG chip for AC and battery monitoring. On this laptop we need to keep using the regular ACPI driver and disable the AXP288 FG to avoid reporting two batteries to userspace.
Signed-off-by Chris Chiu <[email protected]>--- drivers/power/supply/axp288_fuel_gauge.c | 6 ++++++ 1 file changed, 6 insertions(+)drivers/power/supply/axp288_fuel_gauge.c +0
-0@@ -739,6 +739,12 @@ static const struct dmi_system_id axp288_fuel_gauge_blacklist[] = { DMI_MATCH(DMI_PRODUCT_NAME, "Z83-4"),drivers/power/supply/axp288_fuel_gauge.c static const struct dmi_system_id axp288_fuel_gauge_blacklist[] = { · line 749
Quoted 10 lines
drivers/power/supply/axp288_fuel_gauge.c +6
-0} }, + { +/* ECS EF20 */ + .matches = { + DMI_MATCH(DMI_PRODUCT_NAME, "EF20"), + }, + }, {} };The
axp288_fuel_gauge_blacklistalready has the following entry:{ /* ECS EF20EA */ .matches = { DMI_MATCH(DMI_PRODUCT_NAME, "EF20EA"), }, },So is this real entry really necessary? The existing entry matches the quirk for this in
drivers/acpi/battery.c:{ /* ECS EF20EA, AXP288 PMIC but uses separate fuel-gauge */ .callback = battery_do_not_check_pmic_quirk, .matches = { DMI_MATCH(DMI_PRODUCT_NAME, "EF20EA"), }, },And the one in
drivers/acpi/ac.c:{ /* ECS EF20EA, AXP288 PMIC but uses separate fuel-gauge */ .callback = ac_do_not_check_pmic_quirk, .matches = { DMI_MATCH(DMI_PRODUCT_NAME, "EF20EA"), }, },
Quoted 7 lines
So I don't think that this patch is necessary...
Regards,
Hans
Thanks for pointing that out. We kept this downstreamly for a long time and didn't notice it's already there.