<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/gpu/drm/imx, branch v4.9.113</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v4.9.113</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v4.9.113'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2018-05-30T05:50:37+00:00</updated>
<entry>
<title>drm/imx: move arming of the vblank event to atomic_flush</title>
<updated>2018-05-30T05:50:37+00:00</updated>
<author>
<name>Lucas Stach</name>
<email>l.stach@pengutronix.de</email>
</author>
<published>2018-03-15T09:11:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=b43e24b039364fdab601a020103ae55d4e0f7dea'/>
<id>urn:sha1:b43e24b039364fdab601a020103ae55d4e0f7dea</id>
<content type='text'>
[ Upstream commit 6a055b92de15af987b4027826d43aa103c65a3c4 ]

Right now the vblank event completion is racing with the atomic update,
which is especially bad when the PRE is in use, as one of the hardware
issue workaround might extend the atomic commit for quite some time.

If the vblank IRQ happens to trigger during that time, we will prematurely
signal the atomic commit completion to userspace, which causes tearing
when userspace re-uses a framebuffer we haven't managed to flip away from
yet.

Signed-off-by: Lucas Stach &lt;l.stach@pengutronix.de&gt;
Signed-off-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
Signed-off-by: Sasha Levin &lt;alexander.levin@microsoft.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>drm/imx: imx-tve: Do not set the regulator voltage</title>
<updated>2017-03-15T02:02:50+00:00</updated>
<author>
<name>Fabio Estevam</name>
<email>fabio.estevam@nxp.com</email>
</author>
<published>2017-02-08T12:47:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=98620b564fadc0f997194b3da0393b78b2c17447'/>
<id>urn:sha1:98620b564fadc0f997194b3da0393b78b2c17447</id>
<content type='text'>
commit fc12bccda8b6f5c38139eceec9e369ed78091b2b upstream.

