public inbox for intel-gfx@lists.freedesktop.org
 help / color / mirror / Atom feed
* [PATCH 00/42] drm/i915: Convert to atomic, part 2.
@ 2015-05-11 14:24 Maarten Lankhorst
  2015-05-11 14:24 ` [PATCH 01/42] drm/atomic: Allow drivers to subclass drm_atomic_state Maarten Lankhorst
                   ` (42 more replies)
  0 siblings, 43 replies; 98+ messages in thread
From: Maarten Lankhorst @ 2015-05-11 14:24 UTC (permalink / raw)
  To: intel-gfx; +Cc: Ander Conselvan de Oliveira

This patch makes this happen by consolidating all modeset paths
and getting rid of most transitional state.

This happens first by unifying all paths so all code that
disables a crtc goes through either intel_crtc_toggle or
__intel_set_mode. After that's done crtc_state->active is
updated in intel_crtc_toggle, and used to check whether
the crtc is active or not.

At this point crtc->state is equal to intel_crtc->config and
crtc->state->active is equal to crtc->config.

This gives us enough information to convert all planes to atomic,
this had to be done in a single commit because the transitional
helpers don't call crtc_check and some things have to be moved
there.

This makes the planes fully atomic, next step is getting rid
of the transitional intel_crtc->active and intel_crtc->config,
and replacing it with crtc->state or old_crtc_state.

The last part allows setting multiple crtc's in intel_set_mode,
and restore the sw state after suspend by calculating the hw
state in a drm_atomic_state, then swapping it with sw state
and finally call intel_set_mode with the sw state.

Ander Conselvan de Oliveira (6):
  drm/i915: Set mode_changed for audio in intel_modeset_pipe_config()
  drm/i915: Make __intel_set_mode() take only atomic state as argument
  drm/i915: Use global atomic state for staged pll config
  drm/i915: Support modeset across multiple pipes
  drm/i915: Move cdclk and pll setup to intel_modeset_compute_config()
  drm/i915: Read hw state into an atomic state struct

