coreboot/src
Peter Marheine b97ec4f016 chromeec: support reading long battery strings
The Chrome EC currently supports two ways to read battery strings on
ACPI platforms:

 * Read up to 8 bytes from EC shared memory BMFG, BMOD, ...
 * Send a EC_CMD_BATTERY_GET_STATIC host command and read strings from
   the response. This is assumed to be exclusively controlled by the OS,
   because host commands' use of buffers is prone to race conditions.

To support readout of longer strings via ACPI mechanisms, this change
adds support for EC_ACPI_MEM_STRINGS_FIFO (https://crrev.com/c/5581473)
and allows ACPI firmware to read strings of arbitrary length (currently
limited to 64 characters in the implementation) from the EC and to
determine whether this function is supported by the EC (falling back to
shared memory if not).

BUG=b:339171261
TEST=on yaviks, the EC console logs FIFO readout messages when used in
     ACPI and correct strings are shown in the OS. If EC support is
     removed, correct strings are still shown in the OS.
BRANCH=nissa

Change-Id: Ia29cacb7d86402490f9ac458f0be50e3f2192b04
Signed-off-by: Peter Marheine <pmarheine@chromium.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/82775
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2024-07-08 13:01:39 +00:00
..
acpi acpi: Add support for DRHD size reporting 2024-06-28 11:27:27 +00:00
arch tree: Use <console/console.h> only when used 2024-07-03 04:39:42 +00:00
commonlib commonlib/bsd/lz4_wrapper.c: Fix misaligned access 2024-07-01 13:44:19 +00:00
console console: Only add non-stub code to romstage if SEPARATE_ROMSTAGE=y 2024-06-16 13:47:11 +00:00
cpu cpu/intel/model_206ax: Allow PL1/PL2 configuration 2024-07-08 12:54:25 +00:00
device device/azalia_device.c: Always read-write GCAP 2024-06-28 12:26:07 +00:00
drivers drivers/spi/acpi: Update generic property list 2024-07-04 14:04:05 +00:00
ec chromeec: support reading long battery strings 2024-07-08 13:01:39 +00:00
include drivers/wifi: Support 320Mhz Bandwidth Enablement per MCC 2024-07-03 17:01:25 +00:00
lib security/vboot: Set VBOOT_ALWAYS_ENABLE_DISPLAY if BMP_LOGO 2024-07-03 08:43:01 +00:00
mainboard mb/google/brox/var/lotso: Update DTT settings for thermal control 2024-07-08 06:11:26 +00:00
northbridge nb/intel/sandybridge/chipset.cb: Add alias for cpu_cluster 2024-07-01 15:30:40 +00:00
sbom src, util: Clean up makefile.inc in text, help & comments 2024-01-26 20:15:18 +00:00
security security/vboot: Set VBOOT_ALWAYS_ENABLE_DISPLAY if BMP_LOGO 2024-07-03 08:43:01 +00:00
soc soc/amd/common/acpi/ivrs: use PCI_DEVFN macro 2024-07-04 19:47:29 +00:00
southbridge sb/intel/lynxpoint/fadt: Fill extended FADT after populating lengths 2024-06-11 18:59:24 +00:00
superio tree: Use <console/console.h> only when used 2024-07-03 04:39:42 +00:00
vendorcode drivers/wifi: Support 320Mhz Bandwidth Enablement per MCC 2024-07-03 17:01:25 +00:00
Kconfig Kconfig: Update FW_CONFIG Kconfig options 2024-06-25 08:12:58 +00:00