xserver/hw/xfree86/drivers/modesetting
Hans de Goede b8ef71fb07 modesetting: Properly cleanup fb for reverse-prime-offload
drmmode_set_scanout_pixmap_gpu(pix) adds drmmod->fb_id through a call
to drmmode_xf86crtc_resize(), but on a subsequent
drmmode_set_scanout_pixmap_gpu(NULL) it would not remove the fb.

This keeps the crtc marked as busy, which causes the dgpu to not
being able to runtime suspend, after an output attached to the dgpu
has been used once. Which causes burning through an additional 10W
of power and the laptop to run quite hot.

This commit adds the missing remove fb call, allowing the dgpu to runtime
suspend after an external monitor has been plugged into the laptop.

Note this also makes drmmode_set_scanout_pixmap_gpu(NULL) match the
behavior of drmmode_set_scanout_pixmap_cpu(NULL) which was already
removing the fb.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
2016-06-17 11:38:13 +02:00
..
Makefile.am modesetting: Add vblank synchronization support when using Present. 2014-12-25 13:39:19 -08:00
dri2.c modesetting: avoid double free if AddResource fails 2016-03-08 10:19:55 -05:00
driver.c prime: clean up slave bo properly. (v3) 2016-06-08 12:51:51 -04:00
driver.h modesetting: add support for background none. 2016-05-02 18:21:10 -04:00
drmmode_display.c modesetting: Properly cleanup fb for reverse-prime-offload 2016-06-17 11:38:13 +02:00
drmmode_display.h modesetting: port clean start code from amdgpu. (v2) 2016-05-02 18:21:19 -04:00
dumb_bo.c modesetting: Include dix-config.h from dumb_bo.c 2015-05-12 08:02:11 -07:00
dumb_bo.h modesetting: Drop dumb_bo::map_count field and dead unmap code. 2014-12-11 11:26:19 -08:00
modesetting.man modesetting: Add more missing options to man page. 2015-08-13 00:36:12 +01:00
present.c modesetting should not reference gbm when it's not defined 2016-01-05 13:23:56 -05:00
vblank.c modesetting: Use NotifyFd for drm event monitoring 2015-12-01 13:55:25 -05:00