mb/google/kukui: send SKU ID to EC for device-specific configuration

For devices sharing same firmware, there may be few customization based
on SKU ID - for example being clamshell or form factor. On Kukui and
Jacuzzi platforms the SKU ID is defined on AP SOC, so we have to send
the information to EC.

BUG=b:161767717
TEST=make -j # builds and boots on Juniper
BRANCH=kukui

Change-Id: I8ffdd9fd1e609c1dd4b0e22dc7aab560ccdc842e
Signed-off-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/43788
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
diff --git a/src/mainboard/google/kukui/mainboard.c b/src/mainboard/google/kukui/mainboard.c
index 6622286..268b7ca 100644
--- a/src/mainboard/google/kukui/mainboard.c
+++ b/src/mainboard/google/kukui/mainboard.c
@@ -8,6 +8,7 @@
 #include <console/console.h>
 #include <delay.h>
 #include <device/device.h>
+#include <ec/google/chromeec/ec.h>
 #include <edid.h>
 #include <gpio.h>
 #include <soc/ddp.h>
@@ -55,6 +56,13 @@
 	gpio_set_mode(GPIO(EINT3), PAD_EINT3_FUNC_I2S3_DO);
 }
 
+static void configure_ec(void)
+{
+	/* EC may need SKU ID to identify if it is clamshell or convertible. */
+	if (CONFIG(BOARD_GOOGLE_JACUZZI_COMMON))
+		google_chromeec_set_sku_id(sku_id());
+}
+
 /* Default implementation for boards without panels defined yet. */
 struct panel_description __weak *get_panel_description(int panel_id)
 {
@@ -191,6 +199,7 @@
 	configure_emmc();
 	configure_usb();
 	configure_audio();
+	configure_ec();
 	if (spm_init())
 		printk(BIOS_ERR,
 		       "SPM initialization failed, suspend/resume may fail.\n");