[PATCH v11 4/9] usb: chipidea: udc: add pullup/pulldown dp at hw_device_state

Felipe Balbi balbi at ti.com
Wed Mar 6 06:26:33 EST 2013


Hi,

On Wed, Mar 06, 2013 at 05:56:35PM +0800, Peter Chen wrote:
> - During the connect/disconnect host, we need to pullup
> and pulldown dp
> - Make sure the dp is not pullup until the vbus is on when
> flag CI13XXX_PULLUP_ON_VBUS is set
> - Using hw_device_state when set run/stop bit
> 
> Signed-off-by: Peter Chen <peter.chen at freescale.com>
> ---
>  drivers/usb/chipidea/udc.c |   10 ++++++++--
>  1 files changed, 8 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/usb/chipidea/udc.c b/drivers/usb/chipidea/udc.c
> index e82dae4..70f9f2d 100644
> --- a/drivers/usb/chipidea/udc.c
> +++ b/drivers/usb/chipidea/udc.c
> @@ -91,8 +91,10 @@ static int hw_device_state(struct ci13xxx *ci, u32 dma)
>  		/* interrupt, error, port change, reset, sleep/suspend */
>  		hw_write(ci, OP_USBINTR, ~0,
>  			     USBi_UI|USBi_UEI|USBi_PCI|USBi_URI|USBi_SLI);
> +		hw_write(ci, OP_USBCMD, USBCMD_RS, USBCMD_RS);
>  	} else {
>  		hw_write(ci, OP_USBINTR, ~0, 0);
> +		hw_write(ci, OP_USBCMD, USBCMD_RS, 0);

this patch doesn't make sense to me. What will happen is that you will
be enabling pullups when vbus_session() gets called and this might not
be what gadget driver wants.

You don't want to fiddle with that yourself since I'm changing the
framework so that gadget driver will always request pullups to be
enabled.

Alex, I don't think this patch is correct

-- 
balbi
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20130306/5cf68fda/attachment.sig>


More information about the linux-arm-kernel mailing list