<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/gpu/drm/rockchip, branch v4.4.235</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v4.4.235</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v4.4.235'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2018-12-21T13:09:51+00:00</updated>
<entry>
<title>Revert "drm/rockchip: Allow driver to be shutdown on reboot/kexec"</title>
<updated>2018-12-21T13:09:51+00:00</updated>
<author>
<name>Brian Norris</name>
<email>briannorris@chromium.org</email>
</author>
<published>2018-12-05T18:16:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=985ee65d554c2c48107b929b26e28fae2b946809'/>
<id>urn:sha1:985ee65d554c2c48107b929b26e28fae2b946809</id>
<content type='text'>
commit 63238173b2faf3d6b85a416f1c69af6c7be2413f upstream.

This reverts commit 7f3ef5dedb146e3d5063b6845781ad1bb59b92b5.

It causes new warnings [1] on shutdown when running the Google Kevin or
Scarlet (RK3399) boards under Chrome OS. Presumably our usage of DRM is
different than what Marc and Heiko test.

We're looking at a different approach (e.g., [2]) to replace this, but
IMO the revert should be taken first, as it already propagated to
-stable.

[1] Report here:
http://lkml.kernel.org/lkml/20181205030127.GA200921@google.com

WARNING: CPU: 4 PID: 2035 at drivers/gpu/drm/drm_mode_config.c:477 drm_mode_config_cleanup+0x1c4/0x294
...
 Call trace:
  drm_mode_config_cleanup+0x1c4/0x294
  rockchip_drm_unbind+0x4c/0x8c
  component_master_del+0x88/0xb8
  rockchip_drm_platform_remove+0x2c/0x44
  rockchip_drm_platform_shutdown+0x20/0x2c
  platform_drv_shutdown+0x2c/0x38
  device_shutdown+0x164/0x1b8
  kernel_restart_prepare+0x40/0x48
  kernel_restart+0x20/0x68
...
 Memory manager not clean during takedown.
 WARNING: CPU: 4 PID: 2035 at drivers/gpu/drm/drm_mm.c:950 drm_mm_takedown+0x34/0x44
...
  drm_mm_takedown+0x34/0x44
  rockchip_drm_unbind+0x64/0x8c
  component_master_del+0x88/0xb8
  rockchip_drm_platform_remove+0x2c/0x44
  rockchip_drm_platform_shutdown+0x20/0x2c
  platform_drv_shutdown+0x2c/0x38
  device_shutdown+0x164/0x1b8
  kernel_restart_prepare+0x40/0x48
  kernel_restart+0x20/0x68
...

[2] https://patchwork.kernel.org/patch/10556151/
    https://www.spinics.net/lists/linux-rockchip/msg21342.html
    [PATCH] drm/rockchip: shutdown drm subsystem on shutdown

Fixes: 7f3ef5dedb14 ("drm/rockchip: Allow driver to be shutdown on reboot/kexec")
Cc: Jeffy Chen &lt;jeffy.chen@rock-chips.com&gt;
Cc: Robin Murphy &lt;robin.murphy@arm.com&gt;
Cc: Vicente Bergas &lt;vicencb@gmail.com&gt;
Cc: Marc Zyngier &lt;marc.zyngier@arm.com&gt;
Cc: Heiko Stuebner &lt;heiko@sntech.de&gt;
Cc: stable@vger.kernel.org
Signed-off-by: Brian Norris &lt;briannorris@chromium.org&gt;
Signed-off-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20181205181657.177703-1-briannorris@chromium.org
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>drm/rockchip: Allow driver to be shutdown on reboot/kexec</title>
<updated>2018-11-21T08:27:44+00:00</updated>
<author>
<name>Marc Zyngier</name>
<email>marc.zyngier@arm.com</email>
</author>
<published>2018-08-05T12:48:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=67dbeda8f4bb1c728683869ee7c35d50f73e76a3'/>
<id>urn:sha1:67dbeda8f4bb1c728683869ee7c35d50f73e76a3</id>
<content type='text'>
commit 7f3ef5dedb146e3d5063b6845781ad1bb59b92b5 upstream.

