diff options
author | Jay Cheng <jacheng@nvidia.com> | 2011-06-10 16:50:15 -0400 |
---|---|---|
committer | Manish Tuteja <mtuteja@nvidia.com> | 2011-06-21 05:54:41 -0700 |
commit | 3e1b916b91264cea3e16c0ad278639ef57aee13c (patch) | |
tree | ea8707870abcb457e470492bc9c1a757ff437dc0 /drivers | |
parent | 6e7e86e0decb77c7537da44121e20f44beb9b38e (diff) |
ARM: tegra: usb: prefetch engine buffer coherency protection
The prefetcher fetches a total of 128 bytes, and then responding to
sequential reads with this prefetched data. To avoid coherency issues,
it discards the prefetched data if a non sequential read occurs.
Allocate dtd with 128 bytes boundary to make 2 consecutive dtd 128 bytes
apart.
bug 825970
Reviewed-on: http://git-master/r/36157
(cherry picked from commit bf623c5edbc8f0f5b23d5580aea1038418893792)
Change-Id: I6cc977545aee1bec1c91e4085cc2b3b55acccdb5
Reviewed-on: http://git-master/r/37410
Tested-by: Cho-Che Cheng <jacheng@nvidia.com>
Reviewed-by: Rakesh Bodla <rbodla@nvidia.com>
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/usb/gadget/fsl_usb2_udc.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/usb/gadget/fsl_usb2_udc.h b/drivers/usb/gadget/fsl_usb2_udc.h index 19d113c03af6..415b7c088962 100644 --- a/drivers/usb/gadget/fsl_usb2_udc.h +++ b/drivers/usb/gadget/fsl_usb2_udc.h @@ -428,7 +428,11 @@ struct ep_td_struct { DTD_STATUS_DATA_BUFF_ERR | \ DTD_STATUS_TRANSACTION_ERR) /* Alignment requirements; must be a power of two */ +#if defined(CONFIG_ARCH_TEGRA) +#define DTD_ALIGNMENT 0x80 +#else #define DTD_ALIGNMENT 0x20 +#endif #define QH_ALIGNMENT 2048 #define QH_OFFSET 0x1000 |