diff mbox

[v2] drm/sun4i: Implement drm_driver lastclose to restore fbdev console

Message ID 20170709075951.16690-1-net147@gmail.com (mailing list archive)
State New, archived
Headers show

Commit Message

Jonathan Liu July 9, 2017, 7:59 a.m. UTC
The drm_driver lastclose callback is called when the last userspace
DRM client has closed. Call drm_fbdev_cma_restore_mode to restore
the fbdev console otherwise the fbdev console will stop working.

Signed-off-by: Jonathan Liu <net147@gmail.com>
---
Changes for v2:
 - Rename sun4i_drm_lastclose to sun4i_drv_lastclose

 drivers/gpu/drm/sun4i/sun4i_drv.c | 8 ++++++++
 1 file changed, 8 insertions(+)

Comments

Chen-Yu Tsai July 9, 2017, 3:11 p.m. UTC | #1
On Sun, Jul 9, 2017 at 3:59 PM, Jonathan Liu <net147@gmail.com> wrote:
> The drm_driver lastclose callback is called when the last userspace
> DRM client has closed. Call drm_fbdev_cma_restore_mode to restore
> the fbdev console otherwise the fbdev console will stop working.
>
> Signed-off-by: Jonathan Liu <net147@gmail.com>

This should have

Fixes: 9026e0d122ac ("drm: Add Allwinner A10 Display Engine support")

Otherwise,

Reviewed-by: Chen-Yu Tsai <wens@csie.org>
Maxime Ripard July 10, 2017, 6:44 a.m. UTC | #2
On Sun, Jul 09, 2017 at 11:11:07PM +0800, Chen-Yu Tsai wrote:
> On Sun, Jul 9, 2017 at 3:59 PM, Jonathan Liu <net147@gmail.com> wrote:
> > The drm_driver lastclose callback is called when the last userspace
> > DRM client has closed. Call drm_fbdev_cma_restore_mode to restore
> > the fbdev console otherwise the fbdev console will stop working.
> >
> > Signed-off-by: Jonathan Liu <net147@gmail.com>
> 
> This should have
> 
> Fixes: 9026e0d122ac ("drm: Add Allwinner A10 Display Engine support")
> 
> Otherwise,
> 
> Reviewed-by: Chen-Yu Tsai <wens@csie.org>

And it should be sent to stable too.

Can you resend it?

Thanks!
Maxime
Jonathan Liu July 10, 2017, 6:53 a.m. UTC | #3
Hi Maxime,

On 10 July 2017 at 16:44, Maxime Ripard
<maxime.ripard@free-electrons.com> wrote:
> On Sun, Jul 09, 2017 at 11:11:07PM +0800, Chen-Yu Tsai wrote:
>> On Sun, Jul 9, 2017 at 3:59 PM, Jonathan Liu <net147@gmail.com> wrote:
>> > The drm_driver lastclose callback is called when the last userspace
>> > DRM client has closed. Call drm_fbdev_cma_restore_mode to restore
>> > the fbdev console otherwise the fbdev console will stop working.
>> >
>> > Signed-off-by: Jonathan Liu <net147@gmail.com>
>>
>> This should have
>>
>> Fixes: 9026e0d122ac ("drm: Add Allwinner A10 Display Engine support")
>>
>> Otherwise,
>>
>> Reviewed-by: Chen-Yu Tsai <wens@csie.org>
>
> And it should be sent to stable too.
>
> Can you resend it?

Will do.

>
> Thanks!
> Maxime
>
>
> --
> Maxime Ripard, Free Electrons
> Embedded Linux and Kernel engineering
> http://free-electrons.com

Regards,
Jonathan
Daniel Vetter July 10, 2017, 6:01 p.m. UTC | #4
On Mon, Jul 10, 2017 at 8:44 AM, Maxime Ripard
<maxime.ripard@free-electrons.com> wrote:
> On Sun, Jul 09, 2017 at 11:11:07PM +0800, Chen-Yu Tsai wrote:
>> On Sun, Jul 9, 2017 at 3:59 PM, Jonathan Liu <net147@gmail.com> wrote:
>> > The drm_driver lastclose callback is called when the last userspace
>> > DRM client has closed. Call drm_fbdev_cma_restore_mode to restore
>> > the fbdev console otherwise the fbdev console will stop working.
>> >
>> > Signed-off-by: Jonathan Liu <net147@gmail.com>
>>
>> This should have
>>
>> Fixes: 9026e0d122ac ("drm: Add Allwinner A10 Display Engine support")
>>
>> Otherwise,
>>
>> Reviewed-by: Chen-Yu Tsai <wens@csie.org>
>
> And it should be sent to stable too.
>
> Can you resend it?

Fyi but patchwork auto-adds these tags. Feels a bit like overkill
asking for a resend for something you can trivially add yourself ...
-Daniel
diff mbox

Patch

diff --git a/drivers/gpu/drm/sun4i/sun4i_drv.c b/drivers/gpu/drm/sun4i/sun4i_drv.c
index abc7d8fe06b4..a45a627283a1 100644
--- a/drivers/gpu/drm/sun4i/sun4i_drv.c
+++ b/drivers/gpu/drm/sun4i/sun4i_drv.c
@@ -25,12 +25,20 @@ 
 #include "sun4i_framebuffer.h"
 #include "sun4i_tcon.h"
 
+static void sun4i_drv_lastclose(struct drm_device *dev)
+{
+	struct sun4i_drv *drv = dev->dev_private;
+
+	drm_fbdev_cma_restore_mode(drv->fbdev);
+}
+
 DEFINE_DRM_GEM_CMA_FOPS(sun4i_drv_fops);
 
 static struct drm_driver sun4i_drv_driver = {
 	.driver_features	= DRIVER_GEM | DRIVER_MODESET | DRIVER_PRIME | DRIVER_ATOMIC,
 
 	/* Generic Operations */
+	.lastclose		= sun4i_drv_lastclose,
 	.fops			= &sun4i_drv_fops,
 	.name			= "sun4i-drm",
 	.desc			= "Allwinner sun4i Display Engine",