soc/intel/xeon_sp/cpx: Implement hide/unhide P2SB traditional dance

Perform the P2SB hide/unhide trick. This is needed so that BAR0
(0xfd000000) is not reclaimed by resource allocator, since it can
not deal with a device that does not exist (hidden).

Signed-off-by: Andrey Petrov <anpetrov@fb.com>
Change-Id: I5db0ae4e31d72ba86efba5728b2afc68d3180d5d
Reviewed-on: https://review.coreboot.org/c/coreboot/+/40921
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Maxim Polyakov <max.senia.poliak@gmail.com>
This commit is contained in:
Andrey Petrov 2020-04-30 14:08:19 -07:00 committed by Andrey Petrov
parent cf270f0d62
commit 4e48ac04da
1 changed files with 3 additions and 1 deletions

View File

@ -7,6 +7,7 @@
#include <cpu/x86/lapic.h>
#include <device/pci.h>
#include <fsp/api.h>
#include <intelblocks/p2sb.h>
#include <soc/cpu.h>
#include <soc/ramstage.h>
#include <soc/pm.h>
@ -73,7 +74,7 @@ struct pci_operations soc_pci_ops = {
static void chip_final(void *data)
{
/* nothing implemented yet */
p2sb_hide();
}
static void chip_init(void *data)
@ -82,6 +83,7 @@ static void chip_init(void *data)
fsp_silicon_init(false);
pch_enable_ioapic(NULL);
setup_lapic();
p2sb_unhide();
}
struct chip_operations soc_intel_xeon_sp_cpx_ops = {