]> git.baikalelectronics.ru Git - kernel.git/commit
drm/mcde: Fix stability issue
authorLinus Walleij <linus.walleij@linaro.org>
Sat, 18 Jul 2020 23:33:22 +0000 (01:33 +0200)
committerLinus Walleij <linus.walleij@linaro.org>
Sun, 26 Jul 2020 19:41:59 +0000 (21:41 +0200)
commit27f8f3070954f37b9d69ae4f73d47e5ad9b2999c
tree77810fee70250d5ccf4aae240c350ee692a5126a
parentd6a7167ecdd562cf52bf41ecdfa8aa66c619be3b
drm/mcde: Fix stability issue

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 <linus.walleij@linaro.org>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Stephan Gerhold <stephan@gerhold.net>
Cc: Stephan Gerhold <stephan@gerhold.net>
Cc: stable@vger.kernel.org
Link: https://patchwork.freedesktop.org/patch/msgid/20200718233323.3407670-1-linus.walleij@linaro.org
drivers/gpu/drm/mcde/mcde_display.c