coreboot/src
Subrata Banik 1e58a16264 soc/intel/cmn/gfx: Add API to report presence of external display
This patch implements an API to report the presence of an external
display on Intel silicon. The API uses information from the transcoder
and framebuffer to determine if an external display is connected.

For example, if the transcoder is attached to any DDI ports other than
DDI-A (eDP), and the framebuffer is initialized, then it is likely
that an external display is present.

This information can be used by payloads to determine whether or not
to power on the display, even if eDP is not initialized.

BUG=b:299137940
TEST=Build and boot google/rex

Scenarios:

Booting with eDP alone: has_external_display value is 0
Booting with eDP + HDMI: has_external_display value is 0
Booting with HDMI alone: has_external_display value is 1
Booting with USB-C display alone: has_external_display value is 1

Change-Id: I77436940978c7fa9368d79394b46a5e794c32e42
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/78080
Reviewed-by: Julius Werner <jwerner@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nick Vaccaro <nvaccaro@google.com>
Reviewed-by: Eric Lai <ericllai@google.com>
2023-10-04 18:51:10 +00:00
..
acpi acpi/acpigen_ps2_keybd: Reduce minimum keys, optional alpha/num/punct 2023-10-02 16:24:54 +00:00
arch x86/include/arch/cpuid.h: Fix inline assembly 2023-10-02 14:01:59 +00:00
commonlib {commonlib, libpayload}: Add "has_external_display" in coreboot table 2023-10-04 18:50:49 +00:00
console commonlib,console,nb,sb,security: Add SPDX licenses to Makefiles 2023-08-14 15:14:45 +00:00
cpu arch/x86/Kconfig: introduce RESERVED_PHYSICAL_ADDRESS_BITS_SUPPORT 2023-09-29 20:23:50 +00:00
device arch to drivers/intel: Fix misspellings & capitalization issues 2023-09-08 00:53:57 +00:00
drivers {commonlib, libpayload}: Add "has_external_display" in coreboot table 2023-10-04 18:50:49 +00:00
ec ec/starlabs/merlin: Update the Q Events 2023-10-04 09:35:53 +00:00
include acpi/acpigen_ps2_keybd: Reduce minimum keys, optional alpha/num/punct 2023-10-02 16:24:54 +00:00
lib cbfs: Remove x86 .data section limitation comment 2023-09-18 13:19:51 +00:00
mainboard mb/google/dedede/var/boxy:Enable wake on USB2/3 (un)plug 2023-10-04 15:30:31 +00:00
northbridge nb/intel: Remove space between function name and '(' 2023-09-11 15:52:56 +00:00
sbom payloads/Yabits: Remove deprecated Yabits Payload 2023-02-17 01:21:43 +00:00
security security/tpm: Enable Hibernate on setup failure 2023-10-02 17:06:32 +00:00
soc soc/intel/cmn/gfx: Add API to report presence of external display 2023-10-04 18:51:10 +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