OpenCloudOS-Kernel/drivers/gpu/drm/radeon
Alex Deucher 8efe82ca90 drm/radeon: make sure mode init is complete in bandwidth_update
The power management code calls into the display code for
certain things.  If certain power management sysfs attributes
are called before the driver has finished initializing all of
the hardware we can run into problems with uninitialized
modesetting state.  Add a check to make sure modesetting
init has completed to the bandwidth update callbacks to
fix this.  Can be triggered by the tlp and laptop start
up scripts depending on the timing.

bugs:
https://bugzilla.kernel.org/show_bug.cgi?id=83611
https://bugs.freedesktop.org/show_bug.cgi?id=85771

Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Cc: stable@vger.kernel.org
2014-11-06 15:42:44 -05:00
..
reg_srcs drm/radeon: allow geom rings to be setup on r600/r700 (v2) 2014-02-06 12:13:52 +10:00
.gitignore
Kconfig drm/radeon: Deprecate UMS support v2 2013-01-31 16:24:47 -05:00
Makefile drm/radeon: consolidate r600_audio.c into r600_hdmi.c 2014-10-01 09:00:03 -04:00
ObjectID.h drm/radeon: upstream ObjectID.h updates (v2) 2013-06-26 16:11:34 -04:00
atom-bits.h
atom-names.h
atom-types.h
atom.c drm/radeon/atom: initialize more atom interpretor elements to 0 2013-07-30 17:24:12 -04:00
atom.h UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
atombios.h drm/radeon: atombios.h updates for hawaii 2013-11-08 12:33:45 -05:00
atombios_crtc.c drm/radeon: Prevent too early kms-pageflips triggered by vblank. 2014-07-17 09:01:31 -04:00
atombios_dp.c Merge tag 'drm-intel-next-2014-09-05' of git://anongit.freedesktop.org/drm-intel into drm-next 2014-09-16 16:02:09 +10:00
atombios_encoders.c drm/radeon: consolidate duplicate encode is digital function 2014-10-01 09:00:02 -04:00
atombios_i2c.c drm/radeon: add a i2c bus mutex 2014-06-02 10:25:02 -04:00
avivod.h
btc_dpm.c drm/radeon: reduce sparse false positive warnings 2014-10-16 18:34:10 -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/radeon/kms: remove r6xx+ blit copy routines 2013-08-30 16:29:57 -04:00
cayman_blit_shaders.h
ci_dpm.c drm/radeon: reduce sparse false positive warnings 2014-10-16 18:34:10 -04:00
ci_dpm.h drm/radeon/dpm: track uvd gated state for ci 2013-08-30 16:31:06 -04:00
ci_smc.c drm/radeon/cik: Add support for new ucode format (v5) 2014-08-05 08:53:24 -04:00
cik.c drm/radeon: make sure mode init is complete in bandwidth_update 2014-11-06 15:42:44 -05:00
cik_blit_shaders.c drm/radeon: Add CP init for CIK (v7) 2013-06-25 17:50:28 -04:00
cik_blit_shaders.h drm/radeon: Add CP init for CIK (v7) 2013-06-25 17:50:28 -04:00
cik_reg.h drm/radeon: add indirect accessors for dift registers on CIK 2013-08-30 16:30:09 -04:00
cik_sdma.c Merge branch 'drm-fixes-3.18' of git://people.freedesktop.org/~agd5f/linux into drm-fixes 2014-10-20 11:57:21 +10:00
cikd.h drm/radeon/cik: fix typo in EOP packet 2014-07-02 14:10:19 -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 drm/radeon: properly set up the RLC on ON/LN/TN (v3) 2013-06-27 10:49:18 -04:00
clearstate_evergreen.h drm/radeon: convert SI,CIK to use sumo_rlc functions 2013-08-30 16:30:08 -04:00
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: reduce sparse false positive warnings 2014-10-16 18:34:10 -04:00
cypress_dpm.h drm/radeon/dpm: add pre/post_set_power_state callback (BTC) 2013-06-27 19:16:19 -04:00
dce3_1_afmt.c drm/radeon: fix speaker allocation setup 2014-10-16 18:34:07 -04:00
dce6_afmt.c drm/radeon: fix speaker allocation setup 2014-10-16 18:34:07 -04:00
drm_buffer.c drm/radeon: move drm_buffer to drm/radeon/ 2014-09-10 17:11:21 +10:00
drm_buffer.h drm/radeon: move drm_buffer to drm/radeon/ 2014-09-10 17:11:21 +10:00
evergreen.c drm/radeon: make sure mode init is complete in bandwidth_update 2014-11-06 15:42:44 -05:00
evergreen_blit_shaders.c drm/radeon/kms: remove r6xx+ blit copy routines 2013-08-30 16:29:57 -04:00
evergreen_blit_shaders.h
evergreen_cs.c drm/radeon: remove struct radeon_bo_list 2014-03-04 14:34:34 +01:00
evergreen_dma.c drm/radeon: cope with foreign fences inside the reservation object 2014-10-03 09:19:16 -04:00
evergreen_hdmi.c drm/radeon: fix speaker allocation setup 2014-10-16 18:34:07 -04:00
evergreen_reg.h drm/radeon: Prevent too early kms-pageflips triggered by vblank. 2014-07-17 09:01:31 -04:00
evergreen_smc.h drm/radeon/dpm: fix typo in EVERGREEN_SMC_FIRMWARE_HEADER_softRegisters 2014-03-06 16:46:58 -05:00
evergreend.h drm/radeon: Setup HDMI_CONTROL for hdmi deep color gcp's (v2) 2014-06-02 18:37:33 -04:00
kv_dpm.c drm/radeon: dpm fixes for asrock systems 2014-10-28 10:44:35 -04:00
kv_dpm.h drm/radeon/dpm: handle bapm on kb/kv 2013-09-11 11:44:38 -04:00
kv_smc.c drm/radeon/dpm: handle bapm on kb/kv 2013-09-11 11:44:38 -04:00
mkregtable.c mkregtable: Fix sscanf handling 2014-01-10 15:28:10 +01:00
ni.c drm/radeon: save/restore the PD addr on suspend/resume 2014-08-26 12:20:38 -04:00
ni_dma.c drm/radeon: don't reset dma on NI/SI init 2014-09-18 18:57:08 -04:00
ni_dpm.c drm/radeon: reduce sparse false positive warnings 2014-10-16 18:34:10 -04:00
ni_dpm.h drm/radeon/dpm: implement vblank_too_short callback for si 2013-07-08 17:41:11 -04:00
ni_reg.h
nid.h drm/radeon: add proper support for RADEON_VM_BLOCK_SIZE v2 2014-06-02 10:25:03 -04:00
nislands_smc.h drm/radeon/kms: add dpm support for cayman (v5) 2013-06-27 19:16:10 -04:00
ppsmc.h drm/radeon/dpm: handle bapm on trinity 2013-09-11 11:44:37 -04:00
pptable.h drm/radeon: fix pptable.h portability 2014-01-03 11:34:21 -05:00
r100.c drm/radeon: make sure mode init is complete in bandwidth_update 2014-11-06 15:42:44 -05:00
r100_track.h drm/radeon: use common next_reloc function 2013-01-31 16:24:45 -05:00
r100d.h drm/radeon: consolidate redundant macros and constants 2013-01-31 16:24:46 -05:00
r200.c drm/radeon: add the infrastructure for concurrent buffer access 2014-09-11 10:46:01 -04:00
r300.c drm/radeon: Only flush HDP cache for indirect buffers from userspace 2014-08-18 17:09:44 -04:00
r300_cmdbuf.c drm/radeon: move drm_buffer to drm/radeon/ 2014-09-10 17:11:21 +10:00
r300_reg.h
r300d.h drm/radeon: consolidate redundant macros and constants 2013-01-31 16:24:46 -05:00
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.c Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2014-10-14 09:39:08 +02:00
r600_blit.c drm/radeon/kms: remove r6xx+ blit copy routines 2013-08-30 16:29:57 -04:00
r600_blit_shaders.c
r600_blit_shaders.h drm/radeon/kms: remove r6xx+ blit copy routines 2013-08-30 16:29:57 -04:00
r600_cp.c drm: Move drm_memory.c map support declarations to <drm/drm_legacy.h> 2014-09-12 15:28:12 +02:00
r600_cs.c drm/radeon: use helpers 2014-07-18 14:25:23 +10:00
r600_dma.c Merge branch 'drm-fixes-3.18' of git://people.freedesktop.org/~agd5f/linux into drm-fixes 2014-10-20 11:57:21 +10:00
r600_dpm.c drm/radeon: reduce sparse false positive warnings 2014-10-16 18:34:10 -04:00
r600_dpm.h drm/radeon/dpm: move platform caps fetching to a separate function 2014-02-18 16:11:30 +01:00
r600_hdmi.c drm/radeon: disable audio when we disable hdmi (v2) 2014-10-01 09:00:04 -04:00
r600_reg.h drm/radeon: add indirect accessors for UVD CTX registers 2013-06-27 19:16:30 -04:00
r600d.h Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2014-10-14 09:39:08 +02:00
radeon.h Merge branch 'drm-fixes-3.18' of git://people.freedesktop.org/~agd5f/linux into drm-fixes 2014-10-20 11:57:21 +10:00
radeon_acpi.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
radeon_acpi.h drm/radeon: implement handler for ACPI event 2012-09-20 13:10:36 -04:00
radeon_agp.c radeon: Remove useless quirk for zx1/FireGL X1 combo introduced with fdo #7770 2014-06-02 10:25:08 -04:00
radeon_asic.c Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2014-10-14 09:39:08 +02:00
radeon_asic.h Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2014-10-14 09:39:08 +02:00
radeon_atombios.c drm/radeon/atombios: declare connector convert tables as static 2014-10-01 09:00:07 -04:00
radeon_atpx_handler.c ACPIPHP / radeon / nouveau: Remove acpi_bus_no_hotplug() 2014-09-15 13:15:34 -06:00
radeon_benchmark.c drm/radeon: export reservation_object from dmabuf to ttm 2014-10-03 09:19:17 -04:00
radeon_bios.c radeon: clean up coding style differences in radeon_get_bios() 2014-10-28 10:44:34 -04:00
radeon_clocks.c UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
radeon_combios.c drm/radeon/combios: declare legacy_connector_convert as static 2014-10-01 09:00:08 -04:00
radeon_connectors.c drm/radeon: Prevent hdmi deep color if max_tmds_clock is undefined. 2014-08-05 11:22:54 -04:00
radeon_cp.c drm: Move drm_memory.c map support declarations to <drm/drm_legacy.h> 2014-09-12 15:28:12 +02:00
radeon_cs.c drm/radeon: Use drm_malloc_ab instead of kmalloc_array 2014-10-28 10:44:34 -04:00
radeon_cursor.c drm/radeon/cik: add hw cursor support (v2) 2013-06-26 16:11:38 -04:00
radeon_device.c Merge branch 'drm-fixes-3.18' of git://people.freedesktop.org/~agd5f/linux into drm-fixes 2014-10-20 11:57:21 +10:00
radeon_display.c drm/radeon: cope with foreign fences inside display 2014-10-03 09:19:15 -04:00
radeon_drv.c Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2014-10-14 09:39:08 +02:00
radeon_drv.h drm: Create drm legacy driver header 2014-09-12 11:08:55 +02:00
radeon_encoders.c Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2014-10-14 09:39:08 +02:00
radeon_family.h drm/radeon: add Mullins chip family 2014-05-06 12:19:57 +02:00
radeon_fb.c drm/radeon: use container_of to resolve radeon_fbdev from drm_fb_helper 2014-09-24 12:09:25 +02:00
radeon_fence.c drm/radeon: cope with foreign fences inside the reservation object 2014-10-03 09:19:16 -04:00
radeon_gart.c drm/radeon: export reservation_object from dmabuf to ttm 2014-10-03 09:19:17 -04:00
radeon_gem.c drm/radeon: export reservation_object from dmabuf to ttm 2014-10-03 09:19:17 -04:00
radeon_i2c.c drm/dp: add a hw mutex around the transfer functions. (v2) 2014-06-05 09:54:29 +10:00
radeon_ib.c drm/radeon: add the infrastructure for concurrent buffer access 2014-09-11 10:46:01 -04:00
radeon_ioc32.c drm: Remove DRM_ARRAY_SIZE() for ARRAY_SIZE() 2014-06-10 09:36:17 +10:00
radeon_irq.c drm: Kill DRM_COPY_(TO|FROM)_USER 2013-12-18 11:35:01 +10:00
radeon_irq_kms.c drm/radeon: use common fence implementation for fences, v4 2014-09-01 10:22:08 +02:00
radeon_kms.c drm/radeon: add userptr support v8 2014-08-11 11:04:23 -04:00
radeon_legacy_crtc.c drm: Replace crtc fb with primary plane fb (v3) 2014-04-01 20:18:28 -04:00
radeon_legacy_encoders.c drm/sysfs: sort out minor and connector device object lifetimes. 2013-10-22 09:37:40 +01:00
radeon_legacy_tv.c UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
radeon_mem.c drm: Kill DRM_COPY_(TO|FROM)_USER 2013-12-18 11:35:01 +10:00
radeon_mn.c drm/ttm: flip the switch, and convert to dma_fence 2014-09-02 16:41:50 +02:00
radeon_mode.h drm/radeon: consolidate duplicate encode is digital function 2014-10-01 09:00:02 -04:00
radeon_object.c drm/radeon: export reservation_object from dmabuf to ttm 2014-10-03 09:19:17 -04:00
radeon_object.h drm/radeon: export reservation_object from dmabuf to ttm 2014-10-03 09:19:17 -04:00
radeon_pm.c Merge remote-tracking branch 'airlied/drm-next' into topic/vblank-rework 2014-09-11 14:46:53 +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 drm/radeon/cik: add hw cursor support (v2) 2013-06-26 16:11:38 -04:00
radeon_ring.c drm/radeon: Use drm_malloc_ab instead of kmalloc_array 2014-10-28 10:44:34 -04:00
radeon_sa.c drm/radeon: export reservation_object from dmabuf to ttm 2014-10-03 09:19:17 -04:00
radeon_semaphore.c drm/radeon: cope with foreign fences inside the reservation object 2014-10-03 09:19:16 -04:00
radeon_state.c drm/radeon: move drm_buffer to drm/radeon/ 2014-09-10 17:11:21 +10:00
radeon_test.c drm/radeon: export reservation_object from dmabuf to ttm 2014-10-03 09:19:17 -04:00
radeon_trace.h drm/radeon: use an intervall tree to manage the VMA v2 2014-08-05 08:53:51 -04:00
radeon_trace_points.c UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
radeon_ttm.c drm/radeon: export reservation_object from dmabuf to ttm 2014-10-03 09:19:17 -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: export reservation_object from dmabuf to ttm 2014-10-03 09:19:17 -04:00
radeon_vce.c drm/radeon: export reservation_object from dmabuf to ttm 2014-10-03 09:19:17 -04:00
radeon_vm.c drm/radeon: Use drm_malloc_ab instead of kmalloc_array 2014-10-28 10:44:34 -04:00
rs100d.h
rs400.c drm/radeon: Fix typo 'addr' -> 'entry' in rs400_gart_set_page 2014-09-18 21:52:29 -04:00
rs400d.h
rs600.c drm/radeon: make sure mode init is complete in bandwidth_update 2014-11-06 15:42:44 -05:00
rs600d.h
rs690.c drm/radeon: make sure mode init is complete in bandwidth_update 2014-11-06 15:42:44 -05:00
rs690d.h drm/radeon: Use direct mapping for fast fb access on RS690 2013-04-09 10:31:31 -04:00
rs780_dpm.c drm/radeon: reduce sparse false positive warnings 2014-10-16 18:34:10 -04:00
rs780_dpm.h drm/radeon/kms: add dpm support for rs780/rs880 2013-06-27 10:49:25 -04:00
rs780d.h drm/radeon/dpm: add debugfs support for RS780/RS880 (v3) 2013-07-17 16:47:52 -04:00
rv6xx_dpm.c drm/radeon: reduce sparse false positive warnings 2014-10-16 18:34:10 -04:00
rv6xx_dpm.h drm/radeon/kms: add dpm support for rv6xx (v3) 2013-06-27 10:50:08 -04:00
rv6xxd.h drm/radeon/kms: add dpm support for rv6xx (v3) 2013-06-27 10:50:08 -04:00
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 drm/radeon: consolidate redundant macros and constants 2013-01-31 16:24:46 -05:00
rv730_dpm.c drm/radeon/kms: add dpm support for rv7xx (v4) 2013-06-27 19:14:59 -04:00
rv730d.h drm/radeon/kms: add dpm support for rv7xx (v4) 2013-06-27 19:14:59 -04:00
rv740_dpm.c drm/radeon/dpm/rv7xx: restructure code 2013-06-27 19:16:12 -04:00
rv740d.h drm/radeon/kms: add dpm support for rv7xx (v4) 2013-06-27 19:14:59 -04:00
rv770.c drm/radeon: remove unecessary includes 2014-10-01 09:00:09 -04:00
rv770_dma.c drm/radeon: cope with foreign fences inside the reservation object 2014-10-03 09:19:16 -04:00
rv770_dpm.c drm/radeon: reduce sparse false positive warnings 2014-10-16 18:34:10 -04:00
rv770_dpm.h drm/radeon/dpm: switch on new late_enable callback 2013-12-24 17:56:50 -05:00
rv770_smc.c drm/radeon: protect concurrent smc register access with a spinlock 2013-09-11 11:44:28 -04:00
rv770_smc.h drm/radeon: protect concurrent smc register access with a spinlock 2013-09-11 11:44:28 -04:00
rv770d.h drm/radeon: implement pci config reset for r6xx/7xx (v3) 2014-01-08 18:42:22 -05:00
si.c drm/radeon: make sure mode init is complete in bandwidth_update 2014-11-06 15:42:44 -05:00
si_blit_shaders.c
si_blit_shaders.h
si_dma.c drm/radeon: cope with foreign fences inside the reservation object 2014-10-03 09:19:16 -04:00
si_dpm.c drm/radeon/dpm: disable ulv support on SI 2014-10-28 10:44:33 -04:00
si_dpm.h drm/radeon/dpm: add support for SVI2 voltage for SI 2014-08-05 08:53:21 -04:00
si_reg.h drm/radeon: SI tiling fixes for display 2012-06-20 19:55:56 +01:00
si_smc.c drm/radeon/si: Add support for new ucode format (v3) 2014-08-05 08:53:23 -04:00
sid.h drm/radeon: fix register name to match internal name 2014-10-01 09:00:01 -04:00
sislands_smc.h drm/radeon/dpm: add support for SVI2 voltage for SI 2014-08-05 08:53:21 -04:00
smu7.h drm/radeon/kms: add dpm support for KB/KV 2013-08-30 16:30:28 -04:00
smu7_discrete.h drm/radeon: add dpm support for CI dGPUs (v2) 2013-08-30 16:30:29 -04:00
smu7_fusion.h drm/radeon/kms: add dpm support for KB/KV 2013-08-30 16:30:28 -04:00
sumo_dpm.c drm/radeon: reduce sparse false positive warnings 2014-10-16 18:34:10 -04:00
sumo_dpm.h drm/radeon/sumo add helper to go from vid7 to vid2 2013-08-30 16:30:10 -04:00
sumo_smc.c drm/radeon/dpm: make some functions static for sumo 2014-01-07 12:55:50 -05:00
sumod.h drm/radeon: add dpm UVD handling for sumo asics 2013-06-27 19:15:48 -04:00
trinity_dpm.c drm/radeon: reduce sparse false positive warnings 2014-10-16 18:34:10 -04:00
trinity_dpm.h drm/radeon/dpm: add bapm callback for trinity 2013-09-11 11:44:39 -04:00
trinity_smc.c drm/radeon/dpm: make some functions static for TN 2014-01-07 12:55:57 -05:00
trinityd.h drm/radeon: add dpm UVD handling for TN asics (v2) 2013-06-27 19:15:48 -04:00
uvd_v1_0.c drm/radeon: enable RB_ARB before resetting the VCPU 2014-08-27 12:48:00 -04:00
uvd_v2_2.c drm/radeon: add UVD support for older asics v4 2014-08-27 12:47:55 -04:00
uvd_v3_1.c drm/radeon: allow semaphore emission to fail 2013-11-15 15:56:09 -05:00
uvd_v4_2.c drm/radeon: split out radeon_uvd_resume from uvd_v4_2_resume 2013-08-30 16:31:12 -04:00
vce_v1_0.c drm/radeon: drop drivers copy of the rptr 2014-02-18 17:49:19 +01:00
vce_v2_0.c drm/radeon: add support for vce 2.0 clock gating 2014-02-18 16:11:44 +01:00