drivers/net/r8168.c: Guard against generating power resource

Not all platforms need to generate power resources, but the code does
not get optimized out at build time because the devicetree gets
compiled into a linked list. As this code pulls in some heavy ACPI
dependencies that is even implemented with weak empty function it
makes sense to optimize out this code using a Kconfig constant.

This saves 1.5K in ramstage size on gigabyte/ga-945gcm-s2l.

Change-Id: I82289aa7e6e82318417f3b827b86182891dfc2a6
Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/58657
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
Arthur Heymans
2021-10-27 18:27:58 +02:00
committed by Felix Held
parent ea9425504f
commit 59a348b75a
3 changed files with 9 additions and 1 deletions

View File

@@ -38,6 +38,13 @@ config RT8168_SET_LED_MODE
Configuration for details. With this flag enabled, the
customized_leds variable will be read from devicetree setting.
config RT8168_GEN_ACPI_POWER_RESOURCE
bool
default n
depends on REALTEK_8168_RESET
help
Select this if an ACPI power resource needs to be generated.
config ATHEROS_ATL1E_SETMAC
bool
help

View File

@@ -317,7 +317,7 @@ static void r8168_net_fill_ssdt(const struct device *dev)
acpigen_write_name_string("_DDN", dev->chip_ops->name);
/* Power Resource */
if (config->has_power_resource) {
if (CONFIG(RT8168_GEN_ACPI_POWER_RESOURCE) && config->has_power_resource) {
const struct acpi_power_res_params power_res_params = {
.stop_gpio = &config->stop_gpio,
.stop_delay_ms = config->stop_delay_ms,

View File

@@ -9,6 +9,7 @@ config BOARD_GOOGLE_BASEBOARD_PUFF
select BOARD_GOOGLE_HATCH_COMMON
select RT8168_GET_MAC_FROM_VPD
select RT8168_SET_LED_MODE
select RT8168_GEN_ACPI_POWER_RESOURCE
select ROMSTAGE_SPD_SMBUS
select SPD_READ_BY_WORD
select SOC_INTEL_CSE_LITE_SKU