Re: [PATCH] usb: cdns3: gadget: Don't manage pullups

From: Roger Quadros
Date: Tue Oct 29 2019 - 05:37:44 EST




On 29/10/2019 05:12, Peter Chen wrote:
On 19-10-25 12:59:17, Roger Quadros wrote:
Peter,

On 25/10/2019 06:13, Peter Chen wrote:
On 19-10-23 09:17:45, Pawel Laszczak wrote:
Hi,

Reviewed-by: Pawel Laszczak <pawell@xxxxxxxxxxx>

Hi Roger & Pawel,

Assume gadget function has already enabled, if you switch host mode
to device mode, with your changes, where the device mode will be enabled
again?

When it switches from device mode to host the UDC is removed. When we switch
back from host to device mode the UDC is added, so,

usb_add_gadget_udc_release()-> check_pending_gadget_drivers()->
udc_bind_to_driver()->usb_udc_connect_control()->usb_gadget_connect()->
gadget->ops->pullup()

Thanks. I have another question how you decide when to store UDC name
to /sys/kernel/config/usb_gadget/g1/UDC? Do you have a user daemon program
to monitor VBUS or external connector? At host mode, the store operation
will fail due to there is NO UDC.


Yes, user space needs to monitor /sys/class/usb_role/6000000.usb-role-switch/role

When it becomes "device" the UDC is available and it can prepare to configure
the UDC.

Could you please give your Ack for this patch if it is OK? Thanks.

cheers,
-roger

--
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki