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>
This commit is contained in:
Hung-Te Lin 2020-07-24 08:49:41 +08:00 committed by Patrick Georgi
parent ea63f80e10
commit 7fc2281715
1 changed files with 9 additions and 0 deletions

View File

@ -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 @@ static void configure_audio(void)
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 @@ static void mainboard_init(struct device *dev)
configure_emmc();
configure_usb();
configure_audio();
configure_ec();
if (spm_init())
printk(BIOS_ERR,
"SPM initialization failed, suspend/resume may fail.\n");