summaryrefslogtreecommitdiff
path: root/src/mainboard/google/rex
diff options
context:
space:
mode:
authorAnil Kumar <anil.kumar.k@intel.corp-partner.google.com>2023-05-09 15:14:29 -0700
committerLean Sheng Tan <sheng.tan@9elements.com>2023-05-14 12:54:43 +0000
commit0e1f08d1fbb09eb0a14b23f231f1a62697af9ccd (patch)
tree6b236d6dea008066ffef29a98e99a298a8b902f1 /src/mainboard/google/rex
parent6f6353d570e5a47071e2c93ac884d3f437ce2b64 (diff)
mb/google/rex: Add variant specific SOC chip config update function
This patch adds support for variant specific chip config update similar to commit 061a93f93d2 ("mb/google/brya: Add variant specific soc chip config update"). Signed-off-by: Anil Kumar <anil.kumar.k@intel.com> Change-Id: I60a4042cba608fd527527af9340ec0215f3086ca Reviewed-on: https://review.coreboot.org/c/coreboot/+/75046 Reviewed-by: Subrata Banik <subratabanik@google.com> Reviewed-by: Jamie Ryu <jamie.m.ryu@intel.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Eric Lai <eric_lai@quanta.corp-partner.google.com>
Diffstat (limited to 'src/mainboard/google/rex')
-rw-r--r--src/mainboard/google/rex/mainboard.c11
-rw-r--r--src/mainboard/google/rex/variants/baseboard/include/baseboard/variants.h2
2 files changed, 13 insertions, 0 deletions
diff --git a/src/mainboard/google/rex/mainboard.c b/src/mainboard/google/rex/mainboard.c
index c1c22dba50..a0dba44e4c 100644
--- a/src/mainboard/google/rex/mainboard.c
+++ b/src/mainboard/google/rex/mainboard.c
@@ -8,6 +8,7 @@
#include <drivers/wwan/fm/chip.h>
#include <ec/ec.h>
#include <fw_config.h>
+#include <soc/ramstage.h>
#include <stdlib.h>
#include <vendorcode/google/chromeos/chromeos.h>
@@ -18,6 +19,16 @@ void __weak fw_config_gpio_padbased_override(struct pad_config *padbased_table)
/* default implementation does nothing */
}
+void mainboard_update_soc_chip_config(struct soc_intel_meteorlake_config *config)
+{
+ variant_update_soc_chip_config(config);
+}
+
+__weak void variant_update_soc_chip_config(struct soc_intel_meteorlake_config *config)
+{
+ /* default implementation does nothing */
+}
+
static void mainboard_init(void *chip_info)
{
struct pad_config *padbased_table;
diff --git a/src/mainboard/google/rex/variants/baseboard/include/baseboard/variants.h b/src/mainboard/google/rex/variants/baseboard/include/baseboard/variants.h
index b51517c403..6bb52e28a9 100644
--- a/src/mainboard/google/rex/variants/baseboard/include/baseboard/variants.h
+++ b/src/mainboard/google/rex/variants/baseboard/include/baseboard/variants.h
@@ -3,6 +3,7 @@
#ifndef __BASEBOARD_VARIANTS_H__
#define __BASEBOARD_VARIANTS_H__
+#include <chip.h>
#include <soc/gpio.h>
#include <soc/meminit.h>
#include <stdint.h>
@@ -21,6 +22,7 @@ const struct mb_cfg *variant_memory_params(void);
void variant_get_spd_info(struct mem_spd *spd_info);
int variant_memory_sku(void);
bool variant_is_half_populated(void);
+void variant_update_soc_chip_config(struct soc_intel_meteorlake_config *config);
enum s0ix_entry {
S0IX_EXIT,