1. 31 7月, 2020 2 次提交
  2. 24 5月, 2020 1 次提交
  3. 19 5月, 2020 2 次提交
  4. 13 2月, 2020 1 次提交
  5. 19 12月, 2019 1 次提交
  6. 04 9月, 2019 3 次提交
    • R
      drm/msm: async commit support · 2d99ced7
      Rob Clark 提交于
      Now that flush/wait/complete is decoupled from the "synchronous" part of
      atomic commit_tail(), add support to defer flush to a timer that expires
      shortly before vblank for async commits.  In this way, multiple atomic
      commits (for example, cursor updates) can be coalesced into a single
      flush at the end of the frame.
      
      v2: don't hold lock over ->wait_flush(), to avoid locking interaction
          that was causing fps drop when combining page flips or non-async
          atomic commits and lots of legacy cursor updates
      Signed-off-by: NRob Clark <robdclark@chromium.org>
      Reviewed-by: NSean Paul <sean@poorly.run>
      2d99ced7
    • J
      drm/msm: Use generic bulk clock function · 8e3e791d
      Jordan Crouse 提交于
      Remove the homebrewed bulk clock get function and replace it with
      devm_clk_bulk_get_all().
      Signed-off-by: NJordan Crouse <jcrouse@codeaurora.org>
      Reviewed-by: NStephen Boyd <swboyd@chromium.org>
      Reviewed-by: NRob Clark <robdclark@gmail.com>
      Signed-off-by: NRob Clark <robdclark@chromium.org>
      8e3e791d
    • S
      drm/msm: drop use of drmP.h · feea39a8
      Sam Ravnborg 提交于
      Drop the deprecated drmP.h header file, and trim msm_drv.h
      to the relevant include files.
      
      This resulted in a suprisingly many edits as many files relied
      on headers included via msm_drv.h.
      But msm_drv.h is not supposed to carry include files it do not need, so
      the individual files have to include what extra they needs.
      
      v2:
      - Rebased on top of https://gitlab.freedesktop.org/drm/msm.git msm-next
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      Cc: Rob Clark <robdclark@gmail.com>
      Cc: Sean Paul <sean@poorly.run>
      Cc: David Airlie <airlied@linux.ie>
      Cc: Daniel Vetter <daniel@ffwll.ch>
      Cc: Jordan Crouse <jcrouse@codeaurora.org>
      Cc: Jeykumar Sankaran <jsanka@codeaurora.org>
      Cc: Bruce Wang <bzwang@chromium.org>
      Cc: Shayenne Moura <shayenneluzmoura@gmail.com>
      Cc: Mamta Shukla <mamtashukla555@gmail.com>
      Cc: Jonathan Marek <jonathan@marek.ca>
      Cc: Carsten Behling <carsten.behling@googlemail.com>
      Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Cc: Maxime Ripard <maxime.ripard@bootlin.com>
      Cc: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
      Cc: Sibi Sankar <sibis@codeaurora.org>
      Cc: Todor Tomov <todor.tomov@linaro.org>
      Cc: linux-arm-msm@vger.kernel.org
      Cc: freedreno@lists.freedesktop.org
      Signed-off-by: NSean Paul <seanpaul@chromium.org>
      Link: https://patchwork.freedesktop.org/patch/msgid/20190804065551.GA5211@ravnborg.org
      feea39a8
  7. 19 6月, 2019 2 次提交
  8. 15 5月, 2019 1 次提交
  9. 20 4月, 2019 2 次提交
  10. 19 2月, 2019 1 次提交
  11. 01 2月, 2019 4 次提交
  12. 29 1月, 2019 2 次提交
  13. 25 1月, 2019 2 次提交
  14. 24 1月, 2019 1 次提交
  15. 12 12月, 2018 7 次提交
  16. 04 10月, 2018 1 次提交
    • S
      drm/msm: dpu: Allow planes to extend past active display · 96fc56a7
      Sean Paul 提交于
      The atomic_check is a bit too aggressive with respect to planes which
      leave the active area. This caused a bunch of log spew when the cursor
      got to the edge of the screen and stopped it from going all the way.
      
      This patch removes the conservative bounds checks from atomic and clips
      the dst rect such that we properly display planes which go off the
      screen.
      
      Changes in v2:
      - Apply the clip to src as well (taking into account scaling)
      Changes in v3:
      - Use drm_atomic_helper_check_plane_state() to clip src/dst
      
      Cc: Sravanthi Kollukuduru <skolluku@codeaurora.org>
      Cc: Jeykumar Sankaran <jsanka@codeaurora.org>
      Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
      Reviewed-by: NJeykumar Sankaran <jsanka@codeaurora.org>
      Signed-off-by: NSean Paul <seanpaul@chromium.org>
      Signed-off-by: NRob Clark <robdclark@gmail.com>
      96fc56a7
  17. 11 8月, 2018 1 次提交
  18. 03 8月, 2018 1 次提交
  19. 26 7月, 2018 3 次提交
    • J
      drm/msm: Add SDM845 DPU support · 25fdd593
      Jeykumar Sankaran 提交于
      SDM845 SoC includes the Mobile Display Sub System (MDSS) which is a
      top level wrapper consisting of Display Processing Unit (DPU) and
      display peripheral modules such as Display Serial Interface (DSI)
      and DisplayPort (DP).
      
      MDSS functions essentially as a back-end composition engine. It blends
      video and graphic images stored in the frame buffers and scans out the
      composed image to a display sink (over DSI/DP).
      
      The following diagram represents hardware blocks for a simple pipeline
      (two planes are present on a given crtc which is connected to a DSI
      connector):
      
             MDSS
            +---------------------------------+
            | +-----------------------------+ |
            | | DPU                         | |
            | |  +--------+  +--------+     | |
            | |  |  SSPP  |  |  SSPP  |     | |
            | |  +----+---+  +----+---+     | |
            | |       |           |         | |
            | |  +----v-----------v---+     | |
            | |  |  Layer Mixer (LM)  |     | |
            | |  +--------------------+     | |
            | |  +--------------------+     | |
            | |  |    PingPong (PP)   |     | |
            | |  +--------------------+     | |
            | |  +--------------------+     | |
            | |  |  INTERFACE (VIDEO) |     | |
            | |  +---+----------------+     | |
            | +------|----------------------+ |
            |        |                        |
            | +------|---------------------+  |
            | |      | DISPLAY PERIPHERALS |  |
            | |  +---v-+      +-----+      |  |
            | |  | DSI |      |  DP |      |  |
            | |  +-----+      +-----+      |  |
            | +----------------------------+  |
            +---------------------------------+
      
      The number of DPU sub-blocks (i.e. SSPPs, LMs, PP blocks and INTFs)
      depends on SoC capabilities.
      
      Overview of DPU sub-blocks:
      ---------------------------
      * Source Surface Processor (SSPP):
       Refers to any of hardware pipes like ViG, DMA etc. Only ViG pipes are
       capable of performing format conversion, scaling and quality improvement
       for source surfaces.
      
      * Layer Mixer (LM):
       Blend source surfaces together (in requested zorder)
      
      * PingPong (PP):
       This block controls frame done interrupt output, EOL and EOF generation,
       overflow/underflow control.
      
      * Display interface (INTF):
       Timing generator and interface connecting the display peripherals.
      
      DRM components mapping to DPU architecture:
      ------------------------------------------
      PLANEs maps to SSPPs
      CRTC maps to LMs
      Encoder maps to PPs, INTFs
      
      Data flow setup:
      ---------------
      MDSS hardware can support various data flows (e.g.):
        - Dual pipe: Output from two LMs combined to single display.
        - Split display: Output from two LMs connected to two separate
                         interfaces.
      
      The hardware capabilities determine the number of concurrent data paths
      possible. Any control path (i.e. pipeline w/i DPU) can be routed to any
      of the hardware data paths. A given control path can be triggered,
      flushed and controlled independently.
      
      Changes in v3:
      - Move msm_media_info.h from uapi to dpu/ subdir
      - Remove preclose callback dpu (it's handled in core)
      - Fix kbuild warnings with parent_ops
      - Remove unused functions from dpu_core_irq
      - Rename mdss_phys to mdss
      - Rename mdp_phys address space to mdp
      - Drop _phys from vbif and regdma binding names
      Signed-off-by: NAbhinav Kumar <abhinavk@codeaurora.org>
      Signed-off-by: NArchit Taneja <architt@codeaurora.org>
      Signed-off-by: NChandan Uddaraju <chandanu@codeaurora.org>
      Signed-off-by: NJeykumar Sankaran <jsanka@codeaurora.org>
      Signed-off-by: NJordan Crouse <jcrouse@codeaurora.org>
      Signed-off-by: NRajesh Yadav <ryadav@codeaurora.org>
      Signed-off-by: NSravanthi Kollukuduru <skolluku@codeaurora.org>
      Signed-off-by: NSean Paul <seanpaul@chromium.org>
      [robclark minor rebase]
      Signed-off-by: NRob Clark <robdclark@gmail.com>
      25fdd593
    • J
      drm/msm: #define MAX_<OBJECT> in msm_drv.h · 7305a0ce
      Jeykumar Sankaran 提交于
      dpu uses these elsewhere in the driver (in addition to increasing
      MAX_PLANES, that'll come later), so pull them out into #define.
      
      Changes in v3:
      - None
      Signed-off-by: NJeykumar Sankaran <jsanka@codeaurora.org>
      [seanpaul pulled this out of the dpu megapatch]
      Signed-off-by: NSean Paul <seanpaul@chromium.org>
      Signed-off-by: NRob Clark <robdclark@gmail.com>
      7305a0ce
    • S
      drm/msm: Clean up dangling atomic_wq · 74312fc7
      Sean Paul 提交于
      I missed this during the atomic conversion
      
      Changes in v3:
      - None
      Signed-off-by: NSean Paul <seanpaul@chromium.org>
      Signed-off-by: NRob Clark <robdclark@gmail.com>
      74312fc7
  20. 25 7月, 2018 1 次提交
  21. 05 6月, 2018 1 次提交