[Freedreno] [pull v2] drm/msm: drm-msm-next-2021-06-23 for v5.14

Rob Clark robdclark at gmail.com
Wed Jun 23 14:52:28 UTC 2021


Hi Dave & Daniel,

Resend of previous pull request, but with history rewritten to correct
a Fixes tag that was incorrectly pointing at a CrOS kernel commit :-(

Otherwise, the same as before.  Original description:

Here is msm-next for v5.14

Notable additions this time around:

* devcoredump support for display errors
* dpu: irq cleanup/refactor
* dpu: dt bindings conversion to yaml
* dsi: dt bindings conversion to yaml
* mdp5: alpha/blend_mode/zpos support
* mdp5: dynamic bandwidth management
* a6xx: cached coherent buffer support
* a660 support
* gpu iova fault improvements:
   - info about which block triggered the fault, etc
   - generation of gpu devcoredump on fault
* assortment of other cleanups and fixes

The following changes since commit c4681547bcce777daf576925a966ffa824edd09d:

  Linux 5.13-rc3 (2021-05-23 11:42:48 -1000)

are available in the Git repository at:

  https://gitlab.freedesktop.org/drm/msm.git drm-msm-next-2021-06-23

for you to fetch changes up to c1d12c19efd91b9cda5472bc4ec48854e67c24a8:

  drm/msm/mdp5: provide dynamic bandwidth management (2021-06-23 07:33:56 -0700)

----------------------------------------------------------------
Abhinav Kumar (7):
      drm: allow drm_atomic_print_state() to accept any drm_printer
      drm/msm: add support to take dpu snapshot
      drm/msm/dsi: add API to take DSI register snapshot
      drm/msm/dp: add API to take DP register snapshot
      drm/msm/disp/dpu1: add API to take DPU register snapshot
      drm/msm: add support to take dsi, dp and dpu snapshot
      drm/msm: add disp snapshot points across dpu driver

Alexey Minnekhanov (1):
      drm/msm: Init mm_list before accessing it for use_vram path

Arnd Bergmann (1):
      drm/msm/dsi: fix 32-bit clang warning

Bernard Zhao (1):
      drm/msm: remove unneeded variable ret

Bhaskar Chowdhury (3):
      drm/msm/dpu: Fix a typo
      drm/msm/dpu: Fix a typo
      drm/msm/dp: Fixed couple of typos

Bjorn Andersson (1):
      drm/msm/dpu: Avoid ABBA deadlock between IRQ modules

Dmitry Baryshkov (23):
      drm/msm: pass dump state as a function argument
      drm/msm: make msm_disp_state transient data struct
      drm/msm: get rid of msm_iomap_size
      drm/msm/dsi: add DSI PHY registers to snapshot data
      drm/msm: fix display snapshotting if DP or DSI is disabled
      drm/msm/dpu: merge dpu_hw_intr_get_interrupt_statuses into
dpu_hw_intr_dispatch_irqs
      drm/msm/dpu: hw_intr: always call dpu_hw_intr_clear_intr_status_nolock
      drm/msm/dpu: define interrupt register names
      drm/msm/dpu: replace IRQ lookup with the data in hw catalog
      drm/msm/dpu: drop remains of old irq lookup subsystem
      drm/msm/dpu: simplify IRQ enabling/disabling
      drm/msm/dsi: print error code when MIPI DSI host registration fails
      drm/msm/dpu: remove unused dpu_hw_blk features
      drm/msm/dpu: drop dpu_hw_blk_destroy function
      drm/msm/dpu: use struct dpu_hw_merge_3d in dpu_hw_pingpong
      drm/msm/dpu: hw_blk: make dpu_hw_blk empty opaque structure
      drm/msm/dsi: do not enable PHYs when called for the slave DSI interface
      drm/msm/mdp5: use drm atomic helpers to handle base drm plane state
      drm/msm/mdp5: use drm_plane_state for storing alpha value
      drm/msm/mdp5: use drm_plane_state for pixel blend mode
      drm/msm/mdp5: add support for alpha/blend_mode properties
      drm/msm/mdp5: switch to standard zpos property
      drm/msm/mdp5: provide dynamic bandwidth management

Guenter Roeck (2):
      drm/msm/dp: Drop unnecessary NULL checks after container_of
      drm/msm/dpu: Drop unnecessary NULL checks after container_of in
dpu_encoder

James Willcox (1):
      drm/msm/mdp5: add perf blocks for holding fudge factors

Jonathan Marek (13):
      drm/msm/a6xx: update/fix CP_PROTECT initialization
      drm/msm/a6xx: fix incorrectly set uavflagprd_inv field for A650
      drm/msm/a6xx: avoid shadow NULL reference in failure path
      drm/msm: remove unnecessary mmap logic for cached BOs
      drm/msm: replace MSM_BO_UNCACHED with MSM_BO_WC for internal objects
      drm/msm: use the right pgprot when mapping BOs in the kernel
      drm/msm: add MSM_BO_CACHED_COHERENT
      drm/msm: deprecate MSM_BO_UNCACHED (map as writecombine instead)
      drm/msm: remove unused icc_path/ocmem_icc_path
      drm/msm/a6xx: use AOP-initialized PDC for a650
      drm/msm/a6xx: add GMU_CX_GMU_CX_FALNEXT_INTF write for a650
      drm/msm/a6xx: add missing PC_DBG_ECO_CNTL bit for a640/a650
      drm/msm/a6xx: add support for Adreno 660 GPU

Jordan Crouse (3):
      iommu/arm-smmu: Add support for driver IOMMU fault handlers
      iommu/arm-smmu-qcom: Add an adreno-smmu-priv callback to get
pagefault info
      drm/msm: Improve the a6xx page fault handler

Krishna Manikandan (5):
      dt-bindings: msm: disp: add yaml schemas for DPU bindings
      dt-bindings: msm: dsi: add yaml schemas for DSI bindings
      dt-bindings: msm: dsi: add yaml schemas for DSI PHY bindings
      dt-bindings: msm/dp: Add bindings of MSM DisplayPort controller
      drm/msm/disp/dpu1: avoid perf update in frame done event

Kuogee Hsieh (2):
      drm/msm/dp: handle irq_hpd with sink_count = 0 correctly
      drm/msm/dp: power off DP phy at suspend

Lee Jones (5):
      drm/msm/dp/dp_display: Remove unused variable 'hpd'
      drm/msm/disp/dpu1/dpu_plane: Fix a couple of naming issues
      drm/msm/msm_gem: Demote kernel-doc abuses
      drm/msm/dp/dp_catalog: Correctly document param 'dp_catalog'
      drm/msm/dp/dp_link: Fix some potential doc-rot

Rob Clark (5):
      Merge branch 'msm-fixes-v5.13-rc6' into msm-next-redo
      drm/msm: Generated register update
      iommu/arm-smmu-qcom: Add stall support
      drm/msm: devcoredump iommu fault support
      drm/msm: Add debugfs to trigger shrinker

Samuel Iglesias Gonsalvez (1):
      drm/msm: export hangcheck_period in debugfs

Shaokun Zhang (1):
      drm/msm/dp: remove the repeated declaration

Stephen Boyd (10):
      drm/msm/dsi: Stash away calculated vco frequency on recalc
      drm/msm/dp: Simplify aux irq handling code
      drm/msm/dp: Shrink locking area of dp_aux_transfer()
      drm/msm/dp: Handle aux timeouts, nacks, defers
      drm/msm: Move vblank debug prints to drm_dbg_vbl()
      drm/msm/dp: Drop malformed debug print
      drm/msm: Move FB debug prints to drm_dbg_state()
      drm/msm/disp: Use plane debug print helper
      drm/msm/disp: Move various debug logs to atomic bucket
      drm/msm: Use VERB() for extra verbose logging

Yangtao Li (1):
      drm/msm: Convert to use resource-managed OPP API

Zhen Lei (3):
      drm/msm: Fix error return code in msm_drm_init()
      drm/msm/dpu: Fix error return code in dpu_mdss_init()
      drm/msm/dpu: remove unused local variable 'cmd_enc'

zuoqilin (1):
      drm/msm: Remove unneeded variable: "rc"

 .../bindings/display/msm/dp-controller.yaml        |  146 ++
 .../bindings/display/msm/dpu-sc7180.yaml           |  228 ++
 .../bindings/display/msm/dpu-sdm845.yaml           |  212 ++
 .../devicetree/bindings/display/msm/dpu.txt        |  141 --
 .../bindings/display/msm/dsi-controller-main.yaml  |  185 ++
 .../bindings/display/msm/dsi-phy-10nm.yaml         |   68 +
 .../bindings/display/msm/dsi-phy-14nm.yaml         |   66 +
 .../bindings/display/msm/dsi-phy-20nm.yaml         |   71 +
 .../bindings/display/msm/dsi-phy-28nm.yaml         |   68 +
 .../bindings/display/msm/dsi-phy-common.yaml       |   40 +
 .../devicetree/bindings/display/msm/dsi.txt        |  249 ---
 drivers/gpu/drm/drm_atomic.c                       |   28 +-
 drivers/gpu/drm/drm_atomic_uapi.c                  |    4 +-
 drivers/gpu/drm/drm_crtc_internal.h                |    4 +-
 drivers/gpu/drm/msm/Makefile                       |    3 +-
 drivers/gpu/drm/msm/adreno/a2xx.xml.h              |   60 +-
 drivers/gpu/drm/msm/adreno/a3xx.xml.h              |   40 +-
 drivers/gpu/drm/msm/adreno/a4xx.xml.h              |   38 +-
 drivers/gpu/drm/msm/adreno/a5xx.xml.h              |   95 +-
 drivers/gpu/drm/msm/adreno/a5xx_gpu.c              |   29 +-
 drivers/gpu/drm/msm/adreno/a5xx_power.c            |    2 +-
 drivers/gpu/drm/msm/adreno/a5xx_preempt.c          |    4 +-
 drivers/gpu/drm/msm/adreno/a6xx.xml.h              | 2201 ++++++++++----------
 drivers/gpu/drm/msm/adreno/a6xx_gmu.c              |   55 +-
 drivers/gpu/drm/msm/adreno/a6xx_gmu.xml.h          |   34 +-
 drivers/gpu/drm/msm/adreno/a6xx_gpu.c              |  460 +++-
 drivers/gpu/drm/msm/adreno/a6xx_gpu.h              |    4 +-
 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c        |   44 +-
 drivers/gpu/drm/msm/adreno/a6xx_hfi.c              |   33 +
 drivers/gpu/drm/msm/adreno/adreno_common.xml.h     |   30 +-
 drivers/gpu/drm/msm/adreno/adreno_device.c         |   14 +
 drivers/gpu/drm/msm/adreno/adreno_gpu.c            |   26 +-
 drivers/gpu/drm/msm/adreno/adreno_gpu.h            |   13 +-
 drivers/gpu/drm/msm/adreno/adreno_pm4.xml.h        |  119 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_core_irq.c       |  230 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_core_irq.h       |   43 -
 drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.c      |   22 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c           |   43 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c        |  110 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys.h   |    4 -
 .../gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c   |   58 +-
 .../gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c   |   54 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_formats.c        |    6 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_blk.c         |  139 --
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_blk.h         |   22 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c     |  202 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h     |   16 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.c         |    6 -
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_dspp.c        |    7 -
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_interrupts.c  | 1508 +-------------
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_interrupts.h  |  132 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_intf.c        |    6 -
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_lm.c          |    6 -
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_mdss.h        |    2 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_merge3d.c     |    6 -
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_pingpong.c    |    6 -
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_pingpong.h    |    4 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp.c        |    6 -
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_top.c         |    6 -
 drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c            |   70 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h            |    8 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_mdss.c           |    8 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c          |   23 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c             |    4 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_trace.h          |   63 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_vbif.c           |   14 +-
 drivers/gpu/drm/msm/disp/mdp4/mdp4.xml.h           |   34 +-
 drivers/gpu/drm/msm/disp/mdp5/mdp5.xml.h           |   38 +-
 drivers/gpu/drm/msm/disp/mdp5/mdp5_cfg.c           |   35 +
 drivers/gpu/drm/msm/disp/mdp5/mdp5_cfg.h           |    7 +
 drivers/gpu/drm/msm/disp/mdp5/mdp5_crtc.c          |   56 +-
 drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c           |  119 +-
 drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.h           |   17 +-
 drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c         |  177 +-
 drivers/gpu/drm/msm/disp/mdp_common.xml.h          |   34 +-
 drivers/gpu/drm/msm/disp/msm_disp_snapshot.c       |  125 ++
 drivers/gpu/drm/msm/disp/msm_disp_snapshot.h       |  136 ++
 drivers/gpu/drm/msm/disp/msm_disp_snapshot_util.c  |  187 ++
 drivers/gpu/drm/msm/dp/dp_aux.c                    |  181 +-
 drivers/gpu/drm/msm/dp/dp_aux.h                    |    8 -
 drivers/gpu/drm/msm/dp/dp_catalog.c                |   18 +-
 drivers/gpu/drm/msm/dp/dp_catalog.h                |    7 +-
 drivers/gpu/drm/msm/dp/dp_ctrl.c                   |   87 +-
 drivers/gpu/drm/msm/dp/dp_ctrl.h                   |    3 +-
 drivers/gpu/drm/msm/dp/dp_display.c                |  121 +-
 drivers/gpu/drm/msm/dp/dp_display.h                |    1 +
 drivers/gpu/drm/msm/dp/dp_link.c                   |   21 +-
 drivers/gpu/drm/msm/dp/dp_panel.c                  |    4 +-
 drivers/gpu/drm/msm/dp/dp_power.h                  |    4 +-
 drivers/gpu/drm/msm/dsi/dsi.c                      |    6 +
 drivers/gpu/drm/msm/dsi/dsi.h                      |    4 +-
 drivers/gpu/drm/msm/dsi/dsi.xml.h                  | 1722 +--------------
 drivers/gpu/drm/msm/dsi/dsi_host.c                 |   30 +-
 drivers/gpu/drm/msm/dsi/dsi_manager.c              |   12 +-
 drivers/gpu/drm/msm/dsi/dsi_phy_10nm.xml.h         |  228 ++
 drivers/gpu/drm/msm/dsi/dsi_phy_14nm.xml.h         |  310 +++
 drivers/gpu/drm/msm/dsi/dsi_phy_20nm.xml.h         |  238 +++
 drivers/gpu/drm/msm/dsi/dsi_phy_28nm.xml.h         |  385 ++++
 drivers/gpu/drm/msm/dsi/dsi_phy_28nm_8960.xml.h    |  287 +++
 drivers/gpu/drm/msm/dsi/dsi_phy_5nm.xml.h          |  480 +++++
 drivers/gpu/drm/msm/dsi/dsi_phy_7nm.xml.h          |  482 +++++
 drivers/gpu/drm/msm/dsi/mmss_cc.xml.h              |   34 +-
 drivers/gpu/drm/msm/dsi/phy/dsi_phy.c              |   31 +-
 drivers/gpu/drm/msm/dsi/phy/dsi_phy.h              |    4 +
 drivers/gpu/drm/msm/dsi/phy/dsi_phy_10nm.c         |    2 +
 drivers/gpu/drm/msm/dsi/phy/dsi_phy_14nm.c         |    1 +
 drivers/gpu/drm/msm/dsi/phy/dsi_phy_20nm.c         |    1 +
 drivers/gpu/drm/msm/dsi/phy/dsi_phy_28nm.c         |    1 +
 drivers/gpu/drm/msm/dsi/phy/dsi_phy_28nm_8960.c    |    1 +
 drivers/gpu/drm/msm/dsi/phy/dsi_phy_7nm.c          |    8 +-
 drivers/gpu/drm/msm/dsi/sfpb.xml.h                 |   34 +-
 drivers/gpu/drm/msm/edp/edp.xml.h                  |   34 +-
 drivers/gpu/drm/msm/hdmi/hdmi.xml.h                |   34 +-
 drivers/gpu/drm/msm/hdmi/qfprom.xml.h              |   34 +-
 drivers/gpu/drm/msm/msm_debugfs.c                  |   31 +
 drivers/gpu/drm/msm/msm_drv.c                      |   33 +-
 drivers/gpu/drm/msm/msm_drv.h                      |   24 +-
 drivers/gpu/drm/msm/msm_fb.c                       |    8 +-
 drivers/gpu/drm/msm/msm_gem.c                      |   45 +-
 drivers/gpu/drm/msm/msm_gem.h                      |    1 +
 drivers/gpu/drm/msm/msm_gem_shrinker.c             |   18 +
 drivers/gpu/drm/msm/msm_gem_submit.c               |    1 +
 drivers/gpu/drm/msm/msm_gpu.c                      |   51 +-
 drivers/gpu/drm/msm/msm_gpu.h                      |   29 +-
 drivers/gpu/drm/msm/msm_gpummu.c                   |    5 +
 drivers/gpu/drm/msm/msm_iommu.c                    |   22 +-
 drivers/gpu/drm/msm/msm_kms.h                      |    9 +
 drivers/gpu/drm/msm/msm_mmu.h                      |    5 +-
 drivers/gpu/drm/selftests/test-drm_framebuffer.c   |    1 +
 drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c         |   50 +
 drivers/iommu/arm/arm-smmu/arm-smmu.c              |    9 +-
 drivers/iommu/arm/arm-smmu/arm-smmu.h              |    2 +
 include/linux/adreno-smmu-priv.h                   |   38 +-
 include/uapi/drm/msm_drm.h                         |    7 +-
 134 files changed, 7508 insertions(+), 6352 deletions(-)
 create mode 100644
Documentation/devicetree/bindings/display/msm/dp-controller.yaml
 create mode 100644
Documentation/devicetree/bindings/display/msm/dpu-sc7180.yaml
 create mode 100644
Documentation/devicetree/bindings/display/msm/dpu-sdm845.yaml
 delete mode 100644 Documentation/devicetree/bindings/display/msm/dpu.txt
 create mode 100644
Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml
 create mode 100644
Documentation/devicetree/bindings/display/msm/dsi-phy-10nm.yaml
 create mode 100644
Documentation/devicetree/bindings/display/msm/dsi-phy-14nm.yaml
 create mode 100644
Documentation/devicetree/bindings/display/msm/dsi-phy-20nm.yaml
 create mode 100644
Documentation/devicetree/bindings/display/msm/dsi-phy-28nm.yaml
 create mode 100644
Documentation/devicetree/bindings/display/msm/dsi-phy-common.yaml
 delete mode 100644 Documentation/devicetree/bindings/display/msm/dsi.txt
 delete mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_blk.c
 create mode 100644 drivers/gpu/drm/msm/disp/msm_disp_snapshot.c
 create mode 100644 drivers/gpu/drm/msm/disp/msm_disp_snapshot.h
 create mode 100644 drivers/gpu/drm/msm/disp/msm_disp_snapshot_util.c
 create mode 100644 drivers/gpu/drm/msm/dsi/dsi_phy_10nm.xml.h
 create mode 100644 drivers/gpu/drm/msm/dsi/dsi_phy_14nm.xml.h
 create mode 100644 drivers/gpu/drm/msm/dsi/dsi_phy_20nm.xml.h
 create mode 100644 drivers/gpu/drm/msm/dsi/dsi_phy_28nm.xml.h
 create mode 100644 drivers/gpu/drm/msm/dsi/dsi_phy_28nm_8960.xml.h
 create mode 100644 drivers/gpu/drm/msm/dsi/dsi_phy_5nm.xml.h
 create mode 100644 drivers/gpu/drm/msm/dsi/dsi_phy_7nm.xml.h


More information about the Freedreno mailing list