[Freedreno] [PATCH 00/21] drm/msm: Add support for SDM845 Display Processing Unit (DPU)

Sean Paul seanpaul at chromium.org
Mon Jul 9 17:31:36 UTC 2018


Hello again,
Well, here's the driver for QC SDM845 DPU support that I sent out in February, this time without the RFC safety net. We've been busy since then, here's what we've been up to!

We've seen 184 unique patches from 8 people sent to the list to prepare the driver, here are the diffstat diffs:

Diffstat from February:
236 files changed, 110234 insertions(+), 159 deletions(-)

Diffstat from present day:
81 files changed, 32900 insertions(+), 237 deletions(-)

So now you're wondering what was removed to get here, the breakdown of patches is listed below. The highlights are:
- Remove dsi-staging driver, use upstream msm/dsi
- Remove dp driver, will introduce soon
- Remove writeback support, will re-introduce using upstream UAPI
- Remove dpu_connector abstraction layer
- Remove color processing/adaptive display features
- Remove hdcp support, will re-introduce using upstream UAPI
- Remove custom dpu ioctls and properties
- A _bunch_ of other stuff that really adds up

We've also de-duplicated a bunch of functionality:
- dpu EDID parsing vs. drm_edid
- dpu_rect vs. drm_rect
- DPU_TRACE vs. tracepoints

Finally, we've improved upstream msm in the following ways:
- Converted to atomic helpers
- Added dual-dsi support to msm/dsi
- Added a few kms callbacks to allow finer grained control
- Added mdss subclassing to share infrastructure between dpu/mdp5

The work is obviously not done, in addition to the re-introduction of features above, we still have a fair amount of clean up and polishing to do. All of that clean up (aside from the disp/event kthreads) are isolated to the dpu portion of the msm driver. We're also getting to the point where we want to add functionality back to the driver. For these reasons, I think now is a good time to land dpu in msm-next and work on the rest there.

One note: "dt-bindings: clock: Introduce QCOM Display clock bindings" is included here since the DPU bindings depend on it. It has been posted and reviewed elsewhere, so it is simply here for completion.

If you would like this in the form of a git tree, it is hosted at https://gitlab.freedesktop.org/seanpaul/dpu-staging/tree/for-next

Finally, huge thanks to the display team at Qualcomm for diving into this headfirst, they've been awesome to work with. We've still got a long road ahead, but we've come far in little time. I'm looking forward to their continued contributions.

Thanks for your consideration,

Sean

-------
Breakdown of patches squashed into the "Add SDM845 DPU Support" patch:

Abhinav Kumar <abhinavk at codeaurora.org> (12):
      drm/msm/dsi: add only dsi nodes with a valid device to list
      drm/msm/dsi: check return value for video done waits
      drm/msm/dsi: check video mode engine status before waiting
      drm/msm/dsi: configure VCO rate for 10nm PLL driver
      drm/msm/dsi: implement auto PHY timing calculator for 10nm PHY
      drm/msm/dsi: set encoder mode for DRM bridge explicitly
      drm/msm: higher values of pclk can exceed 32 bits when multiplied by a factor
      drm/msm: make pclk_rate u64 to avoid truncation
      drm/msm: remove support for seamless modes
      drm/panel: Add support for Truly NT35597 panel
      drm/panel: add backlight control support for truly panel
      dt-bindings: Add Truly NT35597 panel bindings

Archit Taneja <architt at codeaurora.org> (5):
      drm/msm/mdp5: Add global state as a private atomic object
      drm/msm/mdp5: Use the new private_obj state
      drm/msm: Don't subclass drm_atomic_state anymore
      drm/panel: Add Truly Dual DSI video mode panel
      drm/panel: Add Truly NT35597 panel

Chandan Uddaraju <chandanu at codeaurora.org> (6):
      ARM: dts: msm: Add DPU node as a child of MDSS for SDM845
      ARM: dts: msm: disable MDP/DSI driver present in "SDM845-dpu"
      ARM: dts: msm: fix panel gpio/regulator settings for SDM845
      Fix GPIO/Regulator settings in DT for truly panel
      drm/msm/dsi: Use one connector for dual DSI mode
      drm/msm/dsi: adjust dsi timing for dual dsi mode

