Ilia Mirkin
c20bb155c2
drm/nouveau: prefer XBGR2101010 for addfb ioctl
...
Nouveau only exposes support for XBGR2101010. Prior to the atomic
conversion, drm would pass in the wrong format in the framebuffer, but
it was always ignored -- both userspace (xf86-video-nouveau) and the
kernel driver agreed on the layout, so the fact that the format was
wrong didn't matter.
With the atomic conversion, nouveau all of a sudden started caring about
the exact format, and so the previously-working code in
xf86-video-nouveau no longer functioned since the (internally-assigned)
format from the addfb ioctl was wrong.
This change adds infrastructure to allow a drm driver to specify that it
prefers the XBGR format variant for the addfb ioctl, and makes nouveau's
nv50 display driver set it. (Prior gens had no support for 30bpp at all.)
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Cc: stable@vger.kernel.org # v4.10+
Acked-by: Ben Skeggs <bskeggs@redhat.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: https://patchwork.freedesktop.org/patch/msgid/20180203191123.31507-1-imirkin@alum.mit.edu
2018-02-23 13:51:42 +01:00
..
bridge
drm/bridge/sii8620: add remote control support
2017-10-11 13:14:25 +02:00
i2c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
tinydrm
drm/tinydrm: Use drm_fb_cma_fbdev_init_with_funcs/fini()
2017-12-10 15:37:07 +01:00
ttm
drm/ttm: remove ttm_bo_default_io_mem_pfn
2018-01-10 15:44:51 -05:00
amd_asic_type.h
drm/amdgpu Moving amdgpu asic types to a separate file
2017-10-18 10:56:27 -04:00
ati_pcigart.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
drm_agpsupport.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
drm_atomic.h
Fixes for 4.16. I contains fixes for deadlock on runtime suspend on few
2018-02-22 08:39:26 +10:00
drm_atomic_helper.h
drm: Move drm_plane_helper_check_state() into drm_atomic_helper.c
2017-11-20 21:14:22 +02:00
drm_auth.h
drm: Add drm_object lease infrastructure [v5]
2017-10-25 16:31:29 +10:00
drm_blend.h
drm_bridge.h
drm/bridge: change return type of drm_bridge_add function
2017-08-21 08:51:53 +05:30
drm_cache.h
drm_color_mgmt.h
drm_connector.h
Linux 4.15-rc4
2017-12-19 21:37:24 +10:00
drm_crtc.h
drm/mode_object: fix documentation for object lookups.
2017-11-10 13:50:47 +10:00
drm_crtc_helper.h
drm: Allow determining if current task is output poll worker
2018-02-16 22:30:06 +01:00
drm_debugfs.h
drm_debugfs_crc.h
drm_device.h
drm: Add drm_device->fb_helper pointer
2017-10-31 19:06:05 +01:00
drm_displayid.h
drm_dp_dual_mode_helper.h
drm_dp_helper.h
Merge tag 'drm-misc-next-2017-11-30' of git://anongit.freedesktop.org/drm/drm-misc into drm-next
2017-12-04 05:42:49 +10:00
drm_dp_mst_helper.h
drm/dp/mst: Sideband message transaction to power up/down nodes
2017-09-11 16:03:57 +03:00
drm_drv.h
drm/nouveau: prefer XBGR2101010 for addfb ioctl
2018-02-23 13:51:42 +01:00
drm_edid.h
drm: Update edid-derived drm_display_info fields at edid property set [v2]
2017-12-13 14:51:37 +01:00
drm_encoder.h
Merge airlied/drm-next into drm-misc-next
2017-11-21 14:17:56 +01:00
drm_encoder_slave.h
drm_fb_cma_helper.h
drm/cma-helper: Add drm_fb_cma_fbdev_init/fini()
2017-12-08 14:27:47 +01:00
drm_fb_helper.h
drm/fb-helper: Add drm_fb_helper_defio_init()
2017-12-20 14:52:22 +01:00
drm_file.h
the rest of drivers/*: annotate ->poll() instances
2017-11-28 11:06:58 -05:00
drm_fixed.h
drm_flip_work.h
drm_fourcc.h
drm_framebuffer.h
drm/framebuffer: Print task that allocated the fb in debug info.
2017-12-20 15:30:17 +01:00
drm_gem.h
drm/gem: Add drm_gem_dumb_map_offset()
2017-07-29 13:49:55 +02:00
drm_gem_cma_helper.h
Merge tag 'drm-misc-next-2017-11-30' of git://anongit.freedesktop.org/drm/drm-misc into drm-next
2017-12-04 05:42:49 +10:00
drm_gem_framebuffer_helper.h
drm/gem-fb-helper: Use debug message on gem lookup failure
2017-09-16 14:06:53 +02:00
drm_global.h
drm_hashtab.h
drm_ioctl.h
drm_irq.h
drm_lease.h
drm: Add four ioctls for managing drm mode object leases [v7]
2017-10-25 16:31:30 +10:00
drm_legacy.h
drm_mipi_dsi.h
drm_mm.h
drm/drm_mm.h: Fix the name of the referenced function in comment
2017-11-02 11:10:47 -02:00
drm_mode_config.h
drm-misc-next for 4.16:
2017-12-22 10:00:38 +10:00
drm_mode_object.h
drm: Add four ioctls for managing drm mode object leases [v7]
2017-10-25 16:31:30 +10:00
drm_modes.h
drm: add helper functions for YCBCR420 handling
2017-07-14 21:23:54 +03:00
drm_modeset_helper.h
drm/modeset-helper: Add simple modeset suspend/resume helpers
2017-11-30 18:18:08 +01:00
drm_modeset_helper_vtables.h
drm/edid: make drm_edid_to_eld() static
2017-11-07 17:43:35 +02:00
drm_modeset_lock.h
drm/atomic: Prepare drm_modeset_lock infrastructure for interruptible waiting, v2.
2017-09-13 09:50:52 +02:00
drm_of.h
main drm pull request for v4.15
2017-11-15 20:42:10 -08:00
drm_os_linux.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
drm_panel.h
drm_pci.h
drm/pci: Deprecate drm_pci_init/exit completely
2017-06-20 10:41:03 +02:00
drm_pciids.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
drm_plane.h
Merge airlied/drm-next into drm-misc-next
2017-11-21 14:17:56 +01:00
drm_plane_helper.h
drm: Move drm_plane_helper_check_state() into drm_atomic_helper.c
2017-11-20 21:14:22 +02:00
drm_prime.h
drm_print.h
drm/print: Unconfuse kerneldoc
2017-12-15 11:13:39 +01:00
drm_property.h
drm/mode_object: fix documentation for object lookups.
2017-11-10 13:50:47 +10:00
drm_rect.h
drm_scdc_helper.h
drm: Fix warning when building docs for scdc_helper
2017-07-31 14:24:14 +02:00
drm_simple_kms_helper.h
drm: Plumb modifiers through plane init
2017-08-01 17:50:06 +01:00
drm_syncobj.h
drm/syncobj: some kerneldoc polish
2017-12-15 11:26:52 +01:00
drm_sysfs.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
drm_utils.h
drm: Add panel orientation quirks, v6.
2017-12-04 23:03:21 +01:00
drm_vblank.h
drm: Add CRTC_GET_SEQUENCE and CRTC_QUEUE_SEQUENCE ioctls [v3]
2017-10-23 11:15:03 +10:00
drm_vma_manager.h
drm/vma-manager: drm_vma_node_start() constify argument
2017-11-11 11:19:37 +01:00
drmP.h
drm: Add new LEASE debug level
2017-10-25 16:31:29 +10:00
gma_drm.h
gpu_scheduler.h
drm/sched: move fence slab handling to module init/exit
2017-12-07 11:52:14 -05:00
gpu_scheduler_trace.h
drm: move amd_gpu_scheduler into common location
2017-12-07 11:51:56 -05:00
i915_component.h
i915_drm.h
x86/early-quirks: export the stolen region as a resource
2017-12-12 12:30:18 +02:00
i915_pciids.h
drm/i915/cfl: Adding more Coffee Lake PCI IDs.
2017-12-20 11:24:25 -08:00
intel-gtt.h
drm/i915: prefer resource_size_t for everything stolen
2017-12-12 12:30:22 +02:00
intel_lpe_audio.h
spsc_queue.h
drm: move amd_gpu_scheduler into common location
2017-12-07 11:51:56 -05:00