<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/gpu/drm/i915/intel_fbdev.c, branch linux-4.2.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.2.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.2.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2015-05-29T08:18:32Z</updated>
<entry>
<title>drm/i915: Another fbdev hack to avoid PSR on fbcon.</title>
<updated>2015-05-29T08:18:32Z</updated>
<author>
<name>Rodrigo Vivi</name>
</author>
<published>2015-05-28T17:26:58Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d9a946b52350bb070fe70f92c3ddd13355c0ca08'/>
<id>urn:sha1:d9a946b52350bb070fe70f92c3ddd13355c0ca08</id>
<content type='text'>
With unified modeset and flip paths introduced recently when switching
to fbcon PSR was being disabled on fb_set_par path but re-enabled on
fb_pan_display one, causing missed screen updates and un unusable
console.

Regression introduced with:

commit bb54662350662815b4bfc2ff4464330a2dbd7041
Author: Ander Conselvan de Oliveira &lt;ander.conselvan.de.oliveira@intel.com&gt;
Date:   Tue Apr 21 17:13:13 2015 +0300

    drm/i915: Unify modeset and flip paths of intel_crtc_set_config()

Cc: Ander Conselvan de Oliveira &lt;ander.conselvan.de.oliveira@intel.com&gt;
Signed-off-by: Rodrigo Vivi &lt;rodrigo.vivi@intel.com&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
</content>
</entry>
<entry>
<title>drm/i915: Pass in plane state when (un)pinning frame buffers</title>
<updated>2015-03-23T14:00:57Z</updated>
<author>
<name>Tvrtko Ursulin</name>
</author>
<published>2015-03-23T11:10:34Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=82bc3b2daa78d99b5c93ef17e8b660e56447c935'/>
<id>urn:sha1:82bc3b2daa78d99b5c93ef17e8b660e56447c935</id>
<content type='text'>
Plane state carries the rotation information which is needed for determining
the appropriate GGTT view type.

This just adds the parameter with the actual usage coming in future patches.

Signed-off-by: Tvrtko Ursulin &lt;tvrtko.ursulin@intel.com&gt;
Reviewed-by: Joonas Lahtinen &lt;joonas.lahtinen@linux.intel.com&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
</content>
</entry>
<entry>
<title>drm/i915: Make sure we invalidate frontbuffer on fbcon.</title>
<updated>2015-03-17T21:30:14Z</updated>
<author>
<name>Rodrigo Vivi</name>
</author>
<published>2015-03-10T00:57:07Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=03e515f7f8949c0787e0674091d9fbdb8afc4fd3'/>
<id>urn:sha1:03e515f7f8949c0787e0674091d9fbdb8afc4fd3</id>
<content type='text'>
There are some cases like suspend/resume or dpms off/on sequences
that can flush frontbuffer bits. In these cases features that relies
on frontbuffer tracking can start working and user can stop getting
screen updates on fbcon having impression the system is frozen.

So, let's make sure we also invalidate frontbuffer on fbdev blank.

v2: Daniel was right, backtrace didn't show other path than this blank
one so let's make sure frontbuffer bits gets invalidate here instead of
on random write operations that doesn't garantee we track all frontbuffer
writes.

Signed-off-by: Rodrigo Vivi &lt;rodrigo.vivi@intel.com&gt;
[danvet: Exchange code comments for one that complains about the
locking, like in set_par.]
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
</content>
</entry>
<entry>
<title>drm/i915: Switch intel_fb_align_height to fb format modifiers</title>
<updated>2015-02-13T22:28:18Z</updated>
<author>
<name>Daniel Vetter</name>
</author>
<published>2015-02-10T17:16:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=091df6cbf248811150552d51dacb9dc1fe6b0a23'/>
<id>urn:sha1:091df6cbf248811150552d51dacb9dc1fe6b0a23</id>
<content type='text'>
With this we can treat the fb format modifier completely independently
from the fencing mode in obj-&gt;tiling_mode in the initial plane code.
Which means new tiling modes without any gtt fence are now fully
support in the core i915 driver code.

v2: Also add pixel_format while at it, we need this to compute the
height for the new tiling formats.

