Attention is currently required from: Chiranjeevi Rapolu, John Zhao, Duncan Laurie, Brandon Breitenstein. Furquan Shaikh has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/51194 )
Change subject: soc/intel/tigerlake: Enable TCSS Muxes to disconnect mode during boot ......................................................................
Patch Set 1:
(6 comments)
Commit Message:
https://review.coreboot.org/c/coreboot/+/51194/comment/37c34829_1db6f797 PS1, Line 12: the ports are not initialized till the ports are set to the appropriate mode. In addition to setting the muxes to disconnected state, early_tcss driver is also setting up the port maps for TCSS USB2/3 ports. Can you please capture that information in the commit message too? As per the bug, it is the port map that seems to be critical rather than setting the disconnected state.
File src/soc/intel/tigerlake/Kconfig:
https://review.coreboot.org/c/coreboot/+/51194/comment/78e03dd4_9e22c368 PS1, Line 250: Enables TCSS to initialize devices before Kernel. Sets up USB2/3 port mapping in TCSS Mux and sets MUX state to disconnected.
File src/soc/intel/tigerlake/early_tcss.c:
https://review.coreboot.org/c/coreboot/+/51194/comment/15de30af_ab985898 PS1, Line 267: initialize_mux_to_disc_mode Probably just say `tcss_init_mux()`? It does two things: 1. Resets MUX to disconnected state 2. Sets up USB2/3 port mapping in the MUX.
https://review.coreboot.org/c/coreboot/+/51194/comment/1fde4cb0_150a8210 PS1, Line 274: inial initial
https://review.coreboot.org/c/coreboot/+/51194/comment/424af763_39265726 PS1, Line 277: update_tcss_mux I think this should be renamed to `tcss_configure_dp_mode()` so that the intent is clear.
https://review.coreboot.org/c/coreboot/+/51194/comment/14277f39_731e61c4 PS1, Line 322: mainboard_tcss_get_port_info I don't think you need another callback here. `mainboard_tcss_fill_mux_info()` is obtaining the information about TCSS ports from the mainboard. That should be sufficient. Also, this code should be run before the early display check. Basically something like:
``` void tcss_early_configure(void) { // Step 1: Get MUX info using mainboard_tcss_fill_mux_info() // Step 2: Reset MUX to disconnected state and set up USB2/3 port mapping // Step 3: If display init is not required, return. // Step 4: If display init is required, update MUX for DP mode. } ```