- 02 Oct, 2018 3 commits
-
-
Builds the driver against all supported versions of xserver, with both gcc and clang for xserver >= 1.18 (older versions cause warnings with clang). Compiler warnings are treated as errors. The xserver 1.15 build uses standalone glamor, the xserver 1.13 & 1.14 builds use --disable-glamor. With the latest xserver version, make install and make distcheck are tested as well.
-
We were still relying on the glamor.h header being picked up implicitly.
-
Avoids compiler warning with xserver < 1.16: ../../src/amdgpu_kms.c: In function ‘AMDGPUPreInitChipType_KMS’: ../../src/amdgpu_kms.c:1203:17: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] pScrn->chipset = amdgpu_get_marketing_name(pAMDGPUEnt->pDev); ^
-
- 26 Sep, 2018 2 commits
-
-
We were always calling the latter, but not always the former, which could result in handling deferred DRM events prematurely. Acked-by:
Slava Abramov <slava.abramov@amd.com> Acked-by:
Alex Deucher <alexander.deucher@amd.com>
-
We have to wait for a pending scanout flip or abort a pending scanout update, otherwise the corresponding event handler will likely crash after drmmode_crtc_scanout_free cleaned up the data structures. Fixes crash after VT switch while dedicated scanout pixmaps are enabled for any CRTC. Acked-by:
Alex Deucher <alexander.deucher@amd.com>
-
- 20 Sep, 2018 2 commits
-
-
And update it a little for the current Gitlab infrastructure.
-
-
- 14 Sep, 2018 1 commit
-
-
- 13 Sep, 2018 1 commit
-
-
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>
-
- 05 Sep, 2018 2 commits
-
-
No need to process any events in that case. v2: * Re-check drmmode_crtc->flip_pending after processing each event
-
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>
-
- 31 Aug, 2018 2 commits
-
-
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.
-
We left entries without a handler hook in the list, so the list could keep taking longer to process and use up more memory.
-
- 30 Aug, 2018 1 commit
-
-
(Ported from radeon commit de88ea2755611bdcb18d91d8234d2ab5be8ff2e9) Acked-by:
Alex Deucher <alexander.deucher@amd.com>
-
- 29 Aug, 2018 1 commit
-
-
Michel Dänzer authored
It means to stop using the shared pixmap backing. (Ported from radeon commit 1799680f7bd84e0618f34f4c7486799521ddaf83) Acked-by:
Alex Deucher <alexander.deucher@amd.com>
-
- 24 Aug, 2018 2 commits
-
-
Older versions of autoconf only supported the former. (Cherry picked from radeon commit cba8fe4d64819aaa8ba516aa68dbe6d2aa153046) Acked-by:
Alex Deucher <alexander.deucher@amd.com>
-
Michel Dänzer authored
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> (Cherry picked from radeon commit 7b01c10137aba24c8f61dd9b2a19ea257ad24371) Acked-by:
Alex Deucher <alexander.deucher@amd.com>
-
- 16 Aug, 2018 7 commits
-
-
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: 9b6782c8 "Store FB for each CRTC in drmmode_flipdata_rec" Reviewed-by:
Alex Deucher <alexander.deucher@amd.com>
-
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>
-
This is to avoid submitting more flips while we are waiting for pending ones to complete. Acked-by:
Alex Deucher <alexander.deucher@amd.com>
-
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.
-
Replacing the drmmode_crtc_wait_pending_event macro. Acked-by:
Alex Deucher <alexander.deucher@amd.com>
-
And make amdgpu_drm_queue_handler not directly accessible outside of amdgpu_drm_queue.c. Acked-by:
Alex Deucher <alexander.deucher@amd.com>
-
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>
-
- 02 Aug, 2018 1 commit
-
-
Michel Dänzer authored
Inspired by the modesetting driver. (Ported from radeon commit db28d35ce9fd07a2a4703f3df0633d4c8291ff9b) Reviewed-by:
Alex Deucher <alexander.deucher@amd.com>
-
- 27 Jul, 2018 1 commit
-
-
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>
-
- 25 Jul, 2018 1 commit
-
-
Not doing this resulted in falling back to software for DRI3 client presentation operations with ShadowPrimary. Reviewed-by:
Alex Deucher <alexander.deucher@amd.com>
-
- 23 Jul, 2018 2 commits
-
-
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>
-
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.
-
- 20 Jul, 2018 3 commits
-
-
We always destroy the fbcon pixmap in drmmode_copy_fb anyway. Reviewed-by:
Alex Deucher <alexander.deucher@amd.com>
-
We don't need it.
-
We were leaking it. Also, don't bother allocating new memory if it's already the expected size. Reviewed-by:
Alex Deucher <alexander.deucher@amd.com>
-
- 18 Jul, 2018 1 commit
-
-
It's a bit silly to require current randrproto just for this definition, which can't really change anyway. Suggested-by:
Qiang Yu <qiang.yu@amd.com> Reviewed-by:
Qiang Yu <Qiang.Yu@amd.com>
-
- 13 Jul, 2018 1 commit
-
-
Only supported with the advanced colour management properties available with DC as of kernel 4.17. Reviewed-by:
Alex Deucher <alexander.deucher@amd.com>
-
- 11 Jul, 2018 2 commits
-
-
No functional change intended. (Ported from radeon commit 90b94d40449f665f2d12874598062a5e5e5b64cd) Reviewed-by:
Alex Deucher <alexander.deucher@amd.com>
-
Fixes crash in that case. Bugzilla: https://bugs.freedesktop.org/106293 (Ported from radeon commit 65c9dfea4e841b7d6f795c7489fede58c5e9631f) Reviewed-by:
Alex Deucher <alexander.deucher@amd.com>
-
- 10 Jul, 2018 3 commits
-
-
We would store the NULL pointer and continue, which would lead to a crash down the road. Bugzilla: https://bugs.freedesktop.org/106293 (Ported from radeon commit 3dcfce8d0f495d09d7836caf98ef30d625b78a13) Reviewed-by:
Alex Deucher <alexander.deucher@amd.com>
-
Signed-off-by:
Keith Packard <keithp@keithp.com> (Ported from xserver commit e4e3447603b5fd3a38a92c3f972396d1f81168ad) Reviewed-by:
Keith Packard <keithp@keithp.com> Signed-off-by:
Michel Dänzer <michel.daenzer@amd.com>
-
This lets a DRM client map between X outputs and kernel connectors. v2: Change CONNECTOR_ID to enum -- Adam Jackson <ajax@nwnk.net> Signed-off-by:
Keith Packard <keithp@keithp.com> (Ported from xserver commit 023d4aba8d45e9e3630b944ecfb650c081799b96) Reviewed-by:
Keith Packard <keithp@keithp.com> Signed-off-by:
Michel Dänzer <michel.daenzer@amd.com>
-
- 06 Jul, 2018 1 commit
-
-
Save any value of the kernel non-desktop property in the xf86Output structure to avoid non-desktop outputs in the default configuration. [Also bump randrproto requirement to a version that defines RR_PROPERTY_NON_DESKTOP - ajax] Signed-off-by:
Keith Packard <keithp@keithp.com> (Ported from xserver commit b91c787c4cd2d20685db69426c539938c556128a) Reviewed-by:
Keith Packard <keithp@keithp.com> Signed-off-by:
Michel Dänzer <michel.daenzer@amd.com>
-