Remaining patches to enable Transcoder Port Sync for tiled displays

Submitted by Manasi Navare on Sept. 9, 2019, 3:42 a.m.

Details

Reviewer None
Submitted Sept. 9, 2019, 3:42 a.m.
Last Updated Sept. 9, 2019, 8:06 p.m.
Revision 3

Cover Letter(s)

Revision 1
      This patch series addresses all review comments and now the enable and disable
paths follow the method of obtaining slave states from master and updating master-slaves
in correct order during master modeset.

The ddb allocations and watermarks changes are not addressed here and will be added
after the basic support gets upstreamed

Manasi Navare (6):
  drm/i915/display/icl: Save Master transcoder in slave's crtc_state for
    Transcoder Port Sync
  drm/i915/display/icl: Enable TRANSCODER PORT SYNC for tiled displays
    across separate ports
  drm/i915/display/icl: HW state readout for transcoder port sync config
  drm/i915/display/icl: Enable master-slaves in trans port sync
  drm/i915/display/icl: Disable transcoder port sync as part of
    crtc_disable() sequence
  drm/i915/display/icl: In port sync mode disable slaves first then
    master

 drivers/gpu/drm/i915/display/intel_ddi.c      |   3 +-
 drivers/gpu/drm/i915/display/intel_display.c  | 438 +++++++++++++++++-
 drivers/gpu/drm/i915/display/intel_display.h  |   5 +
 .../drm/i915/display/intel_display_types.h    |   6 +
 4 files changed, 443 insertions(+), 9 deletions(-)
    
Revision 2
      This patch series addresses all review comments and now the enable and disable
paths follow the method of obtaining slave states from master and updating master-slaves
in correct order during master modeset.

The ddb allocations and watermarks changes are not addressed here and will be added
after the basic support gets upstreamed

Manasi Navare (6):
  drm/i915/display/icl: Save Master transcoder in slave's crtc_state for
    Transcoder Port Sync
  drm/i915/display/icl: Enable TRANSCODER PORT SYNC for tiled displays
    across separate ports
  drm/i915/display/icl: HW state readout for transcoder port sync config
  drm/i915/display/icl: Enable master-slaves in trans port sync
  drm/i915/display/icl: Disable transcoder port sync as part of
    crtc_disable() sequence
  drm/i915/display/icl: In port sync mode disable slaves first then
    master

 drivers/gpu/drm/i915/display/intel_ddi.c      |   3 +-
 drivers/gpu/drm/i915/display/intel_display.c  | 438 +++++++++++++++++-
 drivers/gpu/drm/i915/display/intel_display.h  |   5 +
 .../drm/i915/display/intel_display_types.h    |   6 +
 4 files changed, 443 insertions(+), 9 deletions(-)
    
Revision 3
      This patch series addresses all review comments and now the enable and disable
paths follow the method of obtaining slave states from master and updating master-slaves
in correct order during master modeset.

The ddb allocations and watermarks changes are not addressed here and will be added
after the basic support gets upstreamed

Manasi Navare (6):
  drm/i915/display/icl: Save Master transcoder in slave's crtc_state for
    Transcoder Port Sync
  drm/i915/display/icl: Enable TRANSCODER PORT SYNC for tiled displays
    across separate ports
  drm/i915/display/icl: HW state readout for transcoder port sync config
  drm/i915/display/icl: Enable master-slaves in trans port sync
  drm/i915/display/icl: Disable transcoder port sync as part of
    crtc_disable() sequence
  drm/i915/display/icl: In port sync mode disable slaves first then
    master

 drivers/gpu/drm/i915/display/intel_ddi.c      |   3 +-
 drivers/gpu/drm/i915/display/intel_display.c  | 438 +++++++++++++++++-
 drivers/gpu/drm/i915/display/intel_display.h  |   5 +
 .../drm/i915/display/intel_display_types.h    |   6 +
 4 files changed, 443 insertions(+), 9 deletions(-)
    

Revisions

Patches download mbox

Tests

$ dim checkpatch origin/drm-tip
b5030e9f1630 drm/i915/display/icl: Save Master transcoder in slave's crtc_state for Transcoder Port Sync
28255a0f88ab drm/i915/display/icl: Enable TRANSCODER PORT SYNC for tiled displays across separate ports
9f1c5ffded6c drm/i915/display/icl: HW state readout for transcoder port sync config
1d8c2a6820a9 drm/i915/display/icl: Enable master-slaves in trans port sync
-:32: WARNING:BAD_SIGN_OFF: Duplicate signature
#32: 
Signed-off-by: Manasi Navare <manasi.d.navare@intel.com>

