linux-stable/drivers/gpu/drm/msm
Jordan Crouse 2401a00846 drm/msm: gpu: Add support for the GPMU
Most 5XX targets have GPMU (Graphics Power Management Unit) that
handles a lot of the heavy lifting for power management including
thermal and limits management and dynamic power collapse. While
the GPMU itself is optional, it is usually nessesary to hit
aggressive power targets.

The GPMU firmware needs to be loaded into the GPMU at init time via a
shared hardware block of registers. Using the GPU to write the microcode
is more efficient than using the CPU so at first load create an indirect
buffer that can be executed during subsequent initalization sequences.

After loading the GPMU gets initalized through a shared register
interface and then we mostly get out of its way and let it do
its thing.

Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
Signed-off-by: Rob Clark <robdclark@gmail.com>
2016-11-28 15:14:16 -05:00
..
adreno drm/msm: gpu: Add support for the GPMU 2016-11-28 15:14:16 -05:00
dsi drm/msm: update generated headers 2016-11-28 15:14:10 -05:00
edp drm/msm: update generated headers 2016-11-28 15:14:10 -05:00
hdmi drm/msm: update generated headers 2016-11-28 15:14:10 -05:00
mdp drm/msm: update generated headers 2016-11-28 15:14:10 -05:00
Kconfig drm/msm: submit support for in-fences 2016-09-15 17:39:49 -04:00
Makefile drm/msm: gpu: Add support for the GPMU 2016-11-28 15:14:16 -05:00
msm_atomic.c drm/msm: subclass drm_atomic_state 2016-11-27 11:32:27 -05:00
msm_debugfs.c drm/msm/mdp5: add debugfs to show smp block status 2016-11-27 11:32:34 -05:00
msm_debugfs.h drm/msm: move debugfs code to it's own file 2016-05-08 10:16:02 -04:00
msm_drv.c drm/msm: set dma_mask properly 2016-11-27 11:35:07 -05:00
msm_drv.h drm/msm: convert iova to 64b 2016-11-28 15:14:08 -05:00
msm_fb.c drm/msm: convert iova to 64b 2016-11-28 15:14:08 -05:00
msm_fbdev.c drm/msm: convert iova to 64b 2016-11-28 15:14:08 -05:00
msm_fence.c dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
msm_fence.h dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
msm_gem.c drm/msm: convert iova to 64b 2016-11-28 15:14:08 -05:00
msm_gem.h drm/msm: convert iova to 64b 2016-11-28 15:14:08 -05:00
msm_gem_prime.c drm/msm: change gem->vmap() to get/put 2016-07-16 10:09:07 -04:00
msm_gem_shrinker.c drm/msm: wire up vmap shrinker 2016-07-16 10:09:07 -04:00
msm_gem_submit.c drm/msm: convert iova to 64b 2016-11-28 15:14:08 -05:00
msm_gem_vma.c drm/msm: support multiple address spaces 2016-11-27 11:23:09 -05:00
msm_gpu.c drm/msm: gpu: Add A5XX target support 2016-11-28 15:14:15 -05:00
msm_gpu.h drm/msm: gpu: Add A5XX target support 2016-11-28 15:14:15 -05:00
msm_iommu.c drm/msm: convert iova to 64b 2016-11-28 15:14:08 -05:00
msm_kms.h drm/msm/mdp5: add debugfs to show smp block status 2016-11-27 11:32:34 -05:00
msm_mmu.h drm/msm: convert iova to 64b 2016-11-28 15:14:08 -05:00
msm_perf.c gpu: use %pd 2016-08-07 23:38:48 -04:00
msm_rd.c drm/msm/rd: support for 64b iova 2016-11-28 15:14:08 -05:00
msm_ringbuffer.c drm/msm: change gem->vmap() to get/put 2016-07-16 10:09:07 -04:00
msm_ringbuffer.h drm/msm: add a3xx gpu support 2013-08-24 14:57:18 -04:00
NOTES drm/msm: add mdp5/apq8x74 2014-01-09 14:44:06 -05:00