From cf29efabbad08098e8f0b51eb25c22661dd62ba5 Mon Sep 17 00:00:00 2001 From: Matt DeVillier Date: Tue, 16 Jan 2024 18:46:20 -0600 Subject: mb/google/brya/var/*: Ensure LCD device has a valid address Some variants added the generic gfx driver with an LCD device without specifying the address, which is required for the backlight controls to be functional under Windows. Add the address value where missing. Address value used (0x80010400) is same as on other Brya variants which did properly set it, and is taken from the ACPI 6.5 spec section B.4.2, _DOD (display output device enumeration), table B-2: - bit 31 = use the ACPI-defined (vs vendor-defined) bit scheme for bits 15-0 - bit 16 = platform firmware can detect the device - bit 10 = display type is internal/integrated flat panel (aka LCD) TEST=build/boot Win11 on google/brya (osiris), verify ACPI backlight controls functional. Change-Id: Id24e330cfb7c993d12665a704e1ca78e2e38874f Signed-off-by: Matt DeVillier Reviewed-on: https://review.coreboot.org/c/coreboot/+/80062 Tested-by: build bot (Jenkins) Reviewed-by: Eric Lai --- src/mainboard/google/brya/variants/anahera/overridetree.cb | 2 ++ src/mainboard/google/brya/variants/anahera4es/overridetree.cb | 2 ++ src/mainboard/google/brya/variants/anraggar/overridetree.cb | 2 ++ src/mainboard/google/brya/variants/banshee/overridetree.cb | 2 ++ src/mainboard/google/brya/variants/brya0/overridetree.cb | 2 ++ src/mainboard/google/brya/variants/crota/overridetree.cb | 2 ++ src/mainboard/google/brya/variants/dochi/overridetree.cb | 2 ++ src/mainboard/google/brya/variants/felwinter/overridetree.cb | 2 ++ src/mainboard/google/brya/variants/gimble/overridetree.cb | 2 ++ src/mainboard/google/brya/variants/gimble4es/overridetree.cb | 2 ++ src/mainboard/google/brya/variants/kano/overridetree.cb | 2 ++ src/mainboard/google/brya/variants/marasov/overridetree.cb | 2 ++ src/mainboard/google/brya/variants/mithrax/overridetree.cb | 2 ++ src/mainboard/google/brya/variants/omnigul/overridetree.cb | 2 ++ src/mainboard/google/brya/variants/osiris/overridetree.cb | 2 ++ src/mainboard/google/brya/variants/primus/overridetree.cb | 2 ++ src/mainboard/google/brya/variants/redrix/overridetree.cb | 2 ++ src/mainboard/google/brya/variants/redrix4es/overridetree.cb | 2 ++ src/mainboard/google/brya/variants/skolas/overridetree.cb | 2 ++ src/mainboard/google/brya/variants/skolas4es/overridetree.cb | 2 ++ src/mainboard/google/brya/variants/taeko/overridetree.cb | 2 ++ src/mainboard/google/brya/variants/taeko4es/overridetree.cb | 2 ++ src/mainboard/google/brya/variants/taniks/overridetree.cb | 2 ++ src/mainboard/google/brya/variants/vell/overridetree.cb | 2 ++ src/mainboard/google/brya/variants/volmar/overridetree.cb | 2 ++ 25 files changed, 50 insertions(+) (limited to 'src/mainboard') diff --git a/src/mainboard/google/brya/variants/anahera/overridetree.cb b/src/mainboard/google/brya/variants/anahera/overridetree.cb index 0a72246e12..1961e09c58 100644 --- a/src/mainboard/google/brya/variants/anahera/overridetree.cb +++ b/src/mainboard/google/brya/variants/anahera/overridetree.cb @@ -118,6 +118,8 @@ chip soc/intel/alderlake register "device_count" = "6" # DDIA for eDP register "device[0].name" = ""LCD"" + # Internal panel on the first port of the graphics chip + register "device[0].addr" = "0x80010400" # DDIB for HDMI register "device[1].name" = ""DD01"" # TCP0 (DP-1) for port C0 diff --git a/src/mainboard/google/brya/variants/anahera4es/overridetree.cb b/src/mainboard/google/brya/variants/anahera4es/overridetree.cb index ed4037e378..c7cce88989 100644 --- a/src/mainboard/google/brya/variants/anahera4es/overridetree.cb +++ b/src/mainboard/google/brya/variants/anahera4es/overridetree.cb @@ -100,6 +100,8 @@ chip soc/intel/alderlake register "device_count" = "6" # DDIA for eDP register "device[0].name" = ""LCD"" + # Internal panel on the first port of the graphics chip + register "device[0].addr" = "0x80010400" # DDIB for HDMI register "device[1].name" = ""DD01"" # TCP0 (DP-1) for port C0 diff --git a/src/mainboard/google/brya/variants/anraggar/overridetree.cb b/src/mainboard/google/brya/variants/anraggar/overridetree.cb index 2c4cecc6b8..ca9c655194 100644 --- a/src/mainboard/google/brya/variants/anraggar/overridetree.cb +++ b/src/mainboard/google/brya/variants/anraggar/overridetree.cb @@ -200,6 +200,8 @@ chip soc/intel/alderlake register "device_count" = "4" # DDIA for eDP register "device[0].name" = ""LCD"" + # Internal panel on the first port of the graphics chip + register "device[0].addr" = "0x80010400" # DDIB for HDMI # If HDMI is not enumerated in the kernel, then no GFX device should be added for DDIB register "device[1].name" = ""DD01"" diff --git a/src/mainboard/google/brya/variants/banshee/overridetree.cb b/src/mainboard/google/brya/variants/banshee/overridetree.cb index 3e3c33c9dc..38c4528c13 100644 --- a/src/mainboard/google/brya/variants/banshee/overridetree.cb +++ b/src/mainboard/google/brya/variants/banshee/overridetree.cb @@ -99,6 +99,8 @@ chip soc/intel/alderlake register "device_count" = "6" # DDIA for eDP register "device[0].name" = ""LCD"" + # Internal panel on the first port of the graphics chip + register "device[0].addr" = "0x80010400" # DDIB for HDMI register "device[1].name" = ""DD01"" # TCP0 (DP-1) for port C0 diff --git a/src/mainboard/google/brya/variants/brya0/overridetree.cb b/src/mainboard/google/brya/variants/brya0/overridetree.cb index d7eadbe4be..a4a0ae5bee 100644 --- a/src/mainboard/google/brya/variants/brya0/overridetree.cb +++ b/src/mainboard/google/brya/variants/brya0/overridetree.cb @@ -123,6 +123,8 @@ chip soc/intel/alderlake register "device_count" = "6" # DDIA for eDP register "device[0].name" = ""LCD"" + # Internal panel on the first port of the graphics chip + register "device[0].addr" = "0x80010400" # DDIB for HDMI # If HDMI is not enumerated in the kernel, then no GFX device should be added for DDIB register "device[1].name" = ""DD01"" diff --git a/src/mainboard/google/brya/variants/crota/overridetree.cb b/src/mainboard/google/brya/variants/crota/overridetree.cb index b3cab3cf5d..8b671e1914 100644 --- a/src/mainboard/google/brya/variants/crota/overridetree.cb +++ b/src/mainboard/google/brya/variants/crota/overridetree.cb @@ -112,6 +112,8 @@ chip soc/intel/alderlake register "device_count" = "6" # DDIA for eDP register "device[0].name" = ""LCD"" + # Internal panel on the first port of the graphics chip + register "device[0].addr" = "0x80010400" # DDIB for HDMI register "device[1].name" = ""DD01"" # TCP0 (DP-1) for port C0 diff --git a/src/mainboard/google/brya/variants/dochi/overridetree.cb b/src/mainboard/google/brya/variants/dochi/overridetree.cb index 19ace7b197..880b7bcf63 100644 --- a/src/mainboard/google/brya/variants/dochi/overridetree.cb +++ b/src/mainboard/google/brya/variants/dochi/overridetree.cb @@ -92,6 +92,8 @@ chip soc/intel/alderlake register "device_count" = "6" # DDIA for eDP register "device[0].name" = ""LCD"" + # Internal panel on the first port of the graphics chip + register "device[0].addr" = "0x80010400" # DDIB for HDMI register "device[1].name" = ""DD01"" # TCP0 (DP-1) for port C0 diff --git a/src/mainboard/google/brya/variants/felwinter/overridetree.cb b/src/mainboard/google/brya/variants/felwinter/overridetree.cb index 46a841d02e..74f2114453 100644 --- a/src/mainboard/google/brya/variants/felwinter/overridetree.cb +++ b/src/mainboard/google/brya/variants/felwinter/overridetree.cb @@ -98,6 +98,8 @@ chip soc/intel/alderlake register "device_count" = "6" # DDIA for eDP register "device[0].name" = ""LCD"" + # Internal panel on the first port of the graphics chip + register "device[0].addr" = "0x80010400" # DDIB for HDMI register "device[1].name" = ""DD01"" # TCP0 (DP-1) is unused for any ports but still enumerated in the kernel, so GFX device is added for TCP0 diff --git a/src/mainboard/google/brya/variants/gimble/overridetree.cb b/src/mainboard/google/brya/variants/gimble/overridetree.cb index b35a64f828..0de70e5e19 100644 --- a/src/mainboard/google/brya/variants/gimble/overridetree.cb +++ b/src/mainboard/google/brya/variants/gimble/overridetree.cb @@ -79,6 +79,8 @@ chip soc/intel/alderlake register "device_count" = "6" # DDIA for eDP register "device[0].name" = ""LCD"" + # Internal panel on the first port of the graphics chip + register "device[0].addr" = "0x80010400" # DDIB for HDMI register "device[1].name" = ""DD01"" # TCP0 (DP-1) for port C0 diff --git a/src/mainboard/google/brya/variants/gimble4es/overridetree.cb b/src/mainboard/google/brya/variants/gimble4es/overridetree.cb index 196212718e..6351248a4e 100644 --- a/src/mainboard/google/brya/variants/gimble4es/overridetree.cb +++ b/src/mainboard/google/brya/variants/gimble4es/overridetree.cb @@ -44,6 +44,8 @@ chip soc/intel/alderlake register "device_count" = "6" # DDIA for eDP register "device[0].name" = ""LCD"" + # Internal panel on the first port of the graphics chip + register "device[0].addr" = "0x80010400" # DDIB for HDMI register "device[1].name" = ""DD01"" # TCP0 (DP-1) for port C0 diff --git a/src/mainboard/google/brya/variants/kano/overridetree.cb b/src/mainboard/google/brya/variants/kano/overridetree.cb index 8ef5ed2574..cbce0228b1 100644 --- a/src/mainboard/google/brya/variants/kano/overridetree.cb +++ b/src/mainboard/google/brya/variants/kano/overridetree.cb @@ -101,6 +101,8 @@ chip soc/intel/alderlake register "device_count" = "6" # DDIA for eDP register "device[0].name" = ""LCD"" + # Internal panel on the first port of the graphics chip + register "device[0].addr" = "0x80010400" # DDIB for HDMI register "device[1].name" = ""DD01"" # TCP0 (DP-1) for port C0 diff --git a/src/mainboard/google/brya/variants/marasov/overridetree.cb b/src/mainboard/google/brya/variants/marasov/overridetree.cb index 3ea7092b70..64ca6a7f6e 100644 --- a/src/mainboard/google/brya/variants/marasov/overridetree.cb +++ b/src/mainboard/google/brya/variants/marasov/overridetree.cb @@ -146,6 +146,8 @@ chip soc/intel/alderlake register "device_count" = "6" # DDIA for eDP register "device[0].name" = ""LCD"" + # Internal panel on the first port of the graphics chip + register "device[0].addr" = "0x80010400" # DDIB for HDMI register "device[1].name" = ""DD01"" # TCP0 (DP-1) for port C0 diff --git a/src/mainboard/google/brya/variants/mithrax/overridetree.cb b/src/mainboard/google/brya/variants/mithrax/overridetree.cb index cd79b2c3e5..6df9b600f8 100644 --- a/src/mainboard/google/brya/variants/mithrax/overridetree.cb +++ b/src/mainboard/google/brya/variants/mithrax/overridetree.cb @@ -96,6 +96,8 @@ chip soc/intel/alderlake register "device_count" = "6" # DDIA for eDP register "device[0].name" = ""LCD"" + # Internal panel on the first port of the graphics chip + register "device[0].addr" = "0x80010400" # DDIB for HDMI register "device[1].name" = ""DD01"" # TCP0 (DP-1) is unused for any ports but still enumerated in the kernel, so GFX device is added for TCP0 diff --git a/src/mainboard/google/brya/variants/omnigul/overridetree.cb b/src/mainboard/google/brya/variants/omnigul/overridetree.cb index 0942299d0b..4a3d368163 100644 --- a/src/mainboard/google/brya/variants/omnigul/overridetree.cb +++ b/src/mainboard/google/brya/variants/omnigul/overridetree.cb @@ -131,6 +131,8 @@ chip soc/intel/alderlake register "device_count" = "6" # DDIA for eDP register "device[0].name" = ""LCD"" + # Internal panel on the first port of the graphics chip + register "device[0].addr" = "0x80010400" # DDIB for HDMI register "device[1].name" = ""DD01"" # TCP0 (DP-1) for port C0 diff --git a/src/mainboard/google/brya/variants/osiris/overridetree.cb b/src/mainboard/google/brya/variants/osiris/overridetree.cb index e8b78ca405..0c21a61d21 100644 --- a/src/mainboard/google/brya/variants/osiris/overridetree.cb +++ b/src/mainboard/google/brya/variants/osiris/overridetree.cb @@ -75,6 +75,8 @@ chip soc/intel/alderlake register "device_count" = "6" # DDIA for eDP register "device[0].name" = ""LCD"" + # Internal panel on the first port of the graphics chip + register "device[0].addr" = "0x80010400" # DDIB for HDMI register "device[1].name" = ""DD01"" # TCP0 (DP-1) for port C0 diff --git a/src/mainboard/google/brya/variants/primus/overridetree.cb b/src/mainboard/google/brya/variants/primus/overridetree.cb index a06578d816..d815587875 100644 --- a/src/mainboard/google/brya/variants/primus/overridetree.cb +++ b/src/mainboard/google/brya/variants/primus/overridetree.cb @@ -87,6 +87,8 @@ chip soc/intel/alderlake register "device_count" = "6" # DDIA for eDP register "device[0].name" = ""LCD"" + # Internal panel on the first port of the graphics chip + register "device[0].addr" = "0x80010400" # DDIB for HDMI register "device[1].name" = ""DD01"" # TCP0 (DP-1) for port C0 diff --git a/src/mainboard/google/brya/variants/redrix/overridetree.cb b/src/mainboard/google/brya/variants/redrix/overridetree.cb index 73016151df..f8502aa671 100644 --- a/src/mainboard/google/brya/variants/redrix/overridetree.cb +++ b/src/mainboard/google/brya/variants/redrix/overridetree.cb @@ -133,6 +133,8 @@ chip soc/intel/alderlake register "device_count" = "6" # DDIA for eDP register "device[0].name" = ""LCD"" + # Internal panel on the first port of the graphics chip + register "device[0].addr" = "0x80010400" # DDIB for HDMI register "device[1].name" = ""DD01"" # TCP0 (DP-1) for port C0 diff --git a/src/mainboard/google/brya/variants/redrix4es/overridetree.cb b/src/mainboard/google/brya/variants/redrix4es/overridetree.cb index 1a619f8202..6e002157cc 100644 --- a/src/mainboard/google/brya/variants/redrix4es/overridetree.cb +++ b/src/mainboard/google/brya/variants/redrix4es/overridetree.cb @@ -114,6 +114,8 @@ chip soc/intel/alderlake register "device_count" = "6" # DDIA for eDP register "device[0].name" = ""LCD"" + # Internal panel on the first port of the graphics chip + register "device[0].addr" = "0x80010400" # DDIB for HDMI register "device[1].name" = ""DD01"" # TCP0 (DP-1) for port C0 diff --git a/src/mainboard/google/brya/variants/skolas/overridetree.cb b/src/mainboard/google/brya/variants/skolas/overridetree.cb index bb6d1eac08..3f170087e0 100644 --- a/src/mainboard/google/brya/variants/skolas/overridetree.cb +++ b/src/mainboard/google/brya/variants/skolas/overridetree.cb @@ -122,6 +122,8 @@ chip soc/intel/alderlake register "device_count" = "6" # DDIA for eDP register "device[0].name" = ""LCD"" + # Internal panel on the first port of the graphics chip + register "device[0].addr" = "0x80010400" # DDIB for HDMI # If HDMI is not enumerated in the kernel, then no GFX device should be added for DDIB register "device[1].name" = ""DD01"" diff --git a/src/mainboard/google/brya/variants/skolas4es/overridetree.cb b/src/mainboard/google/brya/variants/skolas4es/overridetree.cb index b020d012ac..326c675e49 100644 --- a/src/mainboard/google/brya/variants/skolas4es/overridetree.cb +++ b/src/mainboard/google/brya/variants/skolas4es/overridetree.cb @@ -117,6 +117,8 @@ chip soc/intel/alderlake register "device_count" = "6" # DDIA for eDP register "device[0].name" = ""LCD"" + # Internal panel on the first port of the graphics chip + register "device[0].addr" = "0x80010400" # DDIB for HDMI # If HDMI is not enumerated in the kernel, then no GFX device should be added for DDIB register "device[1].name" = ""DD01"" diff --git a/src/mainboard/google/brya/variants/taeko/overridetree.cb b/src/mainboard/google/brya/variants/taeko/overridetree.cb index 744a8707bf..27584cd360 100644 --- a/src/mainboard/google/brya/variants/taeko/overridetree.cb +++ b/src/mainboard/google/brya/variants/taeko/overridetree.cb @@ -142,6 +142,8 @@ chip soc/intel/alderlake register "device_count" = "3" # DDIA for eDP register "device[0].name" = ""LCD"" + # Internal panel on the first port of the graphics chip + register "device[0].addr" = "0x80010400" # DDIB is unused and HDMI is not enumerated in the kernel, so no GFX device is added for DDIB # TCP0 (DP-1) for port C0 register "device[1].name" = ""DD01"" diff --git a/src/mainboard/google/brya/variants/taeko4es/overridetree.cb b/src/mainboard/google/brya/variants/taeko4es/overridetree.cb index a2c79d5212..22b3ca7cae 100644 --- a/src/mainboard/google/brya/variants/taeko4es/overridetree.cb +++ b/src/mainboard/google/brya/variants/taeko4es/overridetree.cb @@ -123,6 +123,8 @@ chip soc/intel/alderlake register "device_count" = "3" # DDIA for eDP register "device[0].name" = ""LCD"" + # Internal panel on the first port of the graphics chip + register "device[0].addr" = "0x80010400" # DDIB is unused and HDMI is not enumerated in the kernel, so no GFX device is added for DDIB # TCP0 (DP-1) for port C0 register "device[1].name" = ""DD01"" diff --git a/src/mainboard/google/brya/variants/taniks/overridetree.cb b/src/mainboard/google/brya/variants/taniks/overridetree.cb index 0d335b65a9..1e0101a0e5 100644 --- a/src/mainboard/google/brya/variants/taniks/overridetree.cb +++ b/src/mainboard/google/brya/variants/taniks/overridetree.cb @@ -119,6 +119,8 @@ chip soc/intel/alderlake register "device_count" = "3" # DDIA for eDP register "device[0].name" = ""LCD"" + # Internal panel on the first port of the graphics chip + register "device[0].addr" = "0x80010400" # DDIB is unused and HDMI is not enumerated in the kernel, so no GFX device is added for DDIB # TCP0 (DP-1) for port C0 register "device[1].name" = ""DD01"" diff --git a/src/mainboard/google/brya/variants/vell/overridetree.cb b/src/mainboard/google/brya/variants/vell/overridetree.cb index 30df62aa27..69563122ab 100644 --- a/src/mainboard/google/brya/variants/vell/overridetree.cb +++ b/src/mainboard/google/brya/variants/vell/overridetree.cb @@ -98,6 +98,8 @@ chip soc/intel/alderlake register "device_count" = "5" # DDIA for eDP register "device[0].name" = ""LCD"" + # Internal panel on the first port of the graphics chip + register "device[0].addr" = "0x80010400" # DDIB is unused and HDMI is not enumerated in the kernel, so no GFX device is added for DDIB # TCP0 (DP-1) for port C0 register "device[1].name" = ""DD01"" diff --git a/src/mainboard/google/brya/variants/volmar/overridetree.cb b/src/mainboard/google/brya/variants/volmar/overridetree.cb index c0dccfa9fc..1de6626b54 100644 --- a/src/mainboard/google/brya/variants/volmar/overridetree.cb +++ b/src/mainboard/google/brya/variants/volmar/overridetree.cb @@ -93,6 +93,8 @@ chip soc/intel/alderlake register "device_count" = "6" # DDIA for eDP register "device[0].name" = ""LCD"" + # Internal panel on the first port of the graphics chip + register "device[0].addr" = "0x80010400" # DDIB for HDMI register "device[1].name" = ""DD01"" # TCP0 (DP-1) for port C0 -- cgit v1.2.3