linux/drivers/gpu/drm/radeon
Lyude 14ff8d48f2 drm/radeon: Poll for both connect/disconnect on analog connectors
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 a radeon 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, radeon_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.

Cc: stable@vger.kernel.org
Signed-off-by: Lyude <cpaul@redhat.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2016-07-07 15:06:06 -04:00
..
reg_srcs drm/radeon: allow geom rings to be setup on r600/r700 (v2) 2014-02-06 12:13:52 +10:00
.gitignore
atom-bits.h
atom-names.h
atom-types.h
atom.c drm/radeon: fix indentation. 2016-03-16 18:08:06 -04:00
atom.h drm/radeon: add locking around atombios scratch space usage 2014-11-11 17:22:26 -05:00
atombios_crtc.c Linux 4.7-rc5 2016-07-02 15:56:01 +10:00
atombios_dp.c drm/radeon: fix DP mode validation 2016-05-12 15:03:39 -04:00
atombios_encoders.c drm/radeon: make sure vertical front porch is at least 1 2016-05-03 14:50:54 -04:00
atombios_i2c.c drm/radeon: add locking around atombios scratch space usage 2014-11-11 17:22:26 -05:00
atombios.h drm/radeon: fix comment 2015-05-26 15:09:03 +02:00
avivod.h
btc_dpm.c drm/radeon: fix indentation. 2016-03-16 18:08:06 -04:00
btc_dpm.h Revert "drm/radeon: drop btc_get_max_clock_from_voltage_dependency_table" 2014-10-13 11:34:13 -04:00
btcd.h drm/radeon/dpm: use the driver state for dpm debugfs 2014-02-06 12:22:46 -05:00
cayman_blit_shaders.c drm: fix trivial typos 2015-10-21 11:35:11 -04:00
cayman_blit_shaders.h
ci_dpm.c drm/radeon: fix indentation. 2016-03-16 18:08:06 -04:00
ci_dpm.h drm/radeon: bind fan control on CI cards to hwmon interface (v2) 2015-01-22 10:38:48 -05:00
ci_smc.c drm/radeon: fix indentation. 2016-03-16 18:08:06 -04:00
cik_blit_shaders.c
cik_blit_shaders.h
cik_reg.h drm/radeon: Add H/W debugger kfd->kgd functions 2015-06-03 11:31:12 +03:00
cik_sdma.c drm/radeon: Avoid double gpu reset by adding a timeout on IB ring tests. 2016-02-10 14:17:15 -05:00
cik.c drm/radeon/cik: fix CP jump table size 2016-07-07 14:51:30 -04:00
cikd.h drm/radeon: handle more than 10 UVD sessions 2016-05-04 20:19:43 -04:00
clearstate_cayman.h drm/radeon: use NULL instead of zero in clearstate headers 2014-06-02 10:25:07 -04:00
clearstate_ci.h drm/radeon: use NULL instead of zero in clearstate headers 2014-06-02 10:25:07 -04:00
clearstate_defs.h
clearstate_evergreen.h
clearstate_si.h drm/radeon: use NULL instead of zero in clearstate headers 2014-06-02 10:25:07 -04:00
cypress_dpm.c drm/radeon: fix indentation. 2016-03-16 18:08:06 -04:00
cypress_dpm.h
dce3_1_afmt.c drm/radeon: use proper ACR regisiter for DCE3.2 2015-06-01 23:16:22 -04:00
dce6_afmt.c drm/radeon: Add a common function for DFS handling 2016-01-27 12:48:32 -05:00
evergreen_blit_shaders.c drm: fix trivial typos 2015-10-21 11:35:11 -04:00
evergreen_blit_shaders.h
evergreen_cs.c drm/radeon: allow PACKET3_PFP_SYNC_ME on evergreen 2016-07-07 14:50:59 -04:00
evergreen_dma.c drm/radeon: split semaphore and sync object handling v2 2014-11-20 13:00:16 -05:00
evergreen_hdmi.c drm/radeon: fix indentation. 2016-03-16 18:08:06 -04:00
evergreen_reg.h drm/radeon: fix vertical bars appear on monitor (v2) 2016-04-27 12:27:08 -04:00
evergreen_smc.h drm/radeon/dpm: fix typo in EVERGREEN_SMC_FIRMWARE_HEADER_softRegisters 2014-03-06 16:46:58 -05:00
evergreen.c Linux 4.6-rc7 2016-05-09 13:49:56 +10:00
evergreend.h drm/radeon: allow PACKET3_PFP_SYNC_ME on evergreen 2016-07-07 14:50:59 -04:00
Kconfig drm/radeon: remove UMS support 2015-12-02 12:45:54 -05:00
kv_dpm.c drm/radeon: fix array out of bounds 2016-05-16 10:25:13 -04:00
kv_dpm.h
kv_smc.c
Makefile drm/radeon: remove UMS support 2015-12-02 12:45:54 -05:00
mkregtable.c Replace mentions of "list_struct" to "list_head" 2014-11-20 14:45:15 +01:00
ni_dma.c drm/radeon: Remove rdev->gart.pages_addr array 2015-01-22 11:48:03 -05:00
ni_dpm.c drm/radeon: fix indentation. 2016-03-16 18:08:06 -04:00
ni_dpm.h
ni_reg.h drm/radeon/mst: port some MST setup code from DAL. 2016-04-06 14:57:46 -04:00
ni.c drm/radeon: allow to force hard GPU reset. 2016-05-02 13:08:54 -04:00
nid.h drm/radeon: implement tn_set_vce_clocks 2015-05-26 10:31:21 -04:00
nislands_smc.h
ObjectID.h
ppsmc.h drm/radeon/dpm: add thermal dpm support for CI 2014-11-20 13:00:10 -05:00
pptable.h drm/radeon/dpm: add smc fan control for CI (v2) 2014-11-20 13:00:10 -05:00
r100_track.h
r100.c drm/radeon: Support DRM_MODE_PAGE_FLIP_ASYNC 2016-05-04 20:19:03 -04:00
r100d.h
r200.c drm/radeon: rename radeon_cs_reloc to radeon_bo_list 2014-12-03 14:26:47 -05:00
r300_reg.h
r300.c drm/radeon: allow to force hard GPU reset. 2016-05-02 13:08:54 -04:00
r300d.h
r420.c drm/radeon: Only flush HDP cache for indirect buffers from userspace 2014-08-18 17:09:44 -04:00
r420d.h
r500_reg.h drm/radeon: Bypass hw lut's for > 8 bpc framebuffer scanout. 2014-06-13 12:22:30 -04:00
r520.c drm/radeon: resume old pm late 2014-03-06 16:46:56 -05:00
r520d.h
r600_blit_shaders.c drm: fix trivial typos 2015-10-21 11:35:11 -04:00
r600_blit_shaders.h
r600_cs.c drm/radeon: fix indentation. 2016-03-16 18:08:06 -04:00
r600_dma.c drm/radeon: Avoid double gpu reset by adding a timeout on IB ring tests. 2016-02-10 14:17:15 -05:00
r600_dpm.c drm/radeon: fix indentation. 2016-03-16 18:08:06 -04:00
r600_dpm.h drm/radeon/dpm: add smc fan control for SI (v2) 2014-11-20 13:00:09 -05:00
r600_hdmi.c drm/radeon: fix indentation. 2016-03-16 18:08:06 -04:00
r600_reg.h
r600.c drm/radeon: don't include RADEON_HPD_NONE in HPD IRQ enable bitsets 2016-05-02 15:25:40 -04:00
r600d.h Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2014-10-14 09:39:08 +02:00
radeon_acpi.c drm/radeon: Drop unnecessary #include <linux/vga_switcheroo.h> 2015-10-14 16:16:37 -04:00
radeon_acpi.h drm/radeon: update radeon acpi header 2016-02-26 14:16:58 -05:00
radeon_agp.c add blacklist for thinkpad T40p 2015-11-30 14:44:34 -05:00
radeon_asic.c drm/radeon: add driver option to disable vce block. 2016-05-02 13:08:53 -04:00
radeon_asic.h drm/radeon: Support DRM_MODE_PAGE_FLIP_ASYNC 2016-05-04 20:19:03 -04:00
radeon_atombios.c drm/radeon: fix indentation. 2016-03-16 18:08:06 -04:00
radeon_atpx_handler.c drm/radeon: work around lack of upstream ACPI support for D3cold 2016-07-07 14:51:13 -04:00
radeon_audio.c drm/radeon: Add a common function for DFS handling 2016-01-27 12:48:32 -05:00
radeon_audio.h drm/radeon: Add a common function for DFS handling 2016-01-27 12:48:32 -05:00
radeon_benchmark.c drm/radeon: fix the crash in benchmark functions 2015-02-02 11:39:35 -05:00
radeon_bios.c drm/radeon: Drop unnecessary #include <linux/vga_switcheroo.h> 2015-10-14 16:16:37 -04:00
radeon_clocks.c
radeon_combios.c PCI: Remove includes of asm/pci-bridge.h 2016-02-05 16:29:28 -06:00
radeon_connectors.c drm/radeon: Poll for both connect/disconnect on analog connectors 2016-07-07 15:06:06 -04:00
radeon_cs.c drm: remove unused dev variables 2016-05-18 19:16:24 +02:00
radeon_cursor.c drm: Remove unused drm_device from drm_gem_object_lookup() 2016-05-17 08:47:30 +02:00
radeon_device.c drm/radeon: fix asic initialization for virtualized environments 2016-06-13 15:37:34 -04:00
radeon_display.c drm/radeon: use crtc directly in drm_crtc_vblank_put() 2016-06-13 18:38:12 +02:00
radeon_dp_auxch.c drm/radeon: fix DP link training issue with second 4K monitor 2016-05-05 11:14:18 -04:00
radeon_dp_mst.c drm/radeon: use helper for mst connector dpms. 2016-04-06 14:58:42 -04:00
radeon_drv.c drm/radeon: drop explicit pci D3/D0 setting for ATPX power control 2016-07-07 14:51:10 -04:00
radeon_drv.h drm/radeon: remove UMS support 2015-12-02 12:45:54 -05:00
radeon_encoders.c drm/radeon: move bl encoder assignment into bl init 2015-10-29 11:13:18 -04:00
radeon_family.h drm/radeon: add Mullins chip family 2014-05-06 12:19:57 +02:00
radeon_fb.c drm/radeon: fix indentation. 2016-03-16 18:08:06 -04:00
radeon_fence.c drm/radeon: Avoid double gpu reset by adding a timeout on IB ring tests. 2016-02-10 14:17:15 -05:00
radeon_gart.c drm/radeon: Don't flush the GART TLB if rdev->gart.ptr == NULL 2015-07-16 12:39:37 -04:00
radeon_gem.c drm: Remove unused drm_device from drm_gem_object_lookup() 2016-05-17 08:47:30 +02:00
radeon_i2c.c drm/radeon/radeon_i2c: Remove unused function 2015-01-22 10:38:51 -05:00
radeon_ib.c drm/radeon: fix indentation. 2016-03-16 18:08:06 -04:00
radeon_ioc32.c drm: Remove DRM_ARRAY_SIZE() for ARRAY_SIZE() 2014-06-10 09:36:17 +10:00
radeon_irq_kms.c drm: Nuke ->vblank_disable_allowed 2016-05-21 07:03:31 +10:00
radeon_kfd.c drm/radeon: Return -EPROBE_DEFER when amdkfd not loaded 2016-02-27 22:52:40 +02:00
radeon_kfd.h drm/radeon: Return -EPROBE_DEFER when amdkfd not loaded 2016-02-27 22:52:40 +02:00
radeon_kms.c drm/radeon: Drop unnecessary unsigned int < 0 check 2016-01-04 12:30:46 -05:00
radeon_legacy_crtc.c drm/radeon: use drm_crtc_vblank_{on,off}() 2016-06-13 18:38:00 +02:00
radeon_legacy_encoders.c drm/radeon: fix indentation. 2016-03-16 18:08:06 -04:00
radeon_legacy_tv.c
radeon_mn.c drm/radeon: make radeon_mn_get wait for mmap_sem killable 2016-05-23 17:04:14 -07:00
radeon_mode.h Merge branch 'drm-next-4.5' of git://people.freedesktop.org/~agd5f/linux into drm-next 2015-12-23 14:15:26 +10:00
radeon_object.c drm/ttm: remove lazy parameter from ttm_bo_wait 2016-05-04 20:21:26 -04:00
radeon_object.h drm/ttm: remove use_ticket parameter from ttm_bo_reserve 2016-05-04 20:21:21 -04:00
radeon_pm.c drm/radeon: use drm_crtc_vblank_{get,put}() 2016-06-06 18:05:08 +02:00
radeon_prime.c drm/radeon: export reservation_object from dmabuf to ttm 2014-10-03 09:19:17 -04:00
radeon_reg.h
radeon_ring.c drm/radeon: always dump the ring content if it's available 2015-03-27 10:17:43 -04:00
radeon_sa.c drm/radeon: hold reference to fences in radeon_sa_bo_new 2016-02-10 14:07:44 -05:00
radeon_semaphore.c drm/radeon: fix indentation. 2016-03-16 18:08:06 -04:00
radeon_sync.c drm/radeon: track VM update fences separately 2014-11-20 13:00:17 -05:00
radeon_test.c drm/radeon: fix the crash in test functions 2015-02-02 11:39:36 -05:00
radeon_trace_points.c
radeon_trace.h tracing/drm: Remove unused TRACE_SYSTEM_STRING define 2015-04-07 12:29:23 -04:00
radeon_ttm.c drm/ttm: remove no_gpu_wait param from ttm_bo_move_accel_cleanup 2016-07-07 14:54:39 -04:00
radeon_ucode.c drm/radeon: add new firmware header definitions (v3) 2014-08-05 08:53:22 -04:00
radeon_ucode.h drm/radeon: add new firmware header definitions (v3) 2014-08-05 08:53:22 -04:00
radeon_uvd.c drm/radeon: handle more than 10 UVD sessions 2016-05-04 20:19:43 -04:00
radeon_vce.c drm/radeon: fix indentation. 2016-03-16 18:08:06 -04:00
radeon_vm.c drm/radeon: fix indentation. 2016-03-16 18:08:06 -04:00
radeon.h dma-buf/fence: make fence context 64 bit v2 2016-06-02 08:27:41 +02:00
rs100d.h
rs400.c drm/radeon: Split off gart_get_page_entry ASIC hook from set_page_entry 2015-01-22 11:46:17 -05:00
rs400d.h
rs600.c drm/radeon: Support DRM_MODE_PAGE_FLIP_ASYNC 2016-05-04 20:19:03 -04:00
rs600d.h
rs690.c drm/radeon: Fixup hw vblank counter/ts for new drm_update_vblank_count() (v2) 2015-12-18 17:29:47 -05:00
rs690d.h
rs780_dpm.c drm/radeon: fix indentation. 2016-03-16 18:08:06 -04:00
rs780_dpm.h
rs780d.h
rv6xx_dpm.c drm/radeon: fix indentation. 2016-03-16 18:08:06 -04:00
rv6xx_dpm.h
rv6xxd.h
rv200d.h
rv250d.h
rv350d.h
rv515.c drm/radeon: make sure mode init is complete in bandwidth_update 2014-11-06 15:42:44 -05:00
rv515d.h
rv730_dpm.c drm/radeon: make some dpm errors debug only 2015-11-25 11:28:42 -05:00
rv730d.h
rv740_dpm.c drm/radeon: fix indentation. 2016-03-16 18:08:06 -04:00
rv740d.h
rv770_dma.c drm/radeon: split semaphore and sync object handling v2 2014-11-20 13:00:16 -05:00
rv770_dpm.c drm/radeon: fix indentation. 2016-03-16 18:08:06 -04:00
rv770_dpm.h drm/radeon: comment out some currently unused 7xx dpm code 2015-01-22 10:38:58 -05:00
rv770_smc.c
rv770_smc.h
rv770.c drm/radeon: Support DRM_MODE_PAGE_FLIP_ASYNC 2016-05-04 20:19:03 -04:00
rv770d.h drm/radeon: disable semaphores for UVD V1 (v2) 2015-05-04 15:03:56 -04:00
si_blit_shaders.c
si_blit_shaders.h
si_dma.c drm/radeon: Remove rdev->gart.pages_addr array 2015-01-22 11:48:03 -05:00
si_dpm.c drm/radeon: add a quirk for a XFX R9 270X 2016-04-18 11:18:35 -04:00
si_dpm.h drm/radeon: bind fan control on SI cards to hwmon interface 2015-01-22 10:38:48 -05:00
si_reg.h
si_smc.c drm/radeon/si: Add support for new ucode format (v3) 2014-08-05 08:53:23 -04:00
si.c drm/radeon: load different smc firmware on some SI variants 2016-07-07 14:50:39 -04:00
sid.h drm/radeon: Fix "slow" audio over DP on DCE8+ 2015-12-18 17:29:46 -05:00
sislands_smc.h drm/radeon/dpm: add smc fan control for SI (v2) 2014-11-20 13:00:09 -05:00
smu7_discrete.h drm/radeon/dpm: add smc fan control for CI (v2) 2014-11-20 13:00:10 -05:00
smu7_fusion.h
smu7.h
sumo_dpm.c drm/radeon: fix indentation. 2016-03-16 18:08:06 -04:00
sumo_dpm.h drm/radeon: comment out some currently unused sumo dpm code 2015-01-22 10:38:57 -05:00
sumo_smc.c
sumod.h
trinity_dpm.c drm/radeon: fix indentation. 2016-03-16 18:08:06 -04:00
trinity_dpm.h
trinity_smc.c
trinityd.h
uvd_v1_0.c drm/radeon: handle more than 10 UVD sessions 2016-05-04 20:19:43 -04:00
uvd_v2_2.c drm/radeon: handle more than 10 UVD sessions 2016-05-04 20:19:43 -04:00
uvd_v3_1.c
uvd_v4_2.c drm/radeon: handle more than 10 UVD sessions 2016-05-04 20:19:43 -04:00
vce_v1_0.c drm/radeon: properly byte swap vce firmware setup 2016-01-22 10:50:24 -05:00
vce_v2_0.c drm/radeon: fix indentation. 2016-03-16 18:08:06 -04:00