Jeykumar Sankaran <jsanka at codeaurora.org> (35):
      Remove dpu crtc custom properties and its handlers
      drm/fourcc: add msm compressed format modifiers
      drm/msm/dpu: Fix writeback compile macros
      drm/msm/dpu: add atomic private object to dpu kms
      drm/msm/dpu: avoid querying for hw intf before assignment
      drm/msm/dpu: clean up dpu crtc custom properties
      drm/msm/dpu: clean up dpu plane custom properties
      drm/msm/dpu: iterate for assigned hw ctl in virtual encoder
      drm/msm/dpu: move hw resource tracking to crtc state
      drm/msm/dpu: program master-slave encoders explicitly
      drm/msm/dpu: remove display H_TILE from encoder
      drm/msm/dpu: remove ping pong split topology variables
      drm/msm/dpu: remove resource pool manager
      drm/msm/dpu: remove scalar config definitions
      drm/msm/dpu: remove stale encoder code
      drm/msm/dpu: remove topology name
      drm/msm/dpu: rename hw_ctl to lm_ctl
      drm/msm/dpu: switch to drm zpos property
      drm/msm/dpu: use kms stored hw mdp block
      drm/msm/dpu: use private obj to track hw resources
      drm/msm/dsi-staging: compile out partial update path
      drm/msm/dsi-staging: remove support for partial update
      drm/msm: enable zpos normalization
      drm/msm: hook up DPU with upstream DSI
      drm/msm: populate aspace in msm_kms
      drm/msm: remove connector custom properties
      drm/msm: remove display stream compression(DSC) support for SM845
      drm/msm: remove dpu specific uapi header
      drm/msm: remove dsi-staging driver
      drm/msm: remove hw rotation support
      drm/msm: remove msm_prop files
      drm/msm: remove panel autorefresh support for SDM845
      drm/msm: remove partial update support
      drm/msm: remove support for ping pong split topology
      drm/msm: strip down custom event ioctl's

Jordan Crouse <jcrouse at codeaurora.org> (1):
      drm/msm/dpu: Remove unused code and move the header

Rajesh Yadav <ryadav at codeaurora.org> (29):
      Revert "drm/msm: Add DisplayPort support"
      drm/msm/dp: remove dpu_power_handle calls from dp driver
      drm/msm/dpu: add MDSS top level driver for dpu
      drm/msm/dpu: add error handling in dpu_core_perf_crtc_update
      drm/msm/dpu: correct dpu_io_util.h include path
      drm/msm/dpu: create new platform driver for dpu device
      drm/msm/dpu: move dpu_io_util to dpu folder
      drm/msm/dpu: move dpu_power_handle to dpu folder
      drm/msm/dpu: remove clock management code from dpu_power_handle
      drm/msm/dpu: remove dt parsing logic for bus_scale config
      drm/msm/dpu: remove hdcp support
      drm/msm/dpu: remove msm_prop entry from Makefile
      drm/msm/dpu: remove power management code from dpu_power_handle
      drm/msm/dpu: remove writeback support
      drm/msm/dpu: update dpu sub-block offsets wrt dpu base address
      drm/msm/dpu: use runtime_pm calls in dpu_dbg
      drm/msm/dpu: use runtime_pm calls on dpu device
      drm/msm/dsi-staging: Gate bus scale code
      drm/msm/dsi: initialize postdiv_lock before use for 10nm pll
      drm/msm/mdp5: subclass msm_mdss for mdp5
      drm/msm: Fix return type mismatch for dpu_kms_init
      drm/msm: Remove RSC support from DPU driver
      drm/msm: Remove unused variables
      drm/msm: remove redundant pm_runtime_enable call from msm_drv
      dt-bindings: msm/disp: Remove DPU RSC device bindings
      dt-bindings: msm/disp: cleanup bindings for Snapdragon 845 DPU
      dt-bindings: msm/disp: remove unused display port bindings
      dt-bindings: msm/disp: remove unused dsi & panel bindings
      dt-bindings: msm/disp: remove unused writeback bindings

