aboutsummaryrefslogtreecommitdiff
path: root/src/mainboard/google/urara/mainboard.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mainboard/google/urara/mainboard.c')
-rw-r--r--src/mainboard/google/urara/mainboard.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/mainboard/google/urara/mainboard.c b/src/mainboard/google/urara/mainboard.c
index 0a0cb020cc..0409dab946 100644
--- a/src/mainboard/google/urara/mainboard.c
+++ b/src/mainboard/google/urara/mainboard.c
@@ -24,9 +24,20 @@
#include <device/device.h>
#include <boot/coreboot_tables.h>
+#include <vendorcode/google/chromeos/chromeos.h>
+
+static void mainboard_init(device_t dev)
+{
+#if IS_ENABLED(CONFIG_CHROMEOS)
+ /* Copy WIFI calibration data into CBMEM. */
+ cbmem_add_vpd_calibration_data();
+#endif
+}
+
static void mainboard_enable(device_t dev)
{
printk(BIOS_INFO, "Enable Pistachio device...\n");
+ dev->ops->init = &mainboard_init;
}
struct chip_operations mainboard_ops = {
@@ -42,4 +53,9 @@ void lb_board(struct lb_header *header)
dma->size = sizeof(*dma);
dma->range_start = (uintptr_t)_dma_coherent;
dma->range_size = _dma_coherent_size;
+
+#if IS_ENABLED(CONFIG_CHROMEOS)
+ /* Retrieve the switch interface MAC addressses. */
+ lb_table_add_macs_from_vpd(header);
+#endif
}