mb/google/zork: Use FW_CONFIG to enable/disable eMMC on Ezkinil
Currently SKU_ID is used to enable/disable eMMC as boot media on Ezkinil. This patch will check eMMC bit in firmware configuration table to enable/disable eMMC. BRANCH=none BUG=b:162344105 TEST=Check eMMC is enabled or disabled based on the eMMC bit in FW_CONFIG. Signed-off-by: Bhanu Prakash Maiya <bhanumaiya@google.com> Change-Id: I62318cf71ec70790f2d9e787febd1e0b787741fb Reviewed-on: https://review.coreboot.org/c/coreboot/+/44423 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Aaron Durbin <adurbin@chromium.org> Reviewed-by: Furquan Shaikh <furquan@google.com>
This commit is contained in:
parent
a8e24f648f
commit
e07229dea9
|
@ -5,31 +5,15 @@
|
||||||
#include <soc/pci_devs.h>
|
#include <soc/pci_devs.h>
|
||||||
#include <ec/google/chromeec/ec.h>
|
#include <ec/google/chromeec/ec.h>
|
||||||
|
|
||||||
static int sku_has_emmc(void)
|
|
||||||
{
|
|
||||||
uint32_t board_sku = sku_id();
|
|
||||||
|
|
||||||
/* Factory flow requires all OS boot media to be enabled. */
|
|
||||||
if (boot_is_factory_unprovisioned())
|
|
||||||
return 1;
|
|
||||||
|
|
||||||
if ((board_sku == 0x5A020000) ||
|
|
||||||
(board_sku == 0x5A020001) || (board_sku == 0x5A020002) ||
|
|
||||||
(board_sku == 0x5A020005) || (board_sku == 0x5A020006) ||
|
|
||||||
(board_sku == 0x5A020009) || (board_sku == 0x5A02000A) ||
|
|
||||||
(board_sku == 0x5A02000D) || (board_sku == 0x5A02000E) ||
|
|
||||||
(board_sku == 0x5A020016) || (board_sku == 0x5A020017))
|
|
||||||
return 1;
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
void variant_devtree_update(void)
|
void variant_devtree_update(void)
|
||||||
{
|
{
|
||||||
struct soc_amd_picasso_config *cfg;
|
struct soc_amd_picasso_config *cfg;
|
||||||
|
|
||||||
cfg = config_of_soc();
|
cfg = config_of_soc();
|
||||||
|
|
||||||
if (!sku_has_emmc())
|
/*
|
||||||
|
* Enable eMMC if eMMC bit is set in FW_CONFIG or device is unprovisioned.
|
||||||
|
*/
|
||||||
|
if (!(variant_has_emmc() || boot_is_factory_unprovisioned()))
|
||||||
cfg->sd_emmc_config = SD_EMMC_DISABLE;
|
cfg->sd_emmc_config = SD_EMMC_DISABLE;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue