diff options
author | Matt DeVillier <matt.devillier@gmail.com> | 2024-11-01 09:56:36 -0500 |
---|---|---|
committer | Matt DeVillier <matt.devillier@gmail.com> | 2024-11-04 19:54:52 +0000 |
commit | c7bca700c8dbbdfaf47a27f287bbbab30a72313a (patch) | |
tree | f1ff25c87ce47ee5b81564684b5575c859cf388c | |
parent | 4953648253598ff5ebeeaf38fa4f3a23fd8b0e97 (diff) |
mb/google/fizz: Fix USB port defintions
commit 6c83a71b0a80 ("skl mainboards/dt: Move usb{2,3}_ports settings
into XHCI device scope") not only moved the USB port definitions under
the XHCI device reference, but also combined multiple register
definitions. In doing so, it broke the inheritance from the baseboard,
since the variant overridetree registers now replaced the entire
usb2_ports/usb3_ports structs, rather than replacing individual array
elements therein. This resulted in any USB ports inherited from the
baseboard and not overridden by the variant being non-functional as they
were not included in the resulting combined devicetree.
To fix this, return to overriding individual array elements in the
usb2/3_ports structs.
TEST=build/boot google/fizz/var/karma. Verify all USB ports present and
functional. Verify mainboard/static.c in built shows all ports.
Change-Id: I0e80bf4949a857c21d44537eb720a7a8a7db2f80
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84955
Reviewed-by: Nicholas Sudsgaard <devel+coreboot@nsudsgaard.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
3 files changed, 34 insertions, 44 deletions
diff --git a/src/mainboard/google/fizz/variants/baseboard/devicetree.cb b/src/mainboard/google/fizz/variants/baseboard/devicetree.cb index 2976deb12d..25114f055b 100644 --- a/src/mainboard/google/fizz/variants/baseboard/devicetree.cb +++ b/src/mainboard/google/fizz/variants/baseboard/devicetree.cb @@ -204,25 +204,22 @@ chip soc/intel/skylake device ref igpu on end device ref sa_thermal on end device ref south_xhci on - register "usb2_ports" = "{ - [0] = USB2_PORT_LONG(OC0), // Type-C - [1] = USB2_PORT_MID(OC3), // Type-A Rear - [2] = USB2_PORT_MID(OC2), // Type-A Front - [3] = USB2_PORT_MID(OC2), // Type-A Front - [4] = USB2_PORT_MID(OC1), // Type-A Rear - [5] = USB2_PORT_MID(OC1), // Type-A Rear - [6] = USB2_PORT_MID(OC_SKIP), // Bluetooth - [7] = USB2_PORT_MID(OC_SKIP), // Type-A 2.0 / Debug - }" + register "usb2_ports[0]" = "USB2_PORT_LONG(OC0)" # Type-C + register "usb2_ports[1]" = "USB2_PORT_MID(OC3)" # Type-A Rear + register "usb2_ports[2]" = "USB2_PORT_MID(OC2)" # Type-A Front + register "usb2_ports[3]" = "USB2_PORT_MID(OC2)" # Type-A Front + register "usb2_ports[4]" = "USB2_PORT_MID(OC1)" # Type-A Rear + register "usb2_ports[5]" = "USB2_PORT_MID(OC1)" # Type-A Rear + register "usb2_ports[6]" = "USB2_PORT_MID(OC_SKIP)" # Bluetooth + register "usb2_ports[7]" = "USB2_PORT_MID(OC_SKIP)" # Type-A 2.0 / Debug + + register "usb3_ports[0]" = "USB3_PORT_DEFAULT(OC0)" # Type-C + register "usb3_ports[1]" = "USB3_PORT_DEFAULT(OC3)" # Type-A Rear + register "usb3_ports[2]" = "USB3_PORT_DEFAULT(OC2)" # Type-A Front + register "usb3_ports[3]" = "USB3_PORT_DEFAULT(OC2)" # Type-A Front + register "usb3_ports[4]" = "USB3_PORT_DEFAULT(OC1)" # Type-A Rear + register "usb3_ports[5]" = "USB3_PORT_DEFAULT(OC1)" # Type-A Rear - register "usb3_ports" = "{ - [0] = USB3_PORT_DEFAULT(OC0), // Type-C - [1] = USB3_PORT_DEFAULT(OC3), // Type-A Rear - [2] = USB3_PORT_DEFAULT(OC2), // Type-A Front - [3] = USB3_PORT_DEFAULT(OC2), // Type-A Front - [4] = USB3_PORT_DEFAULT(OC1), // Type-A Rear - [5] = USB3_PORT_DEFAULT(OC1), // Type-A Rear - }" chip drivers/usb/acpi register "desc" = ""Root Hub"" register "type" = "UPC_TYPE_HUB" diff --git a/src/mainboard/google/fizz/variants/endeavour/overridetree.cb b/src/mainboard/google/fizz/variants/endeavour/overridetree.cb index 649b5c11f6..f359bf3a6a 100644 --- a/src/mainboard/google/fizz/variants/endeavour/overridetree.cb +++ b/src/mainboard/google/fizz/variants/endeavour/overridetree.cb @@ -22,23 +22,20 @@ chip soc/intel/skylake device domain 0 on device ref south_xhci on - register "usb2_ports" = "{ - [0] = USB2_PORT_LONG(OC_SKIP), // Type-C - [1] = USB2_PORT_MID(OC_SKIP), // HDMI - [2] = USB2_PORT_MID(OC2), // Type-A Rear - [3] = USB2_PORT_MID(OC2), // Type-A Rear - [4] = USB2_PORT_MID(OC3), // Type-A Rear - [5] = USB2_PORT_MID(OC_SKIP), // HDMI Audio - [6] = USB2_PORT_MID(OC_SKIP), // Bluetooth - }" + register "usb2_ports[0]" = "USB2_PORT_LONG(OC_SKIP)" # Type-C + register "usb2_ports[1]" = "USB2_PORT_MID(OC_SKIP)" # HDMI + register "usb2_ports[2]" = "USB2_PORT_MID(OC2)" # Type-A Rear + register "usb2_ports[3]" = "USB2_PORT_MID(OC2)" # Type-A Rear + register "usb2_ports[4]" = "USB2_PORT_MID(OC3)" # Type-A Rear + register "usb2_ports[5]" = "USB2_PORT_MID(OC_SKIP)" # HDMI Audio + register "usb2_ports[6]" = "USB2_PORT_MID(OC_SKIP)" # Bluetooth + + register "usb3_ports[0]" = "USB3_PORT_DEFAULT(OC_SKIP)" # Type-C + register "usb3_ports[1]" = "USB3_PORT_DEFAULT(OC_SKIP)" # HDMI + register "usb3_ports[2]" = "USB3_PORT_DEFAULT(OC2)" # Type-A Rear + register "usb3_ports[3]" = "USB3_PORT_DEFAULT(OC2)" # Type-A Rear + register "usb3_ports[4]" = "USB3_PORT_DEFAULT(OC3)" # Type-A Rear - register "usb3_ports" = "{ - [0] = USB3_PORT_DEFAULT(OC_SKIP), // Type-C - [1] = USB3_PORT_DEFAULT(OC_SKIP), // HDMI - [2] = USB3_PORT_DEFAULT(OC2), // Type-A Rear - [3] = USB3_PORT_DEFAULT(OC2), // Type-A Rear - [4] = USB3_PORT_DEFAULT(OC3), // Type-A Rear - }" chip drivers/usb/acpi device usb 0.0 on chip drivers/usb/acpi diff --git a/src/mainboard/google/fizz/variants/karma/overridetree.cb b/src/mainboard/google/fizz/variants/karma/overridetree.cb index 25b39f4fbe..53fef3c4f3 100644 --- a/src/mainboard/google/fizz/variants/karma/overridetree.cb +++ b/src/mainboard/google/fizz/variants/karma/overridetree.cb @@ -15,17 +15,13 @@ chip soc/intel/skylake #| Camera | 8 | | #| Touchsreen | 10 | | #+----------------+-------+-----------------------------------+ - register "usb2_ports" = "{ - [2] = USB2_PORT_MID(OC2), // Type-A Side - [3] = USB2_PORT_MID(OC_SKIP), // Card reader - [7] = USB2_PORT_MID(OC_SKIP), // Camera - [9] = USB2_PORT_MID(OC_SKIP), // Touchscreen - }" + register "usb2_ports[2]" = "USB2_PORT_MID(OC2)" # Type-A Side + register "usb2_ports[3]" = "USB2_PORT_MID(OC_SKIP)" # Card reader + register "usb2_ports[7]" = "USB2_PORT_MID(OC_SKIP)" # Camera + register "usb2_ports[9]" = "USB2_PORT_MID(OC_SKIP)" # Touchscreen - register "usb3_ports" = "{ - [2] = USB3_PORT_DEFAULT(OC2), // Type-A Side - [3] = USB3_PORT_DEFAULT(OC_SKIP), // Card reader - }" + register "usb3_ports[2]" = "USB3_PORT_DEFAULT(OC2)" # Type-A Side + register "usb3_ports[3]" = "USB3_PORT_DEFAULT(OC_SKIP)" # Card reader chip drivers/usb/acpi device usb 0.0 on |