Hi Dave, Not too huge this time around, but a bunch of interesting new stuff: * new gpu support: a405, a640, a650 * dpu: clock and bandwidth scaling * dpu: color processing support * mdp5: support for msm8x36 (the thing with a405) * some prep work for per-context pagetables (ie the part that does not depend on in-flight iommu patches) * last but not least, UABI update for submit ioctl to support syncobj (from Bas) The UABI change has been on-list and reviewed for a while now. The only reason I didn't pull it in last cycle was that I ran out of time to review it myself at the time. But I'm happy with it. The MR for mesa (vulkan/turnip) support is here: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/2769 The following changes since commit 2ef96a5bb12be62ef75b5828c0aab838ebb29cb8: Linux 5.7-rc5 (2020-05-10 15:16:58 -0700) are available in the Git repository at: https://gitlab.freedesktop.org/drm/msm.git drm-msm-next-2020-05-25 for you to fetch changes up to d9e19d7966a31ae70edfe0cb7cb044e20343a0c9: drm/msm/a6xx: skip HFI set freq if GMU is powered down (2020-05-23 13:38:16 -0700) ---------------------------------------------------------------- Bas Nieuwenhuizen (1): drm/msm: Add syncobj support. Bjorn Andersson (1): drm/msm: Fix undefined "rd_full" link error Christophe JAILLET (2): drm/msm/a6xx: Fix a typo in an error message drm/msm: Fix typo Hongbo Yao (1): drm/msm/dpu: Fix compile warnings Jonathan Marek (10): drm/msm: add msm_gem_get_and_pin_iova_range drm/msm: add internal MSM_BO_MAP_PRIV flag drm/msm/a6xx: use msm_gem for GMU memory objects drm/msm/a6xx: add A640/A650 to gpulist drm/msm/a6xx: HFI v2 for A640 and A650 drm/msm/a6xx: A640/A650 GMU firmware path drm/msm/a6xx: update pdc/rscc GMU registers for A640/A650 drm/msm/a6xx: enable GMU log drm/msm/a6xx: update a6xx_hw_init for A640 and A650 drm/msm/a6xx: skip HFI set freq if GMU is powered down Jordan Crouse (4): drm/msm: Check for powered down HW in the devfreq callbacks drm/msm: Attach the IOMMU device during initialization drm/msm: Refactor address space initialization drm/msm: Update the MMU helper function APIs Kalyan Thota (3): drm/msm/dpu: add support for color processing blocks in dpu driver drm/msm/dpu: add support for pcc color block in dpu driver drm/msm/dpu: add support for clk and bw scaling for display Konrad Dybcio (1): drm/msm/mdp5: Add MDP5 configuration for MSM8x36. Krishna Manikandan (1): drm/msm/dpu: update bandwidth threshold check Roy Spliet (1): drm/msm/mdp5: Fix mdp5_init error path for failed mdp5_kms allocation Shawn Guo (2): drm/msm/a4xx: add adreno a405 support drm/msm/a4xx: add a405_registers for a405 device kbuild test robot (2): drm/msm/a6xx: a6xx_hfi_send_start() can be static drm/msm/dpu: dpu_setup_dspp_pcc() can be static drivers/gpu/drm/msm/Makefile | 1 + drivers/gpu/drm/msm/adreno/a2xx_gpu.c | 16 + drivers/gpu/drm/msm/adreno/a3xx_gpu.c | 1 + drivers/gpu/drm/msm/adreno/a4xx_gpu.c | 83 ++++- drivers/gpu/drm/msm/adreno/a5xx_gpu.c | 7 + drivers/gpu/drm/msm/adreno/a6xx.xml.h | 14 + drivers/gpu/drm/msm/adreno/a6xx_gmu.c | 418 +++++++++++++++++++------ drivers/gpu/drm/msm/adreno/a6xx_gmu.h | 37 ++- drivers/gpu/drm/msm/adreno/a6xx_gmu.xml.h | 48 +-- drivers/gpu/drm/msm/adreno/a6xx_gpu.c | 70 ++++- drivers/gpu/drm/msm/adreno/a6xx_hfi.c | 123 +++++++- drivers/gpu/drm/msm/adreno/a6xx_hfi.h | 50 ++- drivers/gpu/drm/msm/adreno/adreno_device.c | 35 +++ drivers/gpu/drm/msm/adreno/adreno_gpu.c | 27 +- drivers/gpu/drm/msm/adreno/adreno_gpu.h | 23 ++ drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.c | 125 +++++--- drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c | 95 ++++-- drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.h | 2 + drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 12 +- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c | 53 +++- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h | 43 +++ drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.c | 26 ++ drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.h | 3 + drivers/gpu/drm/msm/disp/dpu1/dpu_hw_dspp.c | 129 ++++++++ drivers/gpu/drm/msm/disp/dpu1/dpu_hw_dspp.h | 100 ++++++ drivers/gpu/drm/msm/disp/dpu1/dpu_hw_mdss.h | 2 + drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 55 +++- drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h | 5 + drivers/gpu/drm/msm/disp/dpu1/dpu_mdss.c | 9 +- drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c | 82 +++++ drivers/gpu/drm/msm/disp/dpu1/dpu_plane.h | 4 + drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c | 58 +++- drivers/gpu/drm/msm/disp/dpu1/dpu_rm.h | 2 + drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c | 18 +- drivers/gpu/drm/msm/disp/mdp5/mdp5_cfg.c | 80 ++++- drivers/gpu/drm/msm/disp/mdp5/mdp5_crtc.c | 4 +- drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c | 21 +- drivers/gpu/drm/msm/msm_drv.c | 6 +- drivers/gpu/drm/msm/msm_drv.h | 15 +- drivers/gpu/drm/msm/msm_gem.c | 31 +- drivers/gpu/drm/msm/msm_gem.h | 1 + drivers/gpu/drm/msm/msm_gem_submit.c | 232 +++++++++++++- drivers/gpu/drm/msm/msm_gem_vma.c | 42 +-- drivers/gpu/drm/msm/msm_gpu.c | 49 +-- drivers/gpu/drm/msm/msm_gpu.h | 4 +- drivers/gpu/drm/msm/msm_gpummu.c | 10 +- drivers/gpu/drm/msm/msm_iommu.c | 22 +- drivers/gpu/drm/msm/msm_mmu.h | 5 +- drivers/gpu/drm/msm/msm_rd.c | 4 +- include/uapi/drm/msm_drm.h | 24 +- 50 files changed, 1923 insertions(+), 403 deletions(-) create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_dspp.c create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_dspp.h