linux/drivers
Yoshihiro Shimoda f5518a3e2d usb: renesas_usbhs: fix clearing the {BRDY,BEMP}STS condition
[ Upstream commit 519d8bd4b5 ]

The previous driver is possible to stop the transfer wrongly.
For example:
 1) An interrupt happens, but not BRDY interruption.
 2) Read INTSTS0. And than state->intsts0 is not set to BRDY.
 3) BRDY is set to 1 here.
 4) Read BRDYSTS.
 5) Clear the BRDYSTS. And then. the BRDY is cleared wrongly.

Remarks:
 - The INTSTS0.BRDY is read only.
  - If any bits of BRDYSTS are set to 1, the BRDY is set to 1.
  - If BRDYSTS is 0, the BRDY is set to 0.

So, this patch adds condition to avoid such situation. (And about
NRDYSTS, this is not used for now. But, avoiding any side effects,
this patch doesn't touch it.)

Fixes: d5c6a1e024 ("usb: renesas_usbhs: fixup interrupt status clear method")
Cc: <stable@vger.kernel.org> # v3.8+
Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
History 2016-10-05 22:40:20 -04:00
..
accessibility printk: move braille console support into separate braille.[ch] files 2013-07-31 14:41:03 -07:00
acpi ACPI / osi: Fix an issue that acpi_osi=!* cannot disable ACPICA internal strings 2016-06-03 11:30:35 -04:00
amba PM / Domains: Move dev_pm_domain_attach|detach() to pm_domain.h 2014-09-30 01:16:44 +02:00
ata scsi: fix race between simultaneous decrements of ->host_failed 2016-07-11 11:10:54 -04:00
atm solos-pci: fix error return code 2014-11-23 14:29:44 -05:00
auxdisplay auxdisplay: ks0108: fix refcount 2015-10-27 22:14:50 -04:00
base base: make module_create_drivers_dir race-free 2016-07-12 08:46:52 -04:00
bcma x86/quirks: Add early quirk to reset Apple AirPort card 2016-08-07 21:47:22 -04:00
block nbd: ratelimit error msgs after socket close 2016-07-12 08:48:00 -04:00
bluetooth Bluetooth: Add support of 13d3:3490 AR3012 device 2016-08-22 12:23:07 -04:00
bus bus: arm-ccn: Fix XP watchpoint settings bitmask 2016-10-04 00:53:32 -04:00
cdrom block,scsi: fixup blk_get_request dead queue scenarios 2014-08-28 10:03:46 -06:00
char hwmon: (dell-smm) Blacklist Dell Studio XPS 8100 2015-08-27 13:25:30 -04:00
clk clk: qcom: msm8960: Fix ce3_src register offset 2016-07-12 08:48:02 -04:00
clocksource clocksource/drivers/sun4i: Clear interrupts after stopping timer in probe function 2016-08-31 22:05:44 -04:00
connector connector: bump skb->users before callback invocation 2016-02-15 15:42:42 -05:00
cpufreq cpufreq: intel_pstate: Fix ->set_policy() interface for no_turbo 2016-06-19 23:47:45 -04:00
cpuidle cpuidle: Fix cpuidle_state_is_coupled() argument in cpuidle_enter() 2016-06-06 19:11:08 -04:00
crypto crypto: caam - fix non-hmac hashes 2016-08-31 19:26:24 -04:00
dca dca: convert to idr_alloc() 2013-02-27 19:10:15 -08:00
devfreq PM / devfreq: exynos: Enable building exynos PPMU as module 2014-09-29 20:22:36 +09:00
dio m68k: don't export static inline functions 2009-12-06 11:18:28 +01:00
dma dmaengine: imx-sdma: switch to dynamic context mode after script loaded 2016-05-30 17:56:04 -04:00
dma-buf reservation: Remove shadowing local variable 'ret' 2015-03-23 21:02:50 -04:00
edac EDAC: i7core, sb_edac: Don't return NOTIFY_BAD from mce_decoder callback 2016-05-17 14:52:13 -04:00
eisa Revert "EISA: Initialize device before its resources" 2014-01-17 14:57:29 -07:00
extcon extcon: gpio: Fix code cleanup 2014-09-22 16:48:47 +09:00
firewire firewire: ohci: fix JMicron JMB38x IT context discovery 2016-01-21 11:23:28 -05:00
firmware efi: Expose non-blocking set_variable() wrapper to efivars 2016-07-12 08:47:49 -04:00
fmc Merge 3.14-rc5 into char-misc-next 2014-03-02 19:53:09 -08:00
gpio gpio: Fix OF build problem on UM 2016-08-31 22:05:44 -04:00
gpu drm: Reject page_flip for !DRIVER_MODESET 2016-08-31 22:05:44 -04:00
hid HID: uhid: fix timeout when probe races with IO 2016-08-22 12:22:56 -04:00
hsi HSI changes for the v3.17 series 2014-08-06 20:06:14 -07:00
hv Drivers: hv: vmbus: Fix signaling logic in hv_need_to_signal_on_read() 2016-05-17 17:29:35 -04:00
hwmon hwmon: (max1111) Return -ENODEV from max1111_read_channel if not instantiated 2016-07-12 08:47:23 -04:00
hwspinlock hwspinlock: enable OMAP build for AM33xx, AM43xx & DRA7xx 2014-07-29 11:46:28 +03:00
i2c i2c: exynos5: Fix possible ABBA deadlock by keeping I2C clock prepared 2016-07-12 08:47:48 -04:00
ide Merge branch 'for-3.18/drivers' of git://git.kernel.dk/linux-block 2014-10-18 12:12:45 -07:00
idle intel_idle: support additional Broadwell model 2015-08-27 13:26:06 -04:00
iio iio: accel: kxsd9: Fix scaling bug 2016-10-05 22:40:20 -04:00
infiniband IB/mlx4: Properly initialize GRH TClass and FlowLabel in AHs 2016-07-12 08:46:55 -04:00
input Input: tegra-kbc - fix inverted reset logic 2016-08-31 22:05:44 -04:00
iommu iommu/amd: Apply workaround for ATS write permission check 2016-03-11 09:45:21 -05:00
ipack ipoctal: clear break interrupt as soon as it occurs 2014-09-23 23:26:42 -07:00
irqchip arm64: GICv3: introduce symbolic names for GICv3 ICC_SGI1R_EL1 fields 2016-06-19 23:47:43 -04:00
isdn ppp, slip: Validate VJ compression slot parameters completely 2016-02-15 15:42:45 -05:00
leds leds / PM: fix hibernation on arm when gpio-led used with CPU led trigger 2015-07-03 23:02:15 -04:00
lguest x86: Clean up cr4 manipulation 2015-06-28 13:39:27 -04:00
macintosh windfarm: decrement client count when unregistering 2015-10-27 22:13:02 -04:00
mailbox Merge branch 'mailbox-for-linus' of git://git.linaro.org/landing-teams/working/fujitsu/integration 2014-10-21 11:21:19 -07:00
mcb mcb: Fixed bar number assignment for the gdd 2016-06-03 11:30:34 -04:00
md dm crypt: fix free of bad values after tfm allocation failure 2016-09-15 18:54:06 -04:00
media [media] media: usbtv: prevent access to free'd resources 2016-08-22 12:23:07 -04:00
memory AT91 reset, poweroff and ram drivers 2014-08-25 15:35:26 +02:00
memstick memstick: mspro_block: add missing curly braces 2015-05-17 19:12:28 -04:00
message mptfusion: prevent some memory corruption 2015-12-03 10:04:59 -05:00
mfd mfd: omap-usb-tll: Fix scheduling while atomic BUG 2016-06-06 19:11:00 -04:00
misc drivers/misc/ad525x_dpot: AD5274 fix RDAC read back errors 2016-07-12 08:47:55 -04:00
mmc mmc: block: fix packed command header endianness 2016-08-07 21:58:51 -04:00
mtd ubi: Make volume resize power cut aware 2016-08-22 12:23:24 -04:00
net net: fec: fix NULL pointer dereference in fec_enet_timeout_work 2016-09-02 14:43:37 -04:00
nfc NFC: st21nfcb: remove st21nfcb_nci_i2c_disable 2015-07-03 23:02:25 -04:00
ntb ntb: Adding split BAR support for Haswell platforms 2014-10-17 07:08:51 -04:00
nubus kernel/printk: use symbolic defines for console loglevels 2014-06-04 16:54:17 -07:00
of of: fix memory leak related to safe_name() 2016-08-22 12:23:00 -04:00
oprofile drivers/oprofile: Replace __get_cpu_var uses for address calculation 2014-08-26 13:45:46 -04:00
parisc Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2014-10-13 16:23:15 +02:00
parport parport: Add support for the WCH382 2S/1P multi-IO card 2016-03-02 15:19:08 -05:00
pci PCI: Limit config space size for Netronome NFP4000 2016-09-02 23:42:11 -04:00
pcmcia Disable write buffering on Toshiba ToPIC95 2015-07-03 23:02:29 -04:00
phy phy: twl4030-usb: Fix unbalanced pm_runtime_enable on module reload 2016-03-04 10:18:39 -05:00
pinctrl pinctrl: single: Fix pcs_parse_bits_in_pinctrl_entry to use __ffs than ffs 2016-07-12 08:47:47 -04:00
platform hp-wmi: Fix wifi cannot be hard-unblocked 2016-08-22 12:23:01 -04:00
pnp PNP: replace strnicmp with strncasecmp 2014-10-14 02:18:25 +02:00
power power: bq24190_charger: suppress build warning 2015-11-15 12:51:48 -05:00
powercap powercap / RAPL: change domain detection message 2014-09-03 01:29:00 +02:00
pps pps: do not crash when failed to register 2016-08-07 21:59:22 -04:00
ps3 ps3-vuart: don't use PREPARE_WORK 2014-03-07 10:24:48 -05:00
ptp PCI: Remove DEFINE_PCI_DEVICE_TABLE macro use 2014-08-12 12:15:14 -06:00
pwm pwm: Changes for v3.18-rc1 2014-10-21 08:17:43 -07:00
rapidio PCI: Remove DEFINE_PCI_DEVICE_TABLE macro use 2014-08-12 12:15:14 -06:00
ras trace, RAS: Add eMCA trace event interface 2014-06-25 13:26:47 -07:00
regulator regulator: s5m8767: fix get_register() error handling 2016-07-12 08:47:51 -04:00
remoteproc remoteproc: da8xx: don't select CMA on no-MMU 2014-06-17 17:09:36 +02:00
reset reset: sunxi: fix spinlock initialization 2015-01-27 08:29:41 -08:00
rpmsg A small pull request consisting of: 2013-05-07 14:02:00 -07:00
rtc rtc: max77686: Properly handle regmap_irq_get_virq() error code 2016-07-12 08:47:54 -04:00
s390 s390/dasd: fix hanging device after clear subchannel 2016-08-31 19:31:59 -04:00
sbus Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc 2014-08-05 18:57:18 -07:00
scsi aacraid: Check size values after double-fetch from user 2016-08-31 19:26:17 -04:00
sfi SFI / ACPI: Fix warnings reported during builds with W=1 2013-12-07 01:24:33 +01:00
sh drivers: sh: Leave disabling of unused PM domains to genpd 2014-09-09 00:46:13 +02:00
sn Drivers: misc: remove __dev* attributes. 2013-01-03 15:57:16 -08:00
soc soc: versatile: Add terminating entry for realview_soc_of_match 2014-10-28 22:05:07 +01:00
spi spi/rockchip: Make sure spi clk is on in rockchip_spi_set_cs 2016-07-12 08:47:51 -04:00
spmi spmi: Remove duplicate inclusion of module.h 2014-07-10 15:22:13 -07:00
ssb SSB: fix Kconfig dependencies 2015-05-17 19:12:34 -04:00
staging staging: comedi: ni_mio_common: fix AO inttrig backwards compatibility 2016-09-12 18:59:43 -04:00
target iscsi-target: Fix panic when adding second TCP connection to iSCSI session 2016-08-22 12:23:16 -04:00
tc TC: Handle device_register() errors. 2014-06-26 10:48:23 +01:00
thermal Correct backport of fa3c776 ("Thermal: Ignore invalid trip points") 2016-04-22 20:38:23 -04:00
thunderbolt thunderbolt: Fix double free of drom buffer 2016-06-03 11:30:32 -04:00
tty serial: samsung: Fix ERR pointer dereference on deferred probe 2016-08-22 12:23:00 -04:00
uio uio: Export definition of struct uio_device 2014-10-02 21:35:54 -07:00
usb usb: renesas_usbhs: fix clearing the {BRDY,BEMP}STS condition 2016-10-05 22:40:20 -04:00
uwb uwb: add an ASIE sysfs attribute to uwb_rc devices 2014-09-23 22:05:26 -07:00
vfio vfio: fix ioctl error handling 2016-03-11 09:45:22 -05:00
vhost target: Remove first argument of target_{get,put}_sess_cmd() 2016-03-02 15:18:56 -05:00
video fbdev: da8xx-fb: fix videomodes of lcd panels 2016-07-12 08:47:52 -04:00
virt drivers: clean-up prom.h implicit includes 2013-10-09 20:04:04 -05:00
virtio balloon: check the number of available pages in leak balloon 2016-08-22 12:23:26 -04:00
vlynq drivers/vlynq/vlynq.c: fix another resource size off by 1 error 2014-01-23 16:36:55 -08:00
vme vme: bridges: use pci_zalloc_consistent 2014-08-08 15:57:30 -07:00
w1 w1_therm reference count family data 2015-07-03 23:02:19 -04:00
watchdog watchdog: rc32434_wdt: fix ioctl error handling 2016-04-18 08:49:21 -04:00
xen xenbus: don't look up transaction IDs for ordinary writes 2016-08-31 22:05:44 -04:00
zorro zorro: Use ARRAY_SIZE 2014-07-11 10:38:02 +02:00
Kconfig soc: ti: add Keystone Navigator QMSS driver 2014-09-24 09:49:14 -04:00
Makefile Driver core patches for 3.17-rc1 2014-08-04 18:34:04 -07:00