android_kernel_sony_sdm845/drivers
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Kai-Heng Feng 9b916afc2a USB: Consolidate LPM checks to avoid enabling LPM twice
commit d7a6c0ce8d26412903c7981503bad9e1cc7c45d2 upstream.

USB Bluetooth controller QCA ROME (0cf3:e007) sometimes stops working
after S3:
[ 165.110742] Bluetooth: hci0: using NVM file: qca/nvm_usb_00000302.bin
[ 168.432065] Bluetooth: hci0: Failed to send body at 4 of 1953 (-110)

After some experiments, I found that disabling LPM can workaround the
issue.

On some platforms, the USB power is cut during S3, so the driver uses
reset-resume to resume the device. During port resume, LPM gets enabled
twice, by usb_reset_and_verify_device() and usb_port_resume().

Consolidate all checks into new LPM helpers to make sure LPM only gets
enabled once.

Fixes: de68bab4fa ("usb: Don't enable USB 2.0 Link PM by default.”)
Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
Cc: stable <stable@vger.kernel.org> # after much soaking
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-05-02 09:32:03 +02:00
..
accessibility
acpi ACPI / SBS: Fix GPE storm on recent MacBookPro's 2019-04-20 09:07:52 +02:00
amba ARM: amba: Don't read past the end of sysfs "driver_override" buffer 2018-05-01 15:13:08 -07:00
android binder: fix proc->files use-after-free 2018-12-08 13:05:07 +01:00
ata sata_rcar: fix deferred probing 2019-02-12 19:44:54 +01:00
atm atm: he: fix sign-extension overflow on large shift 2019-02-27 10:06:59 +01:00
auxdisplay
base PM / wakeup: Rework wakeup source timer cancellation 2019-03-23 13:19:53 +01:00
bcma
block floppy: check_events callback should not return a negative number 2019-03-23 13:19:41 +01:00
bluetooth Revert "Bluetooth: h5: Fix missing dependency on BT_HCIUART_SERDEV" 2018-11-27 16:09:40 +01:00
bus bus: arm-cci: remove unnecessary unreachable() 2018-12-05 19:42:41 +01:00
cdrom cdrom: Fix race condition in cdrom_sysctl_register 2019-04-05 22:29:12 +02:00
char tpm/tpm_i2c_atmel: Return -E2BIG when the transfer is incomplete 2019-04-27 09:34:41 +02:00
clk clk: ingenic: Fix doc of ingenic_cgu_div_info 2019-03-23 13:19:49 +01:00
clocksource clocksource/drivers/exynos_mct: Clear timer interrupt when shutdown 2019-03-23 13:19:46 +01:00
connector
cpufreq cpufreq: pxa2xx: remove incorrect __init annotation 2019-03-23 13:19:48 +01:00
cpuidle cpuidle: big.LITTLE: fix refcount leak 2019-02-12 19:44:55 +01:00
crypto crypto: crypto4xx - properly set IV after de- and encrypt 2019-04-27 09:34:41 +02:00
dax device-dax: implement ->split() to catch invalid munmap attempts 2018-02-28 10:18:33 +01:00
dca
devfreq PM / devfreq: Fix potential NULL pointer dereference in governor_store 2018-04-13 19:48:09 +02:00
dio
dma dmaengine: sh: rcar-dmac: With cyclic DMA residue 0 is valid 2019-05-02 09:32:02 +02:00
dma-buf dma-buf: remove redundant initialization of sg_table 2018-06-06 16:44:33 +02:00
edac EDAC, skx_edac: Fix logical channel intermediate decoding 2018-11-13 11:16:56 -08:00
eisa
extcon
firewire firewire-ohci: work around oversized DMA reads on JMicron controllers 2018-05-30 07:50:18 +02:00
firmware efi/memattr: Don't bail on zero VA if it equals the region's PA 2019-04-05 22:29:12 +02:00
fmc
fpga
gpio gpio: pxa: handle corner case of unprobed device 2019-04-20 09:07:51 +02:00
gpu drm/vc4: Fix compilation error reported by kbuild test bot 2019-05-02 09:32:02 +02:00
hid i2c-hid: properly terminate i2c_hid_dmi_desc_override_table[] array 2019-04-27 09:34:47 +02:00
hsi HSI: ssi_protocol: double free in ssip_pn_xmit() 2018-03-24 11:00:12 +01:00
hv Drivers: hv: vmbus: Return -EINVAL for the sys files for unopened channels 2018-12-29 13:40:15 +01:00
hwmon hwmon: (lm80) Fix missing unlock on error in set_fan_div() 2019-02-23 09:05:58 +01:00
hwspinlock
hwtracing coresight: etm4x: Add support to enable ETMv4.2 2019-04-05 22:29:08 +02:00
i2c i2c: core-smbus: prevent stack corruption on read I2C_BLOCK_DATA 2019-04-05 22:29:05 +02:00
ide ide: pmac: add of_node_put() 2018-12-21 14:11:37 +01:00
idle idle: i7300: add PCI dependency 2018-02-25 11:05:55 +01:00
iio io: accel: kxcjk1013: restore the range after resume. 2019-04-27 09:34:42 +02:00
infiniband IB/rdmavt: Fix frwr memory registration 2019-05-02 09:32:00 +02:00
input Input: synaptics-rmi4 - write config register values to the right offset 2019-05-02 09:32:02 +02:00
iommu iommu/dmar: Fix buffer overflow during PCI bus notification 2019-04-20 09:07:53 +02:00
ipack
irqchip irqchip/mbigen: Don't clear eventid when freeing an MSI 2019-04-20 09:07:49 +02:00
isdn mISDN: hfcpci: Test both vendor & device ID for Digium HFC4S 2019-04-03 06:24:14 +02:00
leds leds: lp55xx: fix null deref on firmware load failure 2019-04-05 22:29:11 +02:00
lguest
lightnvm
macintosh macintosh/rack-meter: Convert cputime64_t use to u64 2018-10-20 09:51:32 +02:00
mailbox mailbox: xgene-slimpro: Fix potential NULL pointer dereference 2018-09-09 20:01:19 +02:00
mcb
md bcache: improve sysfs_strtoul_clamp() 2019-04-05 22:29:12 +02:00
media media: s5p-jpeg: Check for fmt_ver_flag when doing fmt enumeration 2019-04-05 22:29:14 +02:00
memory memory: tegra: Apply interrupts mask per SoC 2018-08-03 07:55:24 +02:00
memstick memstick: Prevent memstick host from getting runtime suspended during card detection 2019-02-12 19:44:55 +01:00
message scsi: mptfusion: Add bounds check in mptctl_hp_targetinfo() 2018-05-25 16:13:06 +02:00
mfd mfd: mc13xxx: Fix a missing check of a register-read failure 2019-02-27 10:06:59 +01:00
misc lkdtm: Add tests for NULL pointer dereference 2019-04-20 09:07:53 +02:00
mmc mmc: sdhci: Fix data command CRC error handling 2019-04-27 09:34:41 +02:00
mtd mtd: rawnand: gpmi: fix MX28 bus master lockup problem 2019-02-15 08:07:37 +01:00
net rt2x00: do not increment sequence number while re-transmitting 2019-04-27 09:34:45 +02:00
nfc NFC: nxp-nci: Include unaligned.h instead of access_ok.h 2019-01-09 16:16:39 +01:00
ntb ntb_transport: Fix bug with max_mw_size parameter 2018-05-30 07:50:22 +02:00
nubus
nvdimm libnvdimm: Fix altmap reservation size calculation 2019-03-23 13:19:45 +01:00
nvme nvmet-rdma: fix null dereference under heavy load 2019-01-31 08:12:37 +01:00
nvmem nvmem: properly handle returned value nvmem_reg_read 2018-08-03 07:55:22 +02:00
of of: add helper to lookup compatible child node 2018-12-01 09:44:21 +01:00
oprofile
parisc parisc/pci: Switch LBA PCI bus from Hard Fail to Soft Fail mode 2018-05-30 07:50:43 +02:00
parport parport_pc: fix find_superio io compare code, should use equal test. 2019-03-23 13:19:50 +01:00
pci PCI: Add function 1 DMA alias quirk for Marvell 9170 SATA controller 2019-04-17 08:36:47 +02:00
pcmcia pcmcia: Implement CLKRUN protocol disabling for Ricoh bridges 2018-11-13 11:16:46 -08:00
perf drivers/perf: arm_pmu: handle no platform_device 2018-03-22 09:17:51 +01:00
phy phy: tegra: remove redundant self assignment of 'map' 2019-02-27 10:07:03 +01:00
pinctrl pinctrl: meson: meson8b: fix the sdxc_a data 1..3 pins 2019-03-23 13:19:43 +01:00
platform platform/x86: Fix unmet dependency warning for SAMSUNG_Q10 2019-03-13 14:04:57 -07:00
pnp
power power: supply: charger-manager: Fix incorrect return value 2019-03-27 14:13:05 +09:00
powercap PowerCap: Fix an error code in powercap_register_zone() 2018-04-13 19:47:56 +02:00
pps
ps3
ptp ptp: check gettime64 return code in PTP_SYS_OFFSET ioctl 2019-02-12 19:44:52 +01:00
pwm pwm: tiehrpwm: Fix disabling of output of PWMs 2018-09-09 20:01:25 +02:00
rapidio
ras
regulator regulator: act8865: Fix act8600_sudcdc_voltage_ranges setting 2019-04-05 22:29:14 +02:00
remoteproc
reset reset: make device_reset_optional() really optional 2018-12-08 13:05:08 +01:00
rpmsg rpmsg: smd: fix memory leak on channel create 2018-11-13 11:17:03 -08:00
rtc rtc: Fix overflow when converting time64_t to rtc_time 2019-03-27 14:13:04 +09:00
s390 scsi: zfcp: fix scsi_eh host reset with port_forced ERP for non-NPIV FCP devices 2019-04-03 06:24:17 +02:00
sbus drivers/sbus/char: add of_node_put() 2018-12-21 14:11:36 +01:00
scsi Revert "scsi: fcoe: clear FC_RP_STARTED flags when receiving a LOGO" 2019-04-27 09:34:43 +02:00
sfi
sh
sn
soc soc/tegra: pmc: Drop locking from tegra_powergate_is_powered() 2019-04-20 09:07:53 +02:00
spi spi: pxa2xx: Setup maximum supported DMA transfer length 2019-03-23 13:19:46 +01:00
spmi
ssb
staging staging: comedi: ni_usb6501: Fix possible double-free of ->usb_rx_buf 2019-04-27 09:34:42 +02:00
target scsi: target/iscsi: Avoid iscsit_release_commands_from_conn() deadlock 2019-03-23 13:19:47 +01:00
tc TC: Set DMA masks for devices 2018-11-13 11:17:02 -08:00
thermal thermal/int340x_thermal: fix mode setting 2019-04-20 09:07:48 +02:00
thunderbolt thunderbolt: Resume control channel after hibernation image is created 2018-04-24 09:34:12 +02:00
tty serial: uartps: console_setup() can't be placed to init section 2019-04-20 09:07:52 +02:00
uio uio: Fix an Oops on load 2018-11-27 16:09:41 +01:00
usb USB: Consolidate LPM checks to avoid enabling LPM twice 2019-05-02 09:32:03 +02:00
uwb uwb: hwa-rc: fix memory leak at probe 2018-10-03 17:01:42 -07:00
vfio vfio: platform: Fix reset module leak in error path 2018-08-03 07:55:13 +02:00
vhost vhost: reject zero size iova range 2019-04-27 09:34:40 +02:00
video fbdev: fbmem: fix memory access if logo is bigger than the screen 2019-04-05 22:29:12 +02:00
virt
virtio virtio: Honour 'may_reduce_num' in vring_create_virtqueue 2019-04-17 08:36:47 +02:00
vlynq
vme
w1 w1: omap-hdq: fix missing bus unregister at removal 2018-11-13 11:17:01 -08:00
watchdog watchdog: sbsa: use 32-bit read for WCV 2018-05-30 07:50:34 +02:00
xen xen: xlate_mmu: add missing header to fix 'W=1' warning 2018-12-17 09:38:34 +01:00
zorro zorro: Set up z->dev.dma_mask for the DMA API 2018-05-30 07:50:44 +02:00
Kconfig
Makefile usb: build drivers/usb/common/ when USB_SUPPORT is set 2018-02-25 11:05:45 +01:00