<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/include/drm/drm_atomic.h, branch v4.8.16</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v4.8.16</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v4.8.16'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2016-06-10T14:57:54+00:00</updated>
<entry>
<title>drm/atomic: Add struct drm_crtc_commit to track async updates</title>
<updated>2016-06-10T14:57:54+00:00</updated>
<author>
<name>Daniel Vetter</name>
<email>daniel.vetter@ffwll.ch</email>
</author>
<published>2016-06-08T12:19:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=3b24f7d6758165919ba7b83b3c8365c38ffacc0b'/>
<id>urn:sha1:3b24f7d6758165919ba7b83b3c8365c38ffacc0b</id>
<content type='text'>
Split out from my big nonblocking atomic commit helper code as prep
work. While add it, also add some neat asciiart to document how it's
supposed to be used.

v2: Resurrect misplaced hunk in the kerneldoc.

v3: Wording improvements from Liviu.

Tested-by: Tomeu Vizoso &lt;tomeu.vizoso@collabora.com&gt;
Cc: Maarten Lankhorst &lt;maarten.lankhorst@linux.intel.com&gt;
Cc: Tomeu Vizoso &lt;tomeu.vizoso@gmail.com&gt;
Cc: Daniel Stone &lt;daniels@collabora.com&gt;
Tested-by: Liviu Dudau &lt;Liviu.Dudau@arm.com&gt;
Reviewed-by: Maarten Lankhorst &lt;maarten.lankhorst@linux.intel.com&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/1465388359-8070-8-git-send-email-daniel.vetter@ffwll.ch
</content>
</entry>
<entry>
<title>drm/atomic: kerneldoc for drm_atomic_crtc_needs_modeset</title>
<updated>2016-06-09T08:28:41+00:00</updated>
<author>
<name>Daniel Vetter</name>
<email>daniel.vetter@ffwll.ch</email>
</author>
<published>2016-06-08T12:18:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=081e9c0f8b5f88758376f50310d60d0dc4ace9e0'/>
<id>urn:sha1:081e9c0f8b5f88758376f50310d60d0dc4ace9e0</id>
<content type='text'>
Just a bit of drive-by ocd.

v2: Improve per Liviu's feedback.

Cc: Liviu Dudau &lt;Liviu.Dudau@arm.com&gt;
Acked-by: Liviu Dudau &lt;Liviu.Dudau@arm.com&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/1465388359-8070-7-git-send-email-daniel.vetter@ffwll.ch
</content>
</entry>
<entry>
<title>drm/atomic-docs: Spelling fixups</title>
<updated>2016-06-02T15:41:10+00:00</updated>
<author>
<name>Daniel Vetter</name>
<email>daniel.vetter@ffwll.ch</email>
</author>
<published>2016-06-02T15:39:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=60c9e19003763cf2f234f30411c7bafa82dd1c65'/>
<id>urn:sha1:60c9e19003763cf2f234f30411c7bafa82dd1c65</id>
<content type='text'>
Eric nicely pointed these out, but I failed at git add and lost them.
This fixes up

commit 2f196b7c4b82eeff3574eb2999e78add33ef4361
Author: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
Date:   Thu Jun 2 16:21:44 2016 +0200

    drm/atomic: Add drm_atomic_crtc_state_for_each_plane_state

to actually do what it says on the tin^Wcommit message.

Signed-off-by: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
</content>
</entry>
<entry>
<title>drm: Consolidate crtc arrays in drm_atomic_state</title>
<updated>2016-06-02T15:20:32+00:00</updated>
<author>
<name>Daniel Vetter</name>
<email>daniel.vetter@ffwll.ch</email>
</author>
<published>2016-06-01T22:06:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=5d943aa6c0d424f4d4a1c96fb2fa2a81e55e1e85'/>
<id>urn:sha1:5d943aa6c0d424f4d4a1c96fb2fa2a81e55e1e85</id>
<content type='text'>
It's silly to have 2 mallocs when we could tie these two together.

