This adds the missing bits to support the USB-C Altmode support on SM8550. These are the following changes since the previous SM8450 SoC: - No more GLINK altmode events for USB only changes, only DP - Type-C orientation is available on a PMIC signal connected to a GPIO line - When altmode is disconnected, an 0xff mode event is sent. The 0xff altmode is translated as a SAFE type-c mux mode. The fact No more GLINK altmode events for USB needs to be resolved in a separate patchset. Redriver driver & bindings dependency at [1]. [1] https://lore.kernel.org/all/20230601-topic-sm8x50-upstream-redriver-v2-0-dda89b22b1c0@xxxxxxxxxx/ Signed-off-by: Neil Armstrong <neil.armstrong@xxxxxxxxxx> --- Changes in v5: - switch to single port instead of ports for fsa node in MTP & QRD - Link to v4: https://lore.kernel.org/r/20230601-topic-sm8550-upstream-type-c-v4-0-eb2ae960b8dc@xxxxxxxxxx Changes in v4: - Drop the orientation gpio handling code and bindings until the situatin is resolved - Link to v3: https://lore.kernel.org/r/20230601-topic-sm8550-upstream-type-c-v3-0-22c9973012b6@xxxxxxxxxx Changes in v3: - Fix fsa node names in both QRD amd MTP nodes - Add missing orientation-gpios in MTP dt - Remove invalid svid property - Link to v2: https://lore.kernel.org/r/20230601-topic-sm8550-upstream-type-c-v2-0-3bbdf37575c3@xxxxxxxxxx Changes in v2: - Updated redriver node to use retimer-switch on QRD - Fixed redriver data-lane according to v2 bindings - Added review/ack tags - Added new change to handle retimer-switch in pmic-glink altmode driver - Link to v1: https://lore.kernel.org/r/20230601-topic-sm8550-upstream-type-c-v1-0-d4d97b4d8bab@xxxxxxxxxx --- Neil Armstrong (6): soc: qcom: pmic_glink_altmode: handle safe mode when disconnect qcom: pmic_glink_altmode: add retimer-switch support qcom: pmic_glink: enable altmode for SM8550 arm64: dts: qcom: sm8550: add ports subnodes in usb/dp qmpphy node arm64: dts: qcom: sm8550-mtp: add pmic glink port/endpoints arm64: dts: qcom: sm8550-qrd: add pmic glink port/endpoints arch/arm64/boot/dts/qcom/sm8550-mtp.dts | 59 ++++++++++++++++++++- arch/arm64/boot/dts/qcom/sm8550-qrd.dts | 91 ++++++++++++++++++++++++++++++++- arch/arm64/boot/dts/qcom/sm8550.dtsi | 26 ++++++++++ drivers/soc/qcom/pmic_glink.c | 6 +-- drivers/soc/qcom/pmic_glink_altmode.c | 61 +++++++++++++++++++++- 5 files changed, 233 insertions(+), 10 deletions(-) --- base-commit: e602e10c923db4435573997d383a145ee38ae333 change-id: 20230601-topic-sm8550-upstream-type-c-e85b4d971450 Best regards, -- Neil Armstrong <neil.armstrong@xxxxxxxxxx>