Message ID | 20230501121111.1058190-14-bryan.odonoghue@linaro.org (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | Add Qualcomm PMIC TPCM support | expand |
On Mon, May 01, 2023 at 01:11:11PM +0100, Bryan O'Donoghue wrote: > Switch on USB orientation-switching for usb_1_qmp via TCPM. Detecting the > orientation switch is required to get the PHY to reset and bring-up the PHY > with the CC lines set to the appropriate lane. > > Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> > --- > arch/arm64/boot/dts/qcom/qrb5165-rb5.dts | 14 ++++++++++++++ > 1 file changed, 14 insertions(+) > > diff --git a/arch/arm64/boot/dts/qcom/qrb5165-rb5.dts b/arch/arm64/boot/dts/qcom/qrb5165-rb5.dts > index b5cc45358a474..8935a8e327904 100644 > --- a/arch/arm64/boot/dts/qcom/qrb5165-rb5.dts > +++ b/arch/arm64/boot/dts/qcom/qrb5165-rb5.dts > @@ -1295,6 +1295,14 @@ &usb_1_qmpphy { > > vdda-phy-supply = <&vreg_l9a_1p2>; > vdda-pll-supply = <&vreg_l18a_0p92>; > + orientation-switch; > + ports { Add new line before subnode > + port@1 { > + qmpphy_typec_mux_in: endpoint { > + remote-endpoint = <&pm8150b_typec_mux_out>; > + }; > + }; > + }; > }; > > &usb_2 { > @@ -1375,6 +1383,12 @@ pm8150b_role_switch_out: endpoint { > remote-endpoint = <&dwc3_role_switch_in>; > }; > }; Should add port@0 for usb_1_hsphy because it is required > + port@1 { Add new line before subnode > + reg = <1>; > + pm8150b_typec_mux_out: endpoint { > + remote-endpoint = <&qmpphy_typec_mux_in>; > + }; > + }; > }; > }; > }; > -- > 2.39.2 > >
On Mon, May 01, 2023 at 01:11:11PM +0100, Bryan O'Donoghue wrote: > Switch on USB orientation-switching for usb_1_qmp via TCPM. Detecting the > orientation switch is required to get the PHY to reset and bring-up the PHY > with the CC lines set to the appropriate lane. > > Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> > --- > arch/arm64/boot/dts/qcom/qrb5165-rb5.dts | 14 ++++++++++++++ > 1 file changed, 14 insertions(+) > > diff --git a/arch/arm64/boot/dts/qcom/qrb5165-rb5.dts b/arch/arm64/boot/dts/qcom/qrb5165-rb5.dts > index b5cc45358a474..8935a8e327904 100644 > --- a/arch/arm64/boot/dts/qcom/qrb5165-rb5.dts > +++ b/arch/arm64/boot/dts/qcom/qrb5165-rb5.dts > @@ -1295,6 +1295,14 @@ &usb_1_qmpphy { > > vdda-phy-supply = <&vreg_l9a_1p2>; > vdda-pll-supply = <&vreg_l18a_0p92>; > + orientation-switch; > + ports { Add new line before subnode > + port@1 { > + qmpphy_typec_mux_in: endpoint { > + remote-endpoint = <&pm8150b_typec_mux_out>; > + }; > + }; > + }; > }; > > &usb_2 { > @@ -1375,6 +1383,12 @@ pm8150b_role_switch_out: endpoint { > remote-endpoint = <&dwc3_role_switch_in>; > }; > }; you should add port@0 for usb_1_hsphy because it is required. > + port@1 { Same > + reg = <1>; > + pm8150b_typec_mux_out: endpoint { > + remote-endpoint = <&qmpphy_typec_mux_in>; > + }; > + }; > }; > }; > }; > -- > 2.39.2 > >
On 01/05/2023 16:34, Jianhua Lu wrote: >> &usb_2 { >> @@ -1375,6 +1383,12 @@ pm8150b_role_switch_out: endpoint { >> remote-endpoint = <&dwc3_role_switch_in>; >> }; >> }; > Should add port@0 for usb_1_hsphy because it is required Not by the hardware its not. The combophy is exclusively responsible for processing the orientation switch. The only required port in usb-c-connector is port@0 i.e. you have to have one thing the usb-c-connector can connect to for data-role switching. Now.. I'd take the input that <&qmpphy_typec_mux_in> is not documented but relies on commit d56de8c9a17d8f5202d0f37dd06ce186cc512586 Author: Li Jun <jun.li@nxp.com> Date: Tue Mar 28 16:23:04 2023 +0800 usb: typec: tcpm: try to get role switch from tcpc fwnode because that is the case. I will add something to documentation to capture the case where we use a usb-c-connector to trigger an type-c mux orientation switch. --- bod
On 01/05/2023 16:37, Jianhua Lu wrote: >> &usb_2 { >> @@ -1375,6 +1383,12 @@ pm8150b_role_switch_out: endpoint { >> remote-endpoint = <&dwc3_role_switch_in>; >> }; >> }; > you should add port@0 for usb_1_hsphy because it is required. So the yaml doesn't require hs but arguably could be made to be more flexible to accommodate different hardware realities, like ours here. > >> + port@1 { > Same Hmm, well actually I think the port should be port@0 here and port@1 should be dropped so, I'll do that. --- bod
On 1.05.2023 14:11, Bryan O'Donoghue wrote: > Switch on USB orientation-switching for usb_1_qmp via TCPM. Detecting the > orientation switch is required to get the PHY to reset and bring-up the PHY > with the CC lines set to the appropriate lane. > > Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> > --- > arch/arm64/boot/dts/qcom/qrb5165-rb5.dts | 14 ++++++++++++++ > 1 file changed, 14 insertions(+) > > diff --git a/arch/arm64/boot/dts/qcom/qrb5165-rb5.dts b/arch/arm64/boot/dts/qcom/qrb5165-rb5.dts > index b5cc45358a474..8935a8e327904 100644 > --- a/arch/arm64/boot/dts/qcom/qrb5165-rb5.dts > +++ b/arch/arm64/boot/dts/qcom/qrb5165-rb5.dts > @@ -1295,6 +1295,14 @@ &usb_1_qmpphy { > > vdda-phy-supply = <&vreg_l9a_1p2>; > vdda-pll-supply = <&vreg_l18a_0p92>; > + orientation-switch; > + ports { > + port@1 { > + qmpphy_typec_mux_in: endpoint { You defined these ports in patch 6, you can simply reference the labels and assign endpoints. Konrad > + remote-endpoint = <&pm8150b_typec_mux_out>; > + }; > + }; > + }; > }; > > &usb_2 { > @@ -1375,6 +1383,12 @@ pm8150b_role_switch_out: endpoint { > remote-endpoint = <&dwc3_role_switch_in>; > }; > }; > + port@1 { > + reg = <1>; > + pm8150b_typec_mux_out: endpoint { > + remote-endpoint = <&qmpphy_typec_mux_in>; > + }; > + }; > }; > }; > };
diff --git a/arch/arm64/boot/dts/qcom/qrb5165-rb5.dts b/arch/arm64/boot/dts/qcom/qrb5165-rb5.dts index b5cc45358a474..8935a8e327904 100644 --- a/arch/arm64/boot/dts/qcom/qrb5165-rb5.dts +++ b/arch/arm64/boot/dts/qcom/qrb5165-rb5.dts @@ -1295,6 +1295,14 @@ &usb_1_qmpphy { vdda-phy-supply = <&vreg_l9a_1p2>; vdda-pll-supply = <&vreg_l18a_0p92>; + orientation-switch; + ports { + port@1 { + qmpphy_typec_mux_in: endpoint { + remote-endpoint = <&pm8150b_typec_mux_out>; + }; + }; + }; }; &usb_2 { @@ -1375,6 +1383,12 @@ pm8150b_role_switch_out: endpoint { remote-endpoint = <&dwc3_role_switch_in>; }; }; + port@1 { + reg = <1>; + pm8150b_typec_mux_out: endpoint { + remote-endpoint = <&qmpphy_typec_mux_in>; + }; + }; }; }; };
Switch on USB orientation-switching for usb_1_qmp via TCPM. Detecting the orientation switch is required to get the PHY to reset and bring-up the PHY with the CC lines set to the appropriate lane. Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> --- arch/arm64/boot/dts/qcom/qrb5165-rb5.dts | 14 ++++++++++++++ 1 file changed, 14 insertions(+)