coreboot/src
Tim Van Patten 00864fdba6 mb/google/guybrush: Disable WLAN ASPM
ASPM on the WLAN PCIe bus introduces large latency spikes, which can be
measured with cyclictest:

$ cyclictest --policy=rr --priority=12 --interval=10000 --threads=1 --loops=6000

Disabling ASPM for WLAN reduces the latency spikes from 2,500-3,000 usec
down to 35-65 usec. These latency spikes can impact the user when
real-time processes like Audio (cras) are starved of CPU time, leading
to buffer underruns resulting in crackling/distorted audio.

ASPM is already disabled for Nipperkin devices (CB:63537), so this CL
disables it for both in the shared declaration of
guybrush_czn_dxio_descriptors.

Power impact for Dewatt:

* ASPM enabled

    power_VideoCall.FDO_25min_webrtc
    w_energy_rate 7.425043688811071

    power_Idle.default20min
    wh_energy_used 1.4164200000000022

* ASPM disabled

    power_VideoCall.FDO_25min_webrtc
    w_energy_rate 8.779998551703423

    power_Idle.default20min
    wh_energy_used 1.4860800000000012

When using Google Meet over WiFi, power increases by ~1.5W.

BUG=b:297970318
TEST=cyclictest --policy=rr --priority=12 --interval=10000 --threads=1 --loops=6000

Change-Id: I16940987d598943bd5d6ace8b4008eba4d4a177c
Signed-off-by: Tim Van Patten <timvp@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77963
Reviewed-by: Martin L Roth <gaumless@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
2023-09-29 17:47:39 +00:00
..
acpi acpi: Fix typos 2023-09-27 15:28:26 +00:00
arch arch/x86/cpu_common: use cpuid_get_max_func 2023-09-26 14:11:52 +00:00
commonlib commonlib: Make CBMEM_ID_CSE_BP_INFO little endian, fix id for string 2023-09-25 09:03:51 +00:00
console commonlib,console,nb,sb,security: Add SPDX licenses to Makefiles 2023-08-14 15:14:45 +00:00
cpu cpu/x86/mtrr/debug: rename variables in display_variable_mtrr 2023-09-20 18:18:59 +00:00
device arch to drivers/intel: Fix misspellings & capitalization issues 2023-09-08 00:53:57 +00:00
drivers drivers/tpm: Add return codes to TPM driver 2023-09-28 16:54:50 +00:00
ec clean-up: Remove the no more necessary ENV_HAS_DATA_SECTION flag 2023-09-18 13:18:23 +00:00
include include/acpi/acpi_pld.h: Remove comment on PLD 2023-09-28 21:26:39 +00:00
lib cbfs: Remove x86 .data section limitation comment 2023-09-18 13:19:51 +00:00
mainboard mb/google/guybrush: Disable WLAN ASPM 2023-09-29 17:47:39 +00:00
northbridge nb/intel: Remove space between function name and '(' 2023-09-11 15:52:56 +00:00
sbom
security drivers/tpm: Add tpm failure handling 2023-09-28 16:55:03 +00:00
soc soc/intel/cse: Select SOC_INTEL_CSE_LITE_SYNC_IN_RAMSTAGE when PSR enabled 2023-09-28 17:47:53 +00:00
southbridge sb/intel/common: Remove space after a cast 2023-09-19 13:13:12 +00:00
superio superio/smsc/sch5147/acpi/superio: use IO instead of FixedIO resource 2023-08-11 23:11:57 +00:00
vendorcode treewide: convert to tpm_result_t 2023-09-28 16:54:37 +00:00
Kconfig Kconfig: Add option to make clang the default compiler 2023-08-24 22:08:59 +00:00