Also, Gustavo adds another one in his per-crtc out-fence patches. And
I want to add more stuff here for nonblocking commit helpers.

In the future we can use this to store a pointer to the preceeding
state, making an atomic update entirely free-standing. This will be
needed to be able to queue them up with a depth &gt; 1.

Cc: Gustavo Padovan &lt;gustavo@padovan.org&gt;
Reviewed-by: Maarten Lankhorst &lt;maarten.lankhorst@linux.intel.com&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/1464818821-5736-12-git-send-email-daniel.vetter@ffwll.ch
</content>
</entry>
<entry>
<title>drm: Consolidate plane arrays in drm_atomic_state</title>
<updated>2016-06-02T15:20:25+00:00</updated>
<author>
<name>Daniel Vetter</name>
<email>daniel.vetter@ffwll.ch</email>
</author>
<published>2016-06-01T22:06:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=b8b5342b699b9b3d1b3455861a68b96424146959'/>
<id>urn:sha1:b8b5342b699b9b3d1b3455861a68b96424146959</id>
<content type='text'>
It's kinda pointless to have 2 separate mallocs for these. And when we
add more per-plane state in the future it's even more pointless.

Right now there's no such thing planned, but both Gustavo's per-crtc
fence patches, and some nonblocking commit helpers I'm playing around
with will add more per-crtc stuff. It makes sense to also consolidate
planes, just for consistency.

In the future we can use this to store a pointer to the preceeding
state, making an atomic update entirely free-standing. This will be
needed to be able to queue them up with a depth &gt; 1.

Cc: Gustavo Padovan &lt;gustavo@padovan.org&gt;
Reviewed-by: Maarten Lankhorst &lt;maarten.lankhorst@linux.intel.com&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/1464818821-5736-11-git-send-email-daniel.vetter@ffwll.ch
</content>
</entry>
<entry>
<title>drm: Consolidate connector arrays in drm_atomic_state</title>
<updated>2016-06-02T15:20:03+00:00</updated>
<author>
<name>Daniel Vetter</name>
<email>daniel.vetter@ffwll.ch</email>
</author>
<published>2016-06-01T22:06:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=63e83c1dba5490de84c2d558a2425730db7fb134'/>
<id>urn:sha1:63e83c1dba5490de84c2d558a2425730db7fb134</id>
<content type='text'>
It's kinda pointless to have 2 separate mallocs for these. And when we
add more per-connector state in the future it's even more pointless.

Right now there's no such thing planned, but both Gustavo's per-crtc
fence patches, and some nonblocking commit helpers I'm playing around
with will add more per-crtc stuff. It makes sense to also consolidate
connectors, just for consistency.

In the future we can use this to store a pointer to the preceeding
state, making an atomic update entirely free-standing. This will be
needed to be able to queue them up with a depth &gt; 1.

Cc: Gustavo Padovan &lt;gustavo@padovan.org&gt;
Reviewed-by: Maarten Lankhorst &lt;maarten.lankhorst@linux.intel.com&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/1464818821-5736-10-git-send-email-daniel.vetter@ffwll.ch
</content>
</entry>
<entry>
<title>drm/atomic: Add drm_atomic_crtc_state_for_each_plane_state</title>
<updated>2016-06-02T14:59:05+00:00</updated>
<author>
<name>Daniel Vetter</name>
<email>daniel.vetter@ffwll.ch</email>
</author>
<published>2016-06-02T14:21:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=2f196b7c4b82eeff3574eb2999e78add33ef4361'/>
<id>urn:sha1:2f196b7c4b82eeff3574eb2999e78add33ef4361</id>
<content type='text'>
... and use it in msm&amp;vc4. Again just want to encapsulate
drm_atomic_state internals a bit.

