Re: [PATCH] Workaround for hardware problem in host mode for the MUSB chipset. Add missed TXPKTRDY check.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Aug 13, 2010 at 05:44:54PM +0530, Praveena Nadahally wrote:
> From: Hans Petter Selasky <hans.petter.selasky@xxxxxxxxxxxxxx>
> 
> FIFOFLUSH is broken when a real packet is in the FIFO. This 
> hardware feature only works when the FIFO is empty.
> The workaround described requires limiting the maximum 
> number of USB devices to 126, 128 - 2.

Really?  That seems like not a very nice thing to do to all Linux users
just for a single piece of broken hardware out there.

Can we get some more information about this hardware problem please?
Pointers to the type of broken hardware and where the change is stated
as a solution is necessary.

> Signed-off-by: Hans Petter Selasky <hans.petter.selasky@xxxxxxxxxxxxxx>
> Signed-off-by: Praveena Nadahally <praveen.nadahally@xxxxxxxxxxxxxx>
> Acked-by: Linus Walleij <linus.walleij@xxxxxxxxxxxxxx> 
> ---
>  drivers/usb/core/hub.c       |    8 ++++--
>  drivers/usb/musb/musb_host.c |   45 +++++++++++++++++++++++++++++------------
>  2 files changed, 37 insertions(+), 16 deletions(-)
> 
> diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
> index 84c1897..83f1f50 100644
> --- a/drivers/usb/core/hub.c
> +++ b/drivers/usb/core/hub.c
> @@ -1511,12 +1511,14 @@ static void choose_address(struct usb_device *udev)
>  		 * bus->devnum_next. */
>  		devnum = find_next_zero_bit(bus->devmap.devicemap, 128,
>  					    bus->devnum_next);
> -		if (devnum >= 128)
> +		/* Due to Hardware bugs we need to reserve a device address
> +		 * for flushing of endpoints. */

If we really have to do this, I want it explicitly stated exactly what
the broken hardware is that is causing this restriction, and why.

thanks,

greg k-h
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux