ec/google/chromeec: Enable ACPI memory mapping for Microchip EC

This commit introduces an automatic linkage between the Microchip
EC (EC_GOOGLE_CHROMEEC_MEC) and ACPI memory
mapping (EC_GOOGLE_CHROMEEC_ACPI_MEMMAP) options. This linkage is
enabled when the Microchip EC is selected.

Certain data registers in Microchip ECs cannot be accessed via I/O
space. Instead, an indirection mechanism is required for register
access. When using such an EC, coreboot must publish ACPI information
to access these data registers through ACPI data ports 66h/62h.

Analysis of the coreboot codebase has revealed that the
EC_GOOGLE_CHROMEEC_MEC and EC_GOOGLE_CHROMEEC_ACPI_MEMMAP options are
consistently used together. This commit streamlines this dependency by
linking the two options.

TEST=/sys/class/power_supply/BAT0/* reports consistent values on
     fatcat board.

Change-Id: Ib4120a6d0ba2f4785e8b07b33943010e58bcbdd3
Signed-off-by: Jeremy Compostella <jeremy.compostella@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/85886
Reviewed-by: Subrata Banik <subratabanik@google.com>
Reviewed-by: Caveh Jalali <caveh@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
Jeremy Compostella 2025-01-07 13:25:24 -08:00 committed by Jérémy Compostella
commit 5df91230e7
7 changed files with 1 additions and 7 deletions

View file

@ -93,6 +93,7 @@ config EC_GOOGLE_CHROMEEC_LPC
config EC_GOOGLE_CHROMEEC_MEC
depends on EC_GOOGLE_CHROMEEC_LPC
def_bool n
select EC_GOOGLE_CHROMEEC_ACPI_MEMMAP
select EC_GOOGLE_COMMON_MEC
help
Microchip EC variant for LPC register access.

View file

@ -5,7 +5,6 @@ config BOARD_GOOGLE_BASEBOARD_CYAN
select ACPI_GNVS_USB_CHARGECTL
select BOARD_ROMSIZE_KB_8192
select EC_GOOGLE_CHROMEEC
select EC_GOOGLE_CHROMEEC_ACPI_MEMMAP
select EC_GOOGLE_CHROMEEC_BOARDID
select EC_GOOGLE_CHROMEEC_LPC
select EC_GOOGLE_CHROMEEC_MEC

View file

@ -61,13 +61,11 @@ config BOARD_GOOGLE_MODEL_FATCAT
config BOARD_GOOGLE_FATCAT
select BOARD_GOOGLE_MODEL_FATCAT
select EC_GOOGLE_CHROMEEC_ACPI_MEMMAP
select EC_GOOGLE_CHROMEEC_MEC
select MAINBOARD_USES_IFD_EC_REGION
config BOARD_GOOGLE_FATCATISH
select BOARD_GOOGLE_MODEL_FATCAT
select EC_GOOGLE_CHROMEEC_ACPI_MEMMAP
select EC_GOOGLE_CHROMEEC_MEC
select MAINBOARD_USES_IFD_EC_REGION

View file

@ -6,7 +6,6 @@ config BOARD_GOOGLE_BASEBOARD_GLADOS
select DRIVERS_I2C_GENERIC
select DRIVERS_I2C_NAU8825
select EC_GOOGLE_CHROMEEC
select EC_GOOGLE_CHROMEEC_ACPI_MEMMAP
select EC_GOOGLE_CHROMEEC_BOARDID
select EC_GOOGLE_CHROMEEC_LPC
select EC_GOOGLE_CHROMEEC_MEC

View file

@ -60,7 +60,6 @@ config BOARD_INTEL_ADLRVP_P_MCHP
select BOARD_INTEL_ADLRVP_COMMON
select DRIVERS_INTEL_MIPI_CAMERA
select DRIVERS_INTEL_PMC
select EC_GOOGLE_CHROMEEC_ACPI_MEMMAP
select EC_GOOGLE_CHROMEEC_MEC
select INTEL_LPSS_UART_FOR_CONSOLE
select SOC_INTEL_ALDERLAKE_PCH_P

View file

@ -9,7 +9,6 @@ config BOARD_SPECIFIC_OPTIONS
select DRIVERS_I2C_GENERIC
select DRIVERS_I2C_NAU8825
select EC_GOOGLE_CHROMEEC
select EC_GOOGLE_CHROMEEC_ACPI_MEMMAP
select EC_GOOGLE_CHROMEEC_BOARDID
select EC_GOOGLE_CHROMEEC_LPC
select EC_GOOGLE_CHROMEEC_MEC

View file

@ -10,7 +10,6 @@ config BOARD_SPECIFIC_OPTIONS
select EC_GOOGLE_CHROMEEC_BOARDID
select EC_GOOGLE_CHROMEEC_LPC
select EC_GOOGLE_CHROMEEC_MEC
select EC_GOOGLE_CHROMEEC_ACPI_MEMMAP
select ENABLE_BUILTIN_COM1
select HAVE_ACPI_RESUME
select HAVE_ACPI_TABLES