Commit deb65870b5d9d ("drm/imx: imx-tve: check the value returned by
regulator_set_voltage()") exposes the following probe issue:

63ff0000.tve supply dac not found, using dummy regulator
imx-drm display-subsystem: failed to bind 63ff0000.tve (ops imx_tve_ops): -22

When the 'dac-supply' is not passed in the device tree a dummy regulator is
used and setting its voltage is not allowed.

To fix this issue, do not set the dac-supply voltage inside the driver
and let its voltage be specified in the device tree.

Print a warning if the the 'dac-supply' voltage has a value different
from 2.75V.

Fixes: deb65870b5d9d ("drm/imx: imx-tve: check the value returned by regulator_set_voltage()")
Suggested-by: Lucas Stach &lt;l.stach@pengutronix.de&gt;
Signed-off-by: Fabio Estevam &lt;fabio.estevam@nxp.com&gt;
Signed-off-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>drm/imx: disable planes before DC</title>
<updated>2016-11-09T09:35:50+00:00</updated>
<author>
<name>Lucas Stach</name>
<email>l.stach@pengutronix.de</email>
</author>
<published>2016-11-08T16:04:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=5ced937b7d8dae2c6a536112abaad6352769a931'/>
<id>urn:sha1:5ced937b7d8dae2c6a536112abaad6352769a931</id>
<content type='text'>
If the DC clock is disabled before the attached IDMACs are properly
stopped the IDMACs may hang the IPU or even the whole system.

Make sure the IDMACs are in safe state by disabling the planes before
removal of the DC clock.

Also set the atomic parameter to false to stop calling the atomic_begin
hook, which does nothing useful as we immediately afterwards turn off
vblank interrupts and possibly send the pending vblank event.

Fixes: 33f14235302f (drm/imx: atomic phase 1: Use transitional atomic
                     CRTC and plane helpers)
Signed-off-by: Lucas Stach &lt;l.stach@pengutronix.de&gt;
Signed-off-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
</content>
</entry>
<entry>
<title>drm/imx: ipuv3-plane: disable local alpha for planes without alpha channel</title>
<updated>2016-10-20T12:39:51+00:00</updated>
<author>
<name>Philipp Zabel</name>
<email>p.zabel@pengutronix.de</email>
</author>
<published>2016-10-18T15:09:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=86126748cd5063aa888ce252f16b89b35e7d4707'/>
<id>urn:sha1:86126748cd5063aa888ce252f16b89b35e7d4707</id>
<content type='text'>
Without this patch, after enabling the overlay plane with an RGBA
framebuffer, switching to a framebuffer without alpha channel would
cause the plane to vanish, since the pixel local alpha is constant
zero in that case. Disable local alpha again when setting an opaque
framebuffer.

Signed-off-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
</content>
</entry>
<entry>
<title>drm/imx: ipuv3-plane: make sure x/y offsets are even in case of chroma subsampling</title>
<updated>2016-10-20T12:39:38+00:00</updated>
<author>
<name>Philipp Zabel</name>
<email>p.zabel@pengutronix.de</email>
</author>
<published>2016-10-18T10:30:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=5fb57ab328aaf313c5ad9c4c48900f632e7c6f1c'/>
<id>urn:sha1:5fb57ab328aaf313c5ad9c4c48900f632e7c6f1c</id>
<content type='text'>
Odd x/y offsets are not allowed for horizontally/vertically chroma
subsampled planar YUV formats.

Signed-off-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
Acked-by: Liu Ying &lt;gnuiyl@gmail.com&gt;
</content>
</entry>
<entry>
<title>drm/imx: ipuv3-plane: Access old u/vbo properly in -&gt;atomic_check for YU12/YV12</title>
<updated>2016-10-18T09:02:12+00:00</updated>
<author>
<name>Liu Ying</name>
<email>gnuiyl@gmail.com</email>
</author>
<published>2016-10-18T08:44:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=e73aca5184ad9fc948ba22b4d35dce11db35bb25'/>
<id>urn:sha1:e73aca5184ad9fc948ba22b4d35dce11db35bb25</id>
<content type='text'>
Before accessing the u/v offset(aka, u/vbo for IPUv3) of the old plane state's
relevant fb, we should make sure the fb is in YU12 or YV12 pixel format(which
are the two YUV pixel formats we support only), otherwise, we are likely to
trigger BUG_ON() in drm_plane_state_to_u/vbo() since the fb's pixel format is
probably not YU12 or YV12.

Link: https://bugs.freedesktop.org/show_bug.cgi?id=98150
Fixes: c6c1f9bc798b ("drm/imx: Add active plane reconfiguration support")
Cc: stable@vger.kernel.org # 4.8
Signed-off-by: Liu Ying &lt;gnuiyl@gmail.com&gt;
Signed-off-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
</content>
</entry>
<entry>
<title>drm/imx: drm_dev_alloc() returns error pointers</title>
<updated>2016-10-18T09:02:11+00:00</updated>
<author>
<name>Dan Carpenter</name>
<email>dan.carpenter@oracle.com</email>
</author>
<published>2016-10-13T08:53:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=8cca354816adacb91280e19c50f81ffddc0460a4'/>
<id>urn:sha1:8cca354816adacb91280e19c50f81ffddc0460a4</id>
<content type='text'>
We are checking for NULL here, when we should be checking for error
pointers.

Fixes: 54db5decce17 ("drm/imx: drop deprecated load/unload drm_driver ops")
Signed-off-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Reviewed-by: Lucas Stach &lt;l.stach@pengutronix.de&gt;
Signed-off-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
</content>
</entry>
<entry>
<title>drm/imx: ipuv3-plane: Skip setting u/vbo only when we don't need modeset</title>
<updated>2016-10-18T09:02:11+00:00</updated>
<author>
<name>Liu Ying</name>
<email>gnuiyl@gmail.com</email>
</author>
<published>2016-10-10T06:50:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=81d553545a1510ff7c7c00cbc9b57d6172d411a4'/>
<id>urn:sha1:81d553545a1510ff7c7c00cbc9b57d6172d411a4</id>
<content type='text'>
We added active plane reconfiguration support by forcing a full modeset
operation.  So, looking at old_plane_state-&gt;fb to determine whether we need
to set u/v offset(aka, u/vbo for IPUv3) in ipu_plane_atomic_set_base()
or not is no more correct.  Instead, we should do that only when we don't
need modeset.

Fixes: c6c1f9bc798b ("drm/imx: Add active plane reconfiguration support")
Cc: stable@vger.kernel.org # 4.8
Signed-off-by: Liu Ying &lt;gnuiyl@gmail.com&gt;
Signed-off-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
</content>
</entry>
<entry>
<title>drm/imx: ipuv3-plane: Switch EBA buffer only when we don't need modeset</title>
<updated>2016-10-18T09:02:10+00:00</updated>
<author>
<name>Liu Ying</name>
<email>gnuiyl@gmail.com</email>
</author>
<published>2016-10-10T06:50:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=43daa01323da37a3692cabe1579ef5c2c4372e06'/>
<id>urn:sha1:43daa01323da37a3692cabe1579ef5c2c4372e06</id>
<content type='text'>
We added active plane reconfiguration support by forcing a full modeset
operation.  So, looking at old_plane_state-&gt;fb to determine whether we need to
switch EBA buffer(for hardware double buffering) in ipu_plane_atomic_set_base()
or not is no more correct.  Instead, we should do that only when we don't need
modeset, otherwise, we initialize the two EBA buffers with the buffer address.

Fixes: c6c1f9bc798b ("drm/imx: Add active plane reconfiguration support")
Cc: stable@vger.kernel.org # 4.8
Signed-off-by: Liu Ying &lt;gnuiyl@gmail.com&gt;
Signed-off-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
</content>
</entry>
<entry>
<title>drm/imx: hide an unused label</title>
<updated>2016-10-17T06:21:53+00:00</updated>
<author>
<name>Arnd Bergmann</name>
<email>arnd@arndb.de</email>
</author>
<published>2016-09-22T09:50:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=3e3affe549ebd228501d160886c1b3999d99e0c6'/>
<id>urn:sha1:3e3affe549ebd228501d160886c1b3999d99e0c6</id>
<content type='text'>
The imx_drm_bind function causes a warning in linux-next when
CONFIG_DRM_FBDEV_EMULATION is not set:

drivers/gpu/drm/imx/imx-drm-core.c: In function 'imx_drm_bind':
drivers/gpu/drm/imx/imx-drm-core.c:441:1: error: label 'err_unbind' defined but not used [-Werror=unused-label]

I don't understand why the warning only showed up now, as the
code has not been modified recently, but there is an obvious
fix in adding another #if for the symbol.

Signed-off-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Fixes: c1ff5a7aa3c3 ("drm/imx: Remove local fbdev emulation Kconfig option")
Signed-off-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
</content>
</entry>
</feed>
