Peter Chen
feffe09f51
usb: ehci: add freescale imx28 special write register method
...
According to Freescale imx28 Errata, "ENGR119653 USB: ARM to USB
register error issue", All USB register write operations must
use the ARM SWP instruction. So, we implement a special ehci_write
for imx28.
Discussion for it at below:
http://marc.info/?l=linux-usb&m=137996395529294&w=2
Without this patcheset, imx28 works unstable at high AHB bus loading.
If the bus loading is not high, the imx28 usb can work well at the most
of time. There is a IC errata for this problem, usually, we consider
IC errata is a problem not a new feature, and this workaround is needed
for that, so we need to add them to stable tree 3.11+.
Cc: stable@vger.kernel.org
Cc: robert.hodaszi@digi.com
Signed-off-by: Peter Chen <peter.chen@freescale.com>
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Tested-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-01-13 15:54:03 -08:00
..
whci
usb: delete non-required instances of include <linux/init.h>
2014-01-08 15:01:39 -08:00
bcma-hcd.c
DMA-API: usb: bcma: replace dma_set_mask()+dma_set_coherent_mask() with new helper
2013-10-31 14:48:34 +00:00
ehci-atmel.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
ehci-dbg.c
usb: Use dev_is_pci() to check whether it is pci device
2013-12-08 18:01:56 -08:00
ehci-exynos.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
ehci-fsl.c
USB: ehci-fsl: Use devm_ioremap_resource()
2013-12-18 16:33:47 -08:00
ehci-fsl.h
powerpc/usb: fix bug of CPU hang when missing USB PHY clock
2012-09-05 16:52:08 -07:00
ehci-grlib.c
USB: ehci-grlib: use dev_err() instead of printk()
2013-12-18 16:32:41 -08:00
ehci-hcd.c
USB: kill #undef VERBOSE_DEBUG
2013-12-03 10:34:33 -08:00
ehci-hub.c
ehci: no conditional compilation for interestingness
2013-12-03 10:25:22 -08:00
ehci-mem.c
USB: EHCI: fix sparse errors
2013-10-19 14:08:04 -07:00
ehci-msm.c
USB: ehci-msm: Add device tree support and binding information
2013-10-11 16:31:15 -07:00
ehci-mv.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
ehci-mxc.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
ehci-octeon.c
USB: ehci-octeon: Use devm_ioremap_resource()
2013-12-18 16:34:20 -08:00
ehci-omap.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
ehci-orion.c
USB: ehci-orion: Use devm_*() functions
2013-12-18 16:33:47 -08:00
ehci-pci.c
usb: ehci: use amd_chipset_type to filter for usb subsystem hang bug
2013-10-03 15:44:50 -07:00
ehci-platform.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
ehci-pmcmsp.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
ehci-ppc-of.c
USB: ehci-ppc-of: use dev_err() instead of printk()
2013-12-18 16:32:41 -08:00
ehci-ps3.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
ehci-q.c
usb: kill DEBUG compile option
2013-12-03 10:34:33 -08:00
ehci-sched.c
USB: EHCI: fix sparse errors
2013-10-19 14:08:04 -07:00
ehci-sead3.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
ehci-sh.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
ehci-spear.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
ehci-sysfs.c
USB: EHCI: use a bandwidth-allocation table
2013-10-11 16:45:43 -07:00
ehci-tegra.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
ehci-tilegx.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
ehci-timer.c
USB: EHCI: improve interrupt qh unlink
2013-08-12 11:43:48 -07:00
ehci-w90x900.c
USB: ehci-w90x900: Use devm_ioremap_resource()
2013-12-18 16:35:11 -08:00
ehci-xilinx-of.c
USB: ehci-xilinx-of: use dev_err() instead of printk()
2013-12-18 16:32:41 -08:00
ehci.h
usb: ehci: add freescale imx28 special write register method
2014-01-13 15:54:03 -08:00
fhci-dbg.c
USB: FHCI: Reusing QUICC Engine USB Controller registers from immap_qe.h
2012-06-26 19:42:11 -07:00
fhci-hcd.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
fhci-hub.c
USB: FHCI: Reusing QUICC Engine USB Controller registers from immap_qe.h
2012-06-26 19:42:11 -07:00
fhci-mem.c
fhci-q.c
fhci-sched.c
USB: FHCI: upgrade the isochronous API
2013-05-30 21:34:31 +09:00
fhci-tds.c
USB: FHCI: Reusing QUICC Engine USB Controller registers from immap_qe.h
2012-06-26 19:42:11 -07:00
fhci.h
USB: FHCI: upgrade the isochronous API
2013-05-30 21:34:31 +09:00
fotg210-hcd.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
fotg210.h
fotg210: remove conditional compilation
2013-12-03 10:28:39 -08:00
fsl-mph-dr-of.c
usb: host: fsl-mph-dr-of: Staticize local symbols
2013-09-17 11:06:57 -05:00
fusbh200-hcd.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
fusbh200.h
fusb200h: always compile in debugfs support
2013-12-03 10:31:21 -08:00
hwa-hc.c
usb: delete non-required instances of include <linux/init.h>
2014-01-08 15:01:39 -08:00
imx21-dbg.c
usb: kill DEBUG compile option
2013-12-03 10:34:33 -08:00
imx21-hcd.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
imx21-hcd.h
usb: kill DEBUG compile option
2013-12-03 10:34:33 -08:00
isp116x-hcd.c
usb: delete non-required instances of include <linux/init.h>
2014-01-08 15:01:39 -08:00
isp116x.h
USB: isp116x: remove dependency on CONFIG_USB_DEBUG
2013-07-23 16:35:17 -07:00
isp1362-hcd.c
usb: delete non-required instances of include <linux/init.h>
2014-01-08 15:01:39 -08:00
isp1362.h
USB: isp1362: move debug files from proc to debugfs
2013-07-24 14:43:05 -07:00
isp1760-hcd.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
isp1760-hcd.h
isp1760-if.c
USB: host: use dev_get_platdata()
2013-07-31 17:53:50 -07:00
Kconfig
usb: ohci: remove ep93xx bus glue platform driver
2013-10-29 16:43:37 -07:00
Makefile
usb: kill DEBUG compile option
2013-12-03 10:34:33 -08:00
octeon2-common.c
ohci-at91.c
USB: fix: ohci-at91 mismerge build error
2014-01-07 09:30:48 -08:00
ohci-da8xx.c
USB: ohci-da8xx: Use devm_*() functions
2013-12-18 16:35:11 -08:00
ohci-dbg.c
ohci: remove conditional compilation
2013-12-03 10:25:22 -08:00
ohci-exynos.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
ohci-hcd.c
USB: OHCI: Properly handle OHCI controller suspend
2013-12-08 17:53:17 -08:00
ohci-hub.c
ohci: no conditional debugging in root hub hadling
2013-12-03 10:25:22 -08:00
ohci-jz4740.c
USB: ohci-jz4740: Use devm_*() functions
2013-12-18 16:35:11 -08:00
ohci-mem.c
ohci-nxp.c
USB: ohci-nxp: Use devm_clk_get()
2013-12-18 16:36:10 -08:00
ohci-octeon.c
USB: ohci-octeon: Use devm_ioremap_resource()
2013-12-18 16:36:11 -08:00
ohci-omap.c
USB: ohci-omap: use dev_err() instead of printk()
2013-12-18 16:32:41 -08:00
ohci-omap3.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
ohci-pci.c
usb: ohci: use amd_chipset_type to filter for SB800 prefetch
2013-10-03 15:44:51 -07:00
ohci-platform.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
ohci-ppc-of.c
USB: ohci-ppc-of: Use devm_ioremap_resource()
2013-12-18 16:36:10 -08:00
ohci-ps3.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
ohci-pxa27x.c
USB: ohci-pxa27x:Use devm_*() functions
2013-12-18 16:35:10 -08:00
ohci-q.c
ohci: kill ohci_vdbg
2013-12-03 10:25:22 -08:00
ohci-s3c2410.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
ohci-sa1111.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
ohci-sm501.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
ohci-spear.c
USB: ohci-spear: Use devm_ioremap_resource()
2013-12-18 16:36:11 -08:00
ohci-tilegx.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
ohci-tmio.c
usb: delete non-required instances of include <linux/init.h>
2014-01-08 15:01:39 -08:00
ohci.h
ohci: kill ohci_vdbg
2013-12-03 10:25:22 -08:00
oxu210hp-hcd.c
usb: delete non-required instances of include <linux/init.h>
2014-01-08 15:01:39 -08:00
oxu210hp.h
pci-quirks.c
usb: delete non-required instances of include <linux/init.h>
2014-01-08 15:01:39 -08:00
pci-quirks.h
usb: ohci: use amd_chipset_type to filter for SB800 prefetch
2013-10-03 15:44:51 -07:00
r8a66597-hcd.c
usb: delete non-required instances of include <linux/init.h>
2014-01-08 15:01:39 -08:00
r8a66597.h
usb/host/r8a66597: remove conditional compilation of clk code
2012-07-30 17:25:12 -07:00
sl811-hcd.c
usb: delete non-required instances of include <linux/init.h>
2014-01-08 15:01:39 -08:00
sl811.h
USB: sl811: move debug files from proc to debugfs
2013-07-24 14:43:05 -07:00
sl811_cs.c
usb: delete non-required instances of include <linux/init.h>
2014-01-08 15:01:39 -08:00
ssb-hcd.c
DMA-API: usb: ssb-hcd: replace dma_set_mask()+dma_set_coherent_mask() with new helper
2013-10-31 14:48:36 +00:00
u132-hcd.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
uhci-debug.c
usb: kill DEBUG compile option
2013-12-03 10:34:33 -08:00
uhci-grlib.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
uhci-hcd.c
usb: kill DEBUG compile option
2013-12-03 10:34:33 -08:00
uhci-hcd.h
USB: UHCI: remove unused definition
2013-01-24 13:42:09 -08:00
uhci-hub.c
USB/host: Bugfix: Return length of copied buffer in uhci_hub_control()
2013-10-07 00:07:17 -07:00
uhci-pci.c
USB: remove DEFINE_PCI_DEVICE_TABLE macro
2013-12-04 16:58:47 -08:00
uhci-platform.c
usb: hcd: move controller wakeup setting initialization to individual driver
2013-12-08 18:06:46 -08:00
uhci-q.c
USB: UHCI: accept very late isochronous URBs
2013-09-25 17:05:34 -07:00
xhci-dbg.c
xhci: replace xhci_read_64() with readq()
2013-12-02 12:59:49 -08:00
xhci-ext-caps.h
xhci: fix port BESL LPM capability checking
2013-08-27 08:54:42 -07:00
xhci-hub.c
xhci: replace xhci_writel() with writel()
2013-12-02 12:59:49 -08:00
xhci-mem.c
xhci: replace xhci_write_64() with writeq()
2013-12-02 12:59:50 -08:00
xhci-pci.c
Merge 3.13-rc5 into usb-next
2013-12-24 10:18:03 -08:00
xhci-plat.c
usb: xhci: change enumeration scheme to 'new scheme' by default
2013-12-10 13:54:37 -08:00
xhci-ring.c
xhci: Avoid infinite loop when sg urb requires too many trbs
2014-01-08 11:00:10 -08:00
xhci-trace.c
xhci: add traces for debug messages in xhci_address_device()
2013-08-13 16:05:38 -07:00
xhci-trace.h
xhci: fix sparse warning in xhci-trace.h
2013-12-02 12:59:45 -08:00
xhci.c
xhci: Set scatter-gather limit to avoid failed block writes.
2014-01-08 11:00:52 -08:00
xhci.h
xhci: Set scatter-gather limit to avoid failed block writes.
2014-01-08 11:00:52 -08:00