Sean Paul <seanpaul at chromium.org> (85):
      arm64: dts: qcom: Remove obsolete dpu dts files
      arm64: dts: qcom: sdm845: Add dpu to sdm845 dts file
      drm/bridge: adv7511: Reset registers on hotplug
      drm/mipi: Remove Qualcomm-specific dsi packet header format
      drm/mipi: Remove unused mipi/dsi packet types
      drm/msm: Add displayport files to Makefile
      drm/msm: Add pm_runtime_get/put calls to dpu
      drm/msm: Alphabetize dpu files in Makefile
      drm/msm: Change driver name back to msm
      drm/msm: Defer probe if display component not found
      drm/msm: Disable mdp5 crtc when there are no active planes
      drm/msm: Don't duplicate modeset_enables atomic helper
      drm/msm: Fix NULL deref on bind/probe deferral
      drm/msm: Fix deadlock calling msm_gem_new()
      drm/msm: Fix dpu build warnings
      drm/msm: Fix dpu compile when CONFIG_DEBUG_FS !defined
      drm/msm: Fix uninitialized use of prefill_lines
      drm/msm: Include the dpu_dbg header in msm_drv.c
      drm/msm: Issue queued events when disabling crtc
      drm/msm: Mark the crtc->state->event consumed
      drm/msm: More cleanup in msm_drv
      drm/msm: Move debugfs root tracking to dpu
      drm/msm: Move dpu_dbg init/destroy into dpu_kms
      drm/msm: Move implicit sync fence handling to prepare_fb
      drm/msm: Move implicit sync handling to prepare_fb
      drm/msm: Populate kms->irq for dpu
      drm/msm: Properly cast return with ERR_PTR
      drm/msm: Reduce dpu_crtc_atomic_check frame size
      drm/msm: Refactor complete_commit() to look more the helpers
      drm/msm: Remove DPU_DBG->pr_err ifdef gate
      drm/msm: Remove _dpu_format_calc_offset_linear()
      drm/msm: Remove atomic_check() from msm_kms
      drm/msm: Remove dpu bus scaling code
      drm/msm: Remove dpu input fences
      drm/msm: Remove dpu module parameters
      drm/msm: Remove dpu_edid_parser
      drm/msm: Remove dpu_kms_fbo and associated functions
      drm/msm: Remove dpu_plane_state->defer_prepare_fb
      drm/msm: Remove get_address_space msm_kms hook
      drm/msm: Remove hand-rolled out fences
      drm/msm: Remove ion from dpu
      drm/msm: Remove more dpu changes from msm core
      drm/msm: Remove more dpu-related code from msm_drv
      drm/msm: Remove msm_commit/kthread, use atomic helper commit
      drm/msm: Remove msm_commit/worker, use atomic helper commit
      drm/msm: Remove msm_hdcp devicetree bindings
      drm/msm: Remove prepare_fence kms_function
      drm/msm: Remove remnants of dsi-staging
      drm/msm: Remove secure fb/plane support from dpu
      drm/msm: Remove smmu driver init/cleanup from msm_drv
      drm/msm: Remove unused backpointers from dpu_crtc
      drm/msm: Remove wait_for_tx_complete() from msm_kms
      drm/msm: Skip seamless disables in crtc/encoder
      drm/msm: Sprinkle pm_runtime calls around
      drm/msm: Switch to atomic_helper_commit()
      drm/msm: Use atomic private_obj instead of subclassing
      drm/msm: Use drm_private_obj/state instead of subclassing
      drm/msm: dpu: Do debugfs init in the debugfs_init() hook
      drm/msm: dpu: Fix build warnings
      drm/msm: dpu: Move dpu_dbg into dpu1 directory
      drm/msm: dpu: Remove arbitrary register dumps
      drm/msm: dpu: Remove dpu evtlog
      drm/msm: dpu: Remove dpu_format_populate_layout_with_roi()
      drm/msm: dpu: Remove dpu_rect
      drm/msm: dpu: Remove dsi debug block name
      drm/msm: dpu: Remove panic from dpu debug dump
      drm/msm: dpu_core_irq: Replace DPU_EVT with tracepoints
      drm/msm: dpu_core_perf: Replace DPU_EVT with tracepoints
      drm/msm: dpu_crtc: Replace DPU_EVT with tracepoints
      drm/msm: dpu_dbg: Remove dump_all option for dumping registers
      drm/msm: dpu_dbg: Remove string parsing from DBG_DUMP
      drm/msm: dpu_encoder: Replace DPU_EVT with tracepoints
      drm/msm: dpu_encoder_phys_cmd: Replace DPU_EVT with tracepoints
      drm/msm: dpu_encoder_phys_vid: Replace DPU_EVT with tracepoints
      drm/msm: dpu_kms: Replace DPU_EVT with tracepoints
      drm/msm: dpu_mdss: Replace DPU_EVT with DRM_ERROR
      drm/msm: dpu_pingpong: Replace DPU_EVT with tracepoints
      drm/msm: dpu_plane: Replace DPU_EVT with tracepoints
      drm/msm: dpu_rm: Replace DPU_EVT with tracepoints
      drm/msm: dpu_vbif: Replace DPU_EVT with tracepoints
      drm: Remove duplicate ycbcr420 parsing
      drm: Remove unused drm_connector fields
      dt-bindings: dpu: Fixup dt-bindings discrepencies
      msm/hdcp: Remove redundant stubs/CONFIG
      video: Remove LF copyright in mipi_display.h

