Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[xsrc/trunk]: xsrc/external/mit/xf86-video-amdgpu/dist initial import of xf86...
details: https://anonhg.NetBSD.org/xsrc/rev/70623e5f8b40
branches: trunk
changeset: 10026:70623e5f8b40
user: mrg <mrg%NetBSD.org@localhost>
date: Sat Dec 29 08:47:50 2018 +0000
description:
initial import of xf86-video-amdgpu-18.1.0
diffstat:
external/mit/xf86-video-amdgpu/dist/ChangeLog | 903 +++++++
external/mit/xf86-video-amdgpu/dist/Makefile.in | 15 +-
external/mit/xf86-video-amdgpu/dist/aclocal.m4 | 189 +-
external/mit/xf86-video-amdgpu/dist/compile | 13 +-
external/mit/xf86-video-amdgpu/dist/conf/Makefile.in | 13 +-
external/mit/xf86-video-amdgpu/dist/configure | 231 +-
external/mit/xf86-video-amdgpu/dist/configure.ac | 6 +-
external/mit/xf86-video-amdgpu/dist/depcomp | 8 +-
external/mit/xf86-video-amdgpu/dist/install-sh | 36 +-
external/mit/xf86-video-amdgpu/dist/man/Makefile.in | 13 +-
external/mit/xf86-video-amdgpu/dist/missing | 16 +-
external/mit/xf86-video-amdgpu/dist/src/Makefile.in | 89 +-
external/mit/xf86-video-amdgpu/dist/src/amdgpu_bo_helper.c | 13 +-
external/mit/xf86-video-amdgpu/dist/src/amdgpu_dri2.c | 50 +-
external/mit/xf86-video-amdgpu/dist/src/amdgpu_dri2.h | 1 -
external/mit/xf86-video-amdgpu/dist/src/amdgpu_dri3.c | 1 +
external/mit/xf86-video-amdgpu/dist/src/amdgpu_drm_queue.c | 155 +-
external/mit/xf86-video-amdgpu/dist/src/amdgpu_drm_queue.h | 8 +-
external/mit/xf86-video-amdgpu/dist/src/amdgpu_drv.h | 7 +-
external/mit/xf86-video-amdgpu/dist/src/amdgpu_glamor.c | 49 +-
external/mit/xf86-video-amdgpu/dist/src/amdgpu_glamor_wrappers.c | 2 +-
external/mit/xf86-video-amdgpu/dist/src/amdgpu_kms.c | 107 +-
external/mit/xf86-video-amdgpu/dist/src/amdgpu_pixmap.c | 2 +-
external/mit/xf86-video-amdgpu/dist/src/amdgpu_pixmap.h | 2 +-
external/mit/xf86-video-amdgpu/dist/src/amdgpu_present.c | 36 +-
external/mit/xf86-video-amdgpu/dist/src/amdgpu_probe.c | 53 +-
external/mit/xf86-video-amdgpu/dist/src/amdgpu_video.c | 2 +-
external/mit/xf86-video-amdgpu/dist/src/drmmode_display.c | 1283 ++++++++-
external/mit/xf86-video-amdgpu/dist/src/drmmode_display.h | 51 +-
29 files changed, 2676 insertions(+), 678 deletions(-)
diffs (truncated from 5406 to 300 lines):
diff -r eb7652dc79e9 -r 70623e5f8b40 external/mit/xf86-video-amdgpu/dist/ChangeLog
--- a/external/mit/xf86-video-amdgpu/dist/ChangeLog Sat Dec 29 06:46:43 2018 +0000
+++ b/external/mit/xf86-video-amdgpu/dist/ChangeLog Sat Dec 29 08:47:50 2018 +0000
@@ -1,3 +1,906 @@
+commit d5e17dc4c78aee5d37de399728066b9be881e044
+Author: Michel Dänzer <michel.daenzer%amd.com@localhost>
+Date: Fri Sep 14 17:00:17 2018 +0200
+
+ Bump version for the 18.1.0 release
+
+commit 6572be49b713a26eca14f16e1854cabf28101288
+Author: Michel Dänzer <michel.daenzer%amd.com@localhost>
+Date: Thu Sep 13 11:44:21 2018 +0200
+
+ Bail from drmmode_cm_init if there's no CRTC
+
+ We would crash due to dereferencing the NULL mode_res->crtc pointer.
+
+ Bugzilla: https://bugs.freedesktop.org/107913
+ Reviewed-by: Alex Deucher <alexander.deucher%amd.com@localhost>
+
+commit ca5eb9894fff153c0a1df7bdc4a4745713309e27
+Author: Michel Dänzer <michel.daenzer%amd.com@localhost>
+Date: Wed Aug 29 18:50:45 2018 +0200
+
+ Bail early from drm_wait_pending_flip if there's no pending flip
+
+ No need to process any events in that case.
+
+ v2:
+ * Re-check drmmode_crtc->flip_pending after processing each event
+
+commit a923bedfd91d39977dbf95f296cf9b68439490f2
+Author: Michel Dänzer <michel.daenzer%amd.com@localhost>
+Date: Fri Aug 31 12:44:37 2018 +0200
+
+ Do not push the CM_GAMMA_LUT property values in drmmode_crtc_cm_init
+
+ The crtc->gamma_lut values aren't initialized yet at this point, and
+ the property values are pushed again from drmmode_setup_colormap
+ anyway.
+
+ Fixes intermittent flicker due to random gamma LUT values during server
+ startup.
+
+ Acked-by: Alex Deucher <alexander.deucher%amd.com@localhost>
+
+commit 26770be44b89b83bf39c28f2fe284c8cb92ed0c0
+Author: Michel Dänzer <michel.daenzer%amd.com@localhost>
+Date: Wed Aug 29 18:49:19 2018 +0200
+
+ Don't use xorg_list_for_each_entry_safe for signalled flips
+
+ drm_wait_pending_flip can get called from drm_handle_event, in which
+ case xorg_list_for_each_entry_safe can end up processing the same entry
+ in both. To avoid this, just process the first list entry until the list
+ is empty.
+
+commit 7eea3e2cd74eed22e982319144e18ae5b1087b78
+Author: Michel Dänzer <michel.daenzer%amd.com@localhost>
+Date: Wed Aug 29 18:41:19 2018 +0200
+
+ Always delete entry from list in drm_queue_handler
+
+ We left entries without a handler hook in the list, so the list could
+ keep taking longer to process and use up more memory.
+
+commit b804d7f85d8a07389ba7d3f9b8af8773f852f1c7
+Author: Michel Dänzer <michel.daenzer%amd.com@localhost>
+Date: Wed Aug 29 17:34:55 2018 +0200
+
+ glamor: Handle ihandle == -1 in amdgpu_glamor_set_shared_pixmap_backing
+
+ (Ported from radeon commit de88ea2755611bdcb18d91d8234d2ab5be8ff2e9)
+ Acked-by: Alex Deucher <alexander.deucher%amd.com@localhost>
+
+commit ae2a450cb98707c4cab8a8265a284cf708bcd43d
+Author: Michel Dänzer <michel.daenzer%amd.com@localhost>
+Date: Wed Aug 29 17:31:49 2018 +0200
+
+ Handle ihandle == -1 in amdgpu_set_shared_pixmap_backing
+
+ It means to stop using the shared pixmap backing.
+
+ (Ported from radeon commit 1799680f7bd84e0618f34f4c7486799521ddaf83)
+ Acked-by: Alex Deucher <alexander.deucher%amd.com@localhost>
+
+commit 34e851d1f284da5afcfe449f349cf1eb5e962408
+Author: Michel Dänzer <michel.daenzer%amd.com@localhost>
+Date: Fri Aug 24 17:18:10 2018 +0200
+
+ Use AC_CONFIG_MACRO_DIR instead of AC_CONFIG_MACRO_DIRS
+
+ Older versions of autoconf only supported the former.
+
+ (Cherry picked from radeon commit cba8fe4d64819aaa8ba516aa68dbe6d2aa153046)
+ Acked-by: Alex Deucher <alexander.deucher%amd.com@localhost>
+
+commit afdfa2a1b6d4b594e0ed345b32279d4a2fd5e188
+Author: Michel Dänzer <michel.daenzer%amd.com@localhost>
+Date: Fri Aug 24 17:17:43 2018 +0200
+
+ Add m4 directory
+
+ Although normally it only warns about it, under some circumstances,
+ aclocal can error out if this directory doesn't exist.
+
+ Reported-by: John Lumby <johnlumby%hotmail.com@localhost>
+ (Cherry picked from radeon commit 7b01c10137aba24c8f61dd9b2a19ea257ad24371)
+ Acked-by: Alex Deucher <alexander.deucher%amd.com@localhost>
+
+commit f6cd72e64e85896b6d155bee0930e59771dcb701
+Author: Michel Dänzer <michel.daenzer%amd.com@localhost>
+Date: Thu Aug 16 16:31:01 2018 +0200
+
+ Use correct FB handle in amdgpu_do_pageflip
+
+ We were always using the handle of the client provided FB, which
+ prevented RandR transforms from working, and could result in a black
+ screen.
+
+ Fixes: 9b6782c821e0 "Store FB for each CRTC in drmmode_flipdata_rec"
+ Reviewed-by: Alex Deucher <alexander.deucher%amd.com@localhost>
+
+commit 85cd8eef0cbed7b409b07f58d76dacd34aa3ddea
+Author: Michel Dänzer <michel.daenzer%amd.com@localhost>
+Date: Tue Jul 24 18:58:27 2018 +0200
+
+ Remove drmmode_crtc_private_rec::present_vblank_* related code
+
+ Not needed anymore with the more robust mechanisms for preventing nested
+ drmHandleEvent calls introduced in the previous changes.
+
+ Acked-by: Alex Deucher <alexander.deucher%amd.com@localhost>
+
+commit e52872da69ecc84dafb3355839e35b0383f0d228
+Author: Michel Dänzer <michel.daenzer%amd.com@localhost>
+Date: Fri Jul 20 16:56:22 2018 +0200
+
+ Defer vblank event handling while waiting for a pending flip
+
+ This is to avoid submitting more flips while we are waiting for pending
+ ones to complete.
+
+ Acked-by: Alex Deucher <alexander.deucher%amd.com@localhost>
+
+commit 739181c8d3334ff14b5a607895dfdeb29b0d9020
+Author: Michel Dänzer <michel.daenzer%amd.com@localhost>
+Date: Wed Jul 25 13:00:15 2018 +0200
+
+ Add amdgpu_drm_handle_event wrapper for drmHandleEvent
+
+ Instead of processing DRM events directly from drmHandleEvent's
+ callbacks, there are three phases:
+
+ 1. drmHandleEvent is called, and signalled events are re-queued to
+ _signalled lists from its callbacks.
+ 2. Signalled page flip completion events are processed.
+ 3. Signalled vblank events are processed.
+
+ This should make sure that we never call drmHandleEvent from one of its
+ callbacks, which would usually result in blocking forever.
+
+commit 6029794e8a35417faf825491a89b85f713c77fc1
+Author: Michel Dänzer <michel.daenzer%amd.com@localhost>
+Date: Fri Jul 20 17:07:23 2018 +0200
+
+ Add amdgpu_drm_wait_pending_flip function
+
+ Replacing the drmmode_crtc_wait_pending_event macro.
+
+ Acked-by: Alex Deucher <alexander.deucher%amd.com@localhost>
+
+commit 0148283984c77f7a6e97026edc3093497547e0a4
+Author: Michel Dänzer <michel.daenzer%amd.com@localhost>
+Date: Fri Jul 20 16:37:05 2018 +0200
+
+ Move DRM event queue related initialization to amdgpu_drm_queue_init
+
+ And make amdgpu_drm_queue_handler not directly accessible outside of
+ amdgpu_drm_queue.c.
+
+ Acked-by: Alex Deucher <alexander.deucher%amd.com@localhost>
+
+commit 7f65a8c9e03bddf2378aaa928460632ed6b1a688
+Author: Michel Dänzer <michel.daenzer%amd.com@localhost>
+Date: Fri Aug 3 17:52:28 2018 +0200
+
+ glamor: Check glamor module version for depth 30 support
+
+ Instead of the Xorg version. This should allow glamor backported from
+ xserver >= 1.20 to work with older Xorg versions.
+
+ Reviewed-by: Alex Deucher <alexander.deucher%amd.com@localhost>
+
+commit 08c4d42f43f80baa4bbc2ff9d0a422202cdc3538
+Author: Michel Dänzer <michel.daenzer%amd.com@localhost>
+Date: Thu Aug 2 18:41:04 2018 +0200
+
+ glamor: Use glamor_egl_create_textured_pixmap_from_gbm_bo when possible
+
+ Inspired by the modesetting driver.
+
+ (Ported from radeon commit db28d35ce9fd07a2a4703f3df0633d4c8291ff9b)
+ Reviewed-by: Alex Deucher <alexander.deucher%amd.com@localhost>
+
+commit 9b6782c821e0bdc53336d98f87ddde752faf7902
+Author: Michel Dänzer <michel.daenzer%amd.com@localhost>
+Date: Fri Jul 27 17:55:11 2018 +0200
+
+ Store FB for each CRTC in drmmode_flipdata_rec
+
+ We were only storing the FB provided by the client, but on CRTCs with
+ TearFree enabled, we use a separate FB. This could cause
+ drmmode_flip_handler to fail to clear drmmode_crtc->flip_pending, which
+ could result in a hang when waiting for the pending flip to complete. We
+ were trying to avoid that by always clearing drmmode_crtc->flip_pending
+ when TearFree is enabled, but that wasn't reliable, because
+ drmmode_crtc->tear_free can already be FALSE at this point when
+ disabling TearFree.
+
+ Now that we're keeping track of each CRTC's flip FB separately,
+ drmmode_flip_handler can reliably clear flip_pending, and we no longer
+ need the TearFree hack.
+
+ Reviewed-by: Alex Deucher <alexander.deucher%amd.com@localhost>
+
+commit 2989d40ef74d9966e8e8df2ef7727b2cc48d4960
+Author: Michel Dänzer <michel.daenzer%amd.com@localhost>
+Date: Wed Jul 25 18:37:48 2018 +0200
+
+ glamor: Set AMDGPU_CREATE_PIXMAP_DRI2 for DRI3 pixmaps
+
+ Not doing this resulted in falling back to software for DRI3 client
+ presentation operations with ShadowPrimary.
+
+ Reviewed-by: Alex Deucher <alexander.deucher%amd.com@localhost>
+
+commit f3b2ed37d683f8616a0a31ff63133ddb8fe1a4a3
+Author: Michel Dänzer <michel.daenzer%amd.com@localhost>
+Date: Mon Jul 23 18:42:39 2018 +0200
+
+ Use strcpy for RandR output property names
+
+ Instead of strncpy with the string length. Avoids new warnings with GCC
+ 8:
+
+ ../../src/drmmode_display.c: In function â??drmmode_output_create_resourcesâ??:
+ ../../src/drmmode_display.c:2240:2: warning: â??strncpyâ?? output truncated before terminating nul copying 8 bytes from a string of the same length [-Wstringop-truncation]
+ strncpy(tearfree_prop->name, "TearFree", 8);
+ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ ../../src/drmmode_display.c:2244:2: warning: â??strncpyâ?? output truncated before terminating nul copying 3 bytes from a string of the same length [-Wstringop-truncation]
+ strncpy(tearfree_prop->enums[0].name, "off", 3);
+ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ ../../src/drmmode_display.c:2245:2: warning: â??strncpyâ?? output truncated before terminating nul copying 2 bytes from a string of the same length [-Wstringop-truncation]
+ strncpy(tearfree_prop->enums[1].name, "on", 2);
+ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ ../../src/drmmode_display.c:2247:2: warning: â??strncpyâ?? output truncated before terminating nul copying 4 bytes from a string of the same length [-Wstringop-truncation]
+ strncpy(tearfree_prop->enums[2].name, "auto", 4);
+ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Reviewed-by: Slava Abramov <slava.abramov%amd.com@localhost>
+
+commit 5f06d6b8ba570b500956ad26fee711d5ac427818
+Author: Michel Dänzer <michel.daenzer%amd.com@localhost>
+Date: Tue Jul 17 19:00:51 2018 +0200
+
+ Remove drmmode_terminate_leases
+
+ The RandR screen private is already freed when our CloseScreen runs, so
+ this can't do anything useful. This cleanup has to be done by the X
+ server itself.
+
+commit 7cc2d4515a63845a027214daf4d391cf56e35bb3
+Author: Michel Dänzer <michel.daenzer%amd.com@localhost>
+Date: Thu Jul 19 16:59:22 2018 +0200
+
+ Remove AMDGPUInfoRec::fbcon_pixmap
+
+ We always destroy the fbcon pixmap in drmmode_copy_fb anyway.
+
+ Reviewed-by: Alex Deucher <alexander.deucher%amd.com@localhost>
+
+commit 46d87187c6a0b8f941cc6f30af1f53a98ff2e635
+Author: Michel Dänzer <michel.daenzer%amd.com@localhost>
+Date: Thu Jul 19 12:37:42 2018 +0200
+
+ Don't use DRM_IOCTL_GEM_FLINK in create_pixmap_for_fbcon
+
+ We don't need it.
+
+commit b8d8416792488f7b15c94234d7e0e35d5ce10ed9
+Author: Michel Dänzer <michel.daenzer%amd.com@localhost>
+Date: Thu Jul 19 11:36:19 2018 +0200
+
+ Free previous xf86CrtcRec gamma LUT memory
+
+ We were leaking it.
+
+ Also, don't bother allocating new memory if it's already the expected
Home |
Main Index |
Thread Index |
Old Index