All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Noralf Trønnes" <noralf@tronnes.org>
To: Daniel Vetter <daniel.vetter@ffwll.ch>,
	Intel Graphics Development <intel-gfx@lists.freedesktop.org>
Cc: Daniel Vetter <daniel.vetter@intel.com>,
	DRI Development <dri-devel@lists.freedesktop.org>
Subject: Re: [PATCH 09/16] drm/todo: Add tinydrm refactoring ideas
Date: Sat, 25 Mar 2017 12:36:56 +0100	[thread overview]
Message-ID: <72d13e6b-4d23-7192-be9d-ed5d4e7c43d3@tronnes.org> (raw)
In-Reply-To: <20170322083617.13361-10-daniel.vetter@ffwll.ch>


Den 22.03.2017 09.36, skrev Daniel Vetter:
> Discussed with Noralf on the list a bit.
>
> An open question is tinydrm vs. drm_panel, but until we have a clear
> idea what's really needed in that space, I think it's best to just
> move forward with what we have.
>
> Cc: Noralf Trønnes <noralf@tronnes.org>
> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
> ---

Thanks Daniel,
Acked-by: Noralf Trønnes <noralf@tronnes.org>


>   Documentation/gpu/todo.rst | 70 ++++++++++++++++++++++++++++++++++++++++++++++
>   1 file changed, 70 insertions(+)
>
> diff --git a/Documentation/gpu/todo.rst b/Documentation/gpu/todo.rst
> index 7dc6de07a3bc..479bb040f6d4 100644
> --- a/Documentation/gpu/todo.rst
> +++ b/Documentation/gpu/todo.rst
> @@ -99,6 +99,30 @@ events for atomic commits correctly. But fixing these bugs is good anyway.
>   
>   Contact: Daniel Vetter, respective driver maintainers
>   
> +Better manual-upload support for atomic
> +---------------------------------------
> +
> +This would be especially useful for tinydrm:
> +
> +- Add a struct drm_rect dirty_clip to drm_crtc_state. When duplicating the
> +  crtc state, clear that to the max values, x/y = 0 and w/h = MAX_INT, in
> +  __drm_atomic_helper_crtc_duplicate_state().
> +
> +- Move tinydrm_merge_clips into drm_framebuffer.c, dropping the tinydrm_
> +  prefix ofc and using drm_fb_. drm_framebuffer.c makes sense since this
> +  is a function useful to implement the fb->dirty function.
> +
> +- Create a new drm_fb_dirty function which does essentially what e.g.
> +  mipi_dbi_fb_dirty does. You can use e.g. drm_atomic_helper_update_plane as the
> +  template. But instead of doing a simple full-screen plane update, this new
> +  helper also sets crtc_state->dirty_clip to the right coordinates. And of
> +  course it needs to check whether the fb is actually active (and maybe where),
> +  so there's some book-keeping involved. There's also some good fun involved in
> +  scaling things appropriately. For that case we might simply give up and
> +  declare the entire area covered by the plane as dirty.
> +
> +Contact: Noralf Trønnes, Daniel Vetter
> +
>   Fallout from atomic KMS
>   -----------------------
>   
> @@ -313,5 +337,51 @@ Contact: Daniel Vetter
>   Driver Specific
>   ===============
>   
> +tinydrm
> +-------
> +
> +Tinydrm is the helper driver for really simple fb drivers. The goal is to make
> +those drivers as simple as possible, so lots of room for refactoring:
> +
> +- backlight helpers, probably best to put them into a new drm_backlight.c.
> +  This is because drivers/video is de-facto unmaintained. We could also
> +  move drivers/video/backlight to drivers/gpu/backlight and take it all
> +  over within drm-misc, but that's more work.
> +
> +- spi helpers, probably best put into spi core/helper code. Thierry said
> +  the spi maintainer is fast&reactive, so shouldn't be a big issue.
> +
> +- extract the mipi-dbi helper (well, the non-tinydrm specific parts at
> +  least) into a separate helper, like we have for mipi-dsi already. Or follow
> +  one of the ideas for having a shared dsi/dbi helper, abstracting away the
> +  transport details more.
> +
> +- tinydrm_lastclose could be drm_fb_helper_lastclose. Only thing we need
> +  for that is to store the drm_fb_helper pointer somewhere in
> +  drm_device->mode_config. And then we could roll that out to all the
> +  drivers.
> +
> +- tinydrm_gem_cma_prime_import_sg_table should probably go into the cma
> +  helpers, as a _vmapped variant (since not every driver needs the vmap).
> +  And tinydrm_gem_cma_free_object could the be merged into
> +  drm_gem_cma_free_object().
> +
> +- tinydrm_fb_create we could move into drm_simple_pipe, only need to add
> +  the fb_create hook to drm_simple_pipe_funcs, which would again simplify a
> +  bunch of things (since it gives you a one-stop vfunc for simple drivers).
> +
> +- Quick aside: The unregister devm stuff is kinda getting the lifetimes of
> +  a drm_device wrong. Doesn't matter, since everyone else gets it wrong
> +  too :-)
> +
> +- With the fbdev pointer in dev->mode_config we could also make
> +  suspend/resume helpers entirely generic, at least if we add a
> +  dev->mode_config.suspend_state. We could even provide a generic pm_ops
> +  structure with those.
> +
> +- also rework the drm_framebuffer_funcs->dirty hook wire-up, see above.
> +
> +Contact: Noralf Trønnes, Daniel Vetter
> +
>   Outside DRM
>   ===========

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

  reply	other threads:[~2017-03-25 11:36 UTC|newest]

