aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/adm5120/files/drivers/usb/host/adm5120-q.c
diff options
context:
space:
mode:
authorGabor Juhos <juhosg@openwrt.org>2007-11-08 12:28:27 +0000
committerGabor Juhos <juhosg@openwrt.org>2007-11-08 12:28:27 +0000
commit729f4259193979af5c442616e86c0bc25c4b7e7f (patch)
tree83cf38f5a7c5e5368f2329a53cf5213b0a264fcf /target/linux/adm5120/files/drivers/usb/host/adm5120-q.c
parenteaca6d017264a9501262d76f4d7b8ec494fee1d2 (diff)
downloadupstream-729f4259193979af5c442616e86c0bc25c4b7e7f.tar.gz
upstream-729f4259193979af5c442616e86c0bc25c4b7e7f.tar.bz2
upstream-729f4259193979af5c442616e86c0bc25c4b7e7f.zip
[adm5120] USB driver fixes
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@9513 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/adm5120/files/drivers/usb/host/adm5120-q.c')
-rw-r--r--target/linux/adm5120/files/drivers/usb/host/adm5120-q.c8
1 files changed, 0 insertions, 8 deletions
diff --git a/target/linux/adm5120/files/drivers/usb/host/adm5120-q.c b/target/linux/adm5120/files/drivers/usb/host/adm5120-q.c
index 2eafecc4fa..a9e002e7d3 100644
--- a/target/linux/adm5120/files/drivers/usb/host/adm5120-q.c
+++ b/target/linux/adm5120/files/drivers/usb/host/adm5120-q.c
@@ -153,7 +153,6 @@ static int ed_schedule(struct admhcd *ahcd, struct ed *ed)
ed->state = ED_IDLE;
- admhc_dma_lock(ahcd);
ed->hwINFO &= ~cpu_to_hc32(ahcd, ED_SKIP);
old_tail = ahcd->ed_tails[ed->type];
@@ -169,7 +168,6 @@ static int ed_schedule(struct admhcd *ahcd, struct ed *ed)
old_tail->hwNextED = cpu_to_hc32(ahcd, ed->dma);
ahcd->ed_tails[ed->type] = ed;
- admhc_dma_unlock(ahcd);
admhc_intr_enable(ahcd, ADMHC_INTR_SOFI);
@@ -181,9 +179,7 @@ static void ed_deschedule(struct admhcd *ahcd, struct ed *ed)
admhc_dump_ed(ahcd, "ED-DESCHED", ed, 0);
/* remove this ED from the HC list */
- admhc_dma_lock(ahcd);
ed->ed_prev->hwNextED = ed->hwNextED;
- admhc_dma_unlock(ahcd);
/* and remove it from our list */
ed->ed_prev->ed_next = ed->ed_next;
@@ -203,9 +199,7 @@ static void ed_start_deschedule(struct admhcd *ahcd, struct ed *ed)
{
admhc_dump_ed(ahcd, "ED-UNLINK", ed, 0);
- admhc_dma_lock(ahcd);
ed->hwINFO |= cpu_to_hc32(ahcd, ED_SKIP);
- admhc_dma_unlock(ahcd);
ed->state = ED_UNLINK;
@@ -573,11 +567,9 @@ static int ed_next_urb(struct admhcd *ahcd, struct ed *ed)
up->td[up->td_cnt-1]->hwNextTD = cpu_to_hc32(ahcd, ed->dummy->td_dma);
- admhc_dma_lock(ahcd);
carry = hc32_to_cpup(ahcd, &ed->hwHeadP) & ED_C;
ed->hwHeadP = cpu_to_hc32(ahcd, up->td[0]->td_dma | carry);
ed->hwINFO &= ~cpu_to_hc32(ahcd, ED_SKIP);
- admhc_dma_unlock(ahcd);
return 1;
}