Hi Dave, This is the radeon drm-next request. Big changes include: - support for dpm on CIK parts - support for ASPM on CIK parts - support for berlin GPUs - major ring handling cleanup - remove the old 3D blit code for bo moves in favor of CP DMA or sDMA - lots of bug fixes The following changes since commit 6e4dcff3adbf25acb87e74500a58e3c07bdec40f: drm/vmwgfx: Split GMR2_REMAP commands if they are to large (2013-08-30 09:03:39 +1000) are available in the git repository at: git://people.freedesktop.org/~agd5f/linux drm-next-3.12 for you to fetch changes up to 679fe80fbe964ea7f9f71781c2ca65b630949da3: drm/radeon/dpm: make sure dc performance level limits are valid (CI) (2013-08-30 16:31:25 -0400) ---------------------------------------------------------------- Alex Deucher (104): drm/edid: add quirk for Medion MD30217PG drm/radeon: switch r6xx+ to using CP DMA for the blit copy callback drm/radeon/kms: remove r6xx+ blit copy routines drm/radeon: add UVD->DPM helper function (v5) drm/radeon/dpm: use multiple UVD power states (v3) drm/radeon/dpm: rework thermal state handling drm/radeon: default to 1024M gart size on rv770+ drm/radeon/dpm: use performance state if no UVD state drm/radeon/kms: fix up dce8 display watermark calc for dpm drm/radeon/cik: implement some more atom helpers for DPM drm/radeon: switch CIK to use radeon_ucode.h drm/radeon/cik: add support for pcie gen1/2/3 switching drm/radeon: add support for ASPM on CIK asics drm/radeon/cik: restructure rlc setup drm/radeon: clean up sumo_rlc_init() for code sharing drm/radeon: convert SI,CIK to use sumo_rlc functions drm/radeon: implement clock and power gating for CIK (v3) drm/radeon: add indirect accessors for dift registers on CIK drm/radeon/sumo add helper to go from vid7 to vid2 drm/radeon: switch to pptable.h drm/radeon: add structs to store uvd clock voltage deps drm/radeon/cik: add rlc helpers for DPM drm/radeon: add support for thermal controller on KB/KV drm/radeon: add CI to r600_is_internal_thermal_sensor() drm/radeon: add KB/KV to r600_is_internal_thermal_sensor drm/radeon: add get_temperature() callbacks for CIK (v2) drm/radeon: adjust si_dpm function for code sharing drm/radeon/dpm: update cac leakage table parsing for CI drm/radeon/dpm: add support for parsing the atom powertune table drm/radeon/dpm: grab mvdd_dependency_on_mclk info from vbios drm/radeon: add structs to store vce clock voltage deps drm/radeon: add clock voltage dep tables for acp, samu drm/radeon: parse the vce clock voltage deps table drm/radeon: parse the uvd clock voltage deps table drm/radeon/dpm: clean up the extended table error pathes drm/radeon: parse the samu clock voltage deps table drm/radeon: parse the acp clock voltage deps table drm/radeon: add r600_get_pcie_lane_support helper drm/radeon/dpm: add vce clocks to radeon_ps drm/radeon/dpm: add a helper to encode pcie lane setting drm/radeon/dpm: add helper to fetch the vrefresh of the current mode drm/radeon/kms: add dpm support for KB/KV drm/radeon: add dpm support for CI dGPUs (v2) drm/radeon/dpm: add debugfs support for CI drm/radeon/dpm: implement force performance level for CI drm/radeon/dpm: implement vblank_too_short callback for CI drm/radeon/dpm: add debugfs support for KB/KV drm/radeon/dpm: implement force performance level for KB/KV drm/radeon/dpm: add new callback for powergating UVD (v4) drm/radeon: restructure UVD code to handle UVD PG (v2) drm/radeon/dpm: implement UVD powergating for KB/KV drm/radeon/dpm: implement UVD powergating for CI drm/radeon/dpm: add reclocking quirk for ASUS K70AF drm/radeon/dpm: adjust the vblank time checks for eg, ni, si drm/radeon: fix endian bugs in hw i2c atom routines drm/edid: add a helper function to extract the speaker allocation data block (v3) drm/radeon: add audio support for DCE6/8 GPUs (v12) drm/radeon: set speaker allocation for DCE4/5 (v2) drm/radeon: set speaker allocation for DCE3.2 drm/radeon: add cg and pg flags drm/radeon: use new cg/pg flags for SI drm/radeon/si: restructure cg code (v3) drm/radeon: fixes for gfx clockgating on SI drm/radeon: handle cg in SI dpm code drm/radeon: enable mgcg on SI drm/radeon/si: properly set up the clearstate buffer for pg (v2) drm/radeon/si: enable DMA pg by default drm/radeon: restructure cg/pg on cik (v2) drm/radeon: fixes for gfx clockgating on CIK drm/radeon/cik: properly set up the clearstate buffer for pg (v2) drm/radeon: handle cg in CI dpm code drm/radeon: handle cg in KB/KV dpm code drm/radeon: enable mgcg on CIK drm/radeon: update line buffer allocation for dce4.1/5 drm/radeon: update line buffer allocation for dce6 drm/radeon: update line buffer allocation for dce8 drm/radeon: check firmware overrides for mclk/sclk ss drm/radeon: fix LCD record parsing drm/radeon: atombios hw i2c fixes drm/radeon: disable the GRPH block when we disable the crtc drm/radeon: enable uvd dpm on CI drm/radeon/dpm: track uvd gated state for ci drm/radeon/dpm: ungate blocks in dpm disable for kb/kv drm/radeon: fill in gpu_init for berlin GPU cores drm/radeon: add berlin pci ids drm/radeon: fix resume on some rs4xx boards (v2) drm/radeon: fix handling of variable sized arrays for router objects drm/radeon/audio: set up the sads on DCE3.2 asics drm/radeon: split out radeon_uvd_resume from uvd_v4_2_resume drm/radeon: check the return value of uvd_v1_0_start in uvd_v1_0_init drm/radeon/dpm: only need to reprogram uvd if uvd pg is enabled drm/radeon: fix init ordering for r600+ drm/radeon: gcc fixes for radeon_atombios.c drm/radeon: gcc fixes for rv6xx dpm drm/radeonn: gcc fixes for rv7xx/eg/btc dpm drm/radeon: gcc fixes for sumo dpm drm/radeon: gcc fixes for trinity dpm drm/radeon: gcc fixes for ni dpm drm/radeon: gcc fixes for si dpm drm/radeon: gcc fixes for ci dpm drm/radeon: gcc fixes for kb/kv dpm drm/radeon: gcc fixes for extended dpm tables drm/radeon/dpm: make sure dc performance level limits are valid (BTC-SI) (v2) drm/radeon/dpm: make sure dc performance level limits are valid (CI) Christian König (6): drm/radeon: rework ring function handling drm/radeon: rework UVD writeback & [rw]ptr handling drm/radeon: remove special handling for the DMA ring drm/radeon: separate UVD code v3 drm/radeon: separate DMA code drm/radeon: enable UVD interrupts on CIK Rafał Miłecki (2): drm/radeon: use loop for initializing AFMT blocks drm/radeon: set speakers allocation earlier Sergey Senozhatsky (1): radeon kms: fix uninitialised hotplug work usage in r100_irq_process() Tom Stellard (1): drm/radeon/si: Add support for CP DMA to CS checker for compute v2 drivers/gpu/drm/drm_edid.c | 55 + drivers/gpu/drm/radeon/Makefile | 24 +- drivers/gpu/drm/radeon/atombios.h | 615 +-- drivers/gpu/drm/radeon/atombios_crtc.c | 6 + drivers/gpu/drm/radeon/atombios_dp.c | 6 +- drivers/gpu/drm/radeon/atombios_encoders.c | 11 +- drivers/gpu/drm/radeon/atombios_i2c.c | 16 +- drivers/gpu/drm/radeon/btc_dpm.c | 6 + drivers/gpu/drm/radeon/cayman_blit_shaders.c | 54 - drivers/gpu/drm/radeon/ci_dpm.c | 5239 +++++++++++++++++++++++ drivers/gpu/drm/radeon/ci_dpm.h | 332 ++ drivers/gpu/drm/radeon/ci_smc.c | 262 ++ drivers/gpu/drm/radeon/cik.c | 4383 ++++++++++++------- drivers/gpu/drm/radeon/cik_reg.h | 3 + drivers/gpu/drm/radeon/cik_sdma.c | 785 ++++ drivers/gpu/drm/radeon/cikd.h | 594 ++- drivers/gpu/drm/radeon/clearstate_cayman.h | 2 +- drivers/gpu/drm/radeon/clearstate_ci.h | 944 ++++ drivers/gpu/drm/radeon/clearstate_evergreen.h | 2 +- drivers/gpu/drm/radeon/cypress_dpm.c | 3 +- drivers/gpu/drm/radeon/dce6_afmt.c | 278 ++ drivers/gpu/drm/radeon/evergreen.c | 532 +-- drivers/gpu/drm/radeon/evergreen_blit_kms.c | 729 ---- drivers/gpu/drm/radeon/evergreen_blit_shaders.c | 54 - drivers/gpu/drm/radeon/evergreen_dma.c | 190 + drivers/gpu/drm/radeon/evergreen_hdmi.c | 100 +- drivers/gpu/drm/radeon/evergreend.h | 11 + drivers/gpu/drm/radeon/kv_dpm.c | 2645 ++++++++++++ drivers/gpu/drm/radeon/kv_dpm.h | 199 + drivers/gpu/drm/radeon/kv_smc.c | 207 + drivers/gpu/drm/radeon/ni.c | 369 +- drivers/gpu/drm/radeon/ni_dma.c | 338 ++ drivers/gpu/drm/radeon/ni_dpm.c | 14 +- drivers/gpu/drm/radeon/ppsmc.h | 57 + drivers/gpu/drm/radeon/pptable.h | 682 +++ drivers/gpu/drm/radeon/r100.c | 2 +- drivers/gpu/drm/radeon/r600.c | 801 +--- drivers/gpu/drm/radeon/r600_audio.c | 60 +- drivers/gpu/drm/radeon/r600_blit.c | 31 + drivers/gpu/drm/radeon/r600_blit_kms.c | 785 ---- drivers/gpu/drm/radeon/r600_blit_shaders.h | 1 - drivers/gpu/drm/radeon/r600_dma.c | 497 +++ drivers/gpu/drm/radeon/r600_dpm.c | 300 +- drivers/gpu/drm/radeon/r600_dpm.h | 6 + drivers/gpu/drm/radeon/r600_hdmi.c | 113 +- drivers/gpu/drm/radeon/r600d.h | 36 + drivers/gpu/drm/radeon/radeon.h | 272 +- drivers/gpu/drm/radeon/radeon_asic.c | 1262 +++--- drivers/gpu/drm/radeon/radeon_asic.h | 119 +- drivers/gpu/drm/radeon/radeon_atombios.c | 186 +- drivers/gpu/drm/radeon/radeon_blit_common.h | 44 - drivers/gpu/drm/radeon/radeon_cs.c | 13 +- drivers/gpu/drm/radeon/radeon_device.c | 22 +- drivers/gpu/drm/radeon/radeon_display.c | 64 +- drivers/gpu/drm/radeon/radeon_drv.c | 4 +- drivers/gpu/drm/radeon/radeon_irq_kms.c | 10 +- drivers/gpu/drm/radeon/radeon_kms.c | 3 + drivers/gpu/drm/radeon/radeon_mode.h | 3 +- drivers/gpu/drm/radeon/radeon_pm.c | 88 +- drivers/gpu/drm/radeon/radeon_ring.c | 13 +- drivers/gpu/drm/radeon/radeon_ucode.h | 17 + drivers/gpu/drm/radeon/radeon_uvd.c | 58 +- drivers/gpu/drm/radeon/rs400.c | 9 +- drivers/gpu/drm/radeon/rv6xx_dpm.c | 5 +- drivers/gpu/drm/radeon/rv770.c | 204 +- drivers/gpu/drm/radeon/rv770_dma.c | 101 + drivers/gpu/drm/radeon/rv770_dpm.c | 15 +- drivers/gpu/drm/radeon/rv770d.h | 16 + drivers/gpu/drm/radeon/si.c | 830 ++-- drivers/gpu/drm/radeon/si_dma.c | 235 + drivers/gpu/drm/radeon/si_dpm.c | 80 +- drivers/gpu/drm/radeon/sid.h | 71 + drivers/gpu/drm/radeon/smu7.h | 170 + drivers/gpu/drm/radeon/smu7_discrete.h | 486 +++ drivers/gpu/drm/radeon/smu7_fusion.h | 300 ++ drivers/gpu/drm/radeon/sumo_dpm.c | 22 +- drivers/gpu/drm/radeon/sumo_dpm.h | 3 + drivers/gpu/drm/radeon/trinity_dpm.c | 7 +- drivers/gpu/drm/radeon/uvd_v1_0.c | 436 ++ drivers/gpu/drm/radeon/uvd_v2_2.c | 165 + drivers/gpu/drm/radeon/uvd_v3_1.c | 55 + drivers/gpu/drm/radeon/uvd_v4_2.c | 68 + include/drm/drm_edid.h | 1 + include/drm/drm_pciids.h | 18 + include/uapi/drm/radeon_drm.h | 2 + 85 files changed, 20894 insertions(+), 6962 deletions(-) create mode 100644 drivers/gpu/drm/radeon/ci_dpm.c create mode 100644 drivers/gpu/drm/radeon/ci_dpm.h create mode 100644 drivers/gpu/drm/radeon/ci_smc.c create mode 100644 drivers/gpu/drm/radeon/cik_sdma.c create mode 100644 drivers/gpu/drm/radeon/clearstate_ci.h create mode 100644 drivers/gpu/drm/radeon/dce6_afmt.c delete mode 100644 drivers/gpu/drm/radeon/evergreen_blit_kms.c create mode 100644 drivers/gpu/drm/radeon/evergreen_dma.c create mode 100644 drivers/gpu/drm/radeon/kv_dpm.c create mode 100644 drivers/gpu/drm/radeon/kv_dpm.h create mode 100644 drivers/gpu/drm/radeon/kv_smc.c create mode 100644 drivers/gpu/drm/radeon/ni_dma.c create mode 100644 drivers/gpu/drm/radeon/pptable.h delete mode 100644 drivers/gpu/drm/radeon/r600_blit_kms.c create mode 100644 drivers/gpu/drm/radeon/r600_dma.c delete mode 100644 drivers/gpu/drm/radeon/radeon_blit_common.h create mode 100644 drivers/gpu/drm/radeon/rv770_dma.c create mode 100644 drivers/gpu/drm/radeon/si_dma.c create mode 100644 drivers/gpu/drm/radeon/smu7.h create mode 100644 drivers/gpu/drm/radeon/smu7_discrete.h create mode 100644 drivers/gpu/drm/radeon/smu7_fusion.h create mode 100644 drivers/gpu/drm/radeon/uvd_v1_0.c create mode 100644 drivers/gpu/drm/radeon/uvd_v2_2.c create mode 100644 drivers/gpu/drm/radeon/uvd_v3_1.c create mode 100644 drivers/gpu/drm/radeon/uvd_v4_2.c _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel