forked from Minki/linux
USB: minor ehci xITD simplifications
Remove two (or one) conditional tests in per-urb isochronous transfer setup code paths. Signed-off-by: Karsten Wiese <fzu@wemgehoertderstaat.de> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
fadec78bd9
commit
3d01f0fe6b
@ -1181,21 +1181,18 @@ itd_urb_transaction (
|
||||
struct ehci_itd, itd_list);
|
||||
list_del (&itd->itd_list);
|
||||
itd_dma = itd->itd_dma;
|
||||
} else
|
||||
itd = NULL;
|
||||
|
||||
if (!itd) {
|
||||
} else {
|
||||
spin_unlock_irqrestore (&ehci->lock, flags);
|
||||
itd = dma_pool_alloc (ehci->itd_pool, mem_flags,
|
||||
&itd_dma);
|
||||
spin_lock_irqsave (&ehci->lock, flags);
|
||||
if (!itd) {
|
||||
iso_sched_free(stream, sched);
|
||||
spin_unlock_irqrestore(&ehci->lock, flags);
|
||||
return -ENOMEM;
|
||||
}
|
||||
}
|
||||
|
||||
if (unlikely (NULL == itd)) {
|
||||
iso_sched_free (stream, sched);
|
||||
spin_unlock_irqrestore (&ehci->lock, flags);
|
||||
return -ENOMEM;
|
||||
}
|
||||
memset (itd, 0, sizeof *itd);
|
||||
itd->itd_dma = itd_dma;
|
||||
list_add (&itd->itd_list, &sched->td_list);
|
||||
@ -1814,21 +1811,18 @@ sitd_urb_transaction (
|
||||
struct ehci_sitd, sitd_list);
|
||||
list_del (&sitd->sitd_list);
|
||||
sitd_dma = sitd->sitd_dma;
|
||||
} else
|
||||
sitd = NULL;
|
||||
|
||||
if (!sitd) {
|
||||
} else {
|
||||
spin_unlock_irqrestore (&ehci->lock, flags);
|
||||
sitd = dma_pool_alloc (ehci->sitd_pool, mem_flags,
|
||||
&sitd_dma);
|
||||
spin_lock_irqsave (&ehci->lock, flags);
|
||||
if (!sitd) {
|
||||
iso_sched_free(stream, iso_sched);
|
||||
spin_unlock_irqrestore(&ehci->lock, flags);
|
||||
return -ENOMEM;
|
||||
}
|
||||
}
|
||||
|
||||
if (!sitd) {
|
||||
iso_sched_free (stream, iso_sched);
|
||||
spin_unlock_irqrestore (&ehci->lock, flags);
|
||||
return -ENOMEM;
|
||||
}
|
||||
memset (sitd, 0, sizeof *sitd);
|
||||
sitd->sitd_dma = sitd_dma;
|
||||
list_add (&sitd->sitd_list, &iso_sched->td_list);
|
||||
|
Loading…
Reference in New Issue
Block a user