Leaving the DRM driver enabled on reboot or kexec has the annoying
effect of leaving the display generating transactions whilst the
IOMMU has been shut down.

In turn, the IOMMU driver (which shares its interrupt line with
the VOP) starts warning either on shutdown or when entering the
secondary kernel in the kexec case (nothing is expected on that
front).

A cheap way of ensuring that things are nicely shut down is to
register a shutdown callback in the platform driver.

Signed-off-by: Marc Zyngier &lt;marc.zyngier@arm.com&gt;
Tested-by: Vicente Bergas &lt;vicencb@gmail.com&gt;
Signed-off-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20180805124807.18169-1-marc.zyngier@arm.com
Cc: stable@vger.kernel.org
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>drm/rockchip: Respect page offset for PRIME mmap calls</title>
<updated>2018-05-30T05:49:16+00:00</updated>
<author>
<name>Ørjan Eide</name>
<email>orjan.eide@arm.com</email>
</author>
<published>2018-01-30T20:28:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=f409bdeae30fe52d9fc9859fdf06721b1b06d2e0'/>
<id>urn:sha1:f409bdeae30fe52d9fc9859fdf06721b1b06d2e0</id>
<content type='text'>
[ Upstream commit 57de50af162b67612da99207b061ade3239e57db ]

When mapping external DMA-bufs through the PRIME mmap call, we might be
given an offset which has to be respected. However for the internal DRM
GEM mmap path, we have to ignore the fake mmap offset used to identify
the buffer only. Currently the code always zeroes out vma-&gt;vm_pgoff,
which breaks the former.

This patch fixes the problem by moving the vm_pgoff assignment to a
function that is used only for GEM mmap path, so that the PRIME path
retains the original offset.

Cc: Daniel Kurtz &lt;djkurtz@chromium.org&gt;
Signed-off-by: Ørjan Eide &lt;orjan.eide@arm.com&gt;
Signed-off-by: Tomasz Figa &lt;tfiga@chromium.org&gt;
Signed-off-by: Sean Paul &lt;seanpaul@chromium.org&gt;
Signed-off-by: Thierry Escande &lt;thierry.escande@collabora.com&gt;
Tested-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
Signed-off-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20180130202913.28724-4-thierry.escande@collabora.com
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/rockchip: Use CRTC vblank event interface</title>
<updated>2015-12-02T02:22:21+00:00</updated>
<author>
<name>Daniel Stone</name>
<email>daniels@collabora.com</email>
</author>
<published>2015-11-16T12:50:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=c9fbb7f7b5c56752373e4f425d5157815426e233'/>
<id>urn:sha1:c9fbb7f7b5c56752373e4f425d5157815426e233</id>
<content type='text'>
Passing -1 as the pipe for vblank events now triggers a WARN_ON, but had
previously made multi-screen unusable anyway. Pass the correct pipe to
the event-send function, and use the new API to make this a bit easier
for us.

Fixes WARN present since cc1ef118fc for every pageflip event sent:
[  209.549969] ------------[ cut here ]------------
[  209.554592] WARNING: CPU: 3 PID: 238 at drivers/gpu/drm/drm_irq.c:924 drm_vblank_count_and_time+0x80/0x88 [drm]()
[  209.564832] Modules linked in: [...]
[  209.612401] CPU: 3 PID: 238 Comm: irq/41-ff940000 Tainted: G        W       4.3.0-rc6+ #71
[  209.620647] Hardware name: Rockchip (Device Tree)
[  209.625348] [&lt;c001bb80&gt;] (unwind_backtrace) from [&lt;c001615c&gt;] (show_stack+0x20/0x24)
[  209.633079] [&lt;c001615c&gt;] (show_stack) from [&lt;c02b2c50&gt;] (dump_stack+0x8c/0x9c)
[  209.640289] [&lt;c02b2c50&gt;] (dump_stack) from [&lt;c0052e88&gt;] (warn_slowpath_common+0x94/0xc4)
[  209.648364] [&lt;c0052e88&gt;] (warn_slowpath_common) from [&lt;c0052f74&gt;] (warn_slowpath_null+0x2c/0x34)
[  209.657139] [&lt;c0052f74&gt;] (warn_slowpath_null) from [&lt;bf17dc30&gt;] (drm_vblank_count_and_time+0x80/0x88 [drm])
[  209.666875] [&lt;bf17dc30&gt;] (drm_vblank_count_and_time [drm]) from [&lt;bf17e484&gt;] (drm_send_vblank_event+0x74/0x7c [drm])
[  209.677385] [&lt;bf17e484&gt;] (drm_send_vblank_event [drm]) from [&lt;bf4c1144&gt;] (vop_win_state_complete+0x4c/0x70 [rockchip_drm_vop])
[  209.688757] [&lt;bf4c1144&gt;] (vop_win_state_complete [rockchip_drm_vop]) from [&lt;bf4c3bdc&gt;] (vop_isr_thread+0x170/0x1d4 [rockchip_drm_vop])
[  209.700822] [&lt;bf4c3bdc&gt;] (vop_isr_thread [rockchip_drm_vop]) from [&lt;c00ab93c&gt;] (irq_thread_fn+0x2c/0x50)
[  209.710284] [&lt;c00ab93c&gt;] (irq_thread_fn) from [&lt;c00abcac&gt;] (irq_thread+0x13c/0x188)
[  209.717927] [&lt;c00abcac&gt;] (irq_thread) from [&lt;c00723c8&gt;] (kthread+0xec/0x104)
[  209.724965] [&lt;c00723c8&gt;] (kthread) from [&lt;c0011638&gt;] (ret_from_fork+0x14/0x3c)
[  209.732171] ---[ end trace 0690bc604f5d535d ]---

Signed-off-by: Daniel Stone &lt;daniels@collabora.com&gt;
Cc: Sjoerd Simons &lt;sjoerd.simons@collabora.co.uk&gt;
Cc: Thierry Reding &lt;treding@nvidia.com&gt;
Cc: Heiko Stuebner &lt;heiko@sntech.de&gt;
Tested-By: Sjoerd Simons &lt;sjoerd.simons@collabora.co.uk&gt;
Tested-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
Reviewed-by: Thierry Reding &lt;treding@nvidia.com&gt;
</content>
</entry>
<entry>
<title>drm/rockchip: Fix module autoload for OF platform driver</title>
<updated>2015-12-02T01:13:19+00:00</updated>
<author>
<name>Luis de Bethencourt</name>
<email>luisbg@osg.samsung.com</email>
</author>
<published>2015-11-30T14:56:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=3b134ced9c1fb15fa91034fc7787d651155b64f9'/>
<id>urn:sha1:3b134ced9c1fb15fa91034fc7787d651155b64f9</id>
<content type='text'>
This platform driver has a OF device ID table but the OF module
alias information is not created so module autoloading won't work.

Signed-off-by: Luis de Bethencourt &lt;luisbg@osg.samsung.com&gt;
</content>
</entry>
<entry>
<title>drm/rockchip: vop: fix window origin calculation</title>
<updated>2015-12-02T01:13:18+00:00</updated>
<author>
<name>Dominik Behr</name>
<email>dbehr@chromium.org</email>
</author>
<published>2015-11-10T09:59:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=72906ce0301fc8a2cbfa52632191b0ba719699b5'/>
<id>urn:sha1:72906ce0301fc8a2cbfa52632191b0ba719699b5</id>
<content type='text'>
VOP_WINx_DSP_ST does not require subtracting 1 from the values written to
it. It actually causes the screen to be shifted by one pixel.