Reviewed-by: Tvrtko Ursulin &lt;tvrtko.ursulin@intel.com&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
</content>
</entry>
<entry>
<title>drm/i915: Rename plane_config to initial_plane_config</title>
<updated>2015-01-27T08:51:04Z</updated>
<author>
<name>Damien Lespiau</name>
</author>
<published>2015-01-20T12:51:52Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5724dbd1678e2f573b13f0688277941fad66cb88'/>
<id>urn:sha1:5724dbd1678e2f573b13f0688277941fad66cb88</id>
<content type='text'>
This vfunc and related structure are only used for fast boot, so let's
rename them to not take them as general purpose ones.

v2: Fix conflicts caused by the introduction of struct intel_crtc_state

Reviewed-By: Tvrtko Ursulin &lt;tvrtko.ursulin@intel.com&gt; (v1)
Suggested-by: Daniel Vetter &lt;daniel@ffwll.ch&gt;
Signed-off-by: Damien Lespiau &lt;damien.lespiau@intel.com&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
</content>
</entry>
<entry>
<title>drm/i915: Use a common function for computing the fb height alignment</title>
<updated>2015-01-27T08:51:01Z</updated>
<author>
<name>Damien Lespiau</name>
</author>
<published>2015-01-20T12:51:45Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ec2c981e6232ac2039e679d24642b80fbbd2acc6'/>
<id>urn:sha1:ec2c981e6232ac2039e679d24642b80fbbd2acc6</id>
<content type='text'>
If we need to change the fb height constraints, it sounds like a good
idea to have to do it in one place only.

v2: v2: Rebase on top of Ander's "Make intel_crtc-&gt;config a pointer"

Reviewed-By: Tvrtko Ursulin &lt;tvrtko.ursulin@intel.com&gt; (v1)
Signed-off-by: Damien Lespiau &lt;damien.lespiau@intel.com&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
</content>
</entry>
<entry>
<title>drm/i915: Change plane_config to store a tiling_mode</title>
<updated>2015-01-27T08:51:00Z</updated>
<author>
<name>Damien Lespiau</name>
</author>
<published>2015-01-20T12:51:44Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=49af449b457b721ac5c18f537cf7484903f212f8'/>
<id>urn:sha1:49af449b457b721ac5c18f537cf7484903f212f8</id>
<content type='text'>
Rather than having "tiled" meaning "is it X-tiled?" convert the field to
explicitely store the tiling mode. The code doesn't have to change much
as 1 is conveniently I915_TILING_X.

This is to accommodate future changes around tiling modes and scannout
buffers.

v2: Rebase on top of Ander's "Make intel_crtc-&gt;config a pointer"

Reviewed-By: Tvrtko Ursulin &lt;tvrtko.ursulin@intel.com&gt; (v1)
Signed-off-by: Damien Lespiau &lt;damien.lespiau@intel.com&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
</content>
</entry>
<entry>
<title>drm/i915: Make intel_crtc-&gt;config a pointer</title>
<updated>2015-01-27T08:50:50Z</updated>
<author>
<name>Ander Conselvan de Oliveira</name>
</author>
<published>2015-01-15T12:55:25Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6e3c9717e079264d605ffa49183c1364d103166e'/>
<id>urn:sha1:6e3c9717e079264d605ffa49183c1364d103166e</id>
<content type='text'>
To match the semantics of drm_crtc-&gt;state, which this will eventually
become. The allocation of the memory for config will be fixed in a
followup patch. By adding the extra _config field to intel_crtc it was
possible to generate this entire patch with the cocci script below.