The const threading is a bit awkward in vc4 since C sucks, but I still
think it's worth to enforce this. Eventually I want to make all the
obj-&gt;state pointers const too, but that's a lot more work ...

v2: Provide safe macro to wrap up the unsafe helper better, suggested
by Maarten.

v3: Fixup subject (Maarten) and spelling fixes (Eric Engestrom).

Cc: Eric Anholt &lt;eric@anholt.net&gt;
Cc: Rob Clark &lt;robdclark@gmail.com&gt;
Cc: Maarten Lankhorst &lt;maarten.lankhorst@linux.intel.com&gt;
Cc: Eric Engestrom &lt;eric.engestrom@imgtec.com&gt;
Reviewed-by: Maarten Lankhorst &lt;maarten.lankhorst@linux.intel.com&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/1464877304-4213-1-git-send-email-daniel.vetter@ffwll.ch
</content>
</entry>
<entry>
<title>drm/atomic: Rename drm_atomic_async_commit to nonblocking.</title>
<updated>2016-05-02T14:36:03+00:00</updated>
<author>
<name>Maarten Lankhorst</name>
<email>maarten.lankhorst@linux.intel.com</email>
</author>
<published>2016-04-26T14:11:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=b837ba0ad95bb5c08626a49321f07f271bdaf512'/>
<id>urn:sha1:b837ba0ad95bb5c08626a49321f07f271bdaf512</id>
<content type='text'>
Another step in renaming async to nonblocking for atomic commit.

Signed-off-by: Maarten Lankhorst &lt;maarten.lankhorst@linux.intel.com&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/1461679905-30177-3-git-send-email-maarten.lankhorst@linux.intel.com
</content>
</entry>
<entry>
<title>drm/atomic: Remove drm_atomic_connectors_for_crtc.</title>
<updated>2016-01-06T15:37:39+00:00</updated>
<author>
<name>Maarten Lankhorst</name>
<email>maarten.lankhorst@linux.intel.com</email>
</author>
<published>2016-01-04T11:53:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=14de6c44d149c68df1800ded42bbab51485ef67a'/>
<id>urn:sha1:14de6c44d149c68df1800ded42bbab51485ef67a</id>
<content type='text'>
Now that connector_mask is reliable there's no need for this
function any more.

Signed-off-by: Maarten Lankhorst &lt;maarten.lankhorst@linux.intel.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/1451908400-25147-6-git-send-email-maarten.lankhorst@linux.intel.com
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
</content>
</entry>
<entry>
<title>drm: fix potential dangling else problems in for_each_ macros</title>
<updated>2015-11-25T08:29:21+00:00</updated>
<author>
<name>Jani Nikula</name>
<email>jani.nikula@intel.com</email>
</author>
<published>2015-11-24T19:21:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=373701b1fc7d7c0013ae4fffd8103615c150751e'/>
<id>urn:sha1:373701b1fc7d7c0013ae4fffd8103615c150751e</id>
<content type='text'>
We have serious dangling else bugs waiting to happen in our for_each_
style macros with ifs. Consider, for example,

 #define drm_for_each_plane_mask(plane, dev, plane_mask) \
         list_for_each_entry((plane), &amp;(dev)-&gt;mode_config.plane_list, head) \
                 if ((plane_mask) &amp; (1 &lt;&lt; drm_plane_index(plane)))

If this is used in context:

	if (condition)
		drm_for_each_plane_mask(plane, dev, plane_mask);
	else
		foo();

foo() will be called for each plane *not* in plane_mask, if condition
holds, and not at all if condition doesn't hold.

Fix this by reversing the conditions in the macros, and adding an else
branch for the "for each" block, so that other if/else blocks can't
interfere. Provide a "for_each_if" helper macro to make it easier to get
this right.

Signed-off-by: Jani Nikula &lt;jani.nikula@intel.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/1448392916-2281-1-git-send-email-jani.nikula@intel.com
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
</content>
</entry>
</feed>
