coreboot-kgpe-d16/src
Cliff Huang 69564f3de5 soc/intel/common/block/pcie/rtd3: Add root port mutex support
When 'use_rp_mutex' (default = 0) is set in the device tree, a root
port mutex will be added. This mutex is used in _ON and _OFF method,
where the GPIO reset and/or enable GPIO value is changed. The
companion driver, such as WWAN driver, needs to acquire this root
port mutex when accessing the same GPIO pins. Using this common mutex
prevents those invoked methods from being called from different thread
while one is not completed.

An example is that WWAN driver calling _RST method to reset the device
and does remove/rescan for the device while the pm runtime work might
call RTD3 _OFF.

For those root port without additional driver, this mutex is not needed.

BRANCH=firmware-brya-14505.B
TEST=boot to OS and check the generated SSDT table for the root port.
The RPMX mutex should be generated and _ON and _OFF should use this
mutex.

Signed-off-by: Cliff Huang <cliff.huang@intel.com>
Change-Id: Ibc077528692b2d7076132384fb7bd441be502511
Reviewed-on: https://review.coreboot.org/c/coreboot/+/73380
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Jérémy Compostella <jeremy.compostella@intel.com>
Reviewed-by: Bora Guvendik <bora.guvendik@intel.com>
2023-04-05 12:45:24 +00:00
..
acpi acpi: Add SRAT x2APIC table support 2023-03-03 17:08:27 +00:00
arch arch/x86/smbios: Check str for NULL in smbios_add_string() 2023-04-04 13:22:27 +00:00
commonlib commonlib: Add new "DMU load completed" TS 2023-04-04 08:08:06 +00:00
console console: Deselect using ANSI escape characters when SimNow is used 2023-03-30 13:36:35 +00:00
cpu cpu/x86/64bit/Makefile: use all_x86 make target 2023-04-04 19:22:33 +00:00
device device/Kconfig: explain which PCI ID needs to be used for VGA_BIOS_ID 2023-03-09 22:53:02 +00:00
drivers drivers/pc80/pc/Makefile: use all_x86 make target 2023-04-04 19:21:47 +00:00
ec ec/starlabs/merlin: Add support for the ITE mirror flag 2023-04-04 14:10:44 +00:00
include soc/intel/common: Add core_type member to 'struct apic_path' 2023-03-31 08:36:47 +00:00
lib lib: set up specific purpose memory as LB_MEM_SOFT_RESERVED 2023-03-03 11:10:38 +00:00
mainboard mb/google/skyrim: Remove unused sleep GPIO table 2023-04-05 12:41:31 +00:00
northbridge nb/intel/gm45: Prevent null-deref in get_blc_pwm_freq_value() 2023-04-05 10:02:55 +00:00
sbom payloads/Yabits: Remove deprecated Yabits Payload 2023-02-17 01:21:43 +00:00
security security/tpm/tspi: Fix preram TPM log max entries 2023-03-22 19:26:37 +00:00
soc soc/intel/common/block/pcie/rtd3: Add root port mutex support 2023-04-05 12:45:24 +00:00
southbridge util/ifdtool/ifdtool.c: Clean up 2023-03-09 19:36:32 +00:00
superio treewide: Remove useless "_STA: Status" comment 2023-02-19 11:20:37 +00:00
vendorcode vc/amd/fsp/mendocino/FspmUpd: Update UDP structure for MDN-FSP 2023-03-29 13:20:10 +00:00
Kconfig option: Allow to use the EFI variable driver as option backend 2023-04-03 21:14:53 +00:00