@@ @@
struct intel_crtc {
...
-struct intel_crtc_state config;
+struct intel_crtc_state _config;
+struct intel_crtc_state *config;
...
}
@@ struct intel_crtc *crtc; @@
-memset(&amp;crtc-&gt;config, 0, sizeof(crtc-&gt;config));
+memset(crtc-&gt;config, 0, sizeof(*crtc-&gt;config));
@@ @@
__intel_set_mode(...) {
&lt;...
-to_intel_crtc(crtc)-&gt;config = *pipe_config;
+(*(to_intel_crtc(crtc)-&gt;config)) = *pipe_config;
...&gt;
}
@@ @@
intel_crtc_init(...) {
...
WARN_ON(drm_crtc_index(&amp;intel_crtc-&gt;base) != intel_crtc-&gt;pipe);
+intel_crtc-&gt;config = &amp;intel_crtc-&gt;_config;
return;
...
}
@@ struct intel_crtc *crtc; @@
-&amp;crtc-&gt;config
+crtc-&gt;config
@@ struct intel_crtc *crtc; identifier member; @@
-crtc-&gt;config.member
+crtc-&gt;config-&gt;member
@@ expression E; @@
-&amp;(to_intel_crtc(E)-&gt;config)
+to_intel_crtc(E)-&gt;config
@@ expression E; identifier member; @@
-to_intel_crtc(E)-&gt;config.member
+to_intel_crtc(E)-&gt;config-&gt;member

v2: Clarify manual changes by splitting them into another patch. (Matt)
    Improve cocci script to generate even more of the changes. (Ander)

Signed-off-by: Ander Conselvan de Oliveira &lt;ander.conselvan.de.oliveira@intel.com&gt;
Reviewed-by: Matt Roper &lt;matthew.d.roper@intel.com&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
</content>
</entry>
<entry>
<title>drm/i915: Embedded struct drm_crtc_state in intel_crtc_state</title>
<updated>2015-01-27T08:50:48Z</updated>
<author>
<name>Ander Conselvan de Oliveira</name>
</author>
<published>2015-01-15T12:55:22Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=2d112de7db9d2cb0bd43f67120acd6c028bb60e8'/>
<id>urn:sha1:2d112de7db9d2cb0bd43f67120acd6c028bb60e8</id>
<content type='text'>
And get rid of the duplicate mode structures. This patch was generated
with the following semantic patch:

@@ @@
struct intel_crtc_state {
+struct drm_crtc_state base;
+
...
-struct drm_display_mode requested_mode;
-struct drm_display_mode adjusted_mode;
...
}
@@ struct intel_crtc_state *state; @@
-state-&gt;adjusted_mode
+state-&gt;base.adjusted_mode
@@ struct intel_crtc_state *state; @@
-state-&gt;requested_mode
+state-&gt;base.mode
@@ struct intel_crtc_state state; @@
-state.adjusted_mode
+state.base.adjusted_mode
@@ struct intel_crtc_state state; @@
-state.requested_mode
+state.base.mode
@@ struct drm_crtc *crtc; @@
-to_intel_crtc(crtc)-&gt;config.adjusted_mode
+to_intel_crtc(crtc)-&gt;config.base.adjusted_mode
@@ identifier member; expression E; @@
-PIPE_CONF_CHECK_FLAGS(adjusted_mode.member, E);
+PIPE_CONF_CHECK_FLAGS(base.adjusted_mode.member, E);
@@ identifier member; @@
-PIPE_CONF_CHECK_I(adjusted_mode.member);
+PIPE_CONF_CHECK_I(base.adjusted_mode.member);
@@ identifier member; @@
-PIPE_CONF_CHECK_CLOCK_FUZZY(adjusted_mode.member);
+PIPE_CONF_CHECK_CLOCK_FUZZY(base.adjusted_mode.member);

v2: Completely generate the patch with cocci. (Ander)

Signed-off-by: Ander Conselvan de Oliveira &lt;ander.conselvan.de.oliveira@intel.com&gt;
Reviewed-by: Matt Roper &lt;matthew.d.roper@intel.com&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
</content>
</entry>
<entry>
<title>drm/fb: add support for tiled monitor configurations. (v2)</title>
<updated>2014-12-08T23:56:49Z</updated>
<author>
<name>Dave Airlie</name>
</author>
<published>2014-10-20T06:31:53Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b0ee9e7fa5b461a91f24d1d03b10c6bf162c86f9'/>
<id>urn:sha1:b0ee9e7fa5b461a91f24d1d03b10c6bf162c86f9</id>
<content type='text'>
This adds fbdev/con support for tiled monitors, so that we
only set a mode on the correct half of the monitor, or
span the two halves if needed.

v2: remove unneeded ERROR, fix | vs ||

Signed-off-by: Dave Airlie &lt;airlied@redhat.com&gt;
</content>
</entry>
</feed>
