Re: [PATCH v4 1/9] usb: dwc3: add dual-role support

Roger Quadros
2015-09-07T09:39:16Z

Peter,

On 06/09/15 05:02, Peter Chen wrote:
> On Wed, Sep 02, 2015 at 05:24:16PM +0300, Roger Quadros wrote:
>> Register with the USB OTG core. Since we don't support
>> OTG yet we just work as a dual-role device even
>> if device tree says "otg".
>>
>> +
>> +static int dwc3_drd_init(struct dwc3 *dwc)
>> +{
>> + int ret, id, vbus;
>> + struct usb_otg_caps *otgcaps = &dwc->otg_config.otg_caps;
>> +
>> + otgcaps->otg_rev = 0;
>> + otgcaps->hnp_support = false;
>> + otgcaps->srp_support = false;
>> + otgcaps->adp_support = false;
>> + dwc->otg_config.fsm_ops = &dwc3_drd_ops;
>> +
>> + if (!dwc->edev) {
>> + dev_err(dwc->dev, "No extcon device found for OTG mode\n");
>> + return -ENODEV;
>> + }
>> +
>
> Do All dwc3 platforms id/vbus need to get through extcon? Do the
> SoCs have id/vbus pin?
>
>

Extcon access is in fact not needed from dwc3 driver and I will be getting
rid of this patch. We will support dual-role only via the OTG irq as in patch 5.

The way it works is that the OMAP glue layer dwc3-omap.c requests extcon device
and sets some mailbox register and this causes the VBUS/ID events to come over
OTG irq/status. So this patch is redundant.

The extcon device is not needed for all TI platforms. e.g. we need it for
DRA7 but not for AM437x.

cheers,
-roger