diff --git a/arch/arm64/boot/dts/apple/t6022-j475d.dts b/arch/arm64/boot/dts/apple/t6022-j475d.dts index 6c09afcffc9a69..35f002d23d6e8d 100644 --- a/arch/arm64/boot/dts/apple/t6022-j475d.dts +++ b/arch/arm64/boot/dts/apple/t6022-j475d.dts @@ -45,6 +45,15 @@ power-domains = <&ps_dispext0_cpu0_die1>, <&ps_dptx_phy_ps_die1>; }; +/* + * HDMI scans out through dispext0 on die 1, and the rear USB-C ports through + * dcpext1/dispext1 on die 0 (see t602x-j474-j475.dtsi). + */ +&display { + iommus = <&dispext0_dart_die1 0 0x100 0x0 0x10 0x0>, + <&dispext1_dart 0 0x100 0x0 0x10 0x0>; +}; + &dcpext0_die1 { // J180 misses "function-dp2hdmi_pwr_en" dp2hdmi-pwren-gpios = <&smc_gpio 25 GPIO_ACTIVE_HIGH>; diff --git a/arch/arm64/boot/dts/apple/t602x-j474-j475.dtsi b/arch/arm64/boot/dts/apple/t602x-j474-j475.dtsi index 822760c80ae598..22827a0ffab38f 100644 --- a/arch/arm64/boot/dts/apple/t602x-j474-j475.dtsi +++ b/arch/arm64/boot/dts/apple/t602x-j474-j475.dtsi @@ -24,7 +24,6 @@ #ifdef APPLE_T602X_NON_ULTRA / { aliases { - dcpext1 = &dcpext1; /* Same Thunderbolt aliases as the 14/16-inch boards. This mini * brings up a fourth controller. */ @@ -67,6 +66,19 @@ iommus = <&dispext0_dart 0 0x100 0x0 0x10 0x0>, <&dispext1_dart 0 0x100 0x0 0x10 0x0>; }; +#endif + +/* + * dcpext1 on die 0 drives the rear USB-C ports through the display crossbar + * on all of these boards, M2 Ultra included: macOS routes a DP alt mode + * display on the J475d's rear ports to DCPEXT1 as well. Only the USB4 and + * PCIe-C wiring below stays non-Ultra. + */ +/ { + aliases { + dcpext1 = &dcpext1; + }; +}; &dispext1_dart { status = "okay"; @@ -229,6 +241,7 @@ apple,always-on; }; +#ifdef APPLE_T602X_NON_ULTRA &usb4_0_acio { apple,pcie-tunnel = <&usb4_0_pcie_tunnel>; };