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>
diff --git a/src/mainboard/google/rex/mainboard.c b/src/mainboard/google/rex/mainboard.c
index c1c22db..a0dba44 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 @@
 	/* 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 b51517c..6bb52e2 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 @@
 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,