android_kernel_oneplus_msm8998/drivers
Lyude 2c10a2c5ce drm/amdgpu: Poll for both connect/disconnect on analog connectors
commit b636a1b3d624b49b23cc1be2f9f6bcbb89aca855 upstream.

DRM_CONNECTOR_POLL_CONNECT only enables polling for connections, not
disconnections. Because of this, we end up losing hotplug polling for
analog connectors once they get connected.

Easy way to reproduce:
 - Grab a machine with an AMD GPU and a VGA port
 - Plug a monitor into the VGA port, wait for it to update the connector
   from disconnected to connected
 - Disconnect the monitor on VGA, a hotplug event is never sent for the
   removal of the connector.

Originally, only using DRM_CONNECTOR_POLL_CONNECT might have been a good
idea since doing VGA polling can sometimes result in having to mess with
the DAC voltages to figure out whether or not there's actually something
there since VGA doesn't have HPD. Doing this would have the potential of
showing visible artifacts on the screen every time we ran a poll while a
VGA display was connected. Luckily, amdgpu_vga_detect() only resorts to
this sort of polling if the poll is forced, and DRM's polling helper
doesn't force it's polls.

Additionally, this removes some assignments to connector->polled that
weren't actually doing anything.

Signed-off-by: Lyude <cpaul@redhat.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-08-20 18:09:22 +02:00
..
accessibility
acpi ACPI / osi: Fix an issue that acpi_osi=!* cannot disable ACPICA internal strings 2016-06-01 12:15:50 -07:00
amba
android drivers: android: correct the size of struct binder_uintptr_t for BC_DEAD_BINDER_DONE 2016-03-03 15:07:10 -08:00
ata libata: LITE-ON CX1-JB256-HP needs lower max_sectors 2016-08-10 11:49:29 +02:00
atm
auxdisplay
base base: make module_create_drivers_dir race-free 2016-07-27 09:47:32 -07:00
bcma x86/quirks: Add early quirk to reset Apple AirPort card 2016-08-10 11:49:24 +02:00
block nbd: ratelimit error msgs after socket close 2016-05-11 11:21:10 +02:00
bluetooth Bluetooth: hci_intel: Fix null gpio desc pointer dereference 2016-08-20 18:09:17 +02:00
bus bus: imx-weim: Take the 'status' property value into account 2016-05-04 14:48:54 -07:00
cdrom
char random: add interrupt callback to VMBus IRQ handler 2016-08-20 18:09:20 +02:00
clk clk: rockchip: initialize flags of clk_init_data in mmc-phase clock 2016-08-10 11:49:28 +02:00
clocksource clockevents/tcb_clksrc: Prevent disabling an already disabled clock 2016-03-03 15:07:15 -08:00
connector connector: bump skb->users before callback invocation 2016-01-04 21:46:45 -05:00
cpufreq intel_pstate: Fix MSR_CONFIG_TDP_x addressing in core_get_max_pstate() 2016-08-20 18:09:18 +02:00
cpuidle cpuidle: Fix cpuidle_state_is_coupled() argument in cpuidle_enter() 2016-06-07 18:14:34 -07:00
crypto crypto: qat - make qat_asym_algs.o depend on asn1 headers 2016-07-27 09:47:40 -07:00
dca
devfreq
dio
dma dmaengine: at_xdmac: double FIFO flush needed to compute residue 2016-08-10 11:49:25 +02:00
dma-buf
edac EDAC: Correct channel count limit 2016-08-20 18:09:19 +02:00
eisa
extcon extcon: max77843: Use correct size for reading the interrupt register 2016-05-04 14:48:54 -07:00
firewire IEEE 1394 subsystem patch: 2015-11-11 10:21:34 -08:00
firmware efi: Expose non-blocking set_variable() wrapper to efivars 2016-05-04 14:48:49 -07:00
fmc
fpga fpga manager: Fix firmware resource leak on error 2015-11-24 15:25:46 -08:00
gpio gpio: intel-mid: Remove potentially harmful code 2016-08-20 18:09:17 +02:00
gpu drm/amdgpu: Poll for both connect/disconnect on analog connectors 2016-08-20 18:09:22 +02:00
hid HID: uhid: fix timeout when probe races with IO 2016-08-20 18:09:19 +02:00
hsi
hv random: add interrupt callback to VMBus IRQ handler 2016-08-20 18:09:20 +02:00
hwmon hwmon: (dell-smm) Cache fan_type() calls and change fan detection 2016-07-27 09:47:37 -07:00
hwspinlock drivers/hwspinlock: fix race between radix tree insertion and lookup 2016-02-25 12:01:23 -08:00
hwtracing intel_th: Fix a deadlock in modprobing 2016-08-10 11:49:30 +02:00
i2c i2c: efm32: fix a failure path in efm32_i2c_probe() 2016-08-20 18:09:19 +02:00
ide
idle intel_idle: prevent SKL-H boot failure when C8+C9+C10 enabled 2016-04-12 09:09:05 -07:00
iio iio:ad7266: Fix probe deferral for vref 2016-07-27 09:47:37 -07:00
infiniband IB/mlx4: Properly initialize GRH TClass and FlowLabel in AHs 2016-07-27 09:47:27 -07:00
input sur40: fix occasional oopses on device close 2016-08-20 18:09:19 +02:00
iommu iommu/amd: Update Alias-DTE in update_device_table() 2016-08-20 18:09:21 +02:00
ipack
irqchip irqchip/gic-v3: Configure all interrupts as non-secure Group-1 2016-06-01 12:15:49 -07:00
isdn ser_gigaset: remove unnecessary kfree() calls from release method 2015-12-15 13:24:21 -05:00
leds
lguest
lightnvm lightnvm: wrong offset in bad blk lun calculation 2015-12-29 08:28:32 -07:00
macintosh
mailbox
mcb mcb: Fixed bar number assignment for the gdd 2016-06-01 12:15:53 -07:00
md dm: set DMF_SUSPENDED* _before_ clearing DMF_NOFLUSH_SUSPENDING 2016-08-20 18:09:19 +02:00
media s5p-mfc: Add release callback for memory region devs 2016-08-20 18:09:19 +02:00
memory memory: omap-gpmc: Fix omap gpmc EXTRADELAY timing 2016-07-27 09:47:35 -07:00
memstick
message SCSI queue for 4.4. 2015-11-12 07:06:18 -05:00
mfd mfd: qcom_rpm: Parametrize also ack selector size 2016-08-20 18:09:18 +02:00
misc mei: bus: call mei_cl_read_start under device lock 2016-06-01 12:15:50 -07:00
mmc mmc: block: fix packed command header endianness 2016-08-10 11:49:28 +02:00
mtd ubi: Make recover_peb power cut aware 2016-07-27 09:47:33 -07:00
net cdc_ncm: do not call usbnet_link_change from cdc_ncm_bind 2016-08-16 09:30:48 +02:00
nfc Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2015-11-10 18:11:41 -08:00
ntb
nubus
nvdimm libnvdimm, pfn: fix uuid validation 2016-04-20 15:41:54 +09:00
nvme NVMe: IO ending fixes on surprise removal 2015-12-22 10:12:04 -07:00
nvmem nvmem: mxs-ocotp: fix buffer overflow in read 2016-05-11 11:21:21 +02:00
of of: irq: fix of_irq_get[_byname]() kernel-doc 2016-07-27 09:47:29 -07:00
oprofile
parisc parisc iommu: fix panic due to trying to allocate too large region 2015-12-12 16:07:25 +01:00
parport
pci PCI: Disable all BAR sizing for devices with non-compliant BARs 2016-06-07 18:14:35 -07:00
pcmcia pcmcia: db1xxx_ss: fix last irq_to_gpio user 2016-04-20 15:42:09 +09:00
perf
phy phy: core: fix wrong err handle for phy_power_on 2016-03-03 15:07:28 -08:00
pinctrl pinctrl: cherryview: prevent concurrent access to GPIO controllers 2016-08-20 18:09:17 +02:00
platform hp-wmi: Fix wifi cannot be hard-unblocked 2016-08-20 18:09:19 +02:00
pnp PNP: Add Broadwell to Intel MCH size workaround 2016-08-16 09:30:48 +02:00
power power_supply: power_supply_read_temp only if use_cnt > 0 2016-08-10 11:49:27 +02:00
powercap powercap / RAPL: fix BIOS lock check 2015-12-12 02:31:11 +01:00
pps pps: do not crash when failed to register 2016-08-10 11:49:25 +02:00
ps3
ptp
pwm pwm: brcmstb: Fix check of devm_ioremap_resource() return code 2016-05-04 14:48:47 -07:00
rapidio
ras
regulator regulator: axp20x: Fix axp22x ldo_io voltage ranges 2016-05-18 17:06:51 -07:00
remoteproc remoteproc: Fix potential race condition in rproc_add 2016-08-20 18:09:20 +02:00
reset
rpmsg
rtc rtc: max77686: Properly handle regmap_irq_get_virq() error code 2016-05-04 14:48:52 -07:00
s390 s390/cio: allow to reset channel measurement block 2016-08-20 18:09:18 +02:00
sbus
scsi scsi: ignore errors from scsi_dh_add_device() 2016-08-16 09:30:48 +02:00
sfi
sh drivers: sh: Restore legacy clock domain on SuperH platforms 2016-03-09 15:34:49 -08:00
sn
soc soc: rockchip: power-domain: fix err handle while probing 2016-05-11 11:21:11 +02:00
spi spi: pxa2xx: Clear all RFT bits in reset_sccr1() on Intel Quark 2016-08-20 18:09:19 +02:00
spmi
ssb
staging ipath: Restrict use of the write() interface 2016-08-16 09:30:48 +02:00
target target: Fix target_release_cmd_kref shutdown comp leak 2016-04-12 09:09:02 -07:00
tc
thermal thermal: cpu_cooling: fix improper order during initialization 2016-07-27 09:47:29 -07:00
thunderbolt thunderbolt: Fix double free of drom buffer 2016-06-01 12:15:53 -07:00
tty tty/serial: atmel: fix RS485 half duplex with DMA 2016-08-20 18:09:17 +02:00
uio
usb USB: usbfs: fix potential infoleak in devio 2016-08-20 18:09:16 +02:00
uwb
vfio vfio: fix ioctl error handling 2016-03-09 15:34:50 -08:00
vhost vhost: replace % with & on data path 2015-12-07 17:28:10 +02:00
video fbdev: da8xx-fb: fix videomodes of lcd panels 2016-05-04 14:48:51 -07:00
virt
virtio virtio_balloon: fix PFN format for virtio-1 2016-07-27 09:47:34 -07:00
vlynq
vme
w1 w1:omap_hdq: fix regression 2016-08-20 18:09:22 +02:00
watchdog watchdog: rc32434_wdt: fix ioctl error handling 2016-04-12 09:08:54 -07:00
xen xenbus: don't bail early from xenbus_dev_request_and_reply() 2016-08-10 11:49:26 +02:00
zorro
Kconfig
Makefile null_blk: register as a LightNVM device 2015-11-16 15:22:28 -07:00