From 2c36b1b6675a81213c73d9655211750a6afdeef5 Mon Sep 17 00:00:00 2001 From: Peter Marheine Date: Tue, 17 Aug 2021 11:06:01 +1000 Subject: [PATCH] mb/google/zork: only enable RTD2141 when present An MST hub is only present on some devices that are configured with a particular daughterboard indicated by EC fw_config, so add a fw_config probe that matches the USB daughterboard ID from CBI to only enable it on devices where present, using variant-specific daughterboard IDs. BUG=b:185862297 TEST=RTD2141 remains in ACPI tables on a berknip with Dali DB, and is not present on the same system if probe is changed to enable it for picasso DB. BRANCH=zork Change-Id: I4ada9b492ab221fa98350bf2faf27a23342f3a55 Signed-off-by: Peter Marheine Reviewed-on: https://review.coreboot.org/c/coreboot/+/56990 Tested-by: build bot (Jenkins) Reviewed-by: Sam McNally --- .../zork/variants/baseboard/devicetree_trembyle.cb | 8 +++++++- .../google/zork/variants/berknip/overridetree.cb | 12 ++++++++++++ .../google/zork/variants/morphius/overridetree.cb | 12 ++++++++++++ .../google/zork/variants/trembyle/overridetree.cb | 13 +++++++++++++ .../google/zork/variants/woomax/overridetree.cb | 11 +++++++++++ 5 files changed, 55 insertions(+), 1 deletion(-) diff --git a/src/mainboard/google/zork/variants/baseboard/devicetree_trembyle.cb b/src/mainboard/google/zork/variants/baseboard/devicetree_trembyle.cb index 8b1c68a367..a475202888 100644 --- a/src/mainboard/google/zork/variants/baseboard/devicetree_trembyle.cb +++ b/src/mainboard/google/zork/variants/baseboard/devicetree_trembyle.cb @@ -1,4 +1,9 @@ # SPDX-License-Identifier: GPL-2.0-or-later + +fw_config + field USB_DAUGHTERBOARD 0 3 end +end + chip soc/amd/picasso # Set FADT Configuration @@ -408,7 +413,8 @@ chip soc/amd/picasso register "name" = ""MSTH"" register "uid" = "1" register "desc" = ""Realtek RTD2141B"" - device i2c 4a on end + # Device presence is variant-specific + device i2c 4a alias db_mst off end end end end diff --git a/src/mainboard/google/zork/variants/berknip/overridetree.cb b/src/mainboard/google/zork/variants/berknip/overridetree.cb index fe2eadea61..793be783dc 100644 --- a/src/mainboard/google/zork/variants/berknip/overridetree.cb +++ b/src/mainboard/google/zork/variants/berknip/overridetree.cb @@ -1,4 +1,12 @@ # SPDX-License-Identifier: GPL-2.0-or-later + +fw_config + field USB_DAUGHTERBOARD + option BERKNIP_DB_PICASSO 0 + option BERKNIP_DB_DALI 1 + end +end + chip soc/amd/picasso # Start : OPN Performance Configuration @@ -171,4 +179,8 @@ chip soc/amd/picasso end end + device ref db_mst on + probe USB_DAUGHTERBOARD BERKNIP_DB_DALI + end + end # chip soc/amd/picasso diff --git a/src/mainboard/google/zork/variants/morphius/overridetree.cb b/src/mainboard/google/zork/variants/morphius/overridetree.cb index cfc9cb3320..bb5e0e7c82 100644 --- a/src/mainboard/google/zork/variants/morphius/overridetree.cb +++ b/src/mainboard/google/zork/variants/morphius/overridetree.cb @@ -1,4 +1,12 @@ # SPDX-License-Identifier: GPL-2.0-or-later + +fw_config + field USB_DAUGHTERBOARD + option MORPHIUS_DB_PICASSO 0 + option MORPHIUS_DB_DALI 1 + end +end + chip soc/amd/picasso # Start : OPN Performance Configuration @@ -136,4 +144,8 @@ chip soc/amd/picasso end end + device ref db_mst on + probe USB_DAUGHTERBOARD MORPHIUS_DB_DALI + end + end # chip soc/amd/picasso diff --git a/src/mainboard/google/zork/variants/trembyle/overridetree.cb b/src/mainboard/google/zork/variants/trembyle/overridetree.cb index a558aca00e..394b3bceb9 100644 --- a/src/mainboard/google/zork/variants/trembyle/overridetree.cb +++ b/src/mainboard/google/zork/variants/trembyle/overridetree.cb @@ -1,4 +1,13 @@ # SPDX-License-Identifier: GPL-2.0-or-later + +fw_config + field USB_DAUGHTERBOARD + option TREMBYLE_DB_PICASSO 0 + option TREMBYLE_DB_DALI 1 + option TREMBYLE_DB_DALI_HDMI 2 + end +end + chip soc/amd/picasso # Start : OPN Performance Configuration @@ -104,4 +113,8 @@ chip soc/amd/picasso end end + device ref db_mst on + probe USB_DAUGHTERBOARD TREMBYLE_DB_DALI_HDMI + end + end # chip soc/amd/picasso diff --git a/src/mainboard/google/zork/variants/woomax/overridetree.cb b/src/mainboard/google/zork/variants/woomax/overridetree.cb index 20d4783a9b..82a060f7b7 100644 --- a/src/mainboard/google/zork/variants/woomax/overridetree.cb +++ b/src/mainboard/google/zork/variants/woomax/overridetree.cb @@ -1,5 +1,12 @@ # SPDX-License-Identifier: GPL-2.0-or-later +fw_config + field USB_DAUGHTERBOARD + option WOOMAX_DB_PICASSO 0 + option WOOMAX_DB_DALI 1 + end +end + chip soc/amd/picasso # Start : OPN Performance Configuration @@ -110,4 +117,8 @@ chip soc/amd/picasso end end + device ref db_mst on + probe USB_DAUGHTERBOARD WOOMAX_DB_DALI + end + end # chip soc/amd/picasso