On 15/05/2023 16:36, Bryan O'Donoghue wrote:
Bootable tree Link: https://git.codelinaro.org/bryan.odonoghue/kernel/-/tree/usb-next-23-05-14-qcom-wrapper-typec-mux-bjorn V8: - Makes pm8150b_typec::status = disabled by default - bod - Greg merged the TCPM description and driver to usb-next so two patches less now. I've rebased this series on to usb-next using "--base=auto" All of the kernel robot dts/yaml checks should now pass against usb-next / a4422ff221429c600c3dc5d0394fb3738b89d040 V7: - Adds R/B to "dt-bindings: phy: qcom,sc7180-qmp-usb3-dp-phy: Add input and output ports" - Krzysztof - Fixes indicated, adds R/B to "dt-bindings: usb: Add Qualcomm PMIC Type-C" - Krzysztof - Fixes indicated, adds R/B to "usb: typec: qcom: Add Qualcomm PMIC Type-C driver" - Guenter - Fixes indicated, adds R/B to "usb: typec: qcom: Add Qualcomm PMIC Type-C driver" - Caleb - Adds R/B to "arm64: dts: qcom: sm8250: Define ports for qmpphy orientation-switching" - Konrad - Adds R/B to "arm64: dts: qcom: qrb5165-rb5: Switch on Type-C VBUS boost" - Konrad - Fixes indicated, adds R/B to "arm64: dts: qcom: qrb5165-rb5: Switch on basic TCPM" - Jianhua, Konrad - Connector ports/endpoints left inside of connector Documentation/devicetree/bindings/connector/usb-connector.yaml - Jianhua - dwc3_role_switch_in -> usb_1_dwc3_role_switch_in qmpphy_typec_mux_in -> usb_1_qmpphy_typec_mux_in Both ports/endpoints defined inside of pm8150b dtsi - Konrad I modified the name of both so that the port/endpoint would be directly adjacent to the containing node in the dtsi file for code locality/readbility - bod - Fixes newline indicated "arm64: dts: qcom: qrb5165-rb5: Switch on TCPM usb-role-switching for usb_1" - Jianhua, Konrad - Fixes newline indicated "arm64: dts: qcom: qrb5165-rb5: Switch on TCPM orientation-switch for usb_1_qmpphy" - Jianhua, Konrad - connector I have left the connector defintion and its ports/endpoints in the platform dts The reason for this a) Prior art e.g. arch/arm64/boot/dts/qcom/sc8280xp* b) The connector is really a non-SoC/PMIC component its something that is defined for your platform. I'm open to further debate on this topic: Link: https://imgflip.com/i/7kw6ck - port@1 -> port@1 "arm64: dts: qcom: qrb5165-rb5: Switch on TCPM orientation-switch for usb_1_qmpphy" - Jianhua - OF: graph: no port node found in /soc@0/spmi@c440000/pmic@2/typec@1500 I left this as-is since the DT model we want is to connect the connector directly to the PHY for orientation or controller for data-role switching I similarly didn't put this hack in place to remove the warning but "it would work" V6: - I'm dropping the previous V1-V6 log because the text is getting too long here's a link to the previous cover letter instead Link: https://lore.kernel.org/linux-arm-msm/20230501121111.1058190-1-bryan.odonoghue@xxxxxxxxxx/ Bryan O'Donoghue (11): dt-bindings: regulator: qcom,usb-vbus-regulator: Mark reg as required dt-bindings: regulator: qcom,usb-vbus-regulator: Mark regulator-*-microamp required dt-bindings: phy: qcom,sc7180-qmp-usb3-dp-phy: Add orientation-switch as optional dt-bindings: phy: qcom,sc7180-qmp-usb3-dp-phy: Add input and output ports dt-bindings: mfd: qcom,spmi-pmic: Add typec to SPMI device types arm64: dts: qcom: sm8250: Define ports for qmpphy orientation-switching arm64: dts: qcom: pm8150b: Add a TCPM description arm64: dts: qcom: qrb5165-rb5: Switch on Type-C VBUS boost arm64: dts: qcom: qrb5165-rb5: Switch on basic TCPM arm64: dts: qcom: qrb5165-rb5: Switch on TCPM usb-role-switching for usb_1 arm64: dts: qcom: qrb5165-rb5: Switch on TCPM orientation-switch for usb_1_qmpphy .../bindings/mfd/qcom,spmi-pmic.yaml | 4 ++ .../phy/qcom,sc7180-qmp-usb3-dp-phy.yaml | 44 +++++++++++++++ .../regulator/qcom,usb-vbus-regulator.yaml | 10 +++- arch/arm64/boot/dts/qcom/pm8150b.dtsi | 40 +++++++++++++ arch/arm64/boot/dts/qcom/qrb5165-rb5.dts | 56 ++++++++++++++++++- arch/arm64/boot/dts/qcom/sm8250.dtsi | 18 ++++++ 6 files changed, 170 insertions(+), 2 deletions(-)
Tested-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx> -- With best wishes Dmitry