Update Cooperlake-SP (CPX-SP) FSP header files to WW20 release. As CPX-SP FSP engineering is on-going (the processor Mass Production is some time in this year). These header files will be adjusted when changes are necessary with newer FSP release. This commit corresponds to FSP release WW20 (tag WHITLEY.0.PRB.0016.D.65). Also update soc/xeon_sp code file and Skylake-SP header file accordingly to use FsptPort80RouteDisable instead of PcdPort80RouteDisable. Signed-off-by: Jonathan Zhang <jonzhang@fb.com> Signed-off-by: Johnny Lin <johnny_lin@wiwynn.com> Signed-off-by: Reddy Chagam <anjaneya.chagam@intel.com> Change-Id: I8bc6882e47de23d83ba0f521bb12a10dace523ce Reviewed-on: https://review.coreboot.org/c/coreboot/+/40034 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Philipp Deppenwiese <zaolin.daisuki@gmail.com>
58 lines
1.5 KiB
C
58 lines
1.5 KiB
C
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
|
|
|
#include <bootblock_common.h>
|
|
#include <device/pci.h>
|
|
#include <FsptUpd.h>
|
|
#include <intelblocks/fast_spi.h>
|
|
#include <soc/iomap.h>
|
|
#include <console/console.h>
|
|
#include <cpu/x86/mtrr.h>
|
|
#include <intelblocks/lpc_lib.h>
|
|
#include <soc/pci_devs.h>
|
|
#include <soc/bootblock.h>
|
|
|
|
const FSPT_UPD temp_ram_init_params = {
|
|
.FspUpdHeader = {
|
|
.Signature = FSPT_UPD_SIGNATURE,
|
|
.Revision = 1,
|
|
.Reserved = {0},
|
|
},
|
|
.FsptCoreUpd = {
|
|
.MicrocodeRegionBase = (UINT32)CONFIG_CPU_MICROCODE_CBFS_LOC,
|
|
.MicrocodeRegionLength = (UINT32)CONFIG_CPU_MICROCODE_CBFS_LEN,
|
|
.CodeRegionBase = (UINT32)CACHE_ROM_BASE,
|
|
.CodeRegionLength = (UINT32)CACHE_ROM_SIZE,
|
|
.Reserved1 = {0},
|
|
},
|
|
.FsptConfig = {
|
|
.FsptPort80RouteDisable = 0,
|
|
.ReservedTempRamInitUpd = {0},
|
|
},
|
|
.UnusedUpdSpace0 = {0},
|
|
.UpdTerminator = 0x55AA,
|
|
};
|
|
|
|
asmlinkage void bootblock_c_entry(uint64_t base_timestamp)
|
|
{
|
|
fast_spi_cache_bios_region();
|
|
|
|
bootblock_main_with_basetime(base_timestamp);
|
|
}
|
|
|
|
void bootblock_soc_early_init(void)
|
|
{
|
|
fast_spi_early_init(SPI_BASE_ADDRESS);
|
|
pch_enable_lpc();
|
|
|
|
/* Set up P2SB BAR. This is needed for PCR to work */
|
|
uint8_t p2sb_cmd = pci_mmio_read_config8(PCH_DEV_P2SB, PCI_COMMAND);
|
|
pci_mmio_write_config8(PCH_DEV_P2SB, PCI_COMMAND, p2sb_cmd | PCI_COMMAND_MEMORY);
|
|
pci_mmio_write_config32(PCH_DEV_P2SB, PCI_BASE_ADDRESS_0, CONFIG_PCR_BASE_ADDRESS);
|
|
}
|
|
|
|
void bootblock_soc_init(void)
|
|
{
|
|
if (CONFIG(BOOTBLOCK_CONSOLE))
|
|
printk(BIOS_DEBUG, "FSP TempRamInit successful...\n");
|
|
bootblock_pch_init();
|
|
}
|