From: Vignesh Raghavendra Date: Mon, 27 Jan 2020 12:25:54 +0000 (+0530) Subject: usb: cdns3: ep0: Invalidate cache before reading Setup Packet X-Git-Tag: v2020.04-rc2~20^2~1 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=bf16a7be90d5732279c454c10be1686ed79610be;p=oweals%2Fu-boot.git usb: cdns3: ep0: Invalidate cache before reading Setup Packet Invalidate dcache line before accessing Setup Packet contents. Otherwise driver will see stale content on non coherent architecture. Signed-off-by: Vignesh Raghavendra --- diff --git a/drivers/usb/cdns3/ep0.c b/drivers/usb/cdns3/ep0.c index 0b6d9cf727..f35a924839 100644 --- a/drivers/usb/cdns3/ep0.c +++ b/drivers/usb/cdns3/ep0.c @@ -562,6 +562,10 @@ static void cdns3_ep0_setup_phase(struct cdns3_device *priv_dev) struct cdns3_endpoint *priv_ep = priv_dev->eps[0]; int result; + /* Invalidate Setup Packet received */ + invalidate_dcache_range(priv_dev->setup_dma, + priv_dev->setup_dma + ARCH_DMA_MINALIGN); + priv_dev->ep0_data_dir = ctrl->bRequestType & USB_DIR_IN; trace_cdns3_ctrl_req(ctrl);