summaryrefslogtreecommitdiff
path: root/src/ec/google/chromeec
diff options
context:
space:
mode:
authorSumeet Pawnikar <sumeet.r.pawnikar@intel.com>2022-10-19 15:15:54 +0530
committerFelix Held <felix-coreboot@felixheld.de>2022-10-20 14:54:09 +0000
commit4dba71fd25c91a9e610287c61238a8fe24452e4e (patch)
tree9a61e75279e21d569fb3dd366f8c466396ed92a9 /src/ec/google/chromeec
parent58a38af1175ea176b6719f864f277c4757b18d53 (diff)
Revert "drivers/intel/dptf: Add multiple fan support under dptf"
This reverts commit 672bd9bee5c0045694ef20fe3e2f7a003bef0edd. Reason for revert: Gmeet resolution dropped. When system starts Gmeet video call, it uses the hardware accelerated encoder as per the expectation. But, as soon as another system connects to the call, the immediate fallback observed from hardware to software encoder. Due to this, Gmeet resolution dropped from 720p to 180p. Currently, this issue observed on AlderLake-N SoC based fanless platforms. This issue is not seen on fan based systems. BUG=b:246535768,b:235254828 BRANCH=None TEST=Built and tested on Alderlake-N systems. With this revert Gmeet resolution drop not observed. Change-Id: Idaeaeaed47be44166a7cba9a0a1fac50d2688e50 Signed-off-by: Sumeet Pawnikar <sumeet.r.pawnikar@intel.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/68568 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Baieswara Reddy Sagili <baieswara.reddy.sagili@intel.com> Reviewed-by: V Sowmya <v.sowmya@intel.com>
Diffstat (limited to 'src/ec/google/chromeec')
-rw-r--r--src/ec/google/chromeec/acpi/emem.asl1
-rw-r--r--src/ec/google/chromeec/chip.h1
-rw-r--r--src/ec/google/chromeec/ec_acpi.c2
-rw-r--r--src/ec/google/chromeec/ec_dptf_helpers.c35
4 files changed, 8 insertions, 31 deletions
diff --git a/src/ec/google/chromeec/acpi/emem.asl b/src/ec/google/chromeec/acpi/emem.asl
index 59395f3bc5..3f9a457e18 100644
--- a/src/ec/google/chromeec/acpi/emem.asl
+++ b/src/ec/google/chromeec/acpi/emem.asl
@@ -16,7 +16,6 @@ TIN8, 8, // Temperature 8
TIN9, 8, // Temperature 9
Offset (0x10),
FAN0, 16, // Fan Speed 0
-FAN1, 16, // Fan Speed 1
Offset (0x24),
BTVR, 8, // Battery structure version
Offset (0x30),
diff --git a/src/ec/google/chromeec/chip.h b/src/ec/google/chromeec/chip.h
index 77851d1d3d..bb03e5731d 100644
--- a/src/ec/google/chromeec/chip.h
+++ b/src/ec/google/chromeec/chip.h
@@ -12,7 +12,6 @@ struct ec_google_chromeec_config {
/* Pointer to PMC Mux connector for each Type-C port */
DEVTREE_CONST struct device *mux_conn[MAX_TYPEC_PORTS];
DEVTREE_CONST struct device *retimer_conn[MAX_TYPEC_PORTS];
- bool ec_multifan_support;
};
#endif /* EC_GOOGLE_CHROMEEC_CHIP_H */
diff --git a/src/ec/google/chromeec/ec_acpi.c b/src/ec/google/chromeec/ec_acpi.c
index 2f69d041bc..69b10784b3 100644
--- a/src/ec/google/chromeec/ec_acpi.c
+++ b/src/ec/google/chromeec/ec_acpi.c
@@ -276,7 +276,7 @@ void google_chromeec_fill_ssdt_generator(const struct device *dev)
ec->ops = &ec_ops;
if (CONFIG(DRIVERS_INTEL_DPTF))
- ec_fill_dptf_helpers(ec, dev);
+ ec_fill_dptf_helpers(ec);
fill_ssdt_typec_device(dev);
fill_ssdt_ps2_keyboard(dev);
diff --git a/src/ec/google/chromeec/ec_dptf_helpers.c b/src/ec/google/chromeec/ec_dptf_helpers.c
index c44138f587..1238bcfbec 100644
--- a/src/ec/google/chromeec/ec_dptf_helpers.c
+++ b/src/ec/google/chromeec/ec_dptf_helpers.c
@@ -3,9 +3,7 @@
#include <acpi/acpigen.h>
#include <acpi/acpigen_dptf.h>
#include <ec/google/common/dptf.h>
-#include <drivers/intel/dptf/chip.h>
-#include "chip.h"
/*
* The Chrome EC is typically in charge of many system functions, including battery charging and
* fan PWM control. This places it in the middle of a DPTF implementation and therefore, many of
@@ -24,19 +22,6 @@ enum {
EC_FAN_DUTY_AUTO = 0xFF,
};
-/* Return the fan number as a string for the FAN participant */
-static const char *fan_num_namestring_of(enum dptf_participant participant)
-{
- switch (participant) {
- case DPTF_FAN:
- return "FAN0";
- case DPTF_FAN_2:
- return "FAN1";
- default:
- return "";
- }
-}
-
static void write_charger_PPPC(const struct device *ec)
{
acpigen_write_method_serialized("PPPC", 0);
@@ -106,7 +91,7 @@ static void write_charger_SPPC(const struct device *ec)
acpigen_pop_len(); /* Method */
}
-static void write_fan_fst(const struct device *ec, int participant)
+static void write_fan_fst(const struct device *ec)
{
/* TFST is a package that is used to store data from FAND */
acpigen_write_name("TFST");
@@ -125,7 +110,7 @@ static void write_fan_fst(const struct device *ec, int participant)
acpigen_write_integer(1);
acpigen_emit_byte(ZERO_OP); /* 3rd arg to Index */
acpigen_write_store();
- acpigen_emit_namestring(acpi_device_path_join(ec, fan_num_namestring_of(participant)));
+ acpigen_emit_namestring(acpi_device_path_join(ec, "FAN0"));
acpigen_emit_byte(INDEX_OP);
acpigen_emit_namestring("TFST");
acpigen_write_integer(2);
@@ -315,11 +300,11 @@ static void write_charger_methods(const struct device *ec)
acpigen_pop_len(); /* Scope */
}
-static void write_fan_methods(const struct device *ec, int participant)
+static void write_fan_methods(const struct device *ec)
{
- dptf_write_scope(participant);
+ dptf_write_scope(DPTF_FAN);
write_fan_fsl(ec);
- write_fan_fst(ec, participant);
+ write_fan_fst(ec);
acpigen_pop_len(); /* Scope */
}
@@ -367,20 +352,14 @@ static void write_thermal_methods(const struct device *ec, enum dptf_participant
acpigen_pop_len(); /* Scope */
}
-void ec_fill_dptf_helpers(const struct device *ec, const struct device *fan_dev)
+void ec_fill_dptf_helpers(const struct device *ec)
{
enum dptf_participant p;
int i;
- struct ec_google_chromeec_config *config = fan_dev->chip_info;
write_dppm_methods(ec);
write_charger_methods(ec);
-
- if (config->ec_multifan_support) {
- for (p = DPTF_FAN; p <= DPTF_FAN_2; ++p)
- write_fan_methods(ec, p);
- } else
- write_fan_methods(ec, DPTF_FAN);
+ write_fan_methods(ec);
for (p = DPTF_TEMP_SENSOR_0, i = 0; p <= DPTF_TEMP_SENSOR_4; ++p, ++i)
write_thermal_methods(ec, p, i);