From f4ac5ea179af244fcb839ce20d528153f0267917 Mon Sep 17 00:00:00 2001 From: Frank Chu Date: Thu, 19 Jan 2023 16:15:13 +0800 Subject: mb/google/brya/var/marasov: Turn off camera power during S0ix Turn off camera power during S0ix to improve power consumption. BUG=b:265754302 BRANCH=firmware-brya-14505.B TEST=emerge-brya coreboot chromeos-bootimage Signed-off-by: Frank Chu Change-Id: Ie2b300783adfc1cab30bc897d086a3674436724a Reviewed-on: https://review.coreboot.org/c/coreboot/+/72089 Tested-by: build bot (Jenkins) Reviewed-by: Frank Chu Reviewed-by: Subrata Banik Reviewed-by: Eric Lai --- src/mainboard/google/brya/variants/marasov/Makefile.inc | 2 ++ .../google/brya/variants/marasov/include/variant/gpio.h | 2 ++ src/mainboard/google/brya/variants/marasov/variant.c | 14 ++++++++++++++ 3 files changed, 18 insertions(+) create mode 100644 src/mainboard/google/brya/variants/marasov/variant.c (limited to 'src/mainboard/google/brya/variants') diff --git a/src/mainboard/google/brya/variants/marasov/Makefile.inc b/src/mainboard/google/brya/variants/marasov/Makefile.inc index 4d25f34ea1..70f64013b4 100644 --- a/src/mainboard/google/brya/variants/marasov/Makefile.inc +++ b/src/mainboard/google/brya/variants/marasov/Makefile.inc @@ -7,3 +7,5 @@ ramstage-$(CONFIG_FW_CONFIG) += fw_config.c romstage-y += memory.c ramstage-y += gpio.c + +ramstage-y += variant.c diff --git a/src/mainboard/google/brya/variants/marasov/include/variant/gpio.h b/src/mainboard/google/brya/variants/marasov/include/variant/gpio.h index c4fe342621..f62197dfe6 100644 --- a/src/mainboard/google/brya/variants/marasov/include/variant/gpio.h +++ b/src/mainboard/google/brya/variants/marasov/include/variant/gpio.h @@ -5,4 +5,6 @@ #include +#define CAM_PWR GPP_A17 + #endif diff --git a/src/mainboard/google/brya/variants/marasov/variant.c b/src/mainboard/google/brya/variants/marasov/variant.c new file mode 100644 index 0000000000..dad8a3c03b --- /dev/null +++ b/src/mainboard/google/brya/variants/marasov/variant.c @@ -0,0 +1,14 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#include +#include +#include + +void variant_generate_s0ix_hook(enum s0ix_entry entry) +{ + /* Add board-specific MS0X entries */ + if (entry == S0IX_ENTRY) + acpigen_soc_clear_tx_gpio(CAM_PWR); + if (entry == S0IX_EXIT) + acpigen_soc_set_tx_gpio(CAM_PWR); +} -- cgit v1.2.3