-:81: ERROR:POINTER_LOCATION: "foo * bar" should be "foo *bar"
#81: FILE: drivers/gpu/drm/i915/display/intel_display.c:13995:
+static struct intel_crtc * intel_get_slave_crtc(struct drm_i915_private *dev_priv,

total: 1 errors, 1 warnings, 0 checks, 223 lines checked
2301db48a9ee drm/i915/display/icl: Disable transcoder port sync as part of crtc_disable() sequence
b2814fee7fcb drm/i915/display/icl: In port sync mode disable slaves first then master
-:35: WARNING:SPACING: space prohibited between function name and open parenthesis '('
#35: FILE: drivers/gpu/drm/i915/display/intel_display.c:14077:
+static void intel_trans_port_sync_modeset_disables (struct intel_atomic_state *state,

-:53: WARNING:SUSPECT_CODE_INDENT: suspect code indent for conditional statements (8, 32)
#53: FILE: drivers/gpu/drm/i915/display/intel_display.c:14095:
+	if (old_slave_crtc_state->base.active)
+				intel_old_crtc_state_disables(state,

-:61: WARNING:SUSPECT_CODE_INDENT: suspect code indent for conditional statements (8, 32)
#61: FILE: drivers/gpu/drm/i915/display/intel_display.c:14103:
+	if (old_crtc_state->base.active)
+				intel_old_crtc_state_disables(state,

total: 0 errors, 3 warnings, 0 checks, 77 lines checked
$ dim sparse origin/drm-tip
Sparse version: v0.6.0

Patches download mbox

Tests

CI Bug Log - changes from CI_DRM_6854 -> Patchwork_14331
====================================================

Summary
-------

  **FAILURE**

  Serious unknown changes coming with Patchwork_14331 absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_14331, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14331/

Possible new issues
-------------------

  Here are the unknown changes that may have been introduced in Patchwork_14331:

### IGT changes ###

#### Possible regressions ####

  * igt@kms_busy@basic-flip-a:
    - fi-icl-u3:          NOTRUN -> [DMESG-WARN][1]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14331/fi-icl-u3/igt@kms_busy@basic-flip-a.html
    - fi-icl-u2:          NOTRUN -> [DMESG-WARN][2]
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14331/fi-icl-u2/igt@kms_busy@basic-flip-a.html

  
Known issues
------------

  Here are the changes found in Patchwork_14331 that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@gem_exec_suspend@basic-s4-devices:
    - fi-blb-e6850:       [PASS][3] -> [INCOMPLETE][4] ([fdo#107718])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6854/fi-blb-e6850/igt@gem_exec_suspend@basic-s4-devices.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14331/fi-blb-e6850/igt@gem_exec_suspend@basic-s4-devices.html

  
#### Possible fixes ####

  * igt@gem_ctx_switch@legacy-render:
    - fi-icl-u2:          [INCOMPLETE][5] ([fdo#107713] / [fdo#111381]) -> [PASS][6]
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6854/fi-icl-u2/igt@gem_ctx_switch@legacy-render.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14331/fi-icl-u2/igt@gem_ctx_switch@legacy-render.html

  
  [fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713
  [fdo#107718]: https://bugs.freedesktop.org/show_bug.cgi?id=107718
  [fdo#111381]: https://bugs.freedesktop.org/show_bug.cgi?id=111381


Participating hosts (51 -> 46)
------------------------------

  Additional (3): fi-icl-dsi fi-cfl-guc fi-icl-u3 
  Missing    (8): fi-ilk-m540 fi-hsw-4200u fi-bsw-n3050 fi-byt-squawks fi-bsw-cyan fi-icl-y fi-byt-clapper fi-bdw-samus 


Build changes
-------------

  * CI: CI-20190529 -> None
  * Linux: CI_DRM_6854 -> Patchwork_14331

  CI-20190529: 20190529
  CI_DRM_6854: 5a70800ed2837e2d35a331e2cfd43a55df58c4fc @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_5176: 0102dcf4e2e8b357b59173fe1ff78069148080c6 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_14331: c6089022b185ffc336e501d5dcedf3a417be1aa0 @ git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

c6089022b185 drm/i915/display/icl: In port sync mode disable slaves first then master
3c58f43453f3 drm/i915/display/icl: Disable transcoder port sync as part of crtc_disable() sequence
2576578487b6 drm/i915/display/icl: Enable master-slaves in trans port sync
ba73d181a88e drm/i915/display/icl: HW state readout for transcoder port sync config
aa76e13afd97 drm/i915/display/icl: Enable TRANSCODER PORT SYNC for tiled displays across separate ports
93aa5d97589f drm/i915/display/icl: Save Master transcoder in slave's crtc_state for Transcoder Port Sync
$ dim checkpatch origin/drm-tip
93aa5d97589f drm/i915/display/icl: Save Master transcoder in slave's crtc_state for Transcoder Port Sync
aa76e13afd97 drm/i915/display/icl: Enable TRANSCODER PORT SYNC for tiled displays across separate ports
ba73d181a88e drm/i915/display/icl: HW state readout for transcoder port sync config
2576578487b6 drm/i915/display/icl: Enable master-slaves in trans port sync
3c58f43453f3 drm/i915/display/icl: Disable transcoder port sync as part of crtc_disable() sequence
c6089022b185 drm/i915/display/icl: In port sync mode disable slaves first then master
$ dim sparse origin/drm-tip
Sparse version: v0.6.0