Re: [PATCH 2/2] usb: chipidea: udc: add multiple td support to hardware_{en,de}queue

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

 



On Thu, May 16, 2013 at 01:17:10PM +0300, Alexander Shishkin wrote:
> Michael Grzeschik <mgr@xxxxxxxxxxxxxx> writes:
> 
> > From: Michael Grzeschik <m.grzeschik@xxxxxxxxxxxxxx>
> >
> > This patch removes the restriction of having a limited amount of only
> > four active tds on one endpoint. We use the linked list implementation
> > to manage all tds which get added and removed by hardware_{en,de}queue.
> >
> > The removal of this restriction adds the driver to run into a hardware
> > errata. It's possible that the hardware will still address an transfer
> > descriptor that already got cleaned up. To solve this the patch also
> > postpone the cleanup of processed tds by one.
> >
> 
> Some nitpicking below:
> 
> > +/*
> > + * free_pending_td: remove a pending request for the endpoint
> > + * @mEp: endpoint
> > + */
> > +void free_pending_td(struct ci13xxx_ep *mEp)
> 
> Looks like a missing "static".

Right!

> 
> > +{
> > +	struct td_node *pending = mEp->pending_td;
> > +
> > +	dma_pool_free(mEp->td_pool, pending->ptr, pending->dma);
> > +	pending->ptr = NULL;
> 
> Why?

Oops, this should be mEp->pending_td = NULL;

Otherwise an once used ci13xxx_ep would still
contain a valid pointer to pending_td on restart.

> 
> > +	kfree(pending);
> > +}
> > +
> 

Thanks,
Michael

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |
--
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