linux/drivers/gpu/drm/nouveau
Ben Skeggs ad63361953 drm/nouveau/kms/nv50: separate out core surface commit
This commit separates the calculation of EVO state from the commit, in
order to make the same code useful for atomic modesetting.

The legacy interfaces have been wrapped on top of them.

As of this commit, we're no longer bothering to point the core surface
at a valid framebuffer.  Prior to this, we'd initially point the core
channel to the framebuffer passed in a mode_set()/mode_set_base(), and
then use the base channel for any page-flip updates, leaving the core
channel pointing at stale information.

The important thing here is to configure the core surface parameters in
such a way that EVO's error checking is satisfied.

TL;DR: The situation isn't too much different to before.

There may be brief periods of times during modesets where the (garbage)
core surface will be showing.  This issue will be resolved once support
for atomic commits has been implemented and we're able to interlock the
updates that involve multiple channels.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2016-11-07 14:04:52 +10:00
..
dispnv04 drm/nouveau: add missing header dependencies 2016-11-07 14:04:35 +10:00
include drm/nouveau/disp/sor/gf119-: add method to program mst payload information 2016-11-07 14:04:42 +10:00
nvif drm/nouveau: silence sparse warnings about symbols not being marked static 2016-11-07 14:04:40 +10:00
nvkm drm/nouveau/disp/g94-: stop listening for dp (sst) retrain irq when disabling link 2016-11-07 14:04:43 +10:00
Kbuild drm/nouveau/drm/nouveau: add a LED driver for the NVIDIA logo 2016-10-12 17:29:29 +10:00
Kconfig drm/nouveau: make fbdev support really optional 2016-07-15 10:28:40 -04:00
nouveau_abi16.c drm/nouveau/core: recognise GP100 chipset 2016-07-14 11:53:25 +10:00
nouveau_abi16.h
nouveau_acpi.c drm/nouveau/acpi: fix check for power resources support 2016-11-01 14:52:03 +10:00
nouveau_acpi.h
nouveau_backlight.c drm/nouveau/kms: add Maxwell to backlight initialization 2016-10-12 17:29:32 +10:00
nouveau_bios.c drm/nouveau/kms: lvds panel strap moved again on maxwell 2016-11-07 14:04:14 +10:00
nouveau_bios.h drm/nouveau/nouveau: bios pointers may be unaligned, use proper accessors 2016-10-12 17:29:02 +10:00
nouveau_bo.c Merge tag 'topic/drm-misc-2016-10-27' of git://anongit.freedesktop.org/git/drm-intel into drm-next 2016-10-28 11:33:52 +10:00
nouveau_bo.h
nouveau_chan.c drm/nouveau/fifo/gp100: initial support 2016-07-14 11:53:25 +10:00
nouveau_chan.h
nouveau_connector.c drm/nouveau/kms/nv50: switch mst sink back into sst mode 2016-11-07 14:04:50 +10:00
nouveau_connector.h drm/nouveau/kms: separate connector property attach from nouveau_connector 2016-11-07 14:04:47 +10:00
nouveau_crtc.h drm/nouveau/kms: subclass atomic connector state 2016-11-07 14:04:46 +10:00
nouveau_debugfs.c drm/nouveau: rename nouveau_drm.h to nouveau_drv.h 2016-05-20 14:43:04 +10:00
nouveau_debugfs.h drm/nouveau: rename nouveau_drm.h to nouveau_drv.h 2016-05-20 14:43:04 +10:00
nouveau_display.c drm/nouveau/kms: prepare to support suspend/resume of display state with atomic 2016-11-07 14:04:49 +10:00
nouveau_display.h drm/nouveau/kms: prepare to support suspend/resume of display state with atomic 2016-11-07 14:04:49 +10:00
nouveau_dma.c drm/nouveau: rename nouveau_drm.h to nouveau_drv.h 2016-05-20 14:43:04 +10:00
nouveau_dma.h
nouveau_dp.c drm/nouveau/kms/nv50: switch mst sink back into sst mode 2016-11-07 14:04:50 +10:00
nouveau_drm.c drm/nouveau/kms: move drm_crtc_force_disable_all() earlier 2016-11-07 14:04:45 +10:00
nouveau_drv.h drm/nouveau/kms/nv50: separate out mode commit 2016-11-07 14:04:51 +10:00
nouveau_encoder.h drm/nouveau/kms/nv50: switch mst sink back into sst mode 2016-11-07 14:04:50 +10:00
nouveau_fbcon.c drm/nouveau/kms: never call drm_helper_disable_unused_functions() with atomic 2016-11-07 14:04:49 +10:00
nouveau_fbcon.h drm/nouveau/fbcon: refcount the drm_framebuffer 2016-11-07 14:04:44 +10:00
nouveau_fence.c drm/nouveau: fix nv84 fence context leak 2016-11-07 14:04:37 +10:00
nouveau_fence.h dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
nouveau_gem.c drm/nouveau: hide gcc-4.9 -Wmaybe-uninitialized 2016-11-07 14:04:36 +10:00
nouveau_gem.h drm/nouveau: rename nouveau_drm.h to nouveau_drv.h 2016-05-20 14:43:04 +10:00
nouveau_hwmon.c drm/nouveau/hwmon: add in_min and in_max 2016-07-14 11:53:25 +10:00
nouveau_hwmon.h
nouveau_ioc32.c
nouveau_ioctl.h
nouveau_led.c drm/nouveau/drm/nouveau: add a LED driver for the NVIDIA logo 2016-10-12 17:29:29 +10:00
nouveau_led.h drm/nouveau/drm/nouveau: add a LED driver for the NVIDIA logo 2016-10-12 17:29:29 +10:00
nouveau_nvif.c drm/nouveau: rename nouveau_drm.h to nouveau_drv.h 2016-05-20 14:43:04 +10:00
nouveau_platform.c drm/nouveau/tegra: acquire and enable reference clock if needed 2016-04-06 16:06:51 +10:00
nouveau_platform.h drm/nouveau: rename nouveau_drm.h to nouveau_drv.h 2016-05-20 14:43:04 +10:00
nouveau_prime.c drm/nouveau: rename nouveau_drm.h to nouveau_drv.h 2016-05-20 14:43:04 +10:00
nouveau_reg.h
nouveau_sgdma.c drm/nouveau: rename nouveau_drm.h to nouveau_drv.h 2016-05-20 14:43:04 +10:00
nouveau_ttm.c drm/drivers: add support for using the arch wc mapping API. 2016-10-26 16:48:01 +10:00
nouveau_ttm.h
nouveau_usif.c drm/fence: add fence to drm_pending_event 2016-06-03 00:01:59 +02:00
nouveau_usif.h
nouveau_vga.c drm/nouveau: rename nouveau_drm.h to nouveau_drv.h 2016-05-20 14:43:04 +10:00
nouveau_vga.h
nv04_fbcon.c drm/nouveau/fbcon: make use of drm_fb_helper.dev 2016-11-07 14:04:43 +10:00
nv04_fence.c dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
nv10_fence.c drm/nouveau: mark symbols static where possible 2016-11-07 14:04:36 +10:00
nv10_fence.h
nv17_fence.c dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
nv50_display.c drm/nouveau/kms/nv50: separate out core surface commit 2016-11-07 14:04:52 +10:00
nv50_display.h
nv50_fbcon.c drm/nouveau/fbcon: make use of drm_fb_helper.fb 2016-11-07 14:04:44 +10:00
nv50_fence.c dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
nv84_fence.c dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
nvc0_fbcon.c drm/nouveau/fbcon: make use of drm_fb_helper.fb 2016-11-07 14:04:44 +10:00
nvc0_fence.c drm/nouveau: rename nouveau_drm.h to nouveau_drv.h 2016-05-20 14:43:04 +10:00