All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/13] drm/i915: modeset probe/remove path refactoring
@ 2019-09-19 14:03 Jani Nikula
  2019-09-19 14:03 ` [PATCH 01/13] drm/i915: add i915_driver_modeset_remove() Jani Nikula
                   ` (14 more replies)
  0 siblings, 15 replies; 25+ messages in thread
From: Jani Nikula @ 2019-09-19 14:03 UTC (permalink / raw)
  To: intel-gfx; +Cc: jani.nikula

Hi all, I started looking into cleaning up the modeset probe/remove
paths. We have a number of issues there. Modeset and non-modeset
initialization and cleanup happily mixed up. Initialization and cleanup
of various things happen at different layers in the stack.

This is tied to the previous patches on display disable / no display.

The first 6 patches are really straightforward cleanup. Then things
start getting interesting. In general I'm trying to split the
init/cleanup to parts before and after irq&gem init/cleanup, so that we
can have the irq&gem stuff at the higher level of i915 probe instead of
in modeset code.

There are several levels of ugliness associated with this. First,
naming. (Door open for bikeshedding, yay.) Second, the split init and
cleanup are not symmetrical. The init before irq installed does not
match the cleanup after irq uninstalled, for various reasons. This is
not so bad for overall probe and driver remove in general, but: Third,
the probe failure paths are a total mess. They are already now, in many
ways, but this doesn't really help, either. So I'm not sure this should
be a blocker, but it's not pretty.

BR,
Jani.


Jani Nikula (13):
  drm/i915: add i915_driver_modeset_remove()
  drm/i915: pass i915 to i915_driver_modeset_probe()
  drm/i915: pass i915 to intel_modeset_driver_remove()
  drm/i915: abstract intel_panel_sanitize_ssc() from
    intel_modeset_init()
  drm/i915: abstract intel_mode_config_init() from intel_modeset_init()
  drm/i915: pass i915 to intel_modeset_init() and
    intel_modeset_init_hw()
  drm/i915: split intel_modeset_driver_remove() to pre/post irq
    uninstall
  drm/i915: split i915_driver_modeset_remove() to pre/post irq uninstall
  drm/i915: move gmbus setup down to intel_modeset_init()
  drm/i915: split i915_driver_modeset_probe() to pre/post irq install
  drm/i915: move gem init up from modeset init
  drm/i915: push intel_overlay_init() down to intel_modeset_init()
  drm/i915: split intel_modeset_init() to pre/post irq install

 drivers/gpu/drm/i915/display/intel_display.c | 249 ++++++++++---------
 drivers/gpu/drm/i915/display/intel_display.h |   8 +-
 drivers/gpu/drm/i915/i915_drv.c              | 139 +++++++----
 3 files changed, 225 insertions(+), 171 deletions(-)

-- 
2.20.1

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

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

end of thread, other threads:[~2019-09-19 17:31 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-09-19 14:03 [PATCH 00/13] drm/i915: modeset probe/remove path refactoring Jani Nikula
2019-09-19 14:03 ` [PATCH 01/13] drm/i915: add i915_driver_modeset_remove() Jani Nikula
2019-09-19 15:29   ` Chris Wilson
2019-09-19 14:03 ` [PATCH 02/13] drm/i915: pass i915 to i915_driver_modeset_probe() Jani Nikula
2019-09-19 15:29   ` Chris Wilson
2019-09-19 14:03 ` [PATCH 03/13] drm/i915: pass i915 to intel_modeset_driver_remove() Jani Nikula
2019-09-19 15:29   ` Chris Wilson
2019-09-19 14:03 ` [PATCH 04/13] drm/i915: abstract intel_panel_sanitize_ssc() from intel_modeset_init() Jani Nikula
2019-09-19 15:31   ` Chris Wilson
2019-09-19 14:03 ` [PATCH 05/13] drm/i915: abstract intel_mode_config_init() " Jani Nikula
2019-09-19 15:32   ` Chris Wilson
2019-09-19 14:03 ` [PATCH 06/13] drm/i915: pass i915 to intel_modeset_init() and intel_modeset_init_hw() Jani Nikula
2019-09-19 15:33   ` Chris Wilson
2019-09-19 14:03 ` [PATCH 07/13] drm/i915: split intel_modeset_driver_remove() to pre/post irq uninstall Jani Nikula
2019-09-19 15:35   ` Chris Wilson
2019-09-19 14:03 ` [PATCH 08/13] drm/i915: split i915_driver_modeset_remove() " Jani Nikula
2019-09-19 14:03 ` [PATCH 09/13] drm/i915: move gmbus setup down to intel_modeset_init() Jani Nikula
2019-09-19 14:03 ` [PATCH 10/13] drm/i915: split i915_driver_modeset_probe() to pre/post irq install Jani Nikula
2019-09-19 14:03 ` [PATCH 11/13] drm/i915: move gem init up from modeset init Jani Nikula
2019-09-19 14:16   ` Chris Wilson
2019-09-19 14:40     ` Jani Nikula
2019-09-19 14:03 ` [PATCH 12/13] drm/i915: push intel_overlay_init() down to intel_modeset_init() Jani Nikula
2019-09-19 14:04 ` [PATCH 13/13] drm/i915: split intel_modeset_init() to pre/post irq install Jani Nikula
2019-09-19 16:57 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915: modeset probe/remove path refactoring Patchwork
2019-09-19 17:31 ` ✗ Fi.CI.BAT: failure " Patchwork

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.