Sravanthi Kollukuduru <skolluku at codeaurora.org> (11):
      arm64: dts: Remove hw block offset DT entries for SDM845
      arm64: dts: Remove inline rotator DT entry for SDM845
      drm/msm/dpu: dynamic assignment of hw pipe to plane
      drm/msm/dpu: enable cursor plane for primary crtc
      drm/msm/dpu: introduce state based plane resource management
      drm/msm/dpu: remove smart dma support
      drm/msm/dpu: remove static binding of hw pipe to plane
      drm/msm: Add hardware catalog data in driver source for SDM845
      drm/msm: Add hardware catalog file for SDM845
      drm/msm: fix compilation warnings in display driver
      dt-bindings: msm/disp: Remove hw block offset DT entries for SDM845

END Breakdown of squashed patches
-------


Abhinav Kumar (1):
  drm/msm: higher values of pclk can exceed 32 bits when multiplied by a
    factor

Chandan Uddaraju (2):
  drm/msm/dsi: adjust dsi timing for dual dsi mode
  drm/msm/dsi: Use one connector for dual DSI mode

Jeykumar Sankaran (11):
  dt-bindings: msm/dsi: Add mdp transfer time to msm dsi binding
  drm: add msm compressed format modifiers
  drm/msm: enable zpos normalization
  drm/msm: #define MDP version numbers
  drm/msm: Use labels for unwinding in the error path
  drm/msm: #define MAX_<OBJECT> in msm_drv.h
  drm/msm: Add .commit() callback to msm_kms functions
  drm/msm: Add preclose kms hook
  drm/msm: Add pm_suspend/resume callbacks to msm_kms
  dt-bindings: msm/disp: Add bindings for Snapdragon 845 DPU
  drm/msm: Add SDM845 DPU support

Rajesh Yadav (2):
  drm/msm/dsi: initialize postdiv_lock before use for 10nm pll
  drm/msm/mdp5: subclass msm_mdss for mdp5

Sean Paul (3):
  drm/msm: Move wait_for_vblanks into mdp complete_commit() hooks
  drm/msm: Clean up dangling atomic_wq
  arm64: dts: qcom: sdm845: Add dpu to sdm845 dts file

Taniya Das (1):
  dt-bindings: clock: Introduce QCOM Display clock bindings

