Stefan Reinauer has uploaded this change for review. ( https://review.coreboot.org/c/em100/+/47898 )
Change subject: Update xz to upstream revision 090e6a0
......................................................................
Update xz to upstream revision 090e6a0
Signed-off-by: Stefan Reinauer <stefan.reinauer(a)coreboot.org>
Change-Id: I700e7f93d713d3c181125dd751ff84d74fd2efe2
---
M xz/README
M xz/xz.h
M xz/xz_crc32.c
M xz/xz_crc64.c
M xz/xz_dec_bcj.c
M xz/xz_dec_lzma2.c
M xz/xz_lzma2.h
M xz/xz_stream.h
8 files changed, 28 insertions(+), 11 deletions(-)
git pull ssh://review.coreboot.org:29418/em100 refs/changes/98/47898/1
diff --git a/xz/README b/xz/README
index 6cbf1f0..172e771 100644
--- a/xz/README
+++ b/xz/README
@@ -1 +1 @@
-These files are unmodified versions of xz-embedded 40d291b.
+These files are unmodified versions of xz-embedded 090e6a0.
diff --git a/xz/xz.h b/xz/xz.h
index 0a4b38d..d24b94a 100644
--- a/xz/xz.h
+++ b/xz/xz.h
@@ -2,7 +2,7 @@
* XZ decompressor
*
* Authors: Lasse Collin <lasse.collin(a)tukaani.org>
- * Igor Pavlov <http://7-zip.org/>
+ * Igor Pavlov <https://7-zip.org/>
*
* This file has been put into the public domain.
* You can do whatever you want with this file.
@@ -32,7 +32,7 @@
* enum xz_mode - Operation mode
*
* @XZ_SINGLE: Single-call mode. This uses less RAM than
- * than multi-call modes, because the LZMA2
+ * multi-call modes, because the LZMA2
* dictionary doesn't need to be allocated as
* part of the decoder state. All required data
* structures are allocated at initialization,
diff --git a/xz/xz_crc32.c b/xz/xz_crc32.c
index 34532d1..5627b00 100644
--- a/xz/xz_crc32.c
+++ b/xz/xz_crc32.c
@@ -2,7 +2,7 @@
* CRC32 using the polynomial from IEEE-802.3
*
* Authors: Lasse Collin <lasse.collin(a)tukaani.org>
- * Igor Pavlov <http://7-zip.org/>
+ * Igor Pavlov <https://7-zip.org/>
*
* This file has been put into the public domain.
* You can do whatever you want with this file.
diff --git a/xz/xz_crc64.c b/xz/xz_crc64.c
index ca1caee..215e04d 100644
--- a/xz/xz_crc64.c
+++ b/xz/xz_crc64.c
@@ -4,7 +4,7 @@
* This file is similar to xz_crc32.c. See the comments there.
*
* Authors: Lasse Collin <lasse.collin(a)tukaani.org>
- * Igor Pavlov <http://7-zip.org/>
+ * Igor Pavlov <https://7-zip.org/>
*
* This file has been put into the public domain.
* You can do whatever you want with this file.
diff --git a/xz/xz_dec_bcj.c b/xz/xz_dec_bcj.c
index a768e6d..72ddac6 100644
--- a/xz/xz_dec_bcj.c
+++ b/xz/xz_dec_bcj.c
@@ -2,7 +2,7 @@
* Branch/Call/Jump (BCJ) filter decoders
*
* Authors: Lasse Collin <lasse.collin(a)tukaani.org>
- * Igor Pavlov <http://7-zip.org/>
+ * Igor Pavlov <https://7-zip.org/>
*
* This file has been put into the public domain.
* You can do whatever you want with this file.
diff --git a/xz/xz_dec_lzma2.c b/xz/xz_dec_lzma2.c
index 156f26f..2deb544 100644
--- a/xz/xz_dec_lzma2.c
+++ b/xz/xz_dec_lzma2.c
@@ -2,7 +2,7 @@
* LZMA2 decoder
*
* Authors: Lasse Collin <lasse.collin(a)tukaani.org>
- * Igor Pavlov <http://7-zip.org/>
+ * Igor Pavlov <https://7-zip.org/>
*
* This file has been put into the public domain.
* You can do whatever you want with this file.
@@ -387,7 +387,14 @@
*left -= copy_size;
- memcpy(dict->buf + dict->pos, b->in + b->in_pos, copy_size);
+ /*
+ * If doing in-place decompression in single-call mode and the
+ * uncompressed size of the file is larger than the caller
+ * thought (i.e. it is invalid input!), the buffers below may
+ * overlap and cause undefined behavior with memcpy().
+ * With valid inputs memcpy() would be fine here.
+ */
+ memmove(dict->buf + dict->pos, b->in + b->in_pos, copy_size);
dict->pos += copy_size;
if (dict->full < dict->pos)
@@ -397,7 +404,11 @@
if (dict->pos == dict->end)
dict->pos = 0;
- memcpy(b->out + b->out_pos, b->in + b->in_pos,
+ /*
+ * Like above but for multi-call mode: use memmove()
+ * to avoid undefined behavior with invalid input.
+ */
+ memmove(b->out + b->out_pos, b->in + b->in_pos,
copy_size);
}
@@ -421,6 +432,12 @@
if (dict->pos == dict->end)
dict->pos = 0;
+ /*
+ * These buffers cannot overlap even if doing in-place
+ * decompression because in multi-call mode dict->buf
+ * has been allocated by us in this file; it's not
+ * provided by the caller like in single-call mode.
+ */
memcpy(b->out + b->out_pos, dict->buf + dict->start,
copy_size);
}
diff --git a/xz/xz_lzma2.h b/xz/xz_lzma2.h
index 071d67b..92d852d 100644
--- a/xz/xz_lzma2.h
+++ b/xz/xz_lzma2.h
@@ -2,7 +2,7 @@
* LZMA2 definitions
*
* Authors: Lasse Collin <lasse.collin(a)tukaani.org>
- * Igor Pavlov <http://7-zip.org/>
+ * Igor Pavlov <https://7-zip.org/>
*
* This file has been put into the public domain.
* You can do whatever you want with this file.
diff --git a/xz/xz_stream.h b/xz/xz_stream.h
index 66cb5a7..430bb3a 100644
--- a/xz/xz_stream.h
+++ b/xz/xz_stream.h
@@ -19,7 +19,7 @@
/*
* See the .xz file format specification at
- * http://tukaani.org/xz/xz-file-format.txt
+ * https://tukaani.org/xz/xz-file-format.txt
* to understand the container format.
*/
--
To view, visit https://review.coreboot.org/c/em100/+/47898
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: em100
Gerrit-Branch: master
Gerrit-Change-Id: I700e7f93d713d3c181125dd751ff84d74fd2efe2
Gerrit-Change-Number: 47898
Gerrit-PatchSet: 1
Gerrit-Owner: Stefan Reinauer <stefan.reinauer(a)coreboot.org>
Gerrit-MessageType: newchange
Marshall Dawson has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/47769 )
Change subject: util/amdfwtool: Fix EFS generation polarity
......................................................................
util/amdfwtool: Fix EFS generation polarity
The DWORD used to indicate the Embedded Firmware Structure's generation
uses 1 to indicate a first-gen structure, e.g. a SPI device's erased
value of 0xffffffff. A 0 in bit 0 is how Client PSPs will interpret
the structure as designed for second-gen.
This change and the original addition should have no effects on
any current products as none interpret offset 0x24.
BUG=b:158755102
TEST=inspect EFS in coreboot.rom
Signed-off-by: Marshall Dawson <marshalldawson3rd(a)gmail.com>
Change-Id: If391f356a1811ed04acdfe9ab9de2e146f6ef5fd
---
M util/amdfwtool/amdfwtool.c
1 file changed, 2 insertions(+), 4 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/69/47769/1
diff --git a/util/amdfwtool/amdfwtool.c b/util/amdfwtool/amdfwtool.c
index 9cf6a4f..36d669b 100644
--- a/util/amdfwtool/amdfwtool.c
+++ b/util/amdfwtool/amdfwtool.c
@@ -333,7 +333,7 @@
uint32_t bios0_entry; /* todo: add way to select correct entry */
uint32_t bios1_entry;
uint32_t bios2_entry;
- uint32_t second_gen_efs;
+ uint32_t second_gen_efs; /* Client SKUs b0=1 is Gen1, b1=0 is Gen2, Servers TBD */
uint32_t bios3_entry;
uint32_t reserved_2Ch;
uint32_t promontory_fw_ptr;
@@ -1182,13 +1182,11 @@
}
switch (soc_id) {
case PLATFORM_STONEYRIDGE:
- amd_romsig->second_gen_efs = 0;
amd_romsig->spi_readmode_f15_mod_60_6f = efs_spi_readmode;
amd_romsig->fast_speed_new_f15_mod_60_6f = efs_spi_speed;
break;
case PLATFORM_RAVEN:
case PLATFORM_PICASSO:
- amd_romsig->second_gen_efs = 0;
amd_romsig->spi_readmode_f17_mod_00_2f = efs_spi_readmode;
amd_romsig->spi_fastspeed_f17_mod_00_2f = efs_spi_speed;
switch (efs_spi_micron_flag) {
@@ -1205,7 +1203,7 @@
break;
case PLATFORM_RENOIR:
case PLATFORM_LUCIENNE:
- amd_romsig->second_gen_efs = 1;
+ amd_romsig->second_gen_efs = 0xfffffffe;
amd_romsig->spi_readmode_f17_mod_30_3f = efs_spi_readmode;
amd_romsig->spi_fastspeed_f17_mod_30_3f = efs_spi_speed;
switch (efs_spi_micron_flag) {
--
To view, visit https://review.coreboot.org/c/coreboot/+/47769
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: If391f356a1811ed04acdfe9ab9de2e146f6ef5fd
Gerrit-Change-Number: 47769
Gerrit-PatchSet: 1
Gerrit-Owner: Marshall Dawson <marshalldawson3rd(a)gmail.com>
Gerrit-MessageType: newchange
Tim Wawrzynczak has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/47972 )
Change subject: mb/google/volteer: Switch to fw_config_probe_nodefault when appropriate
......................................................................
mb/google/volteer: Switch to fw_config_probe_nodefault when appropriate
In cases when a volteer device is unprovisioned, the safest thing to do
for GPIOs that will normally be used for audio codec buses is to leave
them disabled (configured as PAD_CFG_NC). The same is true for USB4
support; if it is not know explicitly to be supported, then leave
the iTBT PCIe RPs disabled.
Change-Id: I8efd101174f6e3d7233d2bf803b680673cada81a
Signed-off-by: Tim Wawrzynczak <twawrzynczak(a)chromium.org>
---
M src/mainboard/google/volteer/fw_config.c
M src/mainboard/google/volteer/mainboard.c
M src/mainboard/google/volteer/romstage.c
3 files changed, 26 insertions(+), 16 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/72/47972/1
diff --git a/src/mainboard/google/volteer/fw_config.c b/src/mainboard/google/volteer/fw_config.c
index 50e8f93..7be84bf 100644
--- a/src/mainboard/google/volteer/fw_config.c
+++ b/src/mainboard/google/volteer/fw_config.c
@@ -72,33 +72,43 @@
static void fw_config_handle(void *unused)
{
+ /*
+ * When FW_CONFIG is undefined (e.g., in an unprovisioned board), we
+ * don't yet know which audio codec is connected. Our policy here is:
+ * 1) Configure bus-specific GPIOs which are not yet assigned to a device as NC.
+ * 2) Expose all of the devices in the ACPI tables, so they can be probed at runtime
+ * discovery and provisioning.
+ * Here, that means using fw_config_probe for AUDIO,NONE because it will return true
+ * for an unprovisioned board, and all GPIOs will get enabled; fw_config_probe_nodefault
+ * can only return true on provisioned boards.
+ */
if (fw_config_probe(FW_CONFIG(AUDIO, NONE))) {
printk(BIOS_INFO, "Configure GPIOs for no audio.\n");
gpio_configure_pads(i2s_disable_pads, ARRAY_SIZE(i2s_disable_pads));
gpio_configure_pads(dmic_disable_pads, ARRAY_SIZE(dmic_disable_pads));
gpio_configure_pads(sndw_disable_pads, ARRAY_SIZE(sndw_disable_pads));
}
- if (fw_config_probe(FW_CONFIG(AUDIO, MAX98373_ALC5682_SNDW))) {
+ if (fw_config_probe_nodefault(FW_CONFIG(AUDIO, MAX98373_ALC5682_SNDW))) {
printk(BIOS_INFO, "Configure GPIOs for SoundWire audio.\n");
gpio_configure_pads(sndw_enable_pads, ARRAY_SIZE(sndw_enable_pads));
gpio_configure_pads(dmic_enable_pads, ARRAY_SIZE(dmic_enable_pads));
gpio_configure_pads(i2s_disable_pads, ARRAY_SIZE(i2s_disable_pads));
}
- if (fw_config_probe(FW_CONFIG(AUDIO, MAX98357_ALC5682I_I2S)) ||
- fw_config_probe(FW_CONFIG(AUDIO, MAX98373_ALC5682I_I2S)) ||
- fw_config_probe(FW_CONFIG(AUDIO, MAX98360_ALC5682I_I2S))) {
+ if (fw_config_probe_nodefault(FW_CONFIG(AUDIO, MAX98357_ALC5682I_I2S)) ||
+ fw_config_probe_nodefault(FW_CONFIG(AUDIO, MAX98373_ALC5682I_I2S)) ||
+ fw_config_probe_nodefault(FW_CONFIG(AUDIO, MAX98360_ALC5682I_I2S))) {
printk(BIOS_INFO, "Configure GPIOs for I2S audio on UP3.\n");
gpio_configure_pads(i2s_up3_enable_pads, ARRAY_SIZE(i2s_up3_enable_pads));
gpio_configure_pads(dmic_enable_pads, ARRAY_SIZE(dmic_enable_pads));
gpio_configure_pads(sndw_disable_pads, ARRAY_SIZE(sndw_disable_pads));
}
- if (fw_config_probe(FW_CONFIG(AUDIO, MAX98373_ALC5682I_I2S_UP4))) {
+ if (fw_config_probe_nodefault(FW_CONFIG(AUDIO, MAX98373_ALC5682I_I2S_UP4))) {
printk(BIOS_INFO, "Configure GPIOs for I2S audio on UP4.\n");
gpio_configure_pads(i2s_up4_enable_pads, ARRAY_SIZE(i2s_up4_enable_pads));
gpio_configure_pads(dmic_enable_pads, ARRAY_SIZE(dmic_enable_pads));
gpio_configure_pads(sndw_disable_pads, ARRAY_SIZE(sndw_disable_pads));
}
- if (fw_config_probe(FW_CONFIG(DB_SD, SD_GL9755S))) {
+ if (fw_config_probe_nodefault(FW_CONFIG(DB_SD, SD_GL9755S))) {
printk(BIOS_INFO, "Configure GPIOs for SD GL9755S.\n");
gpio_configure_pads(sd_gl9755s_pads, ARRAY_SIZE(sd_gl9755s_pads));
}
diff --git a/src/mainboard/google/volteer/mainboard.c b/src/mainboard/google/volteer/mainboard.c
index ea9e08f..2f016ab 100644
--- a/src/mainboard/google/volteer/mainboard.c
+++ b/src/mainboard/google/volteer/mainboard.c
@@ -53,10 +53,10 @@
if (!conn)
return;
- if (fw_config_probe(FW_CONFIG(DB_USB, USB4_GEN2)) ||
- fw_config_probe(FW_CONFIG(DB_USB, USB3_ACTIVE)) ||
- fw_config_probe(FW_CONFIG(DB_USB, USB4_GEN3)) ||
- fw_config_probe(FW_CONFIG(DB_USB, USB3_NO_A))) {
+ if (fw_config_probe_nodefault(FW_CONFIG(DB_USB, USB4_GEN2)) ||
+ fw_config_probe_nodefault(FW_CONFIG(DB_USB, USB3_ACTIVE)) ||
+ fw_config_probe_nodefault(FW_CONFIG(DB_USB, USB4_GEN3)) ||
+ fw_config_probe_nodefault(FW_CONFIG(DB_USB, USB3_NO_A))) {
struct drivers_intel_pmc_mux_conn_config *config = conn->chip_info;
if (config) {
@@ -164,8 +164,8 @@
bool has_usb4;
/* If device doesn't have USB4 hardware, disable tbt */
- has_usb4 = (fw_config_probe(FW_CONFIG(DB_USB, USB4_GEN2))
- || fw_config_probe(FW_CONFIG(DB_USB, USB4_GEN3)));
+ has_usb4 = (fw_config_probe_nodefault(FW_CONFIG(DB_USB, USB4_GEN2))
+ || fw_config_probe_nodefault(FW_CONFIG(DB_USB, USB4_GEN3)));
if (!has_usb4)
memset(params->ITbtPcieRootPortEn, 0,
diff --git a/src/mainboard/google/volteer/romstage.c b/src/mainboard/google/volteer/romstage.c
index 315ec20..a529b75 100644
--- a/src/mainboard/google/volteer/romstage.c
+++ b/src/mainboard/google/volteer/romstage.c
@@ -22,15 +22,15 @@
};
bool half_populated = gpio_get(GPIO_MEM_CH_SEL);
- /* Disable HDA device if no audio board is present. */
+ /* Disable HDA device if no audio board is present (or FW_CONFIG is undefined). */
if (fw_config_probe(FW_CONFIG(AUDIO, NONE)))
mem_cfg->PchHdaEnable = 0;
meminit_ddr(mem_cfg, board_cfg, &spd_info, half_populated);
- /* Disable TBT if no USB4 hardware */
- if (!(fw_config_probe(FW_CONFIG(DB_USB, USB4_GEN2)) ||
- fw_config_probe(FW_CONFIG(DB_USB, USB4_GEN3)))) {
+ /* Disable TBT if no USB4 hardware (or if unknown) */
+ if (!(fw_config_probe_nodefault(FW_CONFIG(DB_USB, USB4_GEN2)) ||
+ fw_config_probe_nodefault(FW_CONFIG(DB_USB, USB4_GEN3)))) {
mem_cfg->TcssDma0En = 0;
mem_cfg->TcssItbtPcie0En = 0;
mem_cfg->TcssItbtPcie1En = 0;
--
To view, visit https://review.coreboot.org/c/coreboot/+/47972
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: I8efd101174f6e3d7233d2bf803b680673cada81a
Gerrit-Change-Number: 47972
Gerrit-PatchSet: 1
Gerrit-Owner: Tim Wawrzynczak <twawrzynczak(a)chromium.org>
Gerrit-MessageType: newchange
Tim Wawrzynczak has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/47956 )
Change subject: fw_config: Default to undefined fw_config value
......................................................................
fw_config: Default to undefined fw_config value
If for some reason a value for fw_config cannot be located, set its
value to a magic undefined value. The current `fw_config_probe` function
is modified to return true if fw_config is undefined, and a new function
`fw_config_probe_nodefault` is added which will return false if the
fw_config value is undefined. A new Kconfig option is added,
FW_CONFIG_IGNORE_UNDEFINED (defaults to n), which controls the behavior
of fw_config probing the devicetree.
Signed-off-by: Tim Wawrzynczak <twawrzynczak(a)chromium.org>
Change-Id: Ib3046233667e97a5f78961fabacbeb3099b3d442
---
M src/Kconfig
M src/include/fw_config.h
M src/lib/fw_config.c
3 files changed, 43 insertions(+), 5 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/56/47956/1
diff --git a/src/Kconfig b/src/Kconfig
index dc98ca2..a0f692c 100644
--- a/src/Kconfig
+++ b/src/Kconfig
@@ -398,6 +398,16 @@
is not tried if FW_CONFIG_SOURCE_CBFS is enabled and the value was
found in CBFS.
+config FW_CONFIG_IGNORE_UNDEFINED
+ bool "Undefined Firmware Configuration value will not probe devices"
+ depends on FW_CONFIG
+ default n
+ help
+ When probing devices with fw_config, when the value is undefined or
+ unable to be located, all devices will be successfully probed, and
+ fw_config_probe will always return true. Set this to 'y' if you do
+ not want this behavior.
+
config HAVE_RAMPAYLOAD
bool
diff --git a/src/include/fw_config.h b/src/include/fw_config.h
index 3c87725..e02a38e 100644
--- a/src/include/fw_config.h
+++ b/src/include/fw_config.h
@@ -45,11 +45,21 @@
* fw_config_probe() - Check if field and option matches.
* @match: Structure containing field and option to probe.
*
- * Return %true if match is found, %false if match is not found.
+ * Return %true if match is found or fw_config value is undefined.
+ * %false if match is not found.
*/
bool fw_config_probe(const struct fw_config *match);
/**
+ * fw_config_probe_nodefault() - Check if field and option matches.
+ * @match: Structure containing field and option to probe.
+ *
+ * Return %true if match is found.
+ * %false if match is not found or fw_config value is undefined
+ */
+bool fw_config_probe_nodefault(const struct fw_config *match);
+
+/**
* fw_config_for_each_found() - Call a callback for each fw_config field found
* @cb: The callback function
* @arg: A context argument that is passed to the callback
diff --git a/src/lib/fw_config.c b/src/lib/fw_config.c
index e17d40e..efbee01 100644
--- a/src/lib/fw_config.c
+++ b/src/lib/fw_config.c
@@ -29,7 +29,7 @@
CBFS_TYPE_RAW) != sizeof(fw_config_value)) {
printk(BIOS_WARNING, "%s: Could not get fw_config from CBFS\n",
__func__);
- fw_config_value = 0;
+ fw_config_value = UNDEFINED_FW_CONFIG;
} else {
printk(BIOS_INFO, "FW_CONFIG value from CBFS is 0x%" PRIx64 "\n",
fw_config_value);
@@ -39,16 +39,24 @@
/* Read the value from EC CBI. */
if (CONFIG(FW_CONFIG_SOURCE_CHROMEEC_CBI)) {
- if (google_chromeec_cbi_get_fw_config(&fw_config_value))
+ if (google_chromeec_cbi_get_fw_config(&fw_config_value)) {
printk(BIOS_WARNING, "%s: Could not get fw_config from EC\n", __func__);
+ fw_config_value = UNDEFINED_FW_CONFIG;
+ }
}
printk(BIOS_INFO, "FW_CONFIG value is 0x%" PRIx64 "\n", fw_config_value);
return fw_config_value;
}
-bool fw_config_probe(const struct fw_config *match)
+static bool fw_config_match(const struct fw_config *match, bool undefined_match)
{
+ uint64_t fw_config;
+
+ fw_config = fw_config_get();
+ if (fw_config == UNDEFINED_FW_CONFIG)
+ return undefined_match;
+
/* Compare to system value. */
if ((fw_config_get() & match->mask) == match->value) {
if (match->field_name && match->option_name)
@@ -64,6 +72,16 @@
return false;
}
+bool fw_config_probe(const struct fw_config *match)
+{
+ return fw_config_match(match, true);
+}
+
+bool fw_config_probe_nodefault(const struct fw_config *match)
+{
+ return fw_config_match(match, false);
+}
+
#if ENV_RAMSTAGE
/*
@@ -111,7 +129,7 @@
continue;
for (probe = dev->probe_list; probe && probe->mask != 0; probe++) {
- if (fw_config_probe(probe)) {
+ if (fw_config_match(probe, (bool)!CONFIG(FW_CONFIG_IGNORE_UNDEFINED))) {
match = true;
cached_configs[probe_index(probe->mask)] = probe;
break;
--
To view, visit https://review.coreboot.org/c/coreboot/+/47956
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: Ib3046233667e97a5f78961fabacbeb3099b3d442
Gerrit-Change-Number: 47956
Gerrit-PatchSet: 1
Gerrit-Owner: Tim Wawrzynczak <twawrzynczak(a)chromium.org>
Gerrit-MessageType: newchange
Angel Pons has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/45258 )
Change subject: sb/intel/bd82x6x: Only check device ID in `intel_me_finalize_smm`
......................................................................
sb/intel/bd82x6x: Only check device ID in `intel_me_finalize_smm`
There's no need to compare the vendor ID.
Change-Id: I4368f2615e5ce72430992f1f5581908c90c970f0
Signed-off-by: Angel Pons <th3fanbus(a)gmail.com>
---
M src/southbridge/intel/bd82x6x/me.c
1 file changed, 4 insertions(+), 4 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/58/45258/1
diff --git a/src/southbridge/intel/bd82x6x/me.c b/src/southbridge/intel/bd82x6x/me.c
index c51cca6..3876b02 100644
--- a/src/southbridge/intel/bd82x6x/me.c
+++ b/src/southbridge/intel/bd82x6x/me.c
@@ -168,16 +168,16 @@
void intel_me_finalize_smm(void)
{
- u32 did = pci_read_config32(PCH_ME_DEV, PCI_VENDOR_ID);
+ u16 did = pci_read_config16(PCH_ME_DEV, PCI_DEVICE_ID);
switch (did) {
- case 0x1c3a8086:
+ case 0x1c3a:
intel_me7_finalize_smm();
break;
- case 0x1e3a8086:
+ case 0x1e3a:
intel_me8_finalize_smm();
break;
default:
- printk(BIOS_ERR, "No finalize handler for ME %08x.\n", did);
+ printk(BIOS_ERR, "No finalize handler for ME %04x.\n", did);
}
}
--
To view, visit https://review.coreboot.org/c/coreboot/+/45258
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: I4368f2615e5ce72430992f1f5581908c90c970f0
Gerrit-Change-Number: 45258
Gerrit-PatchSet: 1
Gerrit-Owner: Angel Pons <th3fanbus(a)gmail.com>
Gerrit-Reviewer: Patrick Rudolph <siro(a)das-labor.org>
Gerrit-MessageType: newchange