Maarten Lankhorst (36):
  drm/atomic: Allow drivers to subclass drm_atomic_state
  drm/i915: get rid of intel_crtc_disable and related code, v2
  drm/i915: Only update required power domains.
  drm/i915: use intel_crtc_control everywhere
  drm/i915: Get rid of new_encoder.
  drm/i915: get rid of new_crtc
  drm/i915: Get rid of crtc->new_enabled, v2.
  drm/i915: Implement intel_crtc_toggle using atomic state
  drm/i915: Make intel_modeset_fixup_state similar to the atomic helper.
  drm/i915: make plane helpers fully atomic
  drm/i915: Update less state during modeset.
  drm/i915: move swap_state to the right place
  drm/i915: Use hwmode for vblanks.
  drm/i915: Remove usage of crtc->config from i915_debugfs.c
  drm/i915: Remove use of crtc->config from intel_pm.c
  drm/i915: Remove use of crtc->config from intel_audio.c
  drm/i915: remove use of crtc->config from intel_fbc.c
  drm/i915: remove use of crtc->config from intel_atomic.c and
    intel_sprite.c
  drm/i915: Remove use of crtc->config from intel_overlay.c
  drm/i915: Pass old state to crtc_disable and use it.
  drm/i915: Pass old state to encoder->(post_)disable.
  drm/i915: Remove use of crtc->config from intel_fbdev.c
  drm/i915: Remove use of crtc->config from intel_psr.c
  drm/i915: Remove use of crtc->config from intel_ddi.c
  drm/i915: Remove use of crtc->config from intel_dp.c
  drm/i915: Remove use of crtc->config from intel_dp_mst.c
  drm/i915: Remove use of crtc->config from intel_dsi.c
  drm/i915: Remove use of crtc->config in intel_hdmi.c
  drm/i915: Remove use of crtc->config in intel_sdvo.c
  drm/i915: Calculate haswell plane workaround.
  drm/i915: remove crtc->active tracking completely
  drm/i915: get rid of crtc->config in intel_display.c, part 1
  drm/i915: get rid of crtc->config in intel_display.c, part 2
  drm/i915: get rid of crtc->config
  drm/i915: swap state correctly in intel_atomic_commit
  drm/i915: return early in __intel_set_mode_setup_plls without modeset

 drivers/gpu/drm/drm_atomic.c              |   91 +-
 drivers/gpu/drm/i915/i915_debugfs.c       |   50 +-
 drivers/gpu/drm/i915/i915_drv.h           |    5 +-
 drivers/gpu/drm/i915/i915_irq.c           |   13 +-
 drivers/gpu/drm/i915/intel_atomic.c       |   93 +-
 drivers/gpu/drm/i915/intel_atomic_plane.c |   59 +-
 drivers/gpu/drm/i915/intel_audio.c        |    2 +-
 drivers/gpu/drm/i915/intel_crt.c          |   21 +-
 drivers/gpu/drm/i915/intel_ddi.c          |   93 +-
 drivers/gpu/drm/i915/intel_display.c      | 2639 +++++++++++++++--------------
 drivers/gpu/drm/i915/intel_dp.c           |   86 +-
 drivers/gpu/drm/i915/intel_dp_mst.c       |   16 +-
 drivers/gpu/drm/i915/intel_drv.h          |   72 +-
 drivers/gpu/drm/i915/intel_dsi.c          |   25 +-
 drivers/gpu/drm/i915/intel_dvo.c          |   15 +-
 drivers/gpu/drm/i915/intel_fbc.c          |    8 +-
 drivers/gpu/drm/i915/intel_fbdev.c        |   19 +-
 drivers/gpu/drm/i915/intel_hdmi.c         |   78 +-
 drivers/gpu/drm/i915/intel_lvds.c         |   13 +-
 drivers/gpu/drm/i915/intel_overlay.c      |    8 +-
 drivers/gpu/drm/i915/intel_panel.c        |    3 +-
 drivers/gpu/drm/i915/intel_pm.c           |   96 +-
 drivers/gpu/drm/i915/intel_psr.c          |   25 +-
 drivers/gpu/drm/i915/intel_sdvo.c         |   22 +-
 drivers/gpu/drm/i915/intel_sprite.c       |   84 +-
 drivers/gpu/drm/i915/intel_tv.c           |    5 +-
 include/drm/drm_atomic.h                  |    4 +
 include/drm/drm_crtc.h                    |    4 +
 28 files changed, 1908 insertions(+), 1741 deletions(-)

-- 
2.1.0

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 98+ messages in thread

end of thread, other threads:[~2015-05-13  7:04 UTC | newest]