vkorjani (1):
  drm: Add support for pps and compression mode command packet

 .../devicetree/bindings/clock/qcom,dispcc.txt |   19 +
 .../devicetree/bindings/display/msm/dpu.txt   |  128 +
 .../devicetree/bindings/display/msm/dsi.txt   |   16 +
 arch/arm64/boot/dts/qcom/sdm845.dtsi          |  194 ++
 drivers/gpu/drm/drm_mipi_dsi.c                |    2 +
 drivers/gpu/drm/msm/Makefile                  |   32 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_core_irq.c  |  532 ++++
 drivers/gpu/drm/msm/disp/dpu1/dpu_core_irq.h  |  178 ++
 drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.c |  637 ++++
 drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.h |  133 +
 drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c      | 2523 ++++++++++++++++
 drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.h      |  491 ++++
 drivers/gpu/drm/msm/disp/dpu1/dpu_dbg.c       | 2393 +++++++++++++++
 drivers/gpu/drm/msm/disp/dpu1/dpu_dbg.h       |  103 +
 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c   | 2574 +++++++++++++++++
 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.h   |  191 ++
 .../gpu/drm/msm/disp/dpu1/dpu_encoder_phys.h  |  453 +++
 .../drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c  |  905 ++++++
 .../drm/msm/disp/dpu1/dpu_encoder_phys_vid.c  |  922 ++++++
 drivers/gpu/drm/msm/disp/dpu1/dpu_formats.c   | 1276 ++++++++
 drivers/gpu/drm/msm/disp/dpu1/dpu_formats.h   |  136 +
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_blk.c    |  155 +
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_blk.h    |   53 +
 .../gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c    |  511 ++++
 .../gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h    |  804 +++++
 .../drm/msm/disp/dpu1/dpu_hw_catalog_format.h |  182 ++
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_cdm.c    |  323 +++
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_cdm.h    |  139 +
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.c    |  540 ++++
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.h    |  218 ++
 .../gpu/drm/msm/disp/dpu1/dpu_hw_interrupts.c | 1213 ++++++++
 .../gpu/drm/msm/disp/dpu1/dpu_hw_interrupts.h |  278 ++
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_intf.c   |  349 +++
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_intf.h   |  128 +
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_lm.c     |  261 ++
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_lm.h     |  122 +
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_mdss.h   |  465 +++
 .../gpu/drm/msm/disp/dpu1/dpu_hw_pingpong.c   |  250 ++
 .../gpu/drm/msm/disp/dpu1/dpu_hw_pingpong.h   |  136 +
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp.c   |  753 +++++
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp.h   |  424 +++
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_top.c    |  398 +++
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_top.h    |  202 ++
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_util.c   |  452 +++
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_util.h   |  358 +++
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_vbif.c   |  275 ++
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_vbif.h   |  128 +
 drivers/gpu/drm/msm/disp/dpu1/dpu_hwio.h      |   56 +
 drivers/gpu/drm/msm/disp/dpu1/dpu_io_util.c   |  186 ++
 drivers/gpu/drm/msm/disp/dpu1/dpu_io_util.h   |   57 +
 drivers/gpu/drm/msm/disp/dpu1/dpu_irq.c       |   66 +
 drivers/gpu/drm/msm/disp/dpu1/dpu_irq.h       |   59 +
 drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c       | 1380 +++++++++
 drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h       |  402 +++
 drivers/gpu/drm/msm/disp/dpu1/dpu_kms_utils.c |  153 +
 drivers/gpu/drm/msm/disp/dpu1/dpu_mdss.c      |  259 ++
 drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c     | 1963 +++++++++++++
 drivers/gpu/drm/msm/disp/dpu1/dpu_plane.h     |  175 ++
 .../gpu/drm/msm/disp/dpu1/dpu_power_handle.c  |  249 ++
 .../gpu/drm/msm/disp/dpu1/dpu_power_handle.h  |  225 ++
 drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c        | 1079 +++++++
 drivers/gpu/drm/msm/disp/dpu1/dpu_rm.h        |  199 ++
 drivers/gpu/drm/msm/disp/dpu1/dpu_trace.h     | 1011 +++++++
 drivers/gpu/drm/msm/disp/dpu1/dpu_vbif.c      |  384 +++
 drivers/gpu/drm/msm/disp/dpu1/dpu_vbif.h      |   94 +
 drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c      |    2 +
 drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c      |    2 +
 drivers/gpu/drm/msm/disp/mdp5/mdp5_mdss.c     |  154 +-
 drivers/gpu/drm/msm/dsi/dsi.c                 |    3 +
 drivers/gpu/drm/msm/dsi/dsi.h                 |    7 +-
 drivers/gpu/drm/msm/dsi/dsi_host.c            |   64 +-
 drivers/gpu/drm/msm/dsi/dsi_manager.c         |  119 +-
 drivers/gpu/drm/msm/dsi/pll/dsi_pll_10nm.c    |    2 +
 drivers/gpu/drm/msm/msm_atomic.c              |    7 +-
 drivers/gpu/drm/msm/msm_drv.c                 |  230 +-
 drivers/gpu/drm/msm/msm_drv.h                 |   96 +-
 drivers/gpu/drm/msm/msm_kms.h                 |   30 +-
 .../dt-bindings/clock/qcom,dispcc-sdm845.h    |   45 +
 include/uapi/drm/drm_fourcc.h                 |   45 +
 include/uapi/media/msm_media_info.h           | 1376 +++++++++
 include/video/mipi_display.h                  |    3 +
 81 files changed, 32900 insertions(+), 237 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/clock/qcom,dispcc.txt
 create mode 100644 Documentation/devicetree/bindings/display/msm/dpu.txt
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_core_irq.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_core_irq.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_dbg.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_dbg.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_formats.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_formats.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_blk.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_blk.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog_format.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_cdm.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_cdm.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_interrupts.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_interrupts.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_intf.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_intf.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_lm.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_lm.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_mdss.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_pingpong.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_pingpong.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_top.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_top.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_util.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_util.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_vbif.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_vbif.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hwio.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_io_util.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_io_util.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_irq.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_irq.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_kms_utils.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_mdss.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_plane.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_power_handle.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_power_handle.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_rm.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_trace.h
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_vbif.c
 create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_vbif.h
 create mode 100644 include/dt-bindings/clock/qcom,dispcc-sdm845.h
 create mode 100644 include/uapi/media/msm_media_info.h

-- 
Sean Paul, Software Engineer, Google / Chromium OS



More information about the Freedreno mailing list