Thread overview: 57+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-22  8:36 [PATCH 00/16] more drmP.h cleanup Daniel Vetter
2017-03-22  8:36 ` [PATCH 01/16] drm: drop extern from function decls Daniel Vetter
2017-03-22 19:27   ` Gabriel Krisman Bertazi
2017-03-22  8:36 ` [PATCH 02/16] drm: Extract drm_debugfs.h Daniel Vetter
2017-03-22 13:34   ` [Intel-gfx] " Ville Syrjälä
2017-03-22 20:09     ` Daniel Vetter
2017-03-22 20:53   ` [PATCH] " Daniel Vetter
2017-03-22 21:01     ` Ville Syrjälä
2017-03-22  8:36 ` [PATCH 03/16] drm: document driver interface for CRC capturing Daniel Vetter
2017-03-22  9:29   ` [Intel-gfx] " Tomeu Vizoso
2017-03-22  8:36 ` [PATCH 04/16] drm/debugfs: Add kerneldoc Daniel Vetter
2017-03-22 19:39   ` Gabriel Krisman Bertazi
2017-03-22 20:54   ` [PATCH] " Daniel Vetter
2017-03-24  8:19     ` Daniel Vetter
2017-03-22  8:36 ` [PATCH 05/16] drm: update todo.rst Daniel Vetter
2017-03-22 18:31   ` Gabriel Krisman Bertazi
2017-03-22 20:25     ` Daniel Vetter
2017-03-22 20:54   ` [PATCH] " Daniel Vetter
2017-03-22  8:36 ` [PATCH 06/16] drm: Consolidate and document sysfs support Daniel Vetter
2017-03-22  8:36 ` [PATCH 07/16] drm: Extract drm_ioctl.h Daniel Vetter
2017-03-22 13:47   ` Ville Syrjälä
2017-03-22 17:56     ` Daniel Vetter
2017-03-22 18:16       ` [Intel-gfx] " Ville Syrjälä
2017-03-22 20:15     ` Daniel Vetter
2017-03-22 20:22       ` Ville Syrjälä
2017-03-22 20:54   ` [PATCH] " Daniel Vetter
2017-03-22  8:36 ` [PATCH 08/16] drm: document drm_ioctl.[hc] Daniel Vetter
2017-03-24 22:11   ` kbuild test robot
2017-03-25 21:39   ` [PATCH] " Daniel Vetter
2017-03-27 10:53     ` Daniel Vetter
2017-03-22  8:36 ` [PATCH 09/16] drm/todo: Add tinydrm refactoring ideas Daniel Vetter
2017-03-25 11:36   ` Noralf Trønnes [this message]
2017-03-22  8:36 ` [PATCH 10/16] drm/vblank: Remove DRM_VBLANKTIME_IN_VBLANK Daniel Vetter
2017-03-22 13:49   ` Ville Syrjälä
     [not found] ` <20170322083617.13361-1-daniel.vetter-/w4YWyX8dFk@public.gmane.org>
2017-03-22  8:36   ` [PATCH 11/16] drm/vblank: Switch drm_driver->get_vblank_timestamp to return a bool Daniel Vetter
     [not found]     ` <20170322083617.13361-12-daniel.vetter-/w4YWyX8dFk@public.gmane.org>
2017-03-22 10:33       ` [Intel-gfx] " Jani Nikula
2017-03-22 13:23         ` Daniel Vetter
     [not found]           ` <20170322132305.zdtehgbox6erdhbq-dv86pmgwkMBes7Z6vYuT8azUEOm+Xw19@public.gmane.org>
2017-03-22 14:05             ` [Intel-gfx] " Jani Nikula
     [not found]               ` <87d1d98kzc.fsf-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2017-03-22 17:52                 ` Daniel Vetter
2017-03-22 20:55     ` [PATCH] " Daniel Vetter
2017-03-22  8:36   ` [PATCH 15/16] drm/vblank: Simplify the get_scanout_position helper hook Daniel Vetter
2017-03-24 21:28     ` [PATCH] drm/vblank: fix boolreturn.cocci warnings kbuild test robot
2017-03-24 21:28     ` [PATCH 15/16] drm/vblank: Simplify the get_scanout_position helper hook kbuild test robot
2017-03-25 21:37     ` [PATCH] " Daniel Vetter
2017-03-22  8:36 ` [PATCH 12/16] drm/vblank: Switch to bool in_vblank_irq in get_vblank_timestamp Daniel Vetter
2017-03-22 18:23   ` Ville Syrjälä
2017-03-22  8:36 ` [PATCH 13/16] drm/vblank: Add FIXME comments about moving the vblank ts hooks Daniel Vetter
2017-03-22  8:36 ` [PATCH 14/16] drm/vblank: drop the mode argument from drm_calc_vbltimestamp_from_scanoutpos Daniel Vetter
     [not found]   ` <20170322083617.13361-15-daniel.vetter-/w4YWyX8dFk@public.gmane.org>
2017-03-22 20:56     ` [PATCH] " Daniel Vetter
2017-03-30 12:03       ` Ville Syrjälä
     [not found]         ` <20170330120326.GG30290-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2017-03-30 13:27           ` [Intel-gfx] " Daniel Vetter
2017-03-30 13:41             ` Ville Syrjälä
     [not found]               ` <20170330134157.GI30290-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2017-03-30 18:27                 ` Daniel Vetter
     [not found]                   ` <20170330182740.p4joh3spt4ghxco4-dv86pmgwkMBes7Z6vYuT8azUEOm+Xw19@public.gmane.org>
2017-04-04  9:54                     ` Daniel Vetter
2017-03-22  8:36 ` [PATCH 16/16] drm/doc: Small markup fixup Daniel Vetter
2017-03-22  9:02 ` ✗ Fi.CI.BAT: failure for more drmP.h cleanup Patchwork
2017-03-23  8:42 ` ✓ Fi.CI.BAT: success for more drmP.h cleanup (rev7) Patchwork

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=72d13e6b-4d23-7192-be9d-ed5d4e7c43d3@tronnes.org \
    --to=noralf@tronnes.org \
    --cc=daniel.vetter@ffwll.ch \
    --cc=daniel.vetter@intel.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=intel-gfx@lists.freedesktop.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.