mb/google/nissa: Remove runtime descriptor updates and VBT selection
The infrastructure for selecting an appropriate firmware image to use the right descriptor is now ready so runtime descriptor updates are no longer necessary. Since the different descriptor builds split along HDMI/USB-C lines for nereid, a single VBT file can be used for each, removing the need for runtime VBT selection as well. BUG=b:229022567 TEST=Nereid type-C and HDMI outputs work as expected Signed-off-by: Sam McNally <sammc@chromium.org> Change-Id: Idf1fbd6c26203adbda002dec3f11e54a7b9f9b82 Reviewed-on: https://review.coreboot.org/c/coreboot/+/66826 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Reka Norman <rekanorman@chromium.org>
This commit is contained in:
parent
11f6177ebb
commit
8b8e9bc84d
|
@ -107,7 +107,6 @@ config BOARD_GOOGLE_NIVVIKS
|
||||||
|
|
||||||
config BOARD_GOOGLE_NEREID
|
config BOARD_GOOGLE_NEREID
|
||||||
bool "-> Nereid"
|
bool "-> Nereid"
|
||||||
select ALDERLAKE_CONFIGURE_DESCRIPTOR
|
|
||||||
select BOARD_GOOGLE_BASEBOARD_NISSA
|
select BOARD_GOOGLE_BASEBOARD_NISSA
|
||||||
select BOARD_ROMSIZE_KB_32768
|
select BOARD_ROMSIZE_KB_32768
|
||||||
select DRIVERS_GENERIC_BAYHUB_LV2
|
select DRIVERS_GENERIC_BAYHUB_LV2
|
||||||
|
@ -254,7 +253,6 @@ config BOARD_GOOGLE_KULDAX
|
||||||
|
|
||||||
config BOARD_GOOGLE_JOXER
|
config BOARD_GOOGLE_JOXER
|
||||||
bool "-> Joxer"
|
bool "-> Joxer"
|
||||||
select ALDERLAKE_CONFIGURE_DESCRIPTOR
|
|
||||||
select BOARD_GOOGLE_BASEBOARD_NISSA
|
select BOARD_GOOGLE_BASEBOARD_NISSA
|
||||||
select CHROMEOS_WIFI_SAR if CHROMEOS
|
select CHROMEOS_WIFI_SAR if CHROMEOS
|
||||||
select DRIVERS_GENESYSLOGIC_GL9750
|
select DRIVERS_GENESYSLOGIC_GL9750
|
||||||
|
|
|
@ -10,41 +10,3 @@ const char *get_wifi_sar_cbfs_filename(void)
|
||||||
{
|
{
|
||||||
return "wifi_sar_0.hex";
|
return "wifi_sar_0.hex";
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* TODO(b/229022567): This is a workaround which will be removed once we
|
|
||||||
* implement a proper solution for configuring the descriptor differently for
|
|
||||||
* different SKUs.
|
|
||||||
*/
|
|
||||||
void variant_update_descriptor(void)
|
|
||||||
{
|
|
||||||
/*
|
|
||||||
* UfsCont1Config = "Disabled"
|
|
||||||
* IshSupported = "No"
|
|
||||||
*/
|
|
||||||
struct descriptor_byte emmc_bytes[] = {
|
|
||||||
{ 0x1f8, 0x55 },
|
|
||||||
{ 0x1f9, 0x55 },
|
|
||||||
{ 0xc18, 0x89 },
|
|
||||||
{ 0xc1d, 0xb8 },
|
|
||||||
};
|
|
||||||
|
|
||||||
/*
|
|
||||||
* UfsCont1Config = "X2"
|
|
||||||
* IshSupported = "Yes"
|
|
||||||
*/
|
|
||||||
struct descriptor_byte ufs_bytes[] = {
|
|
||||||
{ 0x1f8, 0x95 },
|
|
||||||
{ 0x1f9, 0x59 },
|
|
||||||
{ 0xc18, 0x09 },
|
|
||||||
{ 0xc1d, 0x28 },
|
|
||||||
};
|
|
||||||
|
|
||||||
if (fw_config_probe(FW_CONFIG(STORAGE, STORAGE_UFS))) {
|
|
||||||
printk(BIOS_INFO, "Configuring descriptor for UFS\n");
|
|
||||||
configure_descriptor(ufs_bytes, ARRAY_SIZE(ufs_bytes));
|
|
||||||
} else {
|
|
||||||
printk(BIOS_INFO, "Configuring descriptor for eMMC\n");
|
|
||||||
configure_descriptor(emmc_bytes, ARRAY_SIZE(emmc_bytes));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
|
@ -1,9 +1,7 @@
|
||||||
# SPDX-License-Identifier: GPL-2.0-only
|
# SPDX-License-Identifier: GPL-2.0-only
|
||||||
bootblock-y += gpio.c
|
bootblock-y += gpio.c
|
||||||
bootblock-y += variant.c
|
|
||||||
|
|
||||||
romstage-y += gpio.c
|
romstage-y += gpio.c
|
||||||
romstage-y += memory.c
|
romstage-y += memory.c
|
||||||
|
|
||||||
ramstage-y += gpio.c
|
ramstage-y += gpio.c
|
||||||
ramstage-y += variant.c
|
|
||||||
|
|
|
@ -1,42 +0,0 @@
|
||||||
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
|
||||||
|
|
||||||
#include <baseboard/variants.h>
|
|
||||||
#include <console/console.h>
|
|
||||||
#include <drivers/intel/gma/opregion.h>
|
|
||||||
#include <fw_config.h>
|
|
||||||
#include <soc/bootblock.h>
|
|
||||||
|
|
||||||
const char *mainboard_vbt_filename(void)
|
|
||||||
{
|
|
||||||
if (fw_config_probe(FW_CONFIG(DB_USB, DB_1A_HDMI)))
|
|
||||||
return "vbt-nereid_hdmi.bin";
|
|
||||||
|
|
||||||
return "vbt.bin";
|
|
||||||
}
|
|
||||||
|
|
||||||
void variant_update_descriptor(void)
|
|
||||||
{
|
|
||||||
/* TypeCPort2Config = "No Thunderbolt" */
|
|
||||||
struct descriptor_byte typec_bytes[] = {
|
|
||||||
{ 0xc76, 0xb7 },
|
|
||||||
{ 0xc77, 0xb6 },
|
|
||||||
{ 0xc7c, 0xee },
|
|
||||||
{ 0xca0, 0x0c },
|
|
||||||
};
|
|
||||||
|
|
||||||
/* TypeCPort2Config = "DP Fixed Connection" */
|
|
||||||
struct descriptor_byte hdmi_bytes[] = {
|
|
||||||
{ 0xc76, 0x75 },
|
|
||||||
{ 0xc77, 0xc4 },
|
|
||||||
{ 0xc7c, 0x1e },
|
|
||||||
{ 0xca0, 0x0e },
|
|
||||||
};
|
|
||||||
|
|
||||||
if (fw_config_probe(FW_CONFIG(DB_USB, DB_1A_HDMI))) {
|
|
||||||
printk(BIOS_INFO, "Configuring descriptor for HDMI\n");
|
|
||||||
configure_descriptor(hdmi_bytes, ARRAY_SIZE(hdmi_bytes));
|
|
||||||
} else {
|
|
||||||
printk(BIOS_INFO, "Configuring descriptor for Type-C\n");
|
|
||||||
configure_descriptor(typec_bytes, ARRAY_SIZE(typec_bytes));
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Reference in New Issue