From: Marcus Lorentzon <marcus.xm.lorentzon@stericsson.com>
To: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
Cc: "hoegsberg@gmail.com" <hoegsberg@gmail.com>,
"dri-devel@lists.freedesktop.org"
<dri-devel@lists.freedesktop.org>
Subject: Re: [RFC PATCH] drm: Add plane event
Date: Wed, 18 Apr 2012 18:26:04 +0200 [thread overview]
Message-ID: <4F8EEB1C.8020305@stericsson.com> (raw)
In-Reply-To: <20120418160610.GS4917@intel.com>
On 04/18/2012 06:06 PM, Ville Syrjälä wrote:
>> > If you smash everything into one ioctl, I imagine you have plenty of fun
>> > implementing all this. Which is why I prefer to split this up.
> I don't think there's that much differnce. You build up the full device
> state, check it, and when you're ready to commit it you decide whether
> to go with the blocking approach or not.
Yes, this is exactly what I do in our driver today. It doesn't cost much
CPU to do it. Just copying a few values to a device state struct and
verifying it is ok on commit. Then just wait for vsync and apply. All
"heavy" calculations are done before vsync. If modeset come late (just
before vsync) it could just as easily have come just after, so it makes
no difference. Plane/fb/crtc modeset should be expected to come before
vsync since most rendering is async today. So user is probably spending
most time waiting for vsync of previous modeset/flip and will issue the
next as soon as the previous is complete. And the app rendering
complexity probably outweighs the state tracking CPU load by far.
And I do like the idea of one single modeset ioctl that is async and
atomic. I think this could make things simpler, not more complex. Having
to support multiple paths depending on what ioctl is used by an app
doesn't seem much easier (already 3 helper callbacks - base, full,
flip). But I don't have the solid experience with drm frmwrk to make
that decision.
/Marcus
next prev parent reply other threads:[~2012-04-18 16:26 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-04-18 4:31 [RFC PATCH] drm: Add plane event Joonyoung Shim
2012-04-18 8:46 ` Daniel Vetter
2012-04-18 10:11 ` Joonyoung Shim
2012-04-18 12:25 ` Rob Clark
2012-04-18 14:04 ` Marcus Lorentzon
2012-04-18 14:26 ` Ville Syrjälä
2012-04-18 14:36 ` Daniel Vetter
2012-04-18 15:10 ` Marcus Lorentzon
2012-04-18 15:27 ` Daniel Vetter
2012-04-18 15:55 ` Marcus Lorentzon
2012-04-18 16:04 ` Jesse Barnes
2012-04-18 19:08 ` Daniel Vetter
2012-04-18 16:06 ` Ville Syrjälä
2012-04-18 16:26 ` Marcus Lorentzon [this message]
2012-04-18 18:19 ` Ville Syrjälä
2012-04-19 8:10 ` Daniel Vetter
2012-04-18 15:43 ` Luc Verhaegen
2012-04-18 16:00 ` Marcus Lorentzon
2012-04-19 1:24 ` Kristian Høgsberg
2012-04-19 8:05 ` Daniel Vetter
2012-04-18 14:58 ` Marcus Lorentzon
2012-04-18 15:57 ` Jesse Barnes
2012-04-18 16:47 ` Luc Verhaegen
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=4F8EEB1C.8020305@stericsson.com \
--to=marcus.xm.lorentzon@stericsson.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=hoegsberg@gmail.com \
--cc=ville.syrjala@linux.intel.com \
/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.