Thread overview: 98+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-05-11 14:24 [PATCH 00/42] drm/i915: Convert to atomic, part 2 Maarten Lankhorst
2015-05-11 14:24 ` [PATCH 01/42] drm/atomic: Allow drivers to subclass drm_atomic_state Maarten Lankhorst
2015-05-13  5:52   ` Daniel Vetter
2015-05-11 14:24 ` [PATCH 02/42] drm/i915: get rid of intel_crtc_disable and related code, v2 Maarten Lankhorst
2015-05-11 17:08   ` Daniel Vetter
2015-05-11 14:24 ` [PATCH 03/42] drm/i915: Only update required power domains Maarten Lankhorst
2015-05-11 17:00   ` Daniel Vetter
2015-05-12 12:05     ` Maarten Lankhorst
2015-05-12 13:13       ` Daniel Vetter
2015-05-11 14:24 ` [PATCH 04/42] drm/i915: use intel_crtc_control everywhere Maarten Lankhorst
2015-05-11 17:11   ` Daniel Vetter
2015-05-12 12:06     ` Maarten Lankhorst
2015-05-12 13:16       ` Daniel Vetter
2015-05-12 14:38         ` Daniel Stone
2015-05-11 14:24 ` [PATCH 05/42] drm/i915: Get rid of new_encoder Maarten Lankhorst
2015-05-11 17:17   ` Daniel Vetter
2015-05-11 14:24 ` [PATCH 06/42] drm/i915: get rid of new_crtc Maarten Lankhorst
2015-05-11 17:28   ` Daniel Vetter
2015-05-12 12:07     ` Maarten Lankhorst
2015-05-11 14:24 ` [PATCH 07/42] drm/i915: Get rid of crtc->new_enabled, v2 Maarten Lankhorst
2015-05-11 17:33   ` Daniel Vetter
2015-05-11 17:44     ` Daniel Vetter
2015-05-11 14:24 ` [PATCH 08/42] drm/i915: Implement intel_crtc_toggle using atomic state Maarten Lankhorst
2015-05-11 18:12   ` Daniel Vetter
2015-05-11 14:24 ` [PATCH 09/42] drm/i915: Make intel_modeset_fixup_state similar to the atomic helper Maarten Lankhorst
2015-05-12  6:59   ` Daniel Vetter
2015-05-12 12:41     ` Maarten Lankhorst
2015-05-12 13:18       ` Daniel Vetter
2015-05-11 14:24 ` [PATCH 10/42] drm/i915: make plane helpers fully atomic Maarten Lankhorst
2015-05-12  8:18   ` Daniel Vetter
2015-05-12 13:33     ` Maarten Lankhorst
2015-05-12 13:43       ` Ville Syrjälä
2015-05-12 13:46         ` Ville Syrjälä
2015-05-12 15:31         ` Daniel Vetter
2015-05-12 16:00       ` Daniel Vetter
2015-05-11 14:24 ` [PATCH 11/42] drm/i915: Update less state during modeset Maarten Lankhorst
2015-05-12  8:22   ` Daniel Vetter
2015-05-11 14:24 ` [PATCH 12/42] drm/i915: move swap_state to the right place Maarten Lankhorst
2015-05-12  8:25   ` Daniel Vetter
2015-05-11 14:24 ` [PATCH 13/42] drm/i915: Set mode_changed for audio in intel_modeset_pipe_config() Maarten Lankhorst
2015-05-11 14:24 ` [PATCH 14/42] drm/i915: Make __intel_set_mode() take only atomic state as argument Maarten Lankhorst
2015-05-11 14:24 ` [PATCH 15/42] drm/i915: Use hwmode for vblanks Maarten Lankhorst
2015-05-11 14:24 ` [PATCH 16/42] drm/i915: Remove usage of crtc->config from i915_debugfs.c Maarten Lankhorst
2015-05-12  8:51   ` Daniel Vetter
2015-05-11 14:24 ` [PATCH 17/42] drm/i915: Remove use of crtc->config from intel_pm.c Maarten Lankhorst
2015-05-12  8:54   ` Daniel Vetter
2015-05-11 14:24 ` [PATCH 18/42] drm/i915: Remove use of crtc->config from intel_audio.c Maarten Lankhorst
2015-05-11 14:24 ` [PATCH 19/42] drm/i915: remove use of crtc->config from intel_fbc.c Maarten Lankhorst
2015-05-11 14:24 ` [PATCH 20/42] drm/i915: remove use of crtc->config from intel_atomic.c and intel_sprite.c Maarten Lankhorst
2015-05-12  9:03   ` Daniel Vetter
2015-05-12 13:36     ` Maarten Lankhorst
2015-05-11 14:24 ` [PATCH 21/42] drm/i915: Remove use of crtc->config from intel_overlay.c Maarten Lankhorst
2015-05-12  9:06   ` Daniel Vetter
2015-05-11 14:24 ` [PATCH 22/42] drm/i915: Pass old state to crtc_disable and use it Maarten Lankhorst
2015-05-12  9:13   ` Daniel Vetter
2015-05-11 14:24 ` [PATCH 23/42] drm/i915: Pass old state to encoder->(post_)disable Maarten Lankhorst
2015-05-12  9:16   ` Daniel Vetter
2015-05-11 14:25 ` [PATCH 24/42] drm/i915: Remove use of crtc->config from intel_fbdev.c Maarten Lankhorst
2015-05-11 14:25 ` [PATCH 25/42] drm/i915: Remove use of crtc->config from intel_psr.c Maarten Lankhorst
2015-05-12  9:20   ` Daniel Vetter
2015-05-12 13:41     ` Maarten Lankhorst
2015-05-11 14:25 ` [PATCH 26/42] drm/i915: Remove use of crtc->config from intel_ddi.c Maarten Lankhorst
2015-05-11 14:25 ` [PATCH 27/42] drm/i915: Remove use of crtc->config from intel_dp.c Maarten Lankhorst
2015-05-12  9:22   ` Daniel Vetter
2015-05-12 13:43     ` Maarten Lankhorst
2015-05-11 14:25 ` [PATCH 28/42] drm/i915: Remove use of crtc->config from intel_dp_mst.c Maarten Lankhorst
2015-05-11 14:25 ` [PATCH 29/42] drm/i915: Remove use of crtc->config from intel_dsi.c Maarten Lankhorst
2015-05-11 14:25 ` [PATCH 30/42] drm/i915: Remove use of crtc->config in intel_hdmi.c Maarten Lankhorst
2015-05-12  9:26   ` Daniel Vetter
2015-05-11 14:25 ` [PATCH 31/42] drm/i915: Remove use of crtc->config in intel_sdvo.c Maarten Lankhorst
2015-05-11 14:25 ` [PATCH 32/42] drm/i915: Calculate haswell plane workaround Maarten Lankhorst
2015-05-12  9:43   ` Daniel Vetter
2015-05-12 14:05     ` Maarten Lankhorst
2015-05-12 16:54       ` Daniel Vetter
2015-05-11 14:25 ` [PATCH 33/42] drm/i915: remove crtc->active tracking completely Maarten Lankhorst
2015-05-12  9:55   ` Daniel Vetter
2015-05-12 10:03   ` Daniel Vetter
2015-05-12 14:07     ` Maarten Lankhorst
2015-05-12 16:57       ` Daniel Vetter
2015-05-12 17:01         ` Daniel Stone
2015-05-12 17:08           ` Daniel Vetter
2015-05-11 14:25 ` [PATCH 34/42] drm/i915: get rid of crtc->config in intel_display.c, part 1 Maarten Lankhorst
2015-05-12 10:11   ` Daniel Vetter
2015-05-12 14:13     ` Maarten Lankhorst
2015-05-12 17:01       ` Daniel Vetter
2015-05-11 14:25 ` [PATCH 35/42] drm/i915: get rid of crtc->config in intel_display.c, part 2 Maarten Lankhorst
2015-05-12 10:17   ` Daniel Vetter
2015-05-11 14:25 ` [PATCH 36/42] drm/i915: get rid of crtc->config Maarten Lankhorst
2015-05-11 14:25 ` [PATCH 37/42] drm/i915: swap state correctly in intel_atomic_commit Maarten Lankhorst
2015-05-12 13:03   ` Daniel Vetter
2015-05-12 14:16     ` Maarten Lankhorst
2015-05-12 17:03       ` Daniel Vetter
2015-05-11 14:25 ` [PATCH 38/42] drm/i915: Use global atomic state for staged pll config Maarten Lankhorst
2015-05-11 14:25 ` [PATCH 39/42] drm/i915: Support modeset across multiple pipes Maarten Lankhorst
2015-05-11 14:25 ` [PATCH 40/42] drm/i915: Move cdclk and pll setup to intel_modeset_compute_config() Maarten Lankhorst
2015-05-11 14:25 ` [PATCH 41/42] drm/i915: Read hw state into an atomic state struct Maarten Lankhorst
2015-05-11 14:25 ` [PATCH 42/42] drm/i915: return early in __intel_set_mode_setup_plls without modeset Maarten Lankhorst
2015-05-13  7:04 ` [PATCH 00/42] drm/i915: Convert to atomic, part 2 Daniel Vetter

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox