soc/intel/{skl,cnl,xsp,icl,tgl,ehl,adl,jsl}: use common LPC mirroring
Drop the old, redundant code for mirroring LPC registers to DMI and make
use of the new common code.
Select the new Kconfig option for LPC DMI mirroring by the option
SOC_INTEL_COMMON_PCH_BASE, which is selected by platforms starting with
SPT, except APL and Xeon-SP. For Xeon-SP, select DMI and the new Kconfig
directly.
APL, even though it's younger than SPT, does not need mirroring.
Test: Set LGMR address by calling `lpc_open_mmio_window` and check that
both the PCI cfg and DMI LGMR register get written correctly.
Tested successfully on clevo/cml-u.
Change-Id: Ibd834f1474d986646bcebb754a17db97831a651f
Signed-off-by: Michael Niewöhner <foss@mniewoehner.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/49593
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
This commit is contained in:
committed by
Patrick Georgi
parent
f7e91d22d4
commit
d2c57f2a0c
@@ -7,7 +7,6 @@
|
||||
#include <arch/ioapic.h>
|
||||
#include <intelblocks/itss.h>
|
||||
#include <intelblocks/lpc_lib.h>
|
||||
#include <intelblocks/pcr.h>
|
||||
#include <reg_script.h>
|
||||
#include <soc/iomap.h>
|
||||
#include <soc/pcr_ids.h>
|
||||
@@ -25,15 +24,6 @@ void soc_get_gen_io_dec_range(uint32_t *gen_io_dec)
|
||||
gen_io_dec[3] = config->gen4_dec;
|
||||
}
|
||||
|
||||
void soc_setup_dmi_pcr_io_dec(uint32_t *gen_io_dec)
|
||||
{
|
||||
/* Mirror these same settings in DMI PCR */
|
||||
pcr_write32(PID_DMI, PCR_DMI_LPCLGIR1, gen_io_dec[0]);
|
||||
pcr_write32(PID_DMI, PCR_DMI_LPCLGIR2, gen_io_dec[1]);
|
||||
pcr_write32(PID_DMI, PCR_DMI_LPCLGIR3, gen_io_dec[2]);
|
||||
pcr_write32(PID_DMI, PCR_DMI_LPCLGIR4, gen_io_dec[3]);
|
||||
}
|
||||
|
||||
static const struct reg_script pch_misc_init_script[] = {
|
||||
/* Enable BIOS updates outside of SMM */
|
||||
REG_PCI_RMW8(0xdc, ~(1 << 5), 0),
|
||||
|
||||
Reference in New Issue
Block a user