Re: [PATCH v4 2/3] usb: dwc2: override PHY input signals with usb role switch support

From: Martin Blumenstingl
Date: Mon Jul 27 2020 - 13:55:58 EST


Hi Amelie,

On Mon, Jul 27, 2020 at 11:23 AM Amelie Delaunay <amelie.delaunay@xxxxxx> wrote:
>
> This patch adds support for usb role switch to dwc2, by using overriding
> control of the PHY voltage valid and ID input signals.
>
> iddig signal (ID) can be overridden:
> - when setting GUSBCFG_FORCEHOSTMODE, iddig input pin is overridden with 1;
> - when setting GUSBCFG_FORCEDEVMODE, iddig input pin is overridden with 0.
>
> avalid/bvalid/vbusvalid signals can be overridden respectively with:
> - GOTGCTL_AVALOEN + GOTGCTL_AVALOVAL
> - GOTGCTL_BVALOEN + GOTGCTL_BVALOVAL
> - GOTGCTL_VBVALEN + GOTGCTL_VBVALOVAL
>
> It is possible to determine valid sessions thanks to usb role switch:
> - if USB_ROLE_NONE then !avalid && !bvalid && !vbusvalid
> - if USB_ROLE_DEVICE then !avalid && bvalid && vbusvalid
> - if USB_ROLE_HOST then avalid && !bvalid && vbusvalid
>
> Signed-off-by: Amelie Delaunay <amelie.delaunay@xxxxxx>
please add my:
Acked-by: Martin Blumenstingl <martin.blumenstingl@xxxxxxxxxxxxxx>

The usb_role_switch part looks correct to me
I don't understand the details of the dwc2 hardware well enough to say
if the rest of this patch is fine or not (which is why I'm giving my
Acked-by instead of Reviewed-by).

Unfortunately I'm still fighting with the Amlogic bits (or my
board...) to make this work on my boards.
That why I can't give my Tested-by yet
At the same time I'm confident that the problem lies within the
Amlogic OTG detection/GPIOs so I don't see a reason to hold your patch
up due to this

Finally, please note that there may be a small conflict due to one
bugfix I sent: [0]
I think it will be trivial to solve (since we're both adding a new error label)


Thank you for your good work again!
Best regards,
Martin


[0] https://patchwork.kernel.org/patch/11687357/