summaryrefslogtreecommitdiff
path: root/src/soc/amd/stoneyridge/reset.c
diff options
context:
space:
mode:
authorFelix Held <felix-coreboot@felixheld.de>2024-07-11 15:15:00 +0200
committerFelix Held <felix-coreboot@felixheld.de>2024-07-25 22:55:38 +0000
commitc7f022ae9567aece54bb2d5a206c0ee27ec34f39 (patch)
treebab80191be09fb009f95432ee8c55992c00e2781 /src/soc/amd/stoneyridge/reset.c
parentebf90e3a8823781cab7b24dbaf41a783c31f4b38 (diff)
soc/amd/common/block/psp_gen2: add get_psp_mmio_base
Add get_psp_mmio_base which reads the PSP MMIO base address from the hardware registers. Since this function will not only be called in ramstage, but also in SMM, we can't just look for the specific domain resource consumer like it is done for the IOAPICs in the northbridge, but have to get this base address from the registers. In order to limit the performance impact of this, the base address gets cached in a static variable if an enabled PSP MMIO base register is found. We expect that this register is locked when it was configured and enabled; if we run into the unexpected case that the PSP MMIO register is enabled, but not locked, set the lock bit of the corresponding base address register to be sure that it won't change until the next reset and that the hardware value can't be different than the cached value. This is a preparation to move back to using MMIO access to the PSP registers and will also enable cases that require the use of the MMIO mapping of the PSP registers. Signed-off-by: Felix Held <felix-coreboot@felixheld.de> Change-Id: I1d51e30f186508b0fe1ab5eb79c73e6d4b9d1a4a Reviewed-on: https://review.coreboot.org/c/coreboot/+/83446 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Matt DeVillier <matt.devillier@amd.corp-partner.google.com> Reviewed-by: Martin Roth <martin.roth@amd.corp-partner.google.com>
Diffstat (limited to 'src/soc/amd/stoneyridge/reset.c')
0 files changed, 0 insertions, 0 deletions