Re: [PATCH v3 3/5] phy: qualcomm: qmp-combo: Add preliminary USB4 support
Abel Vesa <[email protected]>
| Newsgroups | org.infradead.lists.linux-phy,org.kernel.vger.linux-arm-msm,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <ge3ufdl2dwvl3tff77dqmkbcddp7zepvves7uqyyuxkiqsewfe@nftn252kk5zt> |
On 26-07-30 16:19:15, Konrad Dybcio wrote: > From: Konrad Dybcio <[email protected]> > > Some Combo PHYs (so far only on SC8280XP, X1E80100 and Glymur), come in > a flavor called USB43DP, which as the name implies, features USB4, USB3 > and DP signal processing capabilities. In that architecture, USB3 and > USB4 PHYs share the same USB_PLL while featuring separate logic spaces. > The DP part is roughly the same as on the instances without USB4. > > The USB4 and USB3/DP operation modes of the PHY are mutually exclusive. > Only one USB protocol (and flavor of pipe clock) can be active at a > given moment (not to be confused with USB3 not being able to be > tunneled as USB4 packets - that of course remains possible). > The DP PLL is still used for clocking tunneled DP links. It may be > turned off to save power when no tunnels are active, but that's left as > a TODO item for now. > > Due to the nature of USB4, the Type-C handling happens entirely inside > the Host Router, and as such the QMPPHY's mux_set() function is > nullified for the period when USB4 PHY remains active. This is strictly > necessary, as the Host Router driver is going to excercise manual > control over the USB4 PHY's power state, which is needed by the suspend > and resume flows. Failure to control that synchronously with other > parts of the code results in a SoC crash by unlocked access. > > Because of that, a new struct phy is spawned to expose the USB4 mode, > along with a .set_mode callback to allow toggling between USB4 and TBT3 > submodes. > > Thunderbolt 3, having a number of differences vs USB4, requires a > couple specific overrides, pertaining to electrical characteristics, > which are easily accommodated for. > > Signed-off-by: Konrad Dybcio <[email protected]> Reviewed-by: Abel Vesa <[email protected]> -- linux-phy mailing list [email protected] https://lists.infradead.org/mailman/listinfo/linux-phy