Re: [PATCH v4 3/4] dt-bindings: Add Qualcomm USB SuperSpeed PHY bindings
From: Stephen Boyd <hidden>
Date: 2019-09-06 05:26:17
Also in:
linux-arm-msm, linux-devicetree, linux-usb, lkml
Quoting Jack Pham (2019-09-05 10:58:02)
Hi Jorge, Bjorn, On Thu, Sep 05, 2019 at 09:18:57AM +0200, Jorge Ramirez wrote:quoted
On 9/4/19 01:34, Bjorn Andersson wrote:quoted
On Tue 03 Sep 14:45 PDT 2019, Stephen Boyd wrote:quoted
that would need an of_regulator_get() sort of API that can get the regulator out of there? Or to make the connector into a struct device that can get the regulator out per some generic connector driver and then pass it through to the USB controller when it asks for it. Maybe try to prototype that out?The examples given in the DT bindings describes the connector as a child of a PMIC, with of_graph somehow tying it to the various inputs. But in these examples vbus is handled by implicitly inside the MFD, where extcon is informed about the plug event they toggle vbus as well. In our case we have a extcon-usb-gpio to detect mode, which per Jorge's proposal will trickle down to the PHY and become a regulator calls on either some external regulator or more typically one of the chargers in the system.Interesting you mention extcon-usb-gpio. I thought extcon at least from bindings perspective is passé now. Maybe this is what you need (just landed in usb-next): usb: common: add USB GPIO based connection detection driver https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git/commit/?h=usb-next&id=4602f3bff2669012c1147eecfe74c121765f5c56 dt-bindings: usb: add binding for USB GPIO based connection detection driver https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git/commit/?h=usb-next&id=f651c73e71f53f65e9846677d79d8e120452b59f Fortunately this new driver might check the right boxes for you: - usb connector binding - ID detect GPIO - vbus-supply regulator With that, I think you can also keep the connector subnode out of the SSPHY node well, and similarly get rid of the vbus toggle handling from the PHY driver. The big thing missing now is that this driver replaces extcon completely, so we'll need handling in dwc3/dwc3-qcom to retrieve the role switch state to know when host mode is entered. I saw this a while back but don't think it got picked up: https://patchwork.kernel.org/patch/10909981/
Yes this looks like the approach that should be taken. One question though, is this a micro-b connector or a type-c connector on the board? I thought it was a type-c, so then this USB gpio based connection driver isn't an exact fit? _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel