Messages in this thread | | | Date | Thu, 29 Dec 2022 21:05:23 +0000 | Subject | Re: [PATCH v2 2/2] phy: qcom-usb-hs: Add qcom,dp-manual-pullup logic | From | Bryan O'Donoghue <> |
| |
On 29/12/2022 21:02, Stephan Gerhold wrote: > On Thu, Dec 29, 2022 at 08:45:15PM +0100, Stephan Gerhold wrote: >> On Thu, Dec 29, 2022 at 06:34:10PM +0000, Bryan O'Donoghue wrote: >>> Downstream has a flag called qcom,dp-manual-pullup which informs the >>> downstream driver if it should toggle ULPI_MISC_A_VBUSVLDEXTSEL and >>> ULPI_MISC_A_VBUSVLDEXT. >>> >>> Downstream states: >>> >>> "qcom,dp-manual-pullup: If present, vbus is not routed to USB >>> controller/phy and controller driver therefore enables pull-up >>> explicitly before starting controller using usbcmd run/stop bit." >>> >>> Working with a system that has both an external Type-C port controller and >>> an internal USB Hub results in a situation where VBUS is not connected to >>> the SoC. >>> >>> In this case we still need to set the DP pullup. >>> >>> This patch enables and disables the DP pullup on PHY power_on and power_off >>> respectively if the DT has declared the bool "qcom,enable-vbus-pullup" >>> effectively replicating the downstream logic to the same effect. >>> >>> Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> >> [...] >> >> An alternative that I've occasionally used for early bring-up is to >> simply use a dummy extcon driver [1] that permanently reports active >> VBUS. The end result is the same. While it's clearly a hack perhaps this >> makes it a bit more clear that ideally you really should try to assign >> an extcon device, to avoid keeping the USB controller and PHY on >> permanently. >> > > BTW another nice trick that should work in all almost all cases is to > use the state of the PMIC USB_IN pin as VBUS detection. All battery- > powered devices I have seen route the USB VBUS to PM8916 USB_IN. And > even many boards like DB410c seem to do that or at least permanently > supply 5V there. In all these cases the &pm8916_usbin extcon will > report a VBUS state that should make USB work. > > Have you tried using that on your MSM8939 board with the Type-C setup? > > &pm8916_usbin { > status = "okay"; > }; > > &usb { > status = "okay"; > usb-role-switch; > extcon = <&pm8916_usbin>; > }; > > &usb_hs_phy { > extcon = <&pm8916_usbin>; > }; > > Stephan
I checked USBIN before my last email reply.
Its possible its connected but its not there on the 8939 schematic I have.
--- bod
| |