coreboot/src
Subrata Banik f48b84330f soc/intel/common/smbus: Add finalize operation for smbus
This patch implements the required operations to perform prior to
booting to OS using coreboot native driver when platform decides
to skip FSP notify APIs i.e. Post PCI Enumeration.

The smbus `.final` operation ensures locking the TCO register when
coreboot decides to skip FspNotifyApi() calls.

BUG=b:211954778
TEST=Able to build google/brya with these changes and coreboot log with
this code change as below with ADL SoC skip calling into FspNotifyAPIs:

[INFO ]  Finalize devices...
[DEBUG]  PCI: 00:1f.4 final

> localhost ~ # lspci -xxx | less
00:1f.4 Intel Corporation Alder Lake PCH-P SMBus Host Controller
        (rev 01)

Offset 8, Bit 12 a.k.a TCO Lock bit is set (meaning locked).

Signed-off-by: Subrata Banik <subratabanik@google.com>
Change-Id: Ie945680049514e6c5d797790a381a6946e836926
Reviewed-on: https://review.coreboot.org/c/coreboot/+/63640
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-by: Lean Sheng Tan <sheng.tan@9elements.com>
2022-04-23 17:17:51 +00:00
..
acpi src/acpi/device: Early return in _ON if device already enabled 2022-04-14 22:30:05 +00:00
arch x86/mtrr: Print address ranges inclusive to be more consistent 2022-04-14 15:43:27 +00:00
commonlib commonlib/coreboot_tables.h: Don't pack structs 2022-04-20 14:45:17 +00:00
console src/console/Kconfig: Add option to disable loglevel prefix 2022-03-30 00:02:34 +00:00
cpu cpu/amd: Remove unused <cbmem.h> 2022-04-22 21:39:34 +00:00
device device: Remove unused <cbmem.h> 2022-04-22 21:40:07 +00:00
drivers drivers: Remove unused <cbmem.h> 2022-04-22 21:40:56 +00:00
ec ec/google/chromeec: Drop _PRS from static devices 2022-04-20 10:03:35 +00:00
include cpu/x86: Add function to set put_back_original_solution variable 2022-04-13 21:28:10 +00:00
lib lib/coreboot_table.c: Use align macro 2022-04-20 14:43:50 +00:00
mainboard mainboard/ti: Remove unused <cbmem.h> 2022-04-22 21:41:30 +00:00
northbridge nb/intel/i945/memmap.c: Fix TOLUD bit field mask 2022-04-22 21:35:35 +00:00
security tpm: Refactor TPM Kconfig dimensions 2022-04-21 23:07:20 +00:00
soc soc/intel/common/smbus: Add finalize operation for smbus 2022-04-23 17:17:51 +00:00
southbridge sb/amd/hudson/spi.c: Use C over CPP conditional 2022-03-25 20:06:57 +00:00
superio superio/smsc/mec1308: Drop _PRS from static devices 2022-04-20 10:02:17 +00:00
vendorcode tpm: Refactor TPM Kconfig dimensions 2022-04-21 23:07:20 +00:00
Kconfig Kconfig: Make HAVE_EM100_SUPPORT invisible 2022-04-19 13:04:25 +00:00