From e89781048b9d194ca2f6bc616fcce5cf19712646 Mon Sep 17 00:00:00 2001 From: Catalin Marinas Date: Tue, 2 Feb 2010 15:31:02 +0000 Subject: [PATCH] --- yaml --- r: 185387 b: refs/heads/master c: db8516f61b481e82cec398474ed716d926de7f94 h: refs/heads/master i: 185385: eb00d9fc141013eddade9bd1df55f770b9085217 185383: 2ad2181d1c326e01e4d1ea9fb5a4ae562c1fa553 v: v3 --- [refs] | 2 +- trunk/drivers/usb/host/isp1760-hcd.c | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index e045955c339d..9cc6774f3379 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 9714080d20f2ec4b671a06ce69367d91fa9e227e +refs/heads/master: db8516f61b481e82cec398474ed716d926de7f94 diff --git a/trunk/drivers/usb/host/isp1760-hcd.c b/trunk/drivers/usb/host/isp1760-hcd.c index 27b8f7cb4471..9f01293600b0 100644 --- a/trunk/drivers/usb/host/isp1760-hcd.c +++ b/trunk/drivers/usb/host/isp1760-hcd.c @@ -17,7 +17,9 @@ #include #include #include +#include #include +#include #include "../core/hcd.h" #include "isp1760-hcd.h" @@ -904,6 +906,14 @@ __acquires(priv->lock) status = 0; } + if (usb_pipein(urb->pipe) && usb_pipetype(urb->pipe) != PIPE_CONTROL) { + void *ptr; + for (ptr = urb->transfer_buffer; + ptr < urb->transfer_buffer + urb->transfer_buffer_length; + ptr += PAGE_SIZE) + flush_dcache_page(virt_to_page(ptr)); + } + /* complete() can reenter this HCD */ usb_hcd_unlink_urb_from_ep(priv_to_hcd(priv), urb); spin_unlock(&priv->lock);