Signed-off-by: Mark Yao &lt;mark.yao@rock-chips.com&gt;
Tested-by: Yakir Yang &lt;ykk@rock-chips.com&gt;
Reviewed-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
Tested-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
Signed-off-by: Dominik Behr &lt;dbehr@chromium.org&gt;
Signed-off-by: Mark Yao &lt;mark.yao@rock-chips.com&gt;
</content>
</entry>
<entry>
<title>drm/rockchip: unset pgoff when mmap'ing gems</title>
<updated>2015-12-02T01:13:17+00:00</updated>
<author>
<name>Heiko Stuebner</name>
<email>heiko@sntech.de</email>
</author>
<published>2015-11-09T19:52:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=a8594f20cafadb6ba58f915dea5f2c94a9333b1a'/>
<id>urn:sha1:a8594f20cafadb6ba58f915dea5f2c94a9333b1a</id>
<content type='text'>
Commit 371f0f085f629 ("ARM: 8426/1: dma-mapping: add missing range check
 in dma_mmap()") introduced offset-checking for mappings, which collides
with the fake-offset the drm sets for gems.

Other drm-drivers set this offset to 0 before doing the mapping, so
this looks like the correct way to go for rockchip as well.

Fixes: 371f0f085f629 ("ARM: 8426/1: dma-mapping: add missing range check in dma_mmap()")
Signed-off-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
</content>
</entry>
<entry>
<title>drm/rockchip: vop: Correct enabled clocks during setup</title>
<updated>2015-12-01T10:52:05+00:00</updated>
<author>
<name>Sjoerd Simons</name>
<email>sjoerd.simons@collabora.co.uk</email>
</author>
<published>2015-11-06T12:22:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=d7b53fd9e37a4127077720f4fef10330e284107c'/>
<id>urn:sha1:d7b53fd9e37a4127077720f4fef10330e284107c</id>
<content type='text'>
When doing the initial setup both the hclk and the aclk need to be
enabled otherwise the board will simply hang. This only occurs when
building the vop driver as a module, when its built-in the initial setup
happens to run before the clock framework shuts of unused clocks
(including the aclk).

While there also switch to doing prepare and enable in one step rather
then separate steps to reduce the amount of code required.

Signed-off-by: Sjoerd Simons &lt;sjoerd.simons@collabora.co.uk&gt;
Acked-by: Mark Yao &lt;mark.yao@rock-chips.com&gt;
Tested-by: Yakir Yang &lt;ykk@rock-chips.com&gt;
Tested-by: Romain Perier &lt;romain.perier@gmail.com&gt;
</content>
</entry>
<entry>
<title>Revert "drm/rockchip: Convert the probe function to the generic drm_of_component_probe()"</title>
<updated>2015-11-12T23:59:46+00:00</updated>
<author>
<name>Mark Yao</name>
<email>mark.yao@rock-chips.com</email>
</author>
<published>2015-11-10T08:47:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=5bad7d29a7bcffb2dbc28ea2728eeb3af13784f2'/>
<id>urn:sha1:5bad7d29a7bcffb2dbc28ea2728eeb3af13784f2</id>
<content type='text'>
This reverts commit 52f5eb60940de889ce98a876f6933b574ead3225.

Rockchip drm can't work with generic drm_of_component_probe now

Signed-off-by: Mark Yao &lt;mark.yao@rock-chips.com&gt;
Acked-by: Liviu Dudau &lt;Liviu.Dudau@arm.com&gt;
Signed-off-by: Dave Airlie &lt;airlied@redhat.com&gt;
</content>
</entry>
<entry>
<title>drm/rockchip: Convert the probe function to the generic drm_of_component_probe()</title>
<updated>2015-10-20T10:01:30+00:00</updated>
<author>
<name>Liviu Dudau</name>
<email>Liviu.Dudau@arm.com</email>
</author>
<published>2015-10-20T09:23:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=52f5eb60940de889ce98a876f6933b574ead3225'/>
<id>urn:sha1:52f5eb60940de889ce98a876f6933b574ead3225</id>
<content type='text'>
Use the generic drm_of_component_probe() function to probe for components.

Signed-off-by: Liviu Dudau &lt;Liviu.Dudau@arm.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/1445332995-11212-4-git-send-email-Liviu.Dudau@arm.com
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
</content>
</entry>
</feed>
