<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/gpu/drm/mcde, branch v5.8</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v5.8</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v5.8'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2020-07-26T19:41:59Z</updated>
<entry>
<title>drm/mcde: Fix stability issue</title>
<updated>2020-07-26T19:41:59Z</updated>
<author>
<name>Linus Walleij</name>
<email>linus.walleij@linaro.org</email>
</author>
<published>2020-07-18T23:33:22Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=aa7bf898d4bf921f61fab078040e8baec3f28126'/>
<id>urn:sha1:aa7bf898d4bf921f61fab078040e8baec3f28126</id>
<content type='text'>
Whenever a display update was sent, apart from updating
the memory base address, we called mcde_display_send_one_frame()
which also sent a command to the display requesting the TE IRQ
and enabling the FIFO.

When continuous updates are running this is wrong: we need
to only send this to start the flow to the display on
the very first update. This lead to the display pipeline
locking up and crashing.

Check if the flow is already running and in that case
do not call mcde_display_send_one_frame().

This fixes crashes on the Samsung GT-S7710 (Skomer).

Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Acked-by: Sam Ravnborg &lt;sam@ravnborg.org&gt;
Acked-by: Stephan Gerhold &lt;stephan@gerhold.net&gt;
Cc: Stephan Gerhold &lt;stephan@gerhold.net&gt;
Cc: stable@vger.kernel.org
Link: https://patchwork.freedesktop.org/patch/msgid/20200718233323.3407670-1-linus.walleij@linaro.org
</content>
</entry>
<entry>
<title>drm: mcde: Fix forgotten user of drm-&gt;dev_private</title>
<updated>2020-06-16T20:22:38Z</updated>
<author>
<name>Linus Walleij</name>
<email>linus.walleij@linaro.org</email>
</author>
<published>2020-06-13T22:30:27Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=b48fd568ac649f0fd750e89487eaa4a0ef8d2835'/>
<id>urn:sha1:b48fd568ac649f0fd750e89487eaa4a0ef8d2835</id>
<content type='text'>
Unable to handle kernel NULL pointer dereference at virtual address 00000918
pgd = (ptrval)
[00000918] *pgd=00000000
Internal error: Oops: 5 [#1] SMP ARM
Modules linked in:
CPU: 0 PID: 1 Comm: swapper/0 Not tainted 5.7.0-15001-gfa384b50b96b-dirty #514
Hardware name: ST-Ericsson Ux5x0 platform (Device Tree Support)
PC is at mcde_display_enable+0x78/0x7c0
LR is at mcde_display_enable+0x78/0x7c0

Fix this by using to_mcde() as in other functions.

Fixes: fd7ee85cfe7b ("drm/mcde: Don't use drm_device-&gt;dev_private")
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Reviewed-by: Sam Ravnborg &lt;sam@ravnborg.org&gt;
Cc: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20200613223027.4189309-2-linus.walleij@linaro.org
</content>
</entry>
<entry>
<title>drm: mcde: Fix display initialization problem</title>
<updated>2020-06-16T20:22:36Z</updated>
<author>
<name>Linus Walleij</name>
<email>linus.walleij@linaro.org</email>
</author>
<published>2020-06-13T22:30:26Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=b984b6d8b52372b98cce0a6ff6c2787f50665b87'/>
<id>urn:sha1:b984b6d8b52372b98cce0a6ff6c2787f50665b87</id>
<content type='text'>
The following bug appeared in the MCDE driver/display
initialization during the recent merge window.

First the place we call drm_fbdev_generic_setup() in the
wrong place: this needs to be called AFTER calling
drm_dev_register() else we get this splat:

 ------------[ cut here ]------------
WARNING: CPU: 0 PID: 1 at ../drivers/gpu/drm/drm_fb_helper.c:2198 drm_fbdev_generic_setup+0x164/0x1a8
mcde a0350000.mcde: Device has not been registered.
Modules linked in:
Hardware name: ST-Ericsson Ux5x0 platform (Device Tree Support)
[&lt;c010e704&gt;] (unwind_backtrace) from [&lt;c010a86c&gt;] (show_stack+0x10/0x14)
[&lt;c010a86c&gt;] (show_stack) from [&lt;c0414f38&gt;] (dump_stack+0x9c/0xb0)
[&lt;c0414f38&gt;] (dump_stack) from [&lt;c0121c8c&gt;] (__warn+0xb8/0xd0)
[&lt;c0121c8c&gt;] (__warn) from [&lt;c0121d18&gt;] (warn_slowpath_fmt+0x74/0xb8)
[&lt;c0121d18&gt;] (warn_slowpath_fmt) from [&lt;c04b154c&gt;] (drm_fbdev_generic_setup+0x164/0x1a8)
[&lt;c04b154c&gt;] (drm_fbdev_generic_setup) from [&lt;c04ed278&gt;] (mcde_drm_bind+0xc4/0x160)
[&lt;c04ed278&gt;] (mcde_drm_bind) from [&lt;c04f06b8&gt;] (try_to_bring_up_master+0x15c/0x1a4)
(...)

Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Reviewed-by: Sam Ravnborg &lt;sam@ravnborg.org&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20200613223027.4189309-1-linus.walleij@linaro.org
</content>
</entry>
<entry>
<title>drm/mcde: dsi: Fix return value check in mcde_dsi_bind()</title>
<updated>2020-05-12T11:48:24Z</updated>
<author>
<name>Wei Yongjun</name>
<email>weiyongjun1@huawei.com</email>
</author>
<published>2020-04-30T07:31:45Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=761e9f4f80a21a4b845097027030bef863001636'/>
<id>urn:sha1:761e9f4f80a21a4b845097027030bef863001636</id>
<content type='text'>
The of_drm_find_bridge() function returns NULL on error, it doesn't return
error pointers so this check doesn't work.

Fixes: 5fc537bfd000 ("drm/mcde: Add new driver for ST-Ericsson MCDE")
Signed-off-by: Wei Yongjun &lt;weiyongjun1@huawei.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20200430073145.52321-1-weiyongjun1@huawei.com
</content>
</entry>
<entry>
<title>drm/mcde: Don't use drm_device-&gt;dev_private</title>
<updated>2020-04-28T14:03:40Z</updated>
<author>
<name>Daniel Vetter</name>
<email>daniel.vetter@ffwll.ch</email>
</author>
<published>2020-04-15T07:40:04Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=fd7ee85cfe7bad518da9dd17dd6ee44199e20833'/>
<id>urn:sha1:fd7ee85cfe7bad518da9dd17dd6ee44199e20833</id>
<content type='text'>
Upcasting using a container_of macro is more typesafe, faster and
easier for the compiler to optimize.

v2: Move misplaced removal of double-assignment to this patch (Sam)

Reviewed-by: Linus Walleij &lt;linus.walleij@linaro.org&gt; (v1)
Acked-by: Sam Ravnborg &lt;sam@ravnborg.org&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
Cc: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20200415074034.175360-30-daniel.vetter@ffwll.ch
</content>
</entry>
<entry>
<title>drm/mcde: Use devm_drm_dev_alloc</title>
<updated>2020-04-28T14:03:16Z</updated>
<author>
<name>Daniel Vetter</name>
<email>daniel.vetter@ffwll.ch</email>
</author>
<published>2020-04-15T07:40:03Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=6ff71edfcb0be37c803da51e1b893809ead22203'/>
<id>urn:sha1:6ff71edfcb0be37c803da51e1b893809ead22203</id>
<content type='text'>
Already using devm_drm_dev_init, so very simple replacment.

v2: Move misplaced double-assignement to next patch (Sam)

Acked-by: Sam Ravnborg &lt;sam@ravnborg.org&gt;
Reviewed-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
Cc: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20200415074034.175360-29-daniel.vetter@ffwll.ch
</content>
</entry>
<entry>
<title>drm/mcde: More devm_drm_dev_init</title>
<updated>2020-03-26T15:05:12Z</updated>
<author>
<name>Daniel Vetter</name>
<email>daniel.vetter@ffwll.ch</email>
</author>
<published>2020-03-23T14:49:32Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=90c2e13bc30e22db8f118907f2d58546a0979dcf'/>
<id>urn:sha1:90c2e13bc30e22db8f118907f2d58546a0979dcf</id>
<content type='text'>
Auto-unwind ftw, now possible with the fixed drm_device related
management.

Aside, clk/regulator seem to be missing devm versions for a bunch of
functions, preventing a pile of these simpler drivers from outright
losing their -&gt;remove hook.

Reviewed-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
Cc: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20200323144950.3018436-34-daniel.vetter@ffwll.ch
</content>
</entry>
<entry>
<title>drm/mcde: Drop explicit drm_mode_config_cleanup call</title>
<updated>2020-03-26T15:05:05Z</updated>
<author>
<name>Daniel Vetter</name>
<email>daniel.vetter@ffwll.ch</email>
</author>
<published>2020-03-23T14:49:31Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=4b055ab1378a9b802760a2f4d5cfcc91e0b89fa7'/>
<id>urn:sha1:4b055ab1378a9b802760a2f4d5cfcc91e0b89fa7</id>
<content type='text'>
Allows us to drop the drm_driver.release callback.

This is made possible by a preceeding patch which added a drmm_
cleanup action to drm_mode_config_init(), hence all we need to do to
ensure that drm_mode_config_cleanup() is run on final drm_device
cleanup is check the new error code for _init().

v2: Explain why this cleanup is possible (Laurent).

v3: Use drmm_mode_config_init() for more clarity (Sam, Thomas)

Acked-by: Sam Ravnborg &lt;sam@ravnborg.org&gt;
Cc: Sam Ravnborg &lt;sam@ravnborg.org&gt;
Cc: Thomas Zimmermann &lt;tzimmermann@suse.de&gt;
Reviewed-by: Linus Walleij &lt;linus.walleij@linaro.org&gt; (v2)
Cc: Laurent Pinchart &lt;laurent.pinchart@ideasonboard.com&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
Cc: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20200323144950.3018436-33-daniel.vetter@ffwll.ch
</content>
</entry>
<entry>
<title>drm: Garbage collect drm_dev_fini</title>
<updated>2020-03-26T14:45:36Z</updated>
<author>
<name>Daniel Vetter</name>
<email>daniel.vetter@ffwll.ch</email>
</author>
<published>2020-03-23T14:49:24Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=d33b58d0115e7eee011fddee2d8e25c6a09fb279'/>
<id>urn:sha1:d33b58d0115e7eee011fddee2d8e25c6a09fb279</id>
<content type='text'>
It has become empty. Given the few users I figured not much point
splitting this up.

v2: Rebase over i915 changes.

v3: Rebase over patch split fix.

Acked-by: Sam Ravnborg &lt;sam@ravnborg.org&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20200323144950.3018436-26-daniel.vetter@ffwll.ch
</content>
</entry>
<entry>
<title>drm/mcde: Use drmm_add_final_kfree</title>
<updated>2020-03-26T14:26:29Z</updated>
<author>
<name>Daniel Vetter</name>
<email>daniel.vetter@ffwll.ch</email>
</author>
<published>2020-03-23T14:49:11Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=e2edcaaa3da88018bf6afd4dd09b8b5b4f8e8443'/>
<id>urn:sha1:e2edcaaa3da88018bf6afd4dd09b8b5b4f8e8443</id>
<content type='text'>
With this we can drop the final kfree from the release function.

v2: Fix unused variable warning, spotted while applying.

Reviewed-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
Cc: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20200323144950.3018436-13-daniel.vetter@ffwll.ch
</content>
</entry>
</feed>
