ChangeLog revision 11bf0794
1commit 804e30e14e51f94403a0721ef2aae28f1fa9e9f2 2Author: Michel Dänzer <michel.daenzer@amd.com> 3Date: Thu Mar 16 17:28:11 2017 +0900 4 5 Bump version for 1.3.0 release 6 7commit 3a8582944ed3fef1b75f8871489e6e19963e2ea6 8Author: Michel Dänzer <michel.daenzer@amd.com> 9Date: Thu Mar 9 15:56:59 2017 +0900 10 11 Pass TRUE to drmmode_set_desired_modes the first time for GPU screens 12 13 This is the only place we call drmmode_set_desired_modes for GPU screens 14 during server startup. Without this change, the display outputs of 15 secondary GPUs may stay on even while Xorg isn't using them. 16 17 (Ported from radeon commit 9a71445094b728f3d78db8f6808b4782ee19a453) 18 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 19 20commit 82b15a4da156e18da4c8fc0093500c32b549e487 21Author: Michel Dänzer <michel.daenzer@amd.com> 22Date: Thu Mar 9 15:47:24 2017 +0900 23 24 Skip some initialization steps for GPU screens 25 26 Xorg doesn't use the following functionality of GPU screens, so don't 27 bother initializing it: 28 29 * DRI page flipping 30 * DRI3 / Present / SYNC fences 31 * XVideo / XvMC 32 * Root window with background None 33 34 (Ported from radeon commit 67ae5e00a748ad52cf92738d401afff2947b1891) 35 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 36 37commit fa85331f0ce27e16a9338516518433955133840e 38Author: Michel Dänzer <michel.daenzer@amd.com> 39Date: Tue Mar 7 18:02:29 2017 +0900 40 41 glamor: Use glamor_finish when available 42 43 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 44 45commit 7884e38e94c2cbd6c205f556f2b31ad59b4089b4 46Author: Hans De Goede <hdegoede@redhat.com> 47Date: Tue Oct 18 16:48:40 2016 +0200 48 49 amdgpu_probe: Do not close server managed drm fds 50 51 This fixes the xserver only seeing AMD/ATI devices supported by the amdgpu 52 driver, as by the time xf86-video-ati gets a chance to probe them, the 53 fd has been closed. 54 55 This fixes e.g. Xorg not seeing the dGPU on a Lenovo Thinkpad E465 laptop 56 with a CARRIZO iGPU and a HAINAN dGPU. 57 58 Signed-off-by: Hans de Goede <hdegoede@redhat.com> 59 60 v2: Rebased on top of new patch 1. 61 62 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 63 64commit a2c360fa1d33d6a5aa64c396197e119ff77d1379 65Author: Michel Dänzer <michel.daenzer@amd.com> 66Date: Mon Mar 6 18:59:23 2017 +0900 67 68 Refactor amdgpu_kernel_close_fd helper 69 70 Preparation for the following change. 71 72 Assign pAMDGPUEnt->fd = -1 instead of 0 when we're not using the file 73 descriptor anymore. 74 75 Reviewed-by: Hans de Goede <hdegoede@redhat.com> 76 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 77 78commit 947017194d07e32876a43ee0efc45fdc71385748 79Author: Michel Dänzer <michel.daenzer@amd.com> 80Date: Fri Mar 3 17:59:19 2017 +0900 81 82 glamor: Don't flush in BlockHandler with Xorg >= 1.19 83 84 This was only necessary with older versions for driving the FBO cache 85 expiry mechanism. 86 87 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 88 89commit 86907a5e4ce33154167b330570491f88218725d3 90Author: Michel Dänzer <michel.daenzer@amd.com> 91Date: Mon Mar 6 18:23:41 2017 +0900 92 93 Only define transform_region for XF86_CRTC_VERSION >= 4 94 95 Not used with older versions of Xorg. Fixes warning in that case: 96 97 ../../src/amdgpu_kms.c:328:1: warning: ‘transform_region’ defined but not used [-Wunused-function] 98 transform_region(RegionPtr region, struct pict_f_transform *transform, 99 ^~~~~~~~~~~~~~~~ 100 101 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 102 103commit 8d2b7d1758e3fcac520a18a0684c073f0ac62389 104Author: Michel Dänzer <michel.daenzer@amd.com> 105Date: Mon Mar 6 18:09:58 2017 +0900 106 107 Use local implementation of RegionDuplicate for older xserver 108 109 It was only added in xserver 1.15. Fixes build against older xserver. 110 111 Reported-by: Pali Rohár <pali.rohar@gmail.com> 112 (Ported from radeon commit 80cc892ee1ce54fad3cb7dd11bd9df18c359136f) 113 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 114 115commit cd73100114a18642d9c40f1df33cef8311e96a8b 116Author: Michel Dänzer <michel.daenzer@amd.com> 117Date: Mon Mar 6 18:07:19 2017 +0900 118 119 Don't use pScrn->is_gpu in AMDGPUCreateScreenResources_KMS 120 121 Looks like this snuck in accidentally. 122 123 Brings us back in line with the radeon driver, and fixes the build 124 against older versions of xserver which didn't have the is_gpu field 125 yet. 126 127 Fixes: 6bab8fabb37e ("Remove info->dri2.drm_fd and info->drmmode->fd") 128 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 129 130commit 351baa89b9b0ecfb6c666af3a2d10c559a9224a9 131Author: Michel Dänzer <michel.daenzer@amd.com> 132Date: Fri Mar 3 16:44:15 2017 +0900 133 134 Don't call amdgpu_glamor_flush in drmmode_copy_fb 135 136 AMDGPUWindowExposures_oneshot takes care of it. 137 138 (Ported from radeon commit d63881623f0686a66a2e3e3c1f84e496aa52ec6b) 139 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 140 141commit ad53635af150cda9b8da413be5a011d74f972ac7 142Author: Michel Dänzer <michel.daenzer@amd.com> 143Date: Fri Mar 3 16:41:49 2017 +0900 144 145 Move DPMS check from amdgpu_scanout_do_update to amdgpu_scanout_flip 146 147 When amdgpu_scanout_do_update is called from 148 drmmode_crtc_scanout_update, drmmode_crtc->pending_dpms_mode may still 149 be != DPMSModeOn, e.g. during server startup. 150 151 Fixes intermittently showing garbage with TearFree enabled. 152 153 (Ported from radeon commit cc9d6b7db9c2078be1e530a64af6d517c6a42024) 154 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 155 156commit 378bd05c849ad3092f138bdc8917d35d0b967389 157Author: Michel Dänzer <michel.daenzer@amd.com> 158Date: Fri Mar 3 16:36:24 2017 +0900 159 160 Call drmmode_set_desired_modes from a WindowExposures hook 161 162 This is the earliest opportunity where the root window contents are 163 guaranteed to be initialized, and prevents drmmode_set_mode_major from 164 getting called before drmmode_set_desired_modes via AMDGPUUnblank -> 165 drmmode_crtc_dpms. Also, in contrast to the BlockHandler hook, this is 166 called when running Xorg with -pogo. 167 168 Fixes intermittently showing garbage on server startup or after server 169 reset. 170 171 As a bonus, this avoids trouble due to higher layers (e.g. the tigervnc 172 Xorg module) calling AMDGPUBlockHandler_oneshot repeatedly even after 173 we set pScreen->BlockHandler = AMDGPUBlockHandler_KMS. 174 175 Bugzilla: https://bugs.freedesktop.org/99457 176 (Ported from radeon commits 0a12bf1085505017068dfdfd31d23133e51b45b9 and 177 f0e7948e1c0e984fc27f235f365639e9cf628291) 178 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 179 180commit 8d4d73e05ce34eb353daec7b2c0e7c844113c7de 181Author: Michel Dänzer <michel.daenzer@amd.com> 182Date: Fri Mar 3 16:34:16 2017 +0900 183 184 present: Flush before flipping 185 186 This isn't necessary for DRI clients, but the Present extension can also 187 be used for presenting normal pixmaps rendered to via the X11 protocol. 188 189 (Ported from radeon commit 9035b6abea557828e672ee455f0c84e43da0906f) 190 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 191 192commit 88725b68cad92418c9bb03cb7f20526ce238d64e 193Author: Michel Dänzer <michel.daenzer@amd.com> 194Date: Fri Mar 3 16:30:27 2017 +0900 195 196 present: Use async flip for unflip if possible 197 198 In that case, unflip operations should finish faster in general. 199 200 (Ported from radeon commit 0a4eb0e12f0c9c653cf4cea6fd62e1a507eb261c) 201 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 202 203commit b31489c086b4bc50c824e85fa26d97c0f43afb20 204Author: Michel Dänzer <michel.daenzer@amd.com> 205Date: Fri Mar 3 16:28:41 2017 +0900 206 207 present: Also flush before using a flip to unflip 208 209 Not doing so might result in intermittently scanning out stale contents 210 of the screen pixmap. 211 212 (Ported from radeon commit 9a951a3e551db58ba50e7a594521ceac54d90615) 213 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 214 215commit f6a3c87c3097e8d5c1d2159bc90d6541a46ed8be 216Author: Michel Dänzer <michel.daenzer@amd.com> 217Date: Fri Mar 3 16:26:26 2017 +0900 218 219 present: Wait for GPU idle before setting modes for unflip 220 221 To make sure the screen pixmap contents are up to date when it starts 222 being scanned out. 223 224 (Ported from radeon commit 244d4bc7f8c8f6bc90f49556c0b9344c8aa40295) 225 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 226 227commit 012ffffb45119059f3610fb8fd6ae103186b3e3c 228Author: Michel Dänzer <michel.daenzer@amd.com> 229Date: Fri Mar 3 16:22:39 2017 +0900 230 231 present: Only call drmModeRmFB after setting modes for unflip 232 233 Fixes display intermittently blanking when a modeset is used for unflip. 234 235 (Ported from radeon commit 3ff29e5a14451916bc66b4e0028e9a317f0723f8) 236 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 237 238commit f4719bb473df897012f8830f46e99cb781d67b6f 239Author: Michel Dänzer <michel.daenzer@amd.com> 240Date: Fri Mar 3 16:19:11 2017 +0900 241 242 Use drmmode_crtc_scanout_free in drmmode_fini 243 244 We were leaking drmmode_crtc->scanout_damage, which caused trouble on 245 server reset. Fixes server reset with active separate scanout pixmaps. 246 247 (Cherry picked from radeon commit 0c29deb5a97d9a57e994cc0053c49ddf7aca6ecb) 248 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 249 250commit af0b24c1aca4cba2692d5aa410e63cb536478dbe 251Author: Michel Dänzer <michel.daenzer@amd.com> 252Date: Thu Mar 2 17:24:03 2017 +0900 253 254 Allow toggling TearFree at runtime via output property 255 256 Option "TearFree" now sets the default value of the output property. 257 See the manpage update for details. 258 259 TearFree is now enabled by default for outputs using rotation or other 260 RandR transforms, and for RandR 1.4 slave outputs. 261 262 (Ported from radeon commit 58cd1600057e41aade0106d4acf78e23eac6e44f) 263 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 264 265commit 77853f02e5b879e7042f55c672cf2d8e6955309f 266Author: Michel Dänzer <michel.daenzer@amd.com> 267Date: Thu Mar 2 17:19:59 2017 +0900 268 269 Factor out drmmode_crtc_scanout_update helper 270 271 Cleanup in preparation for following change, no functional change 272 intended. 273 274 (Ported from radeon commit 305e2cbf335837a2ab6a24e9ff65815afe038296) 275 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 276 277commit d25cc3b2b3b2d257aea247b85fea405d7e84e5b1 278Author: Michel Dänzer <michel.daenzer@amd.com> 279Date: Thu Mar 2 17:15:03 2017 +0900 280 281 Factor out amdgpu_prime_dirty_to_crtc helper 282 283 Cleanup in preparation for the following change, no functional change 284 intended. 285 286 (Ported from radeon commit 649644a88347a6d03de68f8c41db03a82deeb23b) 287 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 288 289commit a6d363008e2b55f0aa6151be1a99f01b97870e91 290Author: Michel Dänzer <michel.daenzer@amd.com> 291Date: Thu Mar 2 17:13:06 2017 +0900 292 293 Don't destroy current FB if drmModeAddFB fails 294 295 It would probably result in a black screen. 296 297 (Ported from radeon commit 1351e48efe7a2c28eab447e16f36a00fbd02ae48) 298 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 299 300commit 53926db2355de0a324c205703a0377b498136f65 301Author: Michel Dänzer <michel.daenzer@amd.com> 302Date: Thu Mar 2 17:08:19 2017 +0900 303 304 Fix flip event data leak if calloc or drmModeAddFB fails 305 306 (Ported from radeon commit 481394e3c9f9f7d88bb66fe9ae8834c87952a8ab) 307 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 308 309commit 45a8ec6257c370eecf43b6b8010863e37b704872 310Author: Mihail Konev <k.mvc@ya.ru> 311Date: Thu Mar 2 17:04:36 2017 +0900 312 313 autogen: add default patch prefix 314 315 (Ported from radeon commit 8e6a4e96b7b27559e186f71b5547abb0a80b96dd) 316 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 317 318commit ba2aa0a8c12a2bea1e8be01ca3134b518d4cb0f2 319Author: Michel Dänzer <michel.daenzer@amd.com> 320Date: Thu Mar 2 16:55:38 2017 +0900 321 322 Handle rotation in the driver also with Xorg 1.12-1.18 323 324 We cannot use the HW cursor in that case, but in turn we get more 325 efficient and less teary updates of rotated outputs. 326 327 (Ported from radeon commit f2bc882f1c1082bed9f496cfab6c8f07a76bc122) 328 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 329 330commit 7f3abf35a2e1225ffd6a777b23f6a7a6355c1691 331Author: Michel Dänzer <michel.daenzer@amd.com> 332Date: Thu Mar 2 16:47:06 2017 +0900 333 334 Fold drmmode_crtc_scanout_allocate into drmmode_crtc_scanout_create 335 336 Not used anywhere else anymore. 337 338 (Ported from radeon commit ae921a3150f69c38b5b3c88a9e37d54fdf0d5093) 339 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 340 341commit 03c2db3c67bf5ad3c0744add9e0bb611b6cd3df7 342Author: Michel Dänzer <michel.daenzer@amd.com> 343Date: Thu Mar 2 16:42:04 2017 +0900 344 345 Call drmmode_crtc_scanout_create in drmmode_crtc_shadow_allocate as well 346 347 Calling drmmode_crtc_scanout_allocate in drmmode_crtc_shadow_allocate 348 resulted in drmmode_crtc_scanout_create called from 349 drmmode_crtc_shadow_create passing an uninitialized pitch value to 350 drmmode_create_bo_pixmap. 351 352 Fixes issues such as failure to allocate the scanout pixmap or visual 353 corruption and GPUVM faults when attempting to use rotation with Xorg 354 <1.19. 355 356 Bugzilla: https://bugs.freedesktop.org/99916 357 Fixes: 5f7123808833 ("Pass pitch from drmmode_crtc_scanout_allocate to 358 drmmode_create_bo_pixmap") 359 (Ported from radeon commit 987a34adb319923ad36e2b47a26837248f187c3e) 360 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 361 362commit 49b092563cb3958911d28a006f155b4f4e38ed73 363Author: Emil Velikov <emil.l.velikov@gmail.com> 364Date: Thu Jan 26 11:10:12 2017 +0900 365 366 autogen.sh: use quoted string variables 367 368 Place quotes around the $srcdir, $ORIGDIR and $0 variables to prevent 369 fall-outs, when they contain space. 370 371 Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> 372 Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> 373 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> 374 375commit 457fcc5935c659aab5b88cf26d065180b47ed632 376Author: Peter Hutterer <peter.hutterer@who-t.net> 377Date: Thu Jan 26 11:09:07 2017 +0900 378 379 autogen.sh: use exec instead of waiting for configure to finish 380 381 Syncs the invocation of configure with the one from the server. 382 383 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> 384 Reviewed-by: Emil Velikov <emil.velikov@collabora.com> 385 386commit 5f712380883357d03c9934a753ef302e109aeb14 387Author: Michel Dänzer <michel.daenzer@amd.com> 388Date: Fri Jan 6 17:42:25 2017 +0900 389 390 Pass pitch from drmmode_crtc_scanout_allocate to drmmode_create_bo_pixmap 391 392 Mostly to align with radeon commit 393 ea30d856ba5e7274c8ea499293b8b0e721b8e082, but also gets rid of a 394 gbm_bo_get_stride call. 395 396 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 397 398commit b5c189473dba2cffc9e4df310ce5c86ceca99a94 399Author: Jammy Zhou <Jammy.Zhou@amd.com> 400Date: Tue Dec 13 12:32:39 2016 +0900 401 402 Use render node for DRI3 if available 403 404 Signed-off-by: Jammy Zhou <Jammy.Zhou@amd.com> 405 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 406 [ Second attempt, let's see if there's any fallout this time... ] 407 408commit edd276185d42962a13faf9ec9eeebc754ef284e7 409Author: Michel Dänzer <michel.daenzer@amd.com> 410Date: Thu Dec 15 12:42:44 2016 +0900 411 412 Simplify drmmode_handle_uevents 413 414 No functional change intended. 415 416 Reviewed-by: Jim Qu <Jim.Qu@amd.com> 417 418commit 732cf4d3a248b288532ad0f3443da49e08dc7507 419Author: jimqu <Jim.Qu@amd.com> 420Date: Tue Dec 13 16:33:26 2016 +0800 421 422 udev_monitor_receive_device() will block when hotplug monitor 423 424 udev_monitor_receive_device() will block and wait for the event of udev 425 use select() to ensure that this will not block. 426 427 Signed-off-by: JimQu <Jim.Qu@amd.com> 428 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 429 430commit d60ea478cf2215ded7e1acf5817a0dae07e54026 431Author: Michel Dänzer <michel.daenzer@amd.com> 432Date: Wed Nov 30 16:28:27 2016 +0900 433 434 Call amdgpu_drm_abort_entry on failure to flip to a scanout pixmap 435 436 Fixes leaking the corresponding struct amdgpu_drm_queue list entry in 437 that case. 438 439 (Ported from radeon commit e2942449171fe628a7726e59bcaab65e27d88563) 440 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 441 442commit aea70298ef0d53fc81aa1fd22c8566920a856223 443Author: Michel Dänzer <michel.daenzer@amd.com> 444Date: Wed Nov 30 16:27:10 2016 +0900 445 446 Call ValidateGC after ChangeClip in amdgpu_sync_scanout_pixmaps 447 448 The wrong order meant that the clipping region wasn't actually applied, 449 so it always copied the full contents from the other scanout pixmap. 450 451 (Ported from radeon commit 14c3f59f5157885ad8f941f0bad6c0c5e3db12f8) 452 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 453 454commit 0f79c30619168c6845b143c6ed94ade307383068 455Author: Michel Dänzer <michel.daenzer@amd.com> 456Date: Wed Nov 30 16:25:52 2016 +0900 457 458 Fix amdgpu_scanout_extents_intersect for GPU screens 459 460 Fixes incorrect screen updates with TearFree enabled on PRIME slave 461 outputs which are not located at (0, 0). 462 463 (Ported from radeon commit a995f5830916a0fee5126263d1bfe48632be3a15) 464 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 465 466commit 082b6b8ca1878f4b7ab0b25d16b85ba40748ac57 467Author: Michel Dänzer <michel.daenzer@amd.com> 468Date: Wed Nov 30 16:21:28 2016 +0900 469 470 Take current scanout_id into account everywhere involved with TearFree 471 472 Fixes various potential issues with TearFree enabled, e.g. outputs 473 freezing after display configuration changes. 474 475 (Ported from radeon commit e543ef3a2fb304cbe3a965fb780632af2e4186f4) 476 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 477 478commit 82729b1f3b9d57f3002ac2689bfbf37ece0bc3f2 479Author: Michel Dänzer <michel.daenzer@amd.com> 480Date: Mon Nov 28 17:47:17 2016 +0900 481 482 Add amdgpu_is_gpu_screen helper 483 484 This will hopefully decrease the chance of accidentally breaking the 485 build against xserver < 1.13 in the future. 486 487 (Ported from radeon commit f130b10e63f7526360b41aa0918b4940f63f662a) 488 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 489 490commit 7fe2a8ed67ef82916a1eb5b241c5a602a26e10b2 491Author: Michel Dänzer <michel.daenzer@amd.com> 492Date: Tue Nov 22 16:50:59 2016 +0900 493 494 Don't install Flush/EventCallback for GPU screens 495 496 Their purpose is to flush GPU rendering commands corresponding to damage 497 events, but there can be no damage events corresponding to GPU screen 498 rendering operations. 499 500 (Ported from radeon commits 13c6bc5e382765fe567091e1c616c0a26eec04ca and 501 487aa62a2a23b86e4ea4714fdfd465c9e513141f) 502 503 v2: Squash in radeon fix for build against xserver < 1.13 504 505 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> (v1) 506 507commit ff31320644b4d17b9b3f0abd612c99769d3d9643 508Author: Michel Dänzer <michel.daenzer@amd.com> 509Date: Fri Nov 25 18:34:40 2016 +0900 510 511 Make libdrm >= 2.4.72 requirement explicit 512 513 And drop compatibility code for older versions. 514 515 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 516 517commit f9ba1e8fd48cd967a09c4e083b277505d08d3849 518Author: Michel Dänzer <michel.daenzer@amd.com> 519Date: Tue Nov 22 16:30:59 2016 +0900 520 521 Use DRM_MODE_PAGE_FLIP_TARGET_ABSOLUTE/RELATIVE flags when available 522 523 (Ported from radeon commits 1106b2f773ad0611c729b27f4c192a26b43ef1e7 524 and 5fea5ef2f07eee4a0f94baab427010b936f1d4b4) 525 526 v2: 527 * Squash in radeon fix for TearFree regression 528 * Remove preprocessor guards for compatibility with libdrm < 2.4.72 529 (Emil Velikov) 530 531 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 532 533commit e8aa4e7ea59f00d5527654b7181a05aab8c78928 534Author: Michel Dänzer <michel.daenzer@amd.com> 535Date: Wed Oct 26 18:38:20 2016 +0900 536 537 Remove generated header files 538 539 No longer used. 540 541 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 542 543commit d69fd22b6d13052d667929a0e3db61829ce1396e 544Author: Michel Dänzer <michel.daenzer@amd.com> 545Date: Wed Oct 26 18:36:18 2016 +0900 546 547 Stop using AMDGPU(Unique)Chipsets 548 549 Use libdrm_amdgpu's amdgpu_get_marketing_name for the chipset name, or 550 "Unknown AMD Radeon GPU" as a fallback. 551 552 v2: Require libdrm_amdgpu >= 2.4.72 for amdgpu_get_marketing_name 553 554 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> (v1) 555 556commit 8a5ff54af32a75ae56d3369a828a50ae28dd1acd 557Author: Michel Dänzer <michel.daenzer@amd.com> 558Date: Wed Oct 26 18:09:18 2016 +0900 559 560 Stop using AMDGPUPciChipsets 561 562 Not actually used by Xorg. 563 564 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 565 566commit 298eaf58a57efa6acc53d374eea239b6bb55c0f8 567Author: Michel Dänzer <michel.daenzer@amd.com> 568Date: Wed Oct 26 18:05:58 2016 +0900 569 570 Remove amdpciids.h 571 572 Not useful anymore. 573 574 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 575 576commit a0881d55fe80d639d31cdfeadd6014322c037791 577Author: Michel Dänzer <michel.daenzer@amd.com> 578Date: Wed Oct 26 18:02:39 2016 +0900 579 580 Stop using generated amdgpu_device_match 581 582 Just match on PCI device ID 0x1002. 583 584 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 585 586commit 40ddc52b2ae32b17ef7eea1602fdf59b63f06f17 587Author: Michel Dänzer <michel.daenzer@amd.com> 588Date: Wed Oct 26 17:42:36 2016 +0900 589 590 Use family information from libdrm_amdgpu / kernel 591 592 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 593 594commit 5c9d1c5097e326c69f1be4427c62a0d348e8a4a6 595Author: Michel Dänzer <michel.daenzer@amd.com> 596Date: Wed Oct 26 17:32:56 2016 +0900 597 598 Move struct amdgpu_gpu_info out of amdgpu_get_tile_config 599 600 Preparation for the following change, no functional change intended. 601 602 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 603 604commit adf7dabdf9c8acd674190e25050b0885a05d0e92 605Author: Michel Dänzer <michel.daenzer@amd.com> 606Date: Mon Nov 21 17:50:22 2016 +0900 607 608 Post-release version bump 609 610commit a00032050873fc99f3ceaa3293468dad1d94d4b1 611Author: Michel Dänzer <michel.daenzer@amd.com> 612Date: Thu Nov 17 15:17:10 2016 +0900 613 614 Bump version for 1.2.0 release 615 616commit a446b3af9b055056e9fb0f37069b08b979eba277 617Author: Michel Dänzer <michel.daenzer@amd.com> 618Date: Thu Nov 17 15:13:59 2016 +0900 619 620 manpage updates for the 1.2.0 release 621 622 Option "TearFree" is now effective for arbitrary transforms as well. 623 624 Point to the amd-gfx mailing list instead of xorg-driver-ati. 625 626commit 24e36c7044a24294d5709c0306efacc8de6df072 627Author: Michel Dänzer <michel.daenzer@amd.com> 628Date: Thu Nov 10 12:30:10 2016 +0900 629 630 Use pAMDGPUEnt to find both screens of a GPU in amdgpu_mode_hotplug 631 632 Fixes misbehaviour when hotplugging DisplayPort connectors on secondary 633 GPUs. 634 635 Fixes: 14606e127f4b ("Handle Zaphod mode correctly in amdgpu_mode_hotplug") 636 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=98626 637 (Ported from radeon commit 9760ef33cba5795eddeda4d5c2fcbe2dcce21689) 638 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 639 640commit 257be5b0853814a557a5337878a4311acbc89856 641Author: Michel Dänzer <michel.daenzer@amd.com> 642Date: Thu Nov 10 12:28:03 2016 +0900 643 644 Refactor amdgpu_mode_hotplug 645 646 Preparation for the next change, no functional change intended. 647 648 (Cherry picked from radeon commit 35bec4937d89b48a79acfcb4f814b7370cb631b2) 649 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 650 651commit 1352a1d2f78cb0433d421ef86bfce2a5a1646807 652Author: Michel Dänzer <michel.daenzer@amd.com> 653Date: Wed Nov 2 12:35:55 2016 +0900 654 655 Check Xorg version at runtime instead of build time in two places 656 657 This means that all possible paths can be handled as intended, no matter 658 which Xorg version the driver happened to be compiled against. 659 660 (Ported from radeon commit 350a2645a1b127227ff294c0b62d20000d0fd48a) 661 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 662 663commit 5da43c5da8adc139d57d89975a52eef91a5595e1 664Author: Michel Dänzer <michel.daenzer@amd.com> 665Date: Tue Nov 1 16:01:24 2016 +0900 666 667 Require xserver 1.10 or newer 668 669 1.10.0 was released in February 2011. 670 671 We've been accidentally requiring 1.10 or newer since c7d27c94cb65 ("Keep 672 track of damage event related flushes per-client"). 673 674 (Ported from radeon commit 5df36de39952c3a26cb2fbc125f298139a9dd5bc) 675 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 676 677commit dd4a740714e481b09312a04883aa6e0f5200ca81 678Author: Michel Dänzer <michel.daenzer@amd.com> 679Date: Thu Oct 27 11:22:36 2016 +0900 680 681 present: Check tiling info for flips 682 683 The kernel driver doesn't handle flipping between buffers with 684 different tiling parameters correctly. 685 686 Fixes display corruption with fullscreen apps using different tiling 687 modes (e.g. due to R600_DEBUG=notiling or R600_DEBUG=no2d) via DRI3. 688 689 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 690 691commit 3c1f4386ba7d0b6c16bdd2b2178f978f2f154ba8 692Author: Michel Dänzer <michel.daenzer@amd.com> 693Date: Wed Oct 26 16:19:01 2016 +0900 694 695 Consume all available udev events at once 696 697 We get multiple udev events for actions like docking a laptop into its 698 station or plugging a monitor to the station. By consuming as many 699 events as we can, we reduce the number of output re-evalutions. 700 701 It depends on the timing how many events can be consumed at once. 702 703 (Inspired by xserver commit 363f4273dd4aec3e26cc57ecb6c20f27e6c813d8) 704 (Ported from radeon commit 22b5ce9548393ba2ff73ee234ecd82eeaf0ef6c4) 705 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 706 707commit c87dff3257e797cfd80d208c9a612b21978ff4eb 708Author: Hans de Goede <hdegoede@redhat.com> 709Date: Wed Oct 26 16:17:04 2016 +0900 710 711 PRIME: Fix swapping of provider sink / source capabilities 712 713 When a card has import capability it can be an offload _sink_, not a 714 source and vice versa for export capability. 715 716 This went unnoticed sofar because most gpus have both import and export 717 capability. 718 719 Signed-off-by: Hans de Goede <hdegoede@redhat.com> 720 (Ported from xserver commit 94a1c77259ce39ba59ad87615df39b570ffab435) 721 (Ported from radeon commit 82d3c8f5500d2a6fb1495e217a0b79c396f1534c) 722 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 723 724commit 9c4416422f2d07dbfa7c0b18beb1353f122fc1a1 725Author: Michel Dänzer <michel.daenzer@amd.com> 726Date: Wed Oct 26 16:15:42 2016 +0900 727 728 Always call PixmapStopDirtyTracking in drmmode_set_scanout_pixmap 729 730 Otherwise, we may leak screen->pixmap_dirty_list entries if 731 drmmode_set_scanout_pixmap is called repatedly with ppix != NULL, which 732 can happen from RRReplaceScanoutPixmap. 733 734 (Inspired by xserver commit b773a9c8126222e5fed2904d012fbf917a9f22fd) 735 (Ported from radeon commit 6c940446ddadf418ee4959e46fa552b6c1cf6704) 736 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 737 738commit 0a91f11c03400e3f92a2b048505f39e7de7e87fc 739Author: Michel Dänzer <michel.daenzer@amd.com> 740Date: Wed Oct 26 16:14:45 2016 +0900 741 742 Don't rely on randr_crtc->scanout_pixmap in drmmode_set_scanout_pixmap 743 744 RRReplaceScanoutPixmap may set randr_crtc->scanout_pixmap = NULL before 745 we get here. 746 747 (Inspired by xserver commit f4c37eeee7953df1fe0e3196eda452acf0078e61) 748 v2: Always return TRUE in the if (!ppix) block. 749 (Cherry picked from radeon commit 61df12e2377cbb19a19ca9d5624df8959822da9f) 750 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 751 752commit b37f4774880bfd0cbe50273ac0d9c539d81995f9 753Author: Michel Dänzer <michel.daenzer@amd.com> 754Date: Tue Oct 25 16:30:46 2016 +0900 755 756 Sayōnara, AM_MAINTAINER_MODE! 757 758 If --enable-maintainer-mode got lost from config.status for any reason, 759 builds would fail in mysterious ways after changing between different 760 Git commits. 761 762 There are more reasons for dropping it in the automake manual: 763 764 https://www.gnu.org/software/automake/manual/html_node/maintainer_002dmode.html 765 766 I'm not aware of any reason why --disable-maintainer-mode would ever be 767 useful with this project. 768 769 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 770 (Cherry picked from radeon commit 49cf3b5032a7ce40afe514b7092440e3e19e05aa) 771 772commit c8d9ad0e188d3da3a35006a00536d61e23305830 773Author: Michel Dänzer <michel.daenzer@amd.com> 774Date: Wed Oct 19 18:16:47 2016 +0900 775 776 Order unique chipsets according to first appearance in ati_pciids.csv 777 778 Instead of lexically. This makes it more likely for similar generations 779 to be close to each other in the list of unique chipsets. 780 781 (Ported from radeon commit 1ce1b1656acc6211deb2091ff7f28d51b6daf86b, 782 plus change $numunique++ => ++$numunique to fix OLAND getting listed 783 twice) 784 785 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 786 787commit 7cc04035c55788261cda89a915c433c2add6cad9 788Author: Michel Dänzer <michel.daenzer@amd.com> 789Date: Wed Sep 28 15:59:22 2016 +0900 790 791 Enable HW cursor support with PRIME slave output & Xorg > 1.18.99.901 792 793 Supported since Xorg 1.18.99.2, but buggy until 1.18.99.901. 794 795 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 796 797commit d42773eb45baff5933730e26878a0b45fcf07b65 798Author: Michel Dänzer <michel.daenzer@amd.com> 799Date: Wed Sep 28 18:17:53 2016 +0900 800 801 Rotate and reflect cursor hotspot position for drmModeSetCursor2 802 803 We were always passing the hotspot position in the X screen coordinate 804 space, but drmModeSetCursor2 needs it in the CRTC coordinate space. The 805 wrong hotspot position would cause the kernel driver to adjust the 806 HW cursor position incorrectly when the hotspot position changed. 807 808 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 809 810commit bdee9f4dd4f21015e7696e06c4b485ab2b3a16dc 811Author: Michel Dänzer <michel.daenzer@amd.com> 812Date: Wed Aug 31 16:46:56 2016 +0900 813 814 Add support for ScreenPtr::SyncSharedPixmap 815 816 This allows deferring shared pixmap updates between different drivers. 817 818 (Ported from radeon commit 53be26b00e83f871f0afd39caa5a7a1d6ec4aea1) 819 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 820 821commit 97d7386caf7ba53d2cf398b8a9bb65d0a2a4770a 822Author: Michel Dänzer <michel.daenzer@amd.com> 823Date: Fri Sep 16 16:36:23 2016 +0900 824 825 Untangle HAS_XORG_CONF_DIR / --with-xorg-conf-dir lines in configure.ac 826 827 $sysconfigdir used to be part of the default --with-xorg-conf-dir value, 828 but it no longer is. 829 830 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 831 832commit aa8a3fa2468094cd37959179e8417ba7ba0a326c 833Author: Michel Dänzer <michel.daenzer@amd.com> 834Date: Fri Sep 16 15:59:16 2016 +0900 835 836 Fix handling of configure option --with-xorg-conf-dir 837 838 There were two problems: 839 840 I accidentally changed the variable name in the AC_ARG_WITH stanza from 841 configdir to xorgconfigdir, so specifying --with-xorg-conf-dir wouldn't 842 work correctly. Fix this back to configdir. 843 844 If neither --with-xorg-conf-dir nor --prefix is specified on the command 845 line, the $prefix variable doesn't contain "/usr/local" (the default 846 prefix) yet at this point but "NONE". So make install would attempt to 847 install 10-amdgpu.conf in ${DESTDIR}NONE/share/X11/xorg.conf.d/ . Fix 848 this by leaving ${prefix} verbatim in the default value, to be resolved 849 by make. 850 851 Also print the configdir value along with the values of other similar 852 configuration variables. 853 854 Reported-by: Timo Aaltonen <tjaalton@debian.org> 855 Reviewed-by: Julien Cristau <jcristau@debian.org> 856 857commit cd3acb75718dfd42dd25d58b4e7bd4db27b659d8 858Author: Michel Dänzer <michel.daenzer@amd.com> 859Date: Wed Sep 14 18:33:42 2016 +0900 860 861 Use --with-xorg-conf-dir=$prefix/share/X11/xorg.conf.d by default 862 863 We were using the result of `pkg-config --variable=sysconfigdir 864 xorg-server` before, which may not be inside $prefix, so make install 865 might fail for 10-amdgpu.conf . 866 867 Fixes make distcheck in that case, and possibly also 10-amdgpu.conf 868 seemingly missing from some distribution packages. 869 870 This matches what some (though not all) input drivers are doing for their 871 xorg.conf.d snippets. 872 873commit 0f8df8584ad61a3e47fe303b34cd7b0c4ed08bb0 874Author: Michel Dänzer <michel.daenzer@amd.com> 875Date: Thu Sep 8 18:14:49 2016 +0900 876 877 Make TearFree effective with PRIME slave scanout 878 879 TearFree can now prevent tearing with any possible display 880 configuration. 881 882 Note that there may still be inter-GPU tearing if the primary GPU uses 883 a different driver. 884 885 (Ported from radeon commit 38797a33117222dadbc89e5f21ed8cd5deef9bea) 886 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 887 888commit d6feed2cd78fe879aba4860a6d9bc2e388b9f135 889Author: Michel Dänzer <michel.daenzer@amd.com> 890Date: Thu Sep 8 17:56:24 2016 +0900 891 892 Synchronize scanout pixmaps for TearFree 893 894 Copy the damaged areas which are still valid in the other scanout pixmap 895 from there, then only copy the remaining damaged area from the screen 896 pixmap. 897 898 This is slightly more efficient (only needs one Damage record instead of 899 two, and only needs to copy each screen update across PCIe once with 900 ShadowPrimary and a discrete GPU), and will be significantly more 901 efficient for PRIME with the following change. 902 903 (Ported from radeon commit eda1f3df6aaed683036369fe8820da4dac3c2ae2) 904 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 905 906commit 4927b84ec84bc0cb5055686cca6be54390f82803 907Author: Michel Dänzer <michel.daenzer@amd.com> 908Date: Thu Sep 8 17:52:25 2016 +0900 909 910 Move up amdgpu_scanout_extents_intersect 911 912 Will be needed higher up by the following changes. No functional change. 913 914 (Ported from radeon commit 2f6e5fb15f1a9ce523c85550e493f8bda9d0c00f) 915 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 916 917commit 1c725f63961746258f6138b47037ec18bf508d78 918Author: Michel Dänzer <michel.daenzer@amd.com> 919Date: Thu Sep 8 17:45:32 2016 +0900 920 921 Factor out transform_region helper 922 923 (Ported from radeon commit 5a57005178fc13b6f7e513458ca6dae72a3e5783) 924 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 925 926commit c92842764f95fa09e145d81f80e9fa39ea8c453c 927Author: Michel Dänzer <michel.daenzer@amd.com> 928Date: Thu Sep 8 17:26:18 2016 +0900 929 930 Only copy from screen pixmap to shared pixmap on demand for slave scanout 931 932 Only copy once for each time we update the corresponding scanout pixmap. 933 This can significantly reduce the bandwidth usage when there are 934 frequent updates to the screen pixmap. 935 936 This initial implementation only works when both the master and slave 937 screens use this driver. 938 939 (Ported from radeon commit 99232f64db52812a843cd616d263d3a6b90eef3d) 940 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 941 942commit 61ceefe17fe9e6ffbaaad0e216b2bd37fd39f47d 943Author: Michel Dänzer <michel.daenzer@amd.com> 944Date: Thu Sep 8 17:15:03 2016 +0900 945 946 Track damage accurately for RandR 1.4 slave scanout 947 948 This further reduces the PCIe bandwidth usage. 949 950 (Ported from radeon commit b0867063abb197b9134166706d99fcbe5f204bb5, 951 plus leak fix from 5a57005178fc13b6f7e513458ca6dae72a3e5783) 952 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 953 954commit 6d31fb124d4418e64c949bde9ed1facf95967762 955Author: Michel Dänzer <michel.daenzer@amd.com> 956Date: Thu Sep 8 17:04:05 2016 +0900 957 958 Handle RandR 1.4 slave dirty updates via amdgpu_drm_queue 959 960 This reduces PCIe bandwidth usage and tearing. 961 962 (Ported from radeon commit ad0a0656dd0e74683e6d7789decba827aa29c221) 963 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 964 965commit b10ecdbd89b0a60a990c78c3e53bab6c4c96fe9f 966Author: Michel Dänzer <michel.daenzer@amd.com> 967Date: Thu Sep 8 16:48:59 2016 +0900 968 969 Use drmmode_crtc_scanout_* helpers for RandR 1.4 scanout pixmaps 970 971 This should allow using multiple CRTCs via RandR 1.4 even with xserver 972 < 1.17. It also simplifies the code a little, and paves the way for 973 following changes. 974 975 (Ported from radeon commits 4cfa4615f79f64062e5e771cd45dd7048f48b4f6 976 and a92c27484703abc7c410b6ae0e4b8d1efbbb8e6f) 977 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 978 979commit 9565981f751b0884cbfa885b8f3af3d41a965a2b 980Author: Michel Dänzer <michel.daenzer@amd.com> 981Date: Wed Sep 7 18:49:54 2016 +0900 982 983 Wait for pending flips to complete before turning off an output or CRTC 984 985 At least with older kernels, the flip may never complete otherwise, 986 which can result in us hanging in drmmode_set_mode_major. 987 988 Fixes: https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-ati/+bug/1577170 989 990 (Ported from radeon commits 9090309e057dc703d1a5bffd88e6cae14108cfc3, 991 e520ce0ec0adf91ddce5c932d4b3f9477fd49304, 992 a36fdaff40d5b4795a1400c348a80eee94892212 and 993 4bd2d01552f18153afa03a8947b22eebf3d67c6b) 994 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 995 996commit c7d27c94cb656899746898c2e55407c3e3d7cdc8 997Author: Michel Dänzer <michel.daenzer@amd.com> 998Date: Wed Sep 7 18:28:23 2016 +0900 999 1000 Keep track of damage event related flushes per-client 1001 1002 This further reduces the compositing slowdown due to flushing overhead, 1003 by only flushing when the X server actually sends XDamageNotify events 1004 to a client, and there hasn't been a flush yet in the meantime. 1005 1006 (Ported from radeon commit 121a6de72da5fcf9a32408eff36b2235f3dfbcfe) 1007 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1008 1009commit 58773d1945cfa8155d8a6c5eb3f95097535604ef 1010Author: Michel Dänzer <michel.daenzer@amd.com> 1011Date: Wed Sep 7 18:14:10 2016 +0900 1012 1013 Use EventCallback to avoid flushing every time in the FlushCallback 1014 1015 We only need to flush for XDamageNotify events. 1016 1017 Significantly reduces compositing slowdown due to flushing overhead, in 1018 particular with glamor. 1019 1020 (Ported from radeon commit 9a1afbf61fbb2827c86bd86d295fa0848980d60b) 1021 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1022 1023commit d166d04f6951f6a48d7d5ce5d31bba857fe0cb06 1024Author: Michel Dänzer <michel.daenzer@amd.com> 1025Date: Wed Sep 7 18:03:05 2016 +0900 1026 1027 Add explicit AMDGPU_DRM_QUEUE_ERROR define 1028 1029 Should make the amdgpu_drm_queue_alloc error handling clearer, and gets 1030 rid of a compile warning about it returning NULL. 1031 1032 (Ported from radeon commit a37af701768b12d86868a831a79f1e02ee4968cf) 1033 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1034 1035commit 6a1ba044c2b71081e6060d0c096917d6238f2145 1036Author: Michel Dänzer <michel.daenzer@amd.com> 1037Date: Mon Aug 29 16:43:59 2016 +0900 1038 1039 Only list each unique chipset family once in the log file 1040 1041 Acked-by: Christian König <christian.koenig@amd.com> 1042 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1043 1044commit 7d050d15d49ef25e86e7abe88dafb52370715640 1045Author: Michel Dänzer <michel.daenzer@amd.com> 1046Date: Mon Aug 29 16:13:20 2016 +0900 1047 1048 Add missing Kaveri PCI ID (1318) 1049 1050 Found by comparing src/pcidb/ati_pciids.csv with xf86-video-ati. 1051 1052 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1053 1054commit aa5492660958e359bdc2107cba9a211ff988c90e 1055Author: Michel Dänzer <michel.daenzer@amd.com> 1056Date: Mon Aug 29 15:52:48 2016 +0900 1057 1058 Add Mullins PCI IDs 1059 1060 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=97472 1061 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1062 1063commit 73c8dc000ad6b2b53ba3aa7155f5e8f6b55623b7 1064Author: Qiang Yu <Qiang.Yu@amd.com> 1065Date: Mon Aug 22 19:13:26 2016 +0800 1066 1067 DRI2: Fix amdgpu_dri2_exchange_buffers width/height copy'n'paste error 1068 1069 Signed-off-by: Qiang Yu <Qiang.Yu@amd.com> 1070 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1071 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 1072 1073commit 5a4d3267ac3823fe58b51b0b9075b82375d7180c 1074Author: Michel Dänzer <michel.daenzer@amd.com> 1075Date: Wed Aug 17 18:57:01 2016 +0900 1076 1077 Remove unused lut_r/g/b arrays from drmmode_crtc_private_rec 1078 1079 Fixes: 1091f28e1fa2 ("Remove drmmode_load_palette") 1080 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1081 1082commit c4364520691d18961f0a6b77071baeeffaa80a11 1083Author: Marek Olšák <marek.olsak@amd.com> 1084Date: Fri Aug 19 12:42:38 2016 +0200 1085 1086 Fix cursor size for SI 1087 1088 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 1089 Acked-by: Edward O'Callaghan <funfunctor@folklore1984.net> 1090 1091commit 2eb5d77b841e55e7328df4b95c0d41fec30ce10f 1092Author: Ronie Salgado <roniesalg@gmail.com> 1093Date: Thu Feb 11 03:00:14 2016 -0300 1094 1095 Add SI PCI IDs 1096 1097 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 1098 1099commit abd1a7901c95e4bc78415cf1b7923623b9177152 1100Author: Michel Dänzer <michel.daenzer@amd.com> 1101Date: Wed Jun 29 17:54:26 2016 +0900 1102 1103 DRI2: Add interpolated_vblanks in amdgpu_dri2_get_crtc_msc 1104 1105 We need that in amdgpu_dri2_drawable_crtc as well for priv->vblank_delta 1106 to work as intended. 1107 1108 amdgpu_dri2_get_msc was already doing this. 1109 1110 Fixes hangs in some cases when using VDPAU via DRI2 and moving the 1111 window between CRTCs. 1112 1113 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1114 1115commit 978242977e5dc905e1d5a46b1b0d34b356c7af26 1116Author: Qiang Yu <Qiang.Yu@amd.com> 1117Date: Wed Jul 13 19:25:12 2016 +0800 1118 1119 Fix amdgpu_mode_hotplug crash on multi GPU platform. 1120 1121 On multi GPU platform, some screen is created by other GPU DDX. 1122 1123 Signed-off-by: Qiang Yu <Qiang.Yu@amd.com> 1124 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 1125 1126commit fdd1209e26128b3e894f2867fac3a1b08fe1f29e 1127Author: Keith Packard <keithp@keithp.com> 1128Date: Tue Jul 19 09:16:32 2016 -0700 1129 1130 Use NotifyFd for drm fd 1131 1132 NotifyFd is available after API 22, and must be used after API 23. 1133 1134 Signed-off-by: Keith Packard <keithp@keithp.com> 1135 1136commit 17c0cf49746a20fb25610c24a40c441f88c08365 1137Author: Adam Jackson <ajax@redhat.com> 1138Date: Tue Jul 19 10:03:56 2016 -0400 1139 1140 Adapt Block/WakeupHandler signature for ABI 23 1141 1142 Signed-off-by: Adam Jackson <ajax@redhat.com> 1143 1144commit b5e2b964b7884c205a7c0fa578e05e867c176fcc 1145Author: Michel Dänzer <michel.daenzer@amd.com> 1146Date: Wed Jul 6 17:46:56 2016 +0900 1147 1148 Only use RandR APIs if RandR is enabled 1149 1150 Fixes crash with Xinerama enabled, which disables RandR. 1151 1152 Fixes: https://bugs.debian.org/827984 1153 1154 (Ported from radeon commit 3be841d0ae7d505cef325993205b12d15e98dba9) 1155 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1156 1157commit 84496ebc89a9973347c774c13ff6f4667fcdbe69 1158Author: Michel Dänzer <michel.daenzer@amd.com> 1159Date: Wed Jul 6 17:43:36 2016 +0900 1160 1161 Add .editorconfig file 1162 1163 Basically a conversion from .dir-locals.el. EditorConfig supports many 1164 more editors and IDEs. 1165 1166 (Ported from radeon commit aa07b365d7b0610411e118f105e49daff5f5a5cf) 1167 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1168 1169commit a576430526cbc404de64b30e1377a356644e8024 1170Author: Michel Dänzer <michel.daenzer@amd.com> 1171Date: Fri Jun 24 16:28:25 2016 +0900 1172 1173 Clear damage in amdgpu_scanout_update if it doesn't intersect the CRTC 1174 1175 There's no need to test that same damage again. 1176 1177 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1178 1179commit ede7f2bcae63be65e05e3029bfe7c742e5978932 1180Author: Michel Dänzer <michel.daenzer@amd.com> 1181Date: Fri Jun 24 16:19:15 2016 +0900 1182 1183 Remove w/h parameters from amdgpu_scanout_extents_intersect 1184 1185 We can use the dimensions of the CRTC's mode instead. 1186 1187 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1188 1189commit bf000ea7ef91f5ecb59fc3c1ab8ed9eddcc0841d 1190Author: Michel Dänzer <michel.daenzer@amd.com> 1191Date: Thu Jun 23 17:28:16 2016 +0900 1192 1193 Make the dedicated scanout mechanism work with arbitrary transforms v2 1194 1195 This makes TearFree work with arbitrary transforms, and makes transforms 1196 work better even without TearFree, with xserver >= 1.12. 1197 1198 v2: Preserve clamping of transformed damage extents to CRTC boundaries. 1199 1200 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1201 1202commit d96dabc71b1b32dc4b422a9633cdd4e0e95da052 1203Author: Michel Dänzer <michel.daenzer@amd.com> 1204Date: Thu Jun 23 16:27:45 2016 +0900 1205 1206 Destroy all dedicated scanout buffers during CloseScreen 1207 1208 Fixes leaking active scanout buffers across a server reset, which also 1209 fixes server reset with glamor and active scanout buffers. 1210 1211 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1212 1213commit 1091f28e1fa239ee1a973d84a8376fa4a95d7247 1214Author: Michel Dänzer <michel.daenzer@amd.com> 1215Date: Thu Jun 23 12:47:04 2016 +0900 1216 1217 Remove drmmode_load_palette 1218 1219 Not used by any supported version of xserver. 1220 1221 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1222 1223commit 4d506c23c9a628204fa23607931557b07ada3e31 1224Author: Michel Dänzer <michel.daenzer@amd.com> 1225Date: Wed Jun 22 17:16:24 2016 +0900 1226 1227 present: Separate checks for flips vs unflips v2 1228 1229 All unflip checks apply to flips as well, but not vice versa. 1230 1231 v2: Add comment above amdgpu_present_check_unflip (Alex) 1232 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1233 1234commit decabd574f90d3df397c80ec931b3fde8a4afb49 1235Author: Michel Dänzer <michel.daenzer@amd.com> 1236Date: Wed Jun 22 17:43:41 2016 +0900 1237 1238 dri2: Don't allow flipping when using a dedicated scanout buffer 1239 1240 Fixes issues when mixing rotation and page flipping with current xserver 1241 Git master. 1242 1243 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1244 1245commit 3ed28ce7cd26f89969617ba901ff253091d0d469 1246Author: Michel Dänzer <michel.daenzer@amd.com> 1247Date: Wed Jun 22 16:54:01 2016 +0900 1248 1249 present: Don't allow flipping when using a dedicated scanout buffer 1250 1251 Fixes issues when mixing rotation and page flipping with current xserver 1252 Git master. 1253 1254 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1255 1256commit 9c3324715fd395fd486ea341654d78f4f298b97f 1257Author: Michel Dänzer <michel.daenzer@amd.com> 1258Date: Wed Jun 22 16:12:32 2016 +0900 1259 1260 Make sure drmmode_crtc->scanout[] are destroyed when not needed 1261 1262 We failed to do this when going back to scanning out directly from the 1263 screen pixmap. 1264 1265 As a bonus, since we now destroy drmmode_crtc->scanout[] after setting 1266 the new scanout buffer, we may avoid the CRTC turning off intermittently 1267 in this case. 1268 1269 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1270 1271commit 3bce0519a4008cf87c0e31a7a579e10f5dcdd2f3 1272Author: Michel Dänzer <michel.daenzer@amd.com> 1273Date: Wed Jun 22 16:19:07 2016 +0900 1274 1275 Simplify drmmode_set_mode_major error handling 1276 1277 Initialize ret = FALSE and only set it to TRUE when we've succeeded. 1278 1279 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1280 1281commit a3ca1500703837cbb8d49c554199a25dea7d5e1e 1282Author: Hans de Goede <hdegoede@redhat.com> 1283Date: Wed Jun 1 15:14:32 2016 +0200 1284 1285 Only add main fb if necessary 1286 1287 If we're doing reverse-prime; or doing rotation the main fb is not used, 1288 and there is no reason to add it in this case. 1289 1290 Signed-off-by: Hans de Goede <hdegoede@redhat.com> 1291 (Ported from xserver commit 4313122dea0df9affc280ee698e929489061ccc6) 1292 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1293 1294commit 9ca1c24235ff5ab2e028333fc326e2eff008c574 1295Author: Hans de Goede <hdegoede@redhat.com> 1296Date: Wed Jun 1 15:11:05 2016 +0200 1297 1298 Remove unnecessary fb addition from drmmode_xf86crtc_resize 1299 1300 drmmode_set_mode_major() is the only user of drmmode->fb_id and will 1301 create it if necessary. 1302 1303 Signed-off-by: Hans de Goede <hdegoede@redhat.com> 1304 (Ported from xserver commit 877453212166fdc912e0d687cdecee11aba563b5) 1305 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1306 1307commit 0d42082108c264568e2aadd15ace70e72388bc65 1308Author: Michel Dänzer <michel.daenzer@amd.com> 1309Date: Wed Jun 22 19:01:03 2016 +0900 1310 1311 Call amdgpu_glamor_create_screen_resources after ModifyPixmapHeader 1312 1313 Otherwise, glamor doesn't pick up the new screen pixmap size and 1314 continues using the old size, leaving garbage in some areas after 1315 enlarging the screen. 1316 1317 Fixes regression from commit c315c00e44afc91a7c8e2eab5af836d9643ebb88 1318 ("Propagate failure from amdgpu_set_pixmap_bo"). 1319 1320 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1321 1322commit e7e71eabbbccdeabcae1bc6fffabc27c272090ab 1323Author: Michel Dänzer <michel.daenzer@amd.com> 1324Date: Mon Mar 28 18:49:15 2016 +0900 1325 1326 Adapt to XF86_CRTC_VERSION 7 1327 1328 Now the HW cursor can be used with TearFree rotation. 1329 1330 This also allows always using the separate scanout pixmap mechanism for 1331 rotation, so that should be much smoother even without TearFree enabled. 1332 1333 (Ported from radeon commit 7835558acdce318130ba4a09ef936fd675e3197d) 1334 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1335 1336commit 7f7f9825caf3983902491da27c16d14cd8bf9b7d 1337Author: Michel Dänzer <michel.daenzer@amd.com> 1338Date: Mon Jun 13 18:58:49 2016 +0900 1339 1340 Free priv in amdgpu_set_pixmap_bo also if priv->bo == NULL 1341 1342 Fixes memory leak when destroying pixmaps with priv->bo == NULL. 1343 1344 Reported-by: Qiang Yu <qiang.yu@amd.com> 1345 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1346 1347commit 397aedafee437c125b8ac1feafb1c3b466842aeb 1348Author: Michel Dänzer <michel.daenzer@amd.com> 1349Date: Mon Jun 13 18:34:11 2016 +0900 1350 1351 glamor: Fix leak of pixmap private when replacing BO 1352 1353 Reported-by: Qiang Yu <qiang.yu@amd.com> 1354 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1355 1356commit 5b4a8a7a6ed70a50be252fa9b34d3b3a17cdf91a 1357Author: Michel Dänzer <michel.daenzer@amd.com> 1358Date: Tue Jun 14 19:00:18 2016 +0900 1359 1360 Use amdgpu_set_pixmap_bo in amdgpu_set_shared_pixmap_backing 1361 1362 Fixes leaking any existing pixmap private. 1363 1364 While we're at it, also fix leaking the GBM BO if 1365 amdgpu_glamor_create_textured_pixmap fails. 1366 1367 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1368 1369commit c315c00e44afc91a7c8e2eab5af836d9643ebb88 1370Author: Michel Dänzer <michel.daenzer@amd.com> 1371Date: Wed Jun 15 17:20:36 2016 +0900 1372 1373 Propagate failure from amdgpu_set_pixmap_bo 1374 1375 Preparation for the following fixes. 1376 1377 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1378 1379commit 74602c4221e3c84949fd69f690cbc66dcae384ea 1380Author: Michel Dänzer <michel.daenzer@amd.com> 1381Date: Tue Jun 14 18:53:34 2016 +0900 1382 1383 glamor: Make amdgpu_glamor_create_textured_pixmap take amdgpu_buffer* 1384 1385 Preparation for the following fixes. 1386 1387 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1388 1389commit 0007c2f018ba663303d91d847e7c085269a23062 1390Author: Michel Dänzer <michel.daenzer@amd.com> 1391Date: Wed Jun 8 16:27:33 2016 +0900 1392 1393 glamor: Reallocate linear pixmap BO if necessary for DRI2 PRIME 1394 1395 Fixes corruption when using DRI2 PRIME render offloading with the master 1396 screen using this driver. 1397 1398 Reported-by: Qiang Yu <qiang.yu@amd.com> 1399 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1400 Tested-by: Qiang Yu <qiang.yu@amd.com> 1401 1402commit 5518bf5d793439b5bab369e5fc18de9a4a3b9dd6 1403Author: Michel Dänzer <michel.daenzer@amd.com> 1404Date: Wed Jun 8 16:44:26 2016 +0900 1405 1406 Move DRI2's local fixup_glamor helper to amdgpu_glamor_set_pixmap_bo v2 1407 1408 So it can be used outside of the DRI2 code. 1409 1410 v2: Keep pixmap refcnt increment in amdgpu_dri2_create_buffer2 (Qiang Yu) 1411 1412 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1413 Tested-by: Qiang Yu <qiang.yu@amd.com> (v1) 1414 1415commit 641f4647b7f51dfd2da330376cd10fa9702b6423 1416Author: Michel Dänzer <michel.daenzer@amd.com> 1417Date: Wed Jun 8 16:39:10 2016 +0900 1418 1419 Consolidate get_drawable_pixmap helper 1420 1421 There were two static helpers for the same purpose. Consolidate them 1422 into a single inline helper which can be used anywhere. 1423 1424 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1425 Tested-by: Qiang Yu <qiang.yu@amd.com> 1426 1427commit 8e40f190e4704c2802bf0f073f17e742786d0f18 1428Author: Michel Dänzer <michel.daenzer@amd.com> 1429Date: Wed Jun 8 16:00:21 2016 +0900 1430 1431 Add amdgpu_pixmap_get_tiling_info 1432 1433 Retrieves the tiling information about a pixmap BO from the kernel 1434 driver. 1435 1436 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1437 Tested-by: Qiang Yu <qiang.yu@amd.com> 1438 1439commit e7eeb6ad1133b6023d34b4489959ae330a8e15dd 1440Author: Michel Dänzer <michel.daenzer@amd.com> 1441Date: Wed Jun 8 15:42:01 2016 +0900 1442 1443 Remove amdgpu_share_pixmap_backing 1444 1445 Not used anymore. 1446 1447 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1448 Tested-by: Qiang Yu <qiang.yu@amd.com> 1449 1450commit b36c77695ba77b59a0ccd868454e3af4fc04d5ff 1451Author: Michel Dänzer <michel.daenzer@amd.com> 1452Date: Wed Jun 8 15:38:57 2016 +0900 1453 1454 glamor: Fix amdgpu_glamor_share_pixmap_backing for priv->bo == NULL 1455 1456 Fixes crash when running a compositor and DRI_PRIME client via DRI2. 1457 1458 Reported-by: Qiang Yu <qiang.yu@amd.com> 1459 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1460 Tested-by: Qiang Yu <qiang.yu@amd.com> 1461 1462commit 60ced5026ebc34d9f32c7618430b6a7ef7c8eb4b 1463Author: Alex Deucher <alexander.deucher@amd.com> 1464Date: Tue May 17 16:59:41 2016 -0400 1465 1466 add missing bonaire pci id 1467 1468 Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 1469 1470commit 8e89448ee00da16e05e6777f34bb75d2dd6f7025 1471Author: Flora Cui <Flora.Cui@amd.com> 1472Date: Tue May 17 11:02:09 2016 +0800 1473 1474 Add more Polaris 11 PCI IDs 1475 1476 Signed-off-by: Flora Cui <Flora.Cui@amd.com> 1477 Reviewed-by: Christian König <christian.koenig@amd.com> 1478 Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 1479 1480commit a59b23d64285741a7a25e314343f6261046d980f 1481Author: Flora Cui <Flora.Cui@amd.com> 1482Date: Mon May 16 17:25:34 2016 +0800 1483 1484 Add more Polaris 10 PCI IDs 1485 1486 Signed-off-by: Flora Cui <Flora.Cui@amd.com> 1487 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1488 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 1489 Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 1490 1491commit 14606e127f4b6eb0b00fd42cec13d524a67e4c4a 1492Author: Michel Dänzer <michel.daenzer@amd.com> 1493Date: Thu May 12 16:38:56 2016 +0900 1494 1495 Handle Zaphod mode correctly in amdgpu_mode_hotplug 1496 1497 We need to scan both screens of the entity for existing connectors, and 1498 enumerate DVI & HDMI connectors consistently regardless of which screen 1499 they're assigned to. 1500 1501 Fixes crash when hot-(un)plugging connectors in Zaphod mode. 1502 1503 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=93415 1504 (Ported from radeon commit c801f9f10a5d72d935faf21e72f7e7808fb4f05f) 1505 1506 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1507 1508commit 861da1d5c243f51d6c1f76e5b13e5184aa608776 1509Author: Michel Dänzer <michel.daenzer@amd.com> 1510Date: Thu May 12 16:34:30 2016 +0900 1511 1512 Enable DRI3 by default when building for Xorg >= 1.18.3 1513 1514 Seems to work well enough in general now. 1515 1516 (Ported from radeon commit 1181b9c582f10b6c523e4b2988e2ce87ecf3d367) 1517 1518 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1519 1520commit 86f991838824494e68ac277fa27cbd88c23a5ee8 1521Author: Michel Dänzer <michel.daenzer@amd.com> 1522Date: Tue May 10 15:57:04 2016 +0900 1523 1524 present: Support async flips 1525 1526 The xserver Present code only calls radeon_present_flip with 1527 sync_flip=FALSE if radeon_present_screen_init sets 1528 PresentCapabilityAsync, and the latter only sets it if the kernel driver 1529 advertises support for async flips. 1530 1531 (Ported from radeon commit 1ca677309720e2f6c953c9e76f5b34c22a4416c6) 1532 1533 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1534 1535commit 744ac5faff7f58e26fa76974b6bdc345ea4c7c79 1536Author: Michel Dänzer <michel.daenzer@amd.com> 1537Date: Tue May 10 15:47:55 2016 +0900 1538 1539 Add support for async flips to radeon_do_pageflip 1540 1541 Will be used by the next change. No functional change here. 1542 1543 (Ported from radeon commit 90a915c62d012e99193833aecc93974e68880c60) 1544 1545 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1546 1547commit 4822ec7a23d2253c88bc403f17abb6d7a053528c 1548Author: Flora Cui <flora.cui@amd.com> 1549Date: Tue May 10 17:14:00 2016 +0900 1550 1551 add strato pci id 1552 1553 Signed-off-by: Flora Cui <flora.cui@amd.com> 1554 Reviewed-by: Jammy Zhou <Jammy.Zhou@amd.com> 1555 1556commit b93006714b8de972060492cfa311320921a73773 1557Author: Tom St Denis <tom.stdenis@amd.com> 1558Date: Tue Apr 12 08:48:33 2016 -0400 1559 1560 dri3: Return NULL from amdgpu_dri3_pixmap_from_fd if calloc fails. 1561 1562 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 1563 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 1564 1565commit a0bbb373f902e0ffc14570c85faec7e44134f62e 1566Author: Qiang Yu <Qiang.Yu@amd.com> 1567Date: Fri Apr 8 17:29:17 2016 +0800 1568 1569 Remove RR_Capability_SinkOutput for GPU without CRTC. 1570 1571 Signed-off-by: Qiang Yu <Qiang.Yu@amd.com> 1572 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1573 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 1574 1575commit 1a29c4bcc0a286b14f37ab942eb0cad47bc4f337 1576Author: Michel Dänzer <michel.daenzer@amd.com> 1577Date: Mon Apr 11 16:27:40 2016 +0900 1578 1579 Post 1.1.0 release version bump 1580 1581commit a04f4015d6afef20c2b79e2779f6555836ee2b07 1582Author: Michel Dänzer <michel.daenzer@amd.com> 1583Date: Thu Apr 7 16:47:25 2016 +0900 1584 1585 Bump version for 1.1.0 release 1586 1587commit aed1c17c43b2c0c983f6fc0973a5224d0faf32d9 1588Author: Michel Dänzer <michel.daenzer@amd.com> 1589Date: Mon Apr 4 18:28:02 2016 +0900 1590 1591 glamor: Force GPU rendering to/from pixmaps created via DRI3 1592 1593 Fixes crash when running DRI3 clients with ShadowPrimary enabled. 1594 1595 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=94799 1596 1597 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1598 1599commit faf9d720b7d650f5f1ea657a874d08eac3972e60 1600Author: Michel Dänzer <michel.daenzer@amd.com> 1601Date: Fri Apr 1 16:09:51 2016 +0900 1602 1603 Update manpage entry for Option "TearFree" 1604 1605 It's now effective for rotation as well. 1606 1607 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1608 1609commit 5ba95c3abeb8df82aa8d33a47596eae6403ea7af 1610Author: Michel Dänzer <michel.daenzer@amd.com> 1611Date: Fri Apr 1 15:29:26 2016 +0900 1612 1613 Identify DRM event queue entries by sequence number instead of by pointer 1614 1615 If the memory for an entry was allocated at the same address as that for 1616 a previously cancelled entry, the handler could theoretically be called 1617 prematurely, triggered by the DRM event which was submitted for the 1618 cancelled entry. 1619 1620 (Ported from radeon commit 4693b1bd5b5c381e8b7b68a6f7f0c6696d6a68df) 1621 1622 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1623 1624commit 8ecfa69b5a833bd4c39e773a6acfd7eef9144d13 1625Author: Michel Dänzer <michel.daenzer@amd.com> 1626Date: Wed Mar 30 18:33:00 2016 +0900 1627 1628 DRI3: Refuse to open DRM file descriptor for ssh clients 1629 1630 Fixes hangs when attempting to use DRI3 on display connections forwarded 1631 via SSH. 1632 1633 Don't do this for Xorg > 1.18.99.1 since the corresponding xserver 1634 change has landed in Git master. 1635 1636 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=93261 1637 1638 (Ported from radeon commit 0b3aac1de9db42bfca545fa331e4985836682ec7) 1639 1640 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1641 1642commit b2a2e114eec0967f7b67f030fbab8983cf980489 1643Author: Michel Dänzer <michel.daenzer@amd.com> 1644Date: Fri Mar 25 11:55:34 2016 +0900 1645 1646 Revert "Use render node for DRI3 if available" 1647 1648 This reverts commit ea558e645786b08d75307716036045170e97b43e. 1649 1650 It broke VDPAU<->GL interop with DRI3 enabled, because the Gallium VDPAU 1651 code doesn't support DRI3 yet. We can consider re-enabling this once 1652 there is a Mesa release where the Gallium VDPAU code supports DRI3. 1653 1654 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=94675 1655 1656 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1657 1658commit e31a2d668a1b5ebaf75d423c8123cbc8e0dcbae9 1659Author: Flora Cui <Flora.Cui@amd.com> 1660Date: Wed Nov 18 16:44:13 2015 +0800 1661 1662 add polaris10 pci id 1663 1664 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 1665 Signed-off-by: Flora Cui <Flora.Cui@amd.com> 1666 Reviewed-by: Jammy Zhou <Jammy.Zhou@amd.com> 1667 1668commit 6e09b8deb77f76b9bb7d393cc1ad924ebba62eff 1669Author: Flora Cui <Flora.Cui@amd.com> 1670Date: Thu Nov 5 14:16:39 2015 +0800 1671 1672 add polaris11 pci id 1673 1674 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 1675 Signed-off-by: Flora Cui <Flora.Cui@amd.com> 1676 Reviewed-By: Jammy Zhou <Jammy.Zhou@amd.com> 1677 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1678 1679commit 7d32c43fff4c8df32cce150223094f793e036cf3 1680Author: Alex Deucher <alexander.deucher@amd.com> 1681Date: Wed Oct 28 17:28:23 2015 -0400 1682 1683 add Polaris chip families 1684 1685 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 1686 Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 1687 1688commit fbf9ae18cd241b8b78936aa30441e5fbfd9ba1c5 1689Author: Michel Dänzer <michel.daenzer@amd.com> 1690Date: Thu Mar 24 19:05:15 2016 +0900 1691 1692 Require xserver 1.9 or newer 1693 1694 1.9.0 was released in August 2010. 1695 1696 We were already unintentionally relying on things not available in 1.8 1697 for at least a year, and nobody has complained. 1698 1699 (Ported from radeon commit e592f32f8b5f5873fcc18b10a69dd5e4ccf11073) 1700 1701 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1702 1703commit 912db5fbbc6b9b1121c8a03168cb4bd870474376 1704Author: Michel Dänzer <michel.daenzer@amd.com> 1705Date: Thu Mar 24 18:59:05 2016 +0900 1706 1707 Fix build against older versions of xserver 1708 1709 Also slightly clean up the error handling in amdgpu_scanout_do_update. 1710 1711 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=94614 1712 1713 (Ported from radeon commit bde466e5d44cad64b4e4eceaa5de80fdbf86356e) 1714 1715 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1716 1717commit 3fb6280ab3b104b02841c7cab8ed68c1d463c834 1718Author: Michel Dänzer <michel.daenzer@amd.com> 1719Date: Thu Mar 24 18:56:44 2016 +0900 1720 1721 DRI3 only works with acceleration 1722 1723 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=94214 1724 1725 (Ported from radeon commit d21ac4669a8b2cdd4eec5e5a94d1950b7423b8b5) 1726 1727 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1728 1729commit 3177fe817a5f2de4ed10860866a0dd6d6c6ba816 1730Author: Michel Dänzer <michel.daenzer@amd.com> 1731Date: Thu Mar 24 18:51:59 2016 +0900 1732 1733 Check for xf86CursorResetCursor 1734 1735 If it's available, Xorg calls it on each mode configuration change. It 1736 does what xf86_reload_cursors does (and more), so we don't need to call 1737 the latter anymore. 1738 1739 (Ported from radeon commit d670c5c9851b4eff21c845d26c7d7e4eb5ee0fa9) 1740 1741 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1742 1743commit a3dfce7b24e1ea01c1aa62926025a545312cbe13 1744Author: Michel Dänzer <michel.daenzer@amd.com> 1745Date: Thu Mar 24 18:45:46 2016 +0900 1746 1747 Don't try DRI2/Present flipping while the HW cursor can't be used 1748 1749 Flipping doesn't interact correctly with SW cursor: A flip makes the SW 1750 cursor disappear. It will only appear again when the cursor is moved, 1751 but it will be surrounded by corruption, because the SW cursor code 1752 will restore stale screen contents at the old cursor location before 1753 drawing the cursor at the new location. 1754 1755 (Ported from radeon commit 7f3d0780ca65a90117c2a61362dbc0899bd9c0b0) 1756 1757 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1758 1759commit ba9be8f32f0321689133e17c1681809dec8c6cf1 1760Author: Michel Dänzer <michel.daenzer@amd.com> 1761Date: Thu Mar 24 18:44:30 2016 +0900 1762 1763 Factor out HW cursor checking code into drmmode_can_use_hw_cursor 1764 1765 And add a check for RandR 1.4 multihead. 1766 1767 (Ported from radeon commit 3de480e83c0a1824838d662d6d67c9fe85277298) 1768 1769 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1770 1771commit 4a60b4b1851a3cbc2d8ad9048d68eeb6947cf132 1772Author: Michel Dänzer <michel.daenzer@amd.com> 1773Date: Thu Mar 24 12:03:38 2016 +0900 1774 1775 Call AMDGPUBlockHandler_KMS before setting initial modes 1776 1777 Doing it the other way around meant that there was still a possibility 1778 for the front buffer contents to be uninitialized when they start being 1779 scanned out. 1780 1781 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1782 1783commit 37bd79652a8ec612b94a1863e8c580b1cfaf3960 1784Author: Michel Dänzer <michel.daenzer@amd.com> 1785Date: Fri Mar 18 18:51:00 2016 +0900 1786 1787 present: Return rotated CRTCs from amdgpu_present_get_crtc 1788 1789 Sync-to-vblank works fine with rotation. We're still checking for 1790 rotation in amdgpu_present_check_flip. 1791 1792 Returning NULL from here resulted in the xserver present code falling 1793 back to the fake CRTC running at 1 fps. 1794 1795 (Ported from radeon commit a03271de5ecdaa7790d1316e993c4450b91fe936) 1796 1797 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1798 1799commit 6b930fb3285dea4a6440e31099c96f08da508d49 1800Author: Michel Dänzer <michel.daenzer@amd.com> 1801Date: Fri Mar 18 18:47:10 2016 +0900 1802 1803 present: Clear drmmode->fb_id before calling set_mode_major for unflip 1804 1805 Without this, drmmode_set_mode_major may just re-set the FB for the 1806 last flipped BO, in which case the display will probably freeze. 1807 1808 Reproduction recipe: Enable rotation while a fullscreen client is 1809 flipping. 1810 1811 (Ported from radeon commit 40191d82370eb7e58bd34c44966cbf44c3703229) 1812 1813 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1814 1815commit 6889e091442b6ba1b9351e72bd067425e87d96e9 1816Author: Michel Dänzer <michel.daenzer@amd.com> 1817Date: Fri Mar 18 18:18:04 2016 +0900 1818 1819 Make Option "TearFree" effective for rotated/reflected outputs as well 1820 1821 Support varies by xserver version: 1822 1823 < 1.12: No support for the driver handling rotation/reflection 1824 1.12-1.15: Support for driver handling rotation/reflection, but there's 1825 a bug preventing the HW cursor from being visible everywhere 1826 it should be on rotated outputs, so we can only support 1827 TearFree for reflection. 1828 >= 1.16: While the bug above is still there (fixes pending review), 1829 the driver can force SW cursor for rotated outputs, so we 1830 can support TearFree for rotation as well. 1831 1832 (Ported from radeon commit 798c4fd16d339b1ad5fd729cc884be084c60e38b) 1833 1834 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1835 1836commit da4e0c66fcbcf63143372720e3d606a462332e3a 1837Author: Michel Dänzer <michel.daenzer@amd.com> 1838Date: Fri Mar 18 18:15:34 2016 +0900 1839 1840 Consolidate pScreen usage in drmmode_set_mode_major 1841 1842 We were already relying on pScrn->pScreen being non-NULL in some cases, 1843 which is supposedly always true ever since this function is no longer 1844 getting called from ScreenInit. 1845 1846 (Ported from radeon commit eb611a2e4ecce7a1ab85fd72b9b78e3269311dd5) 1847 1848 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1849 1850commit 0bbf09dd7ef54133b3e534becb3ba15c0cf3eed2 1851Author: Michel Dänzer <michel.daenzer@amd.com> 1852Date: Fri Mar 18 18:14:28 2016 +0900 1853 1854 Remove check for XF86_CRTC_VERSION 3 1855 1856 We require xserver >= 1.8, which was already at version 3. 1857 1858 (Ported from radeon commit 06602171386e538081c298645fb7ca1a70fe80cc) 1859 1860 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1861 1862commit 3485ca0051a224d00135d4024a97a6c4e85a9644 1863Author: Michel Dänzer <michel.daenzer@amd.com> 1864Date: Fri Mar 18 18:07:07 2016 +0900 1865 1866 Deal with modesets and page flips crossing on a CRTC 1867 1868 If we set a mode while a flip is pending, the kernel driver may program 1869 the flip to the hardware after the modeset. If that happens, the hardware 1870 will display the BO from the flip, whereas we will assume it displays the 1871 BO from the modeset. In other words, the display will most likely freeze, 1872 at least until another modeset. 1873 1874 Prevent this condition by waiting for a pending flip to finish before 1875 setting a mode. 1876 1877 Fixes display freezing when setting rotation or a transform with 1878 TearFree enabled. 1879 1880 (Ported from radeon commit a88985f5d1e39caca49ceb65678aaa9cb622a0d2) 1881 1882 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1883 1884commit b9d00fa7aaf946d985897380bfa42faafbf1b3fb 1885Author: Michel Dänzer <michel.daenzer@amd.com> 1886Date: Fri Mar 18 17:18:00 2016 +0900 1887 1888 Make DRM event queue xf86CrtcPtr based instead of ScrnInfoPtr based 1889 1890 This allows for a minor simplification of the code. 1891 1892 (Ported from radeon commit f5d968cbba3c9b7ec202161f2157d8d64778c817) 1893 1894 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1895 1896commit e0ed26151bfeadf309da53d001751c0a014dbd24 1897Author: Michel Dänzer <michel.daenzer@amd.com> 1898Date: Fri Mar 18 17:11:47 2016 +0900 1899 1900 Remove amdgpu_scanout_flip_handler 1901 1902 No longer necessary now that amdgpu_drm_queue_handler can handle 1903 e->handler == NULL. 1904 1905 (Ported from radeon commit d5dbb07db22d5420c81dfebc060f0dd86e7b8a20) 1906 1907 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1908 1909commit acd5da56f502d6ad115501e77bce06fe72b1895c 1910Author: Michel Dänzer <michel.daenzer@amd.com> 1911Date: Fri Mar 18 17:14:49 2016 +0900 1912 1913 DRI2: Also clear dri2_flipping when client disconnects before event 1914 1915 Fixes the following problem: 1916 1917 With DRI3 enabled, run glxgears with LIBGL_DRI3_DISABLE=1, make it 1918 fullscreen and press Escape while it's still fullscreen. This could 1919 result in dri2_flipping not getting cleared, spuriously preventing apps 1920 using DRI3 from flipping. 1921 1922 (Ported from radeon commit e87365117acbd80b7d80fbb5eb30890ef7153291) 1923 1924 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1925 1926commit a58bfa98208cc092014d3f36a08714eb1e0d8814 1927Author: Michel Dänzer <michel.daenzer@amd.com> 1928Date: Fri Mar 18 17:07:47 2016 +0900 1929 1930 drm_queue: Don't abort events immediately from amdgpu_drm_abort_client 1931 1932 Keep them around until the DRM event arrives, but then call the abort 1933 functions instead of the handler functions. 1934 1935 This is a prerequisite for the following fix. 1936 1937 (Ported from radeon commit 3989766edde85d1abe7024577b98fc9b007bc02a) 1938 1939 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1940 1941commit e4888df6e32bb817bf0d6166a22b19c14e189a84 1942Author: Michel Dänzer <michel.daenzer@amd.com> 1943Date: Fri Mar 18 17:04:10 2016 +0900 1944 1945 Fix RandR CRTC transforms 1946 1947 Currently, Xorg will only transform the cursor as of the first time the 1948 cursor image changes after a transform is set. 1949 1950 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=80678 1951 1952 (Ported from radeon commit 9483a3d777919b224f70c3b4d01e4b320a57db31) 1953 1954 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1955 1956commit 43af92ede0968f2108f9562aa4c2c861ac703617 1957Author: Michel Dänzer <michel.daenzer@amd.com> 1958Date: Fri Mar 18 16:58:07 2016 +0900 1959 1960 Build RandR 1.4 provider name from chipset name and bus ID 1961 1962 Instead of just "amdgpu", it's now e.g. "TONGA @ pci:0000:01:00.0". 1963 1964 (Ported from radeon commit c7cf00487cd6d4a5d0f39d5b92ff04f6420d6a32) 1965 1966 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1967 1968commit 5ec1797a2858d693d18d21326e2307d71555e1db 1969Author: Michel Dänzer <michel.daenzer@amd.com> 1970Date: Wed Feb 24 17:33:49 2016 +0900 1971 1972 DRI2: Use amdgpu_pixmap_get_handle 1973 1974 Now we can share pixmaps with no struct amdgpu_buffer via DRI2. 1975 1976 Fixes VDPAU video playback freezing when using an OpenGL compositor with 1977 DRI3 enabled and mpv VAAPI hardware decoding with OpenGL output. 1978 1979 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89755 1980 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=93804 1981 1982 (ported from radeon commit f8b0f23e9f4af9f9097ee5e72d53b45173163c41) 1983 1984 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 1985 1986commit df60c635e1e632233de9dd4b01d63c2b963003f8 1987Author: Michel Dänzer <michel.daenzer@amd.com> 1988Date: Wed Feb 24 17:06:43 2016 +0900 1989 1990 glamor: Avoid generating GEM flink names for BOs shared via DRI3 (v2) 1991 1992 We can't create our own struct amdgpu_buffer representation in this case 1993 because destroying that would make the GEM handle inaccessible to glamor 1994 as well. So just get the handle directly via dma-buf. 1995 1996 (ported from radeon commit 391900a670addec39515f924265bfa9f8bfa9ec0, 1997 extended to cache BO handles in the private for non-DRI3 pixmaps as 1998 well) 1999 2000 v2: Swap whole pixmap privates instead of just BOs in 2001 amdgpu_dri2_exchange_buffers to avoid invalidating cached BO handles 2002 2003 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2004 2005commit e463b849f3e9d7b69e64a65619a22e00e78d297b 2006Author: Michel Dänzer <michel.daenzer@amd.com> 2007Date: Tue Feb 23 18:10:29 2016 +0900 2008 2009 Make amdgpu_do_pageflip take a pixmap instead of a BO 2010 2011 (inspired by radeon commit 7b4fc4a677d252d01c2bf80d162bc35814059eaa) 2012 2013 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2014 2015commit 1ee341f9d909f3b7ba2984fc912dabdb98c34b19 2016Author: Michel Dänzer <michel.daenzer@amd.com> 2017Date: Tue Feb 23 18:42:19 2016 +0900 2018 2019 Add amdgpu_pixmap_get_handle helper 2020 2021 (inspired by radeon commits dfad91fffb5bd013785223b42d78886df839eacf 2022 and ccbda955ebae1d457d35293833f12791e0f9fb0b) 2023 2024 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2025 2026commit a36bbfd98b96426bbe0be3923c64da7ec0e565d0 2027Author: Michel Dänzer <michel.daenzer@amd.com> 2028Date: Mon Feb 15 18:41:51 2016 +0900 2029 2030 HAS_DIRTYTRACKING_ROTATION also supports multiple CRTCs 2031 2032 (ported from radeon commit ff9a6b6f079a8419f4e6fadfee778060618bf735) 2033 2034 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2035 2036commit a37746ffceaed83e48e48fb05439be7e020dd2ea 2037Author: Michel Dänzer <michel.daenzer@amd.com> 2038Date: Mon Feb 15 18:35:54 2016 +0900 2039 2040 Load fb module before glamoregl/shadow modules 2041 2042 Fixes unresolved symbols on some systems. 2043 2044 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=93105 2045 (ported from radeon commit 78fbca095ae9887a2d3de48bb07975e2d1126e68) 2046 2047 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2048 2049commit 59c0a6807110eca829c6708e16585a38f39a5c17 2050Author: Michel Dänzer <michel.daenzer@amd.com> 2051Date: Mon Feb 15 18:28:13 2016 +0900 2052 2053 Don't advertise any PRIME offloading capabilities without acceleration 2054 2055 Acceleration is required even for display offloading. Trying to enable 2056 display offloading without acceleration resulted in a crash. 2057 2058 (ported from radeon commit b19417e2fddf4df725951aea5ad5e9558338f59e) 2059 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2060 2061commit a3eac85d812ecc605436e6bd5b9ee7ebf307e3d3 2062Author: Michel Dänzer <michel.daenzer@amd.com> 2063Date: Tue Jan 26 16:12:28 2016 +0900 2064 2065 Only map front buffer if glamor acceleration is disabled (v2) 2066 2067 Otherwise the front buffer may not be accessible by the CPU, because Mesa 2068 sets the AMDGPU_GEM_CREATE_NO_CPU_ACCESS flag for tiled buffers, because 2069 accessing tiled buffers with the CPU makes little sense. 2070 2071 v2: Also handle Option "AccelMethod" "none" 2072 2073 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2074 2075commit 2fcb7dadd3c71cd405cbbaafc777697538ca9c29 2076Author: jimqu <Jim.Qu@amd.com> 2077Date: Mon Jan 25 09:47:00 2016 +0800 2078 2079 glamor: Return NullPixmap on failure to create shareable pixmap 2080 2081 If we were asked to create a shareable pixmap, it doesn't make sense 2082 to return a pixmap which isn't shareable. Doing so caused trouble down 2083 the line such as a crash with older versions of glamor when trying to 2084 use GLX pixmaps of bpp < 32 via DRI2. 2085 2086 Signed-off-by: JimQu <jim.qu@amd.com> 2087 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2088 2089commit 5269a2228bff6023c1a7f3e8534027e1d7addc25 2090Author: jimqu <Jim.Qu@amd.com> 2091Date: Mon Jan 25 10:12:02 2016 +0800 2092 2093 Move amdgpu_glamor_destroy_pixmap before amdgpu_glamor_create_pixmap 2094 2095 The next commit will call the former from the latter. No functional 2096 change. 2097 2098 Signed-off-by: JimQu <jim.qu@amd.com> 2099 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2100 2101commit 54c959c163288caa87f612911b70df73f87d29d6 2102Author: Tom St Denis <tom.stdenis@amd.com> 2103Date: Wed Jan 20 09:37:36 2016 -0500 2104 2105 Move memset() after variable declarations 2106 2107 To make the code more "C" like move the function calls 2108 after the variable declarations. 2109 2110 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 2111 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2112 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2113 2114commit 8853b07ae8169c409740c40d45cd335bd608f2a7 2115Author: Michel Dänzer <michel.daenzer@amd.com> 2116Date: Tue Jan 19 17:35:11 2016 +0900 2117 2118 Set the RandR primary output on startup if Xorg hasn't 2119 2120 Fixes xrandr (XRRGetOutputPrimary) not reporting any output as primary 2121 after startup. 2122 2123 (Ported from radeon commit b16856b25086ffb27365ac2249b8da921066ce62) 2124 2125 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2126 2127commit bd5c65daceaf633c36fcec86ff061df10c364bc0 2128Author: Michel Dänzer <michel.daenzer@amd.com> 2129Date: Thu Jan 7 15:53:41 2016 +0900 2130 2131 Only call amdgpu_bus_id once in each probe path (v2) 2132 2133 Instead of up to twice as before. 2134 2135 v2: Remove free(busIdString) call from amdgpu_kernel_mode_enabled, the 2136 bus ID string is now managed by its callers. 2137 2138 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> (v1) 2139 2140commit 6e42c58375a4c3229da93c27bbd104af145c6163 2141Author: Michel Dänzer <michel.daenzer@amd.com> 2142Date: Thu Jan 7 15:57:38 2016 +0900 2143 2144 Remove pci_dev test from amdgpu_get_scrninfo 2145 2146 The pci_dev parameter can never be NULL since we only support KMS. 2147 2148 Reported-by: Tom St Denis <tom.stdenis@amd.com> 2149 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2150 2151commit 8e09180798a06af5afa030d754938e4ca06e272f 2152Author: Michel Dänzer <michel.daenzer@amd.com> 2153Date: Thu Jan 7 15:35:35 2016 +0900 2154 2155 Re-use PCI bus ID code from kernel_open_fd in kernel_mode_enabled 2156 2157 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2158 2159commit 4eb9cedca080b30c57ded349a397620ee7d0cd46 2160Author: Mykola Lysenko <Mykola.Lysenko@amd.com> 2161Date: Wed Jan 13 14:03:55 2016 +0800 2162 2163 Initialize drmmode_crtc dpms_mode to DPMSModeOff 2164 2165 This disables query of disabled pipes for drmWaitVBlank on X start 2166 2167 Signed-off-by: Mykola Lysenko <Mykola.Lysenko@amd.com> 2168 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2169 2170commit 1d0b0c1794e65e581a48aa9fb19679d928d82a5d 2171Author: Michel Dänzer <michel.daenzer@amd.com> 2172Date: Thu Dec 10 18:08:12 2015 +0900 2173 2174 sync: Check if miSyncShmScreenInit symbol is resolved at runtime 2175 2176 It may be disabled in the Xorg build, either explicitly or because the 2177 xshmfence library isn't available. 2178 2179 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2180 2181commit f4107f67f147e2500582fc36cf0f0f76bc1ef098 2182Author: Mykola Lysenko <Mykola.Lysenko@amd.com> 2183Date: Wed Dec 23 11:58:47 2015 -0500 2184 2185 Check for NULL koutput in drmmode_output_dpms 2186 2187 This situation happens whit start of usage of DRM DP MST framework, 2188 when connectors created and destroyed dynamically. 2189 2190 Signed-off-by: Mykola Lysenko <Mykola.Lysenko@amd.com> 2191 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2192 2193commit ea558e645786b08d75307716036045170e97b43e 2194Author: Jammy Zhou <Jammy.Zhou@amd.com> 2195Date: Fri Nov 20 17:03:05 2015 +0800 2196 2197 Use render node for DRI3 if available 2198 2199 Signed-off-by: Jammy Zhou <Jammy.Zhou@amd.com> 2200 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2201 2202commit 43c2dc1aab682d5b6ad49d24983d6382c4f305bb 2203Author: Michel Dänzer <michel.daenzer@amd.com> 2204Date: Thu Nov 19 17:05:05 2015 +0900 2205 2206 glamor: Deal with glamor_egl_destroy_textured_pixmap being removed 2207 2208 When it's not available, it's safe to call down to the glamor 2209 DestroyPixmap hook instead. 2210 2211 (ported from radeon commit 10b7c3def58bb34acc38f076bc230e25b454ab79) 2212 2213 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2214 2215commit 84cab5738a315e9825bd0864c4f0fc5b03eb81a1 2216Author: Michel Dänzer <michel.daenzer@amd.com> 2217Date: Thu Nov 19 16:44:22 2015 +0900 2218 2219 glamor: Restore all ScreenRec hooks during CloseScreen 2220 2221 (ported from radeon commit 535e5438b2c32f774b9c8c27ee0289b4749548ef) 2222 2223 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2224 2225commit a00c050c2e5667ed815c51979a3cadb5146136ff 2226Author: Michel Dänzer <michel.daenzer@amd.com> 2227Date: Thu Nov 19 17:55:53 2015 +0900 2228 2229 Post 1.0.0 release version bump 2230 2231commit 755e6ff2337cf615e3ba0854ccd533baec7144db 2232Author: Michel Dänzer <michel.daenzer@amd.com> 2233Date: Thu Nov 19 17:28:19 2015 +0900 2234 2235 Bump version for 1.0.0 release 2236 2237commit 49c7d2be99aaf6d040e553065bdc461ce8d4769a 2238Author: Michel Dänzer <michel.daenzer@amd.com> 2239Date: Thu Nov 19 17:14:54 2015 +0900 2240 2241 Add amdgpu_pixmap.h to src/Makefile.am's EXTRA_DIST 2242 2243 Fixes make distcheck. 2244 2245commit d069ec5d27f5c8d2ab17b759b85293ef4113acf3 2246Author: Stephen Chandler Paul <cpaul@redhat.com> 2247Date: Wed Nov 11 18:10:55 2015 +0900 2248 2249 Handle failures in setting a CRTC to a DRM mode properly 2250 2251 This fixes a bug where running the card out of PPLL's when hotplugging 2252 another monitor would result in all of the displays going blank and 2253 failing to work properly until X was restarted or the user switched to 2254 another VT. 2255 2256 [Michel Dänzer: Pass errno instead of -ret to strerror()] 2257 2258 Signed-off-by: Stephen Chandler Paul <cpaul@redhat.com> 2259 (ported from radeon commit 7186a8713ba004de4991f21c1a9fc4abc62aeff4) 2260 2261 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2262 2263commit c8bddcf6c97b1338be3715f1fc5e0b17ce71c195 2264Author: Michel Dänzer <michel.daenzer@amd.com> 2265Date: Wed Nov 11 18:09:59 2015 +0900 2266 2267 Call xf86CrtcRotate from initial drmmode_set_desired_modes call 2268 2269 Fixes various problems when rotation is specified in xorg.conf. 2270 2271 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=92475 2272 2273 (ported from radeon commit 548e97b3b7d1e94075a54ca2bb4eb683025098a7) 2274 2275 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2276 2277commit 12815156f38ce3357f03901a78402db834577d11 2278Author: Emil Velikov <emil.l.velikov@gmail.com> 2279Date: Wed Nov 11 18:04:01 2015 +0900 2280 2281 Do not link amdgpu_drv.so against libpciaccess 2282 2283 Not used directly. 2284 2285 Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> 2286 (ported from radeon commit fcb32231a38f9461d12720cbf72f63502197a711) 2287 2288 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2289 2290commit a02982b0ae0b79d2f183a1628edc05cafed8703a 2291Author: Michel Dänzer <michel.daenzer@amd.com> 2292Date: Wed Nov 11 17:59:14 2015 +0900 2293 2294 Skip disabled CRTCs in amdgpu_scanout_(do_)update 2295 2296 The vblank / page flip ioctls don't work as expected for a disabled CRTC. 2297 2298 (ported from radeon commit acc11877423ecd81a6e0a7f38466f80e43efee20) 2299 2300 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2301 2302commit 0ddd20600d0046afd17aa47ffebe86dfd91a2215 2303Author: Michel Dänzer <michel.daenzer@amd.com> 2304Date: Wed Nov 11 17:44:16 2015 +0900 2305 2306 Prefer drmModeSetCursor2 over drmModeSetCursor 2307 2308 The former includes information about the position of the hotspot within 2309 the cursor image. 2310 2311 Copied from xf86-video-modesetting. 2312 2313 (ported from radeon commit c9f8f642fd495937400618a4fc25ecae3f8888fc) 2314 2315 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2316 2317commit 83a47c0ebe17caa79d12a8b2f94b59cc945452f5 2318Author: Michel Dänzer <michel.daenzer@amd.com> 2319Date: Wed Nov 11 17:37:54 2015 +0900 2320 2321 PRIME: Don't advertise offload capabilities when acceleration is disabled 2322 2323 Xorg tends to crash if the user tries to actually use the offload 2324 capabilities with acceleration disabled. 2325 2326 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=57200 2327 (ported from radeon commit c74de9fec13fac2c836bb2a07ae6f90e1d61e667) 2328 2329 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2330 2331commit 560b7fe6dc66405762020f00e9a05918a36f3a17 2332Author: Michel Dänzer <michel.daenzer@amd.com> 2333Date: Wed Nov 11 17:31:34 2015 +0900 2334 2335 Rename Option "NoAccel" to "Accel" 2336 2337 Removes the need for a double negation when forcing acceleration on. 2338 2339 Note that this change is backwards compatible, as the option parser 2340 automagically handles the 'No' prefix. 2341 2342 (ported from radeon commit cc615d06db0332fc6e673b55632bcc7bf957b44b) 2343 2344 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2345 2346commit ad77ad32c4a723447d3191d527cfa6de9f54d7ce 2347Author: Adam Jackson <ajax@redhat.com> 2348Date: Wed Nov 11 17:20:21 2015 +0900 2349 2350 Use own thunk function instead of shadowUpdatePackedWeak 2351 2352 I plan to delete the Weak functions from a future server. 2353 2354 Signed-off-by: Adam Jackson <ajax@redhat.com> 2355 (ported from radeon commit 851b2cf8714618843725f6d067915375485ade9d) 2356 2357 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2358 2359commit f5ccea99c03b62acf3a25984aba617c665d80b7c 2360Author: Michel Dänzer <michel.daenzer@amd.com> 2361Date: Wed Nov 11 17:16:58 2015 +0900 2362 2363 dri2: Handle PRIME for source buffer as well in amdgpu_dri2_copy_region2 2364 2365 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=77810 2366 2367 (ported from radeon commit c84230d686c078aac1dc98d82153f8b02521b2e1) 2368 2369 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2370 2371commit 92e7c93d2f9c3036da1a17d7fccccb6f9e9eaa3d 2372Author: Michel Dänzer <michel.daenzer@amd.com> 2373Date: Mon Nov 2 18:29:24 2015 +0900 2374 2375 Move scrn/info declaration inside USE_GLAMOR in amdgpu_dri3_fd_from_pixmap 2376 2377 Fixes warning when building with --disable-glamor: 2378 2379 ../../src/amdgpu_dri3.c: In function 'amdgpu_dri3_fd_from_pixmap': 2380 ../../src/amdgpu_dri3.c:135:16: warning: unused variable 'info' [-Wunused-variable] 2381 AMDGPUInfoPtr info = AMDGPUPTR(scrn); 2382 ^ 2383 2384 Reported-by: Jammy Zhou <Jammy.Zhou@amd.com> 2385 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2386 2387commit c9bd1399a13cea2e1331af2c826ca054b88db071 2388Author: Michel Dänzer <michel.daenzer@amd.com> 2389Date: Mon Nov 2 18:21:50 2015 +0900 2390 2391 Call AMDGPUFreeRec from AMDGPUFreeScreen_KMS even if info == NULL 2392 2393 It's safe now. 2394 2395 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2396 2397commit fb8444e731765588c0ff1e9053c1c7b73f5f0907 2398Author: Michel Dänzer <michel.daenzer@amd.com> 2399Date: Mon Nov 2 18:20:41 2015 +0900 2400 2401 Don't use AMDGPUEntPriv in AMDGPUFreeRec 2402 2403 It crashes if info == NULL. 2404 2405 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2406 2407commit 8e7ee03f55c2f3874f6e84daeb5700f8b8037a51 2408Author: Michel Dänzer <michel.daenzer@amd.com> 2409Date: Wed Oct 28 17:53:27 2015 +0900 2410 2411 Remove amdgpu_reference_drm_fd 2412 2413 Increase pAMDGPUEnt->fd_ref in the probe code instead when we're reusing 2414 the existing fd. 2415 2416 The previous reference counting was imbalanced, so pAMDGPUEnt->fd_ref 2417 could never go to 0. 2418 2419 Reviewed-by: Jammy Zhou <Jammy.Zhou@amd.com> 2420 2421commit 6bab8fabb37eb131e131ce59446c214ded28f779 2422Author: Michel Dänzer <michel.daenzer@amd.com> 2423Date: Wed Oct 28 17:44:09 2015 +0900 2424 2425 Remove info->dri2.drm_fd and info->drmmode->fd 2426 2427 Use pAMDGPUEnt->fd everywhere instead. 2428 2429 Reviewed-by: Jammy Zhou <Jammy.Zhou@amd.com> 2430 2431commit 0530e39cc6b7340163e7f6bb6d82719d102ee6e9 2432Author: Jammy Zhou <jammy.zhou@amd.com> 2433Date: Thu Oct 29 17:08:01 2015 +0900 2434 2435 Pass struct pci_device *pci_dev directly to amdgpu_get_scrninfo 2436 2437 Instead of throwing away the type information by passing it as a void*. 2438 2439 Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> 2440 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2441 2442commit edf72afee3a25eae9827b4de3a013b541b78e213 2443Author: Jammy Zhou <Jammy.Zhou@amd.com> 2444Date: Wed Oct 28 21:24:29 2015 +0800 2445 2446 Fix crash in PCI probe path (v4) 2447 2448 The crash is caused by the NULL value returned by AMDGPUPTR(pScrn), 2449 because the driverPrivate is not allocated yet in PciProbe phase, 2450 and it is usually done in the PreInit phase. 2451 2452 Use pAMDGPUEnt->fd instead of info->dri2.drm_fd to avoid AMDGPUInfoPtr 2453 related code in amdgpu_open_drm_master, so that the crash can be fixed. 2454 2455 v4: (md) Remove unused parameter entity_num, split out logically 2456 separate changes 2457 v3: some more cleanup 2458 v2: switch to pAMDGPUEnt->fd, and update the commit message 2459 2460 Signed-off-by: Jammy Zhou <Jammy.Zhou@amd.com> 2461 Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> 2462 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> (v3) 2463 2464commit cef725121eb0e56aa54d9c4665e36047373f4db7 2465Author: Michel Dänzer <michel.daenzer@amd.com> 2466Date: Wed Oct 28 17:56:13 2015 +0900 2467 2468 Remove dead code from probe paths 2469 2470 amdgpu_get_scrninfo allocates the memory pointed to by pAMDGPUEnt just 2471 before it calls amdgpu_open_drm_master, so pAMDGPUEnt->fd is always 0 2472 in the latter. 2473 2474 Also, no need to clear pAMDGPUEnt->fd just before freeing the memory 2475 it's stored in. 2476 2477 Reviewed-by: Jammy Zhou <Jammy.Zhou@amd.com> 2478 2479commit 3b0a3c89b53b3ebe21a9d703a4dbff6e57c65a57 2480Author: Samuel Li <samuel.li@amd.com> 2481Date: Thu Oct 22 12:50:21 2015 -0400 2482 2483 Add Stoney support 2484 2485 (agd): rebase 2486 2487 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2488 Signed-off-by: Samuel Li <samuel.li@amd.com> 2489 2490commit 9c8b7ebe15eec7abd5dc10ad6ccecbc57225494a 2491Author: Michel Dänzer <michel.daenzer@amd.com> 2492Date: Wed Oct 21 17:18:44 2015 +0900 2493 2494 Revert "Handle RandR CRTC transforms properly" 2495 2496 This reverts commit 175251645fec1a3d19f498e1cd1e655374c67801. 2497 2498 I accidentally pushed this patch. 2499 2500commit 0a6ba4bf50128464a30951721b0c72e748fb89bc 2501Author: Darren Powell <darren.powell@amd.com> 2502Date: Tue Oct 20 16:56:54 2015 -0400 2503 2504 Add Option "TearFree" to manpage 2505 2506 This was missed in commit c57da33308a81fa575179238a0415abcb8b34908. 2507 2508 Signed-off-by: Darren Powell <darren.powell@amd.com> 2509 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2510 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2511 2512commit 175251645fec1a3d19f498e1cd1e655374c67801 2513Author: Michel Dänzer <michel.daenzer@amd.com> 2514Date: Thu Oct 15 16:35:51 2015 +0900 2515 2516 Handle RandR CRTC transforms properly 2517 2518commit 6000aef4e2f0a121b94023484406fb6f04688f74 2519Author: Tom St Denis <tom.stdenis@amd.com> 2520Date: Wed Oct 14 13:25:59 2015 -0400 2521 2522 Clean up amdgpu_dri2_create_buffer2() 2523 2524 Remove the depth_pixmap variable from the function and clear 2525 out any dead/odd behaviour that results. 2526 2527 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 2528 2529commit 21e72fb2418b5cc7fc849a9cf951186e209036b0 2530Author: Michel Dänzer <michel.daenzer@amd.com> 2531Date: Fri Oct 9 18:38:47 2015 +0900 2532 2533 Properly handle drmModeAddFB failure in drmmode_crtc_scanout_allocate 2534 2535 We were printing an error message, but not propagating the failure. That 2536 would probably lead to trouble down the road. 2537 2538 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2539 2540commit 8da1d0c870e1081d77925807d6e3bbc61a23f54f 2541Author: Michel Dänzer <michel.daenzer@amd.com> 2542Date: Fri Oct 9 18:59:16 2015 +0900 2543 2544 Eliminate redundant data parameter from drmmode_crtc_scanout_create 2545 2546 drmmode_crtc_scanout_create just needs to call 2547 drmmode_crtc_scanout_allocate when scanout->bo is NULL. 2548 2549 This makes it clearer to the reader / compiler that 2550 drmmode_crtc_scanout_create doesn't dereference scanout->bo when it's 2551 NULL. 2552 2553 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2554 2555commit dc40582d5ff94d812cbc08f95cf14b80cd0f410d 2556Author: Michel Dänzer <michel.daenzer@amd.com> 2557Date: Wed Oct 7 16:19:22 2015 +0900 2558 2559 Don't advertise rotation support without hardware acceleration v2 2560 2561 Rotation currently doesn't work without acceleration (doesn't actually 2562 rotate with Option "NoAccel", crashes with Option "AccelMethod" "none" 2563 or when glamor fails to initialize) and would probably be too slow 2564 anyway. 2565 2566 v2: Also remove now dead code checking for ShadowFB from 2567 drmmode_crtc_scanout_allocate(). 2568 2569 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2570 2571commit 460560502a1bdf26d06f3c30df46fa9f28ffb9e5 2572Author: Tom St Denis <tom.stdenis@amd.com> 2573Date: Tue Oct 6 08:49:54 2015 -0400 2574 2575 Simplify drmmode_set_mode_major() and avoid leaking memory. 2576 2577 The function would leak the memory allocated for output_ids. This 2578 patch addresses that as well as simplifies the logic somewhat. 2579 2580 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 2581 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2582 2583commit 56398d6651dfc4935cbd117ad861e1800077c73c 2584Author: Tom St Denis <tom.stdenis@amd.com> 2585Date: Tue Oct 6 08:43:12 2015 -0400 2586 2587 Avoid NULL dereference if drmmode_crtc_scanout_allocate fails 2588 2589 This avoids a NULL dereference if the memory allocation fails. 2590 2591 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 2592 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2593 2594commit 4b92b960c7705be8b3a5dee17b2341864d7ca9bb 2595Author: Tom St Denis <tom.stdenis@amd.com> 2596Date: Mon Oct 5 10:00:09 2015 -0400 2597 2598 cleanup the entity rec 2599 2600 Based on radeon commit: b32a0a3de84a44b9af4f1ca8be19f10d7fa31b12 2601 2602 Some of these were set, some of them were 2603 always opposites, so clean things up. 2604 2605 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 2606 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2607 2608commit fe100fd6bf483228eaf64b959c56a68e8dac4447 2609Author: Tom St Denis <tom.stdenis@amd.com> 2610Date: Mon Oct 5 10:45:33 2015 -0400 2611 2612 present: Handle DPMS off in radeon_present_get_ust_msc 2613 2614 Based on radeon commit: 95f5d09e3667ded027ae648c97eb4737d8bf67c5 2615 2616 The DRM_IOCTL_WAIT_VBLANK ioctl may return an error during DPMS off, 2617 which would trigger an error message in drmmode_crtc_get_ust_msc. 2618 2619 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 2620 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2621 2622commit bfa925a04815cee5fd57b99447cb2ee0e158036c 2623Author: Tom St Denis <tom.stdenis@amd.com> 2624Date: Mon Oct 5 10:10:51 2015 -0400 2625 2626 present: Look at all CRTCs to determine if we can flip 2627 2628 Based on radeon commit 211862b777d0be251a4662f5dd24f2d400544c09 2629 2630 Inspired by modesetting driver change by Kenneth Graunke. 2631 2632 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 2633 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2634 2635commit a1e47e76322619ed037ebce27974a4e3792940c2 2636Author: Tom St Denis <tom.stdenis@amd.com> 2637Date: Mon Oct 5 10:41:22 2015 -0400 2638 2639 present: Fall back to modeset for unflip operation 2640 2641 Based on radeon commit: 802d33e474a82262d9cdf11b03568b0c4929cd0d 2642 2643 It's not always possible to use the page flip ioctl for this, e.g. 2644 during DPMS off. We were previously just skipping the unflip in that 2645 case, which could result in hangs when setting DPMS off while a 2646 fullscreen Present app is running, e.g. at the GNOME3 lock screen. 2647 2648 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 2649 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2650 2651commit bac21dfc8e60a07f08158b13fab1f3a9b9d27d1b 2652Author: Tom St Denis <tom.stdenis@amd.com> 2653Date: Mon Oct 5 10:37:50 2015 -0400 2654 2655 Don't attempt a DRI2/Present page flip while the other one is flipping 2656 2657 Based on radeon commit 49f5b0bc301414df049e00d226034e3d6e56421b 2658 2659 Fixes corrupted display and hangs when switching between DRI2 and DRI3 2660 fullscreen apps, e.g. a compositor using DRI3 and a fullscreen app using 2661 DRI2 or vice versa. 2662 2663 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 2664 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2665 2666commit a5f7f2e68bad1935f5ad52286033237467f77302 2667Author: Tom St Denis <tom.stdenis@amd.com> 2668Date: Mon Oct 5 13:12:23 2015 -0400 2669 2670 Move amdgpu_drm_handler/abort_proc fields to drmmode_flipdata_re 2671 2672 Based on radeon commit de5ddd09db82141b263338dcf0c28e01f58268ee 2673 2674 Their values are the same for all DRM flip ioctl calls within a single 2675 radeon_do_pageflip() call. 2676 2677 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 2678 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2679 2680commit e14e3560bff2537d3ad4c93d2b31442a122cde66 2681Author: Tom St Denis <tom.stdenis@amd.com> 2682Date: Mon Oct 5 13:08:43 2015 -0400 2683 2684 Simplify amdgpu_do_pageflip() error handling slightly more 2685 2686 Based on radeon commit e8c0f6319fbf4c3ea11e22ab1a68837031bdec8c 2687 2688 We don't need the local variable old_fb_id. 2689 2690 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 2691 2692 [ Michel Dänzer: fix up slightly to better match radeon formatting ] 2693 2694 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2695 2696commit e9621ec0e2400f62db320c560a739b29258edb87 2697Author: Tom St Denis <tom.stdenis@amd.com> 2698Date: Mon Oct 5 09:34:47 2015 -0400 2699 2700 Increase robustness against DRM page flip ioctl failures 2701 2702 Based on radeon commit 8fc22360d5520469c82092ccb0fcf2af330c573f 2703 2704 Centralize cleanup, only clean up things that have been allocated for 2705 the failed ioctl call. 2706 2707 Fixes double-free after a flip ioctl failure. 2708 2709 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89681 2710 2711 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 2712 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2713 2714commit db3bb2061b9ac16b0922d9afae99874820356a04 2715Author: Tom St Denis <tom.stdenis@amd.com> 2716Date: Tue Sep 29 13:07:04 2015 -0400 2717 2718 Clean up allocation in AMDGPUInitVideo() 2719 2720 The allocation of the adapters should use the correct sizeof (even if 2721 allocating an array of pointers). 2722 2723 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 2724 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2725 2726commit 94caf7ac777134b8396aa762a506053179bbb4c6 2727Author: Tom St Denis <tom.stdenis@amd.com> 2728Date: Thu Oct 1 13:08:41 2015 -0400 2729 2730 Avoid leaking memory on output. 2731 2732 Based on radeon commit 63dc36dc49f93cb00111b497ab6805194bc9d240 2733 2734 and 2nd patch: 2735 2736 Proper leak fix, previous leak fix was bogus. 2737 2738 Based on radeon commit b8ec9ed4fe86952763b963c86f0af0dcae69aa6c 2739 2740 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 2741 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2742 2743commit f035faec041cb5df65c78effa58eb50197cedf88 2744Author: Tom St Denis <tom.stdenis@amd.com> 2745Date: Thu Oct 1 12:56:05 2015 -0400 2746 2747 add support for DP 1.2 display hotplug 2748 2749 Based on radeon commit 2f11dcd43966cf2ee26e61960fd72e6644f5e037 2750 2751 > This allows for dynamic creation of conneectors when the 2752 > kernel tells us. 2753 > 2754 > v2: fix dpms off crash 2755 2756 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 2757 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2758 2759commit aee72b29210d79dbf41bde6eef16d7fe817e6cf4 2760Author: Tom St Denis <tom.stdenis@amd.com> 2761Date: Thu Oct 1 12:29:36 2015 -0400 2762 2763 move output name creation to its own function 2764 2765 Based on radeon commit c88424d1f4aaa78b569e5d44f0b4a47de2f422f4 2766 2767 > The secondary indent is deliberate to make the next patch more 2768 > parseable for mst support. 2769 2770 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 2771 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2772 2773commit 0846abeace649d27a5f2c17373e717f92d246797 2774Author: Tom St Denis <tom.stdenis@amd.com> 2775Date: Thu Oct 1 12:13:21 2015 -0400 2776 2777 stop caching mode resources 2778 2779 Based on radeon commit 32b003cb7657e07d5af6338ad44d768eda87fd33 2780 2781 > This is step one towards MST connector hotplug support, 2782 > it stop caching the mode resources structure, and 2783 > just passes a pointer to it around. 2784 2785 With a few tweaks to match the state of the AMDGPU tree. 2786 2787 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 2788 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2789 2790commit 4ca8f957e0b417b099f625470db98a54531a731d 2791Author: Tom St Denis <tom.stdenis@amd.com> 2792Date: Thu Oct 1 13:16:15 2015 -0400 2793 2794 Silence type mismatch warning. 2795 2796 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 2797 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2798 2799commit a79735ab1499c1f7814036d1b19ff465705c5f45 2800Author: Tom St Denis <tom.stdenis@amd.com> 2801Date: Thu Oct 1 10:51:07 2015 -0400 2802 2803 Add support for server managed fds 2804 2805 Based on radeon commit ed0cfbb4fe77146b0b38f777bc28f3a4ea6da07f 2806 2807 and 2nd patch: 2808 2809 Fix building on older servers without xf86platformBus.h 2810 2811 Based on radeon commit b50da3b96c212086cb58501dbe988d64f1f35b6d 2812 2813 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 2814 2815 [ Michel Dänzer: Fixed up amdgpu_kernel_open_fd() not to need 2816 AMDGPUEntPriv(), which doesn't work yet at that point ] 2817 2818 Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> 2819 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2820 2821commit b93934a9ed5e92f3a6eac6554c5c4fa2967a6dd0 2822Author: Tom St Denis <tom.stdenis@amd.com> 2823Date: Thu Oct 1 10:05:36 2015 -0400 2824 2825 Add amdgpu_open_drm_master helper function 2826 2827 Based on radeon commit 3d7861fe112f25874319d4cdc12b745fbcd359cf 2828 2829 > This is a preparation patch for adding server-managed-fd support without it 2830 > turning into a goto fest. 2831 2832 With appropriate modifications because the open call stack is different 2833 in the amdgpu tree. 2834 2835 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 2836 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2837 2838commit f5c3fd0b57cf9e392bf591110568637937a1d338 2839Author: Tom St Denis <tom.stdenis@amd.com> 2840Date: Thu Oct 1 09:13:57 2015 -0400 2841 2842 Cleaning up for server-fd support 2843 2844 Based on radeon commit a63342ad15408071437c80b411d14196f3288aed 2845 2846 > radeon_open_drm_master get rid of unnecessary goto 2847 2848 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 2849 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2850 2851commit 3055724aef76a624718f26d5f0f9e9d567ffbcfb 2852Author: Tom St Denis <tom.stdenis@amd.com> 2853Date: Thu Sep 24 13:08:31 2015 -0400 2854 2855 Simplify pick best crtc to fold two loops into one 2856 2857 This patch folds the two for loops from amdgpu_pick_best_crtc() into 2858 one to reduce the LOC and make the routine easier to read. 2859 2860 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 2861 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2862 2863commit 9945b4ae1664ab815b39ff07e7b66cfa7f942dfa 2864Author: Tom St Denis <tom.stdenis@amd.com> 2865Date: Wed Sep 9 09:38:02 2015 -0400 2866 2867 Avoid use-after-free in drmmode_output_destroy() 2868 2869 The encoders array is freed before potentially all of the elements of 2870 the array are individually freed. 2871 2872 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 2873 Reviewed-by: Christian König <christian.koenig@amd.com> 2874 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2875 Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> (cosmetic fixups) 2876 2877commit 36b3faebdd1d2090a286616eeeb131d15e9a1386 2878Author: Tom St Denis <tom.stdenis@amd.com> 2879Date: Wed Sep 9 09:36:59 2015 -0400 2880 2881 Avoid use-after-free in amdgpu_kernel_open_fd() 2882 2883 If the device cannot be opened avoid re-using busid after it has been 2884 freed. 2885 2886 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 2887 Reviewed-by: Christian König <christian.koenig@amd.com> 2888 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2889 Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> (cosmetic fixups) 2890 2891commit 8823c3d4c6db70cff7699b31088f2d92db8faaf4 2892Author: Tom St Denis <tom.stdenis@amd.com> 2893Date: Wed Sep 9 09:34:38 2015 -0400 2894 2895 dri2: Avoid calculation with undefined msc value 2896 2897 If the get_msc() call fails for any reason we should avoid updating the 2898 vblank counter delta with undefined data. 2899 2900 Signed-off-by: Tom St Denis <tom.stdenis@amd.com> 2901 Reviewed-by: Christian König <christian.koenig@amd.com> 2902 Acked-by: Alex Deucher <alexander.deucher@amd.com> 2903 Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> (minor fixups) 2904 2905commit 63948ea091a9b324327ade7ec4fc5d67ca7e6f6f 2906Author: Michel Dänzer <michel.daenzer@amd.com> 2907Date: Fri Aug 14 18:41:57 2015 +0900 2908 2909 DRI2: Keep MSC monotonic when moving window between CRTCs 2910 2911 This mirrors the DRI3 implementation in xserver. Fixes VDPAU video 2912 playback hanging when moving the window between CRTCs. 2913 2914 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=66384 2915 2916 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2917 2918commit 55a4461bd95698cb8d52f9f6c28583f8f81afb4e 2919Author: Michel Dänzer <michel.daenzer@amd.com> 2920Date: Fri Aug 7 11:46:31 2015 +0900 2921 2922 Wait for scanout BO initialization to finish before setting mode 2923 2924 This should avoid intermittent artifacts which could sometimes be visible 2925 when setting a new scanout pixmap, e.g. on server startup or when 2926 changing resolutions. 2927 2928 (Ported from radeon commit 3791fceabf2cb037467dc41c15364e9f9ec1e47e) 2929 2930 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2931 2932commit 4c425e9c5c038504a0f0498dd800ab1fb40bf0c5 2933Author: Michel Dänzer <michel.daenzer@amd.com> 2934Date: Fri Aug 7 12:39:24 2015 +0900 2935 2936 glamor: Add amdgpu_glamor_finish to wait for glamor rendering to finish 2937 2938 This is a bit sneaky, because it calls glFinish directly from the driver, 2939 but it seems to work fine. 2940 2941 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2942 2943commit bb989e173dc364a7d68e50d7e819d0e0ee133d2f 2944Author: Michel Dänzer <michel.daenzer@amd.com> 2945Date: Fri Aug 7 11:43:48 2015 +0900 2946 2947 Only call drmmode_copy_fb (at most) once on server startup 2948 2949 It doesn't make sense to copy the screen contents from console when VT 2950 switching back to Xorg or when Xorg resets. 2951 2952 Fixes intermittent artifacts when VT switching back from console to the 2953 gdm login screen. 2954 2955 (Ported from radeon commit 4e3dfa69e4630df2e0ec0f5b81d61159757c4664) 2956 2957 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 2958 2959commit ebe2c020fbf2ef8de01fc50b201ab23ddb9fb13b 2960Author: Mario Kleiner <mario.kleiner.de@gmail.com> 2961Date: Mon Aug 10 23:34:40 2015 +0200 2962 2963 Make selection between DRI2 and DRI3 consistent with other drivers. (v2) 2964 2965 Add Option "DRI" to allow selection of maximum DRI level. 2966 2967 This allows the user to select the maximum level of DRI 2968 implementation to use, DRI2 or DRI3. It replaces the old 2969 option "DRI3" which had exactly the same purpose, but 2970 differs from the method used in both intel ddx and nouveau ddx. 2971 Make this consistent before a new stable driver is released. 2972 2973 v2: Retain handling of old Option "DRI3" for backwards 2974 compatibility, but Option "DRI" will take precedence 2975 over "DRI3" if both are provided. 2976 2977 Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com> 2978 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2979 2980commit c9611a2aa0f8d3bb55c552353740d60f6e4f63a0 2981Author: Alex Deucher <alexander.deucher@amd.com> 2982Date: Tue Jul 7 22:46:34 2015 -0400 2983 2984 add fiji pci id 2985 2986 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2987 Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 2988 2989commit 2622ac1554761b8824bfbbb2e3051a632ee38ce7 2990Author: Alex Deucher <alexander.deucher@amd.com> 2991Date: Tue Jul 7 22:46:08 2015 -0400 2992 2993 Add fiji support 2994 2995 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 2996 Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 2997 2998commit 7a49d8728d17875206a84fd1023f62b37c4a9f51 2999Author: Michel Dänzer <michel.daenzer@amd.com> 3000Date: Thu Aug 6 18:21:30 2015 +0900 3001 3002 On screen resize, clear the new buffer before displaying it 3003 3004 Fixes garbage being intermittently visible during a screen resize. 3005 3006 (Ported from radeon commit 80f3d727f93cb6efedd2b39338d2301035965fe2) 3007 3008 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3009 3010commit 9f988bf1dc9d4cb92926c051ed8f15e9ba58a016 3011Author: Michel Dänzer <michel.daenzer@amd.com> 3012Date: Thu Aug 6 17:50:11 2015 +0900 3013 3014 Make drmmode_copy_fb() work with glamor 3015 3016 Needed for Xorg -background none. 3017 3018 (Ported from radeon commit 3999bf88cdb192fe2f30b03bd2ed6f6a3f9f9057) 3019 3020 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3021 3022commit 13cf61bd8d46b0059f26120a8902da6f86e6bd11 3023Author: Michel Dänzer <michel.daenzer@amd.com> 3024Date: Thu Aug 6 17:46:38 2015 +0900 3025 3026 Update scanout pixmap contents before setting a mode with it 3027 3028 This ensures the scanout pixmaps used for Option "TearFree" and Option 3029 "ShadowPrimary" have been initialized when their initial mode is set. 3030 3031 (Ported from radeon commit a4a8cdbcc10c1c5f07485a2af9e9e81e490c3e1d) 3032 3033 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3034 3035commit 15050aabf256c17250d1fca0bfac97fc6707b195 3036Author: Michel Dänzer <michel.daenzer@amd.com> 3037Date: Thu Aug 6 17:37:11 2015 +0900 3038 3039 Defer initial modeset until the first BlockHandler invocation 3040 3041 This ensures that the screen pixmap contents have been initialized when 3042 the initial modes are set. 3043 3044 (Ported from radeon commits 673e1c7637687c74fc9bdeeeffb7ace0d04b734f and 3045 1584dc545c78e0bce8d4b4b9f26b568e2c211453) 3046 3047 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3048 3049commit 96b5364496222f1b3afb9caad458f16f156b6c47 3050Author: Michel Dänzer <michel.daenzer@amd.com> 3051Date: Thu Aug 6 17:32:45 2015 +0900 3052 3053 Defer initial drmmode_copy_fb call until root window creation 3054 3055 That's late enough for acceleration to be fully initialized, but still 3056 early enough to set pScreen->canDoBGNoneRoot. 3057 3058 (Ported from radeon commit 37874a4eeace5df04b02c8fc28f67b824e3f0f5f) 3059 3060 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3061 3062commit 0fb45f2bba89379ba25d4c863091937b6384bda9 3063Author: Michel Dänzer <michel.daenzer@amd.com> 3064Date: Thu Aug 6 17:25:53 2015 +0900 3065 3066 Only copy fbcon BO contents if bgNoneRoot is TRUE 3067 3068 Otherwise, the X server will initialize the screen pixmap contents 3069 anyway. 3070 3071 (Ported from radeon commit 39c497f3efca5ca08343b884f44c93215dcdef31) 3072 3073 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3074 3075commit cac553d3b691d26eaad24fbdcba06097b6728a6d 3076Author: Michel Dänzer <michel.daenzer@amd.com> 3077Date: Thu Aug 6 17:20:22 2015 +0900 3078 3079 Add .dir-locals.el file with Emacs indentation settings 3080 3081 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3082 3083commit ea32253541959cc36a40fb0118200a8f493dc98a 3084Author: Jammy Zhou <Jammy.Zhou@amd.com> 3085Date: Wed Jul 15 11:26:28 2015 +0800 3086 3087 Adapt to the interface change of amdgpu_bo_alloc v3 3088 3089 The amdgpu_bo_alloc_result structure is removed from libdrm_amdgpu, 3090 and the amdgpu_bo_handle is returned directly 3091 3092 v2: remove the va_map/unmap 3093 v3: simply the code a bit 3094 3095 Signed-off-by: Jammy Zhou <Jammy.Zhou@amd.com> 3096 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 3097 3098commit 3010d3259d3bc74263d526e54e02bc169c8d4b4d 3099Author: Mario Kleiner <mario.kleiner.de@gmail.com> 3100Date: Wed Jul 15 09:54:59 2015 +0200 3101 3102 Allow/Fix use of multiple ZaphodHead outputs per x-screen. 3103 3104 Defining multiple ZaphodHead outputs per x-screen in a 3105 multiple x-screen's per gpu configuration caused all 3106 outputs except one per x-screen to go dark, because 3107 there was a fixed mapping x-screen number -> crtc number, 3108 limiting the number of crtc's per x-screen to one. 3109 3110 On a ZaphodHead's setup, be more clever and assign 3111 as many crtc's to a given x-screen as there are 3112 ZaphodHeads defined for that screen, assuming 3113 there are enough unused crtc's available. 3114 3115 (Ported from radeon commit afab7839fc15722dbaa7203d00fe7f6ce5336b9d) 3116 3117 Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com> 3118 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 3119 3120commit 159c5d460a330cf0a24678f3c6c3e2fbaf23c571 3121Author: Dave Airlie <airlied@gmail.com> 3122Date: Tue Jul 14 17:04:14 2015 +0900 3123 3124 Adopt for new X server dirty tracking APIs. 3125 3126 Signed-off-by: Dave Airlie <airlied@redhat.com> 3127 3128 (Ported from radeon commit b6d871bf299c7d0f106c07ee4d8bd3b2337f53cc) 3129 3130 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3131 3132commit 7b3212e33cd36fb6f122774df27b56ec4e1a22b8 3133Author: Michel Dänzer <michel.daenzer@amd.com> 3134Date: Thu Jul 9 17:57:29 2015 +0900 3135 3136 DRI2: Don't ignore rotated CRTCs in amdgpu_dri2_drawable_crtc 3137 3138 Waiting for vblank interrupts works fine with rotated CRTCs. The only 3139 case we can't handle with rotation is page flipping, which is handled 3140 in can_exchange(). 3141 3142 This fixes gnome-shell hanging on rotation, probably because 3143 amdgpu_dri2_get_msc returned MSC/UST 0 for rotated CRTCs. 3144 3145 Reviewed-by: Jammy Zhou <Jammy.Zhou@amd.com> 3146 3147commit 5587a7b43d02d6371ed4675a6260427492ebad94 3148Author: Piotr Redlewski <predlewski@gmail.com> 3149Date: Wed Jul 8 20:59:14 2015 +0200 3150 3151 Do not try to enable already enabled CRTCs in DPMS hook 3152 3153 (Ported from radeon commit a8ed62010d5012dfb27773595c446b217f3c00c5) 3154 3155 Signed-off-by: Piotr Redlewski <predlewski@gmail.com> 3156 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 3157 3158commit b176e63df20b345cb378fe962afd14eed43421d3 3159Author: Piotr Redlewski <predlewski@gmail.com> 3160Date: Sun Jun 28 23:20:22 2015 +0200 3161 3162 Enable/disable CRTCs in DPMS hook 3163 3164 The CRTC DPMS hook hasn't enabled or disabled hardware CRTCs. 3165 3166 (Based on radeon commit 48e5be1d5a82c1e0ccf6b7d52924c92a630e52a8) 3167 3168 Signed-off-by: Piotr Redlewski <predlewski@gmail.com> 3169 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 3170 3171commit d94d4a609c593b46ab718544ee24c25530732f22 3172Author: Michel Dänzer <michel.daenzer@amd.com> 3173Date: Thu Jun 11 17:49:33 2015 +0900 3174 3175 Handle CRTC DPMS from output DPMS hooks 3176 3177 This fixes at least two issues: 3178 3179 The CRTC DPMS hook isn't called after a modeset, so the vertical blank 3180 interrupt emulation code considered the CRTC disabled after a modeset. As 3181 a side effect, page flipping was no longer used after a modeset. 3182 3183 This change also makes sure the vertical blank interrupt emulation code 3184 runs before the hardware CRTC is disabled and after it's enabled from the 3185 output DPMS hook. The wrong order could cause gnome-shell to hang after 3186 a suspend/resume and/or DPMS off/on cycle. 3187 3188 (Ported from radeon commit c4ae0e2cbcc0e2ebf9f13ee92d59b5120254a1dc) 3189 3190 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3191 3192commit c57da33308a81fa575179238a0415abcb8b34908 3193Author: Michel Dänzer <michel.daenzer@amd.com> 3194Date: Tue Jun 9 12:39:21 2015 +0900 3195 3196 Add Option "TearFree" 3197 3198 Avoids tearing by flipping between two scanout BOs per (non-rotated) CRTC 3199 3200 (Cherry picked from radeon commit 43159ef400c3b18b9f4d3e6fa1c4aef2d60d38fe) 3201 3202 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3203 3204commit bd0aca09770543fa77b934e1728a832c9c2dc90c 3205Author: Michel Dänzer <michel.daenzer@amd.com> 3206Date: Tue Jun 9 11:57:59 2015 +0900 3207 3208 glamor: Remove the stride member of struct radeon_pixmap 3209 3210 Its value was always the same as that of the PixmapRec devKind member. 3211 3212 (Cherry picked from radeon commit ed401f5b4f07375db17ff05e294907ec95fc946d) 3213 3214 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3215 3216commit e5dfb6c2667994701ee451bf82c4142cbf343405 3217Author: Michel Dänzer <michel.daenzer@amd.com> 3218Date: Wed Mar 18 16:23:24 2015 +0900 3219 3220 glamor: Add Option "ShadowPrimary" 3221 3222 When this option is enabled, most pixmaps (including the screen pixmap) 3223 are allocated in system RAM and mostly accessed by the CPU. Changed areas 3224 of the screen pixmap are copied to dedicated per-CRTC scanout pixmaps 3225 regularly, triggered by the vblank interrupt. 3226 3227 (Cherry picked from radeon commits ae92d1765fa370a8d94c2856ad6c45d273ec3c69 3228 and 1af044d7eee211fd4b248c236280274a68334da5) 3229 3230 [ Michel Dänzer: Additional adjustements for the amdgpu driver ] 3231 3232 Signed-off-by: Darren Powell <darren.powell@amd.com> 3233 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3234 3235commit 08da7b691d556735dcc22b1351c886a5079dfd3f 3236Author: Michel Dänzer <michel.daenzer@amd.com> 3237Date: Wed Jun 10 16:21:21 2015 +0900 3238 3239 Add AMDGPU_CREATE_PIXMAP_GTT flag 3240 3241 When set, the pixmap memory is allocated in GTT instead of in VRAM. 3242 3243 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3244 3245commit 59bdb578266a2637fda8d11168b9332f6845157c 3246Author: Michel Dänzer <michel.daenzer@amd.com> 3247Date: Wed Jun 10 12:04:29 2015 +0900 3248 3249 Factor out amdgpu_bo_get_handle helper 3250 3251 The helper transparently handles BOs allocated from GBM and 3252 libdrm_amdgpu. 3253 3254 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3255 3256commit 9a6eff506b6804481a6e8139d362355fc5ffdbfb 3257Author: Michel Dänzer <michel.daenzer@amd.com> 3258Date: Wed Jun 10 12:10:24 2015 +0900 3259 3260 Set AMDGPU_BO_FLAGS_GBM for cursor buffers allocated from GBM 3261 3262 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3263 3264commit d3ea8a69b02b308f8f23662be6e0c7bd81c1a2c9 3265Author: Michel Dänzer <michel.daenzer@amd.com> 3266Date: Fri May 29 18:53:50 2015 +0900 3267 3268 glamor: Add wrappers for the X server rendering hooks 3269 3270 They can choose between using the GPU or CPU for the operation. 3271 3272 (cherry picked from radeon commits eea79472a84672ee4dc7adc4487cec6a4037048a 3273 and e58fc380ccf2a581d28f041fd74b963626ca5404) 3274 3275 Signed-off-by: Darren Powell <darren.powell@amd.com> 3276 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3277 3278commit 895e4d73d5f042afa13065b64a78f5625ecb5612 3279Author: Michel Dänzer <michel.daenzer@amd.com> 3280Date: Fri May 29 18:53:40 2015 +0900 3281 3282 glamor: Remove unused function radeon_glamor_pixmap_is_offscreen 3283 3284 (cherry picked from radeon commit 2fa021f77372ca93375a3d13a0c43a9089674899) 3285 3286 Signed-off-by: Darren Powell <darren.powell@amd.com> 3287 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3288 3289commit cc5671c587d575b2a7d2802d17e8af0384a2cea5 3290Author: Michel Dänzer <michel.daenzer@amd.com> 3291Date: Fri May 29 18:53:36 2015 +0900 3292 3293 Add RADEON_CREATE_PIXMAP_SCANOUT flag 3294 3295 It means that the pixmap is used for scanout exclusively. 3296 3297 (cherry picked from radeon commit e96349ba6281fd18b8bf9c76629128276b065e6c) 3298 3299 Signed-off-by: Darren Powell <darren.powell@amd.com> 3300 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3301 3302commit 21834953ee64920438dee1c94f3a1e53dc58b82d 3303Author: Michel Dänzer <michel.daenzer@amd.com> 3304Date: Fri May 29 18:53:32 2015 +0900 3305 3306 Split out struct drmmode_scanout for rotation shadow buffer information 3307 3308 Will be used for other kinds of dedicated scanout buffers as well. 3309 3310 (cherry picked from radeon commit 9be7dd382e86d2b804de81d4e2af7431b2e16843) 3311 3312 Signed-off-by: Darren Powell <darren.powell@amd.com> 3313 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3314 3315commit e4e4f7b83e7d7e43993fa0793d666d6dec2980f8 3316Author: Michel Dänzer <michel.daenzer@amd.com> 3317Date: Fri May 29 18:53:21 2015 +0900 3318 3319 Rename scanout_pixmap_x field to prime_pixmap_x 3320 3321 To avoid confusion with upcoming changes. 3322 3323 (cherry picked from radeon commit c32b0530302739f6512755bccf281c2300617376) 3324 3325 Signed-off-by: Darren Powell <darren.powell@amd.com> 3326 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3327 3328commit edfff6b1a3a19953644b8052b30076f76f7dc337 3329Author: Michel Dänzer <michel.daenzer@amd.com> 3330Date: Tue Jun 2 17:04:21 2015 +0900 3331 3332 Add DRI3 support 3333 3334 Must be enabled with 3335 3336 Option "DRI3" 3337 3338 in xorg.conf. 3339 3340 (Cherry picked from radeon commits 64e1e4dbdd3caee6f5d8f6b6c094b4533fa94953, 3341 694e04720b886060fe3eefdce59741f218c8269f, 3342 f940fd741b15f03393037c5bb904cd74f012de9d, 3343 fcd37f65f485291084c174666bd605e215bf1398, 3344 4b0997e56dec0053cb2cb793e0f4ae35055ff7e6, 3345 f68d9b5ba0c91a725b5eec9386c61bea8824c299 and 3346 98fb4199e63fedd4607cddee64bf602d6398df81) 3347 3348 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3349 3350commit d295b5b3310bc5c23d232c4be4170165a057c090 3351Author: Michel Dänzer <michel.daenzer@amd.com> 3352Date: Tue Jun 2 17:01:06 2015 +0900 3353 3354 amdgpu_set_shared_pixmap_backing: Add support for GBM / glamor v2 3355 3356 v2: Initialize reference count of imported GBM BOs to 1, fixes leaking 3357 them. 3358 3359 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> [v1] 3360 3361commit 03ad0fa0185d215f7d4234006e04406af1ab63ca 3362Author: Michel Dänzer <michel.daenzer@amd.com> 3363Date: Fri May 29 18:53:45 2015 +0900 3364 3365 glamor: Add radeon_pixmap parameter to radeon_glamor_create_textured_pixmap 3366 3367 (cherry picked from radeon commit 051d46382656ffc3e6cac1aab3aee7efdf5b623a) 3368 3369 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 3370 Signed-off-by: Darren Powell <darren.powell@amd.com> 3371 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3372 3373commit fafb8c6ac925ad16073e5a60dbf60d5add11bb25 3374Author: Michel Dänzer <michel.daenzer@amd.com> 3375Date: Tue Jun 2 17:00:46 2015 +0900 3376 3377 Add support for the Present extension 3378 3379 (Cherry picked from radeon commits 3c65fb849e1ba9fb6454bcaa55b696548902f3fc, 3380 694e04720b886060fe3eefdce59741f218c8269f, 3381 e3be8b0a8cf484ff16597413a6172788178e80c8, 3382 80eede245d1eda27eaba108b0761a24bfd69aff6 and 3383 5f82a720374c9c1caebb42bfbeea1f0cf8847d28) 3384 3385 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3386 3387commit 5b51f0e7e396ea946ef85429a8e9be5c1d5c39c3 3388Author: Michel Dänzer <michel.daenzer@amd.com> 3389Date: Tue Jun 2 16:58:27 2015 +0900 3390 3391 Add support for SYNC extension fences 3392 3393 (Cherry picked from radeon commits 8fc9a241ab59ffbcdc178d6415332c88a54e85fe, 3394 af1862a37570fa512a525ab47d72b30400d2e2d6, 3395 aa7825eb29cdf6ac9d7b28ad18186807ff384687, 3396 af6076241c0d322b295a4e898407ae2472bd8eb4 and 3397 d64a13ebe0ecd241ee3260dbffd8f4a01e254183) 3398 3399 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3400 3401commit a30060d22a42688371166a861e5050fdd5ce8f7b 3402Author: Michel Dänzer <michel.daenzer@amd.com> 3403Date: Mon Jun 1 18:33:33 2015 +0900 3404 3405 DRI2: Split out helper for getting UST and MSC of a specific CRTC 3406 3407 (Cherry picked from radeon commits 76c2923ac5c7230a8b2f9f8329c308d28b44d9c0 3408 and d7c82731a8bf3d381bc571b94d80d9bb2dd6e40d) 3409 3410 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3411 3412commit 9a554a683b970660b467566cf05b921393705a20 3413Author: Michel Dänzer <michel.daenzer@amd.com> 3414Date: Mon Jun 1 17:32:56 2015 +0900 3415 3416 DRI2: Use helper functions for DRM event queue management 3417 3418 This is mostly in preparation for Present support, but it also simplifies 3419 the DRI2 specific code a little. 3420 3421 (Cherry picked from radeon commit 6c3a721cde9317233072b573f9502348dcd21b16) 3422 3423 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3424 3425commit e6164ad340f65ff8ee6f6a6934302591af875a43 3426Author: Michel Dänzer <michel.daenzer@amd.com> 3427Date: Mon Jun 1 17:29:30 2015 +0900 3428 3429 DRI2: Move amdgpu_dri2_flip_event_handler 3430 3431 In preparation for the next change, which will modify it to a static 3432 function which needs to be in the new place. No functional change. 3433 3434 (Cherry picked from radeon commit c3fa22a479e61d1899fa9d327d9c4e2a7f64b0c1) 3435 3436 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3437 3438commit 5419e13da7ec3cffd43510ac88106076ea81124c 3439Author: Michel Dänzer <michel.daenzer@amd.com> 3440Date: Mon Jun 1 17:25:23 2015 +0900 3441 3442 DRI2: Remove superfluous assignments to *_info->frame 3443 3444 That field is only used for page flipping. 3445 3446 (Cherry picked from radeon commit 65045112fdc8a9fa36e0e00f46739a6152b775ff) 3447 3448 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3449 3450commit f4c2b640be17ab1f8694b35d4cb74ccfce3d1385 3451Author: Michel Dänzer <michel.daenzer@amd.com> 3452Date: Mon Jun 1 17:11:30 2015 +0900 3453 3454 DRI2: Simplify blit fallback handling for scheduled swaps 3455 3456 Also use amdgpu_dri2_schedule_event when possible. 3457 3458 (Cherry picked from radeon commit ad27f16f308079d06a2b1c788b3cb0947531253a) 3459 3460 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3461 3462commit 13a7284e061081a12180b375d66f9b8394cf8753 3463Author: Michel Dänzer <michel.daenzer@amd.com> 3464Date: Mon Jun 1 16:58:00 2015 +0900 3465 3466 Add DRM event queue helpers 3467 3468 (Cherry picked from radeon commit b4af8a327ed8420f0ff4ea0f113f4a59406ed4d3) 3469 3470 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3471 3472commit eb7c6958dff5cb8b0aad02d1d5673483dae4e3d4 3473Author: Michel Dänzer <michel.daenzer@amd.com> 3474Date: Mon Jun 1 16:52:40 2015 +0900 3475 3476 Move xorg_list backwards compatibility to new amdgpu_list.h header 3477 3478 (Cherry picked from radeon commits 7c3470f4b659206ed23f761948936ede3a2dba3d 3479 and 4a98f60117c387a228d5cbaadb6e298fb4e865df) 3480 3481 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3482 3483commit 69d161a54b4ea0d8033a0873210f2857c91ceae8 3484Author: Michel Dänzer <michel.daenzer@amd.com> 3485Date: Mon Jun 1 16:46:30 2015 +0900 3486 3487 Require at least xserver 1.8 3488 3489 So we can rely on the list.h header. 3490 3491 xserver 1.8 was released in April 2010. 3492 3493 (Cherry picked from radeon commit 7388d0b6c54b9d536fdb161e3aa61b326627b939) 3494 3495 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3496 3497commit 7363156b7c077def2aaf9a4573410817f5e92610 3498Author: Jammy Zhou <Jammy.Zhou@amd.com> 3499Date: Sat May 30 00:31:44 2015 +0800 3500 3501 Check GBM_BO_USE_LINEAR correctly v2 3502 3503 v2: remove the check for gbm.h 3504 3505 Signed-off-by: Jammy Zhou <Jammy.Zhou@amd.com> 3506 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 3507 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> [v1] 3508 3509commit e75e9f39c95b8b563885882bf29d776861cd6ca3 3510Author: Brian Paterni <bpaterni@gmail.com> 3511Date: Sat May 16 15:00:14 2015 -0500 3512 3513 extend conditional group GBM_BO_USE_LINEAR 3514 over both usages 3515 3516 Fixes 'GBM_BO_USE_LINEAR' undeclared error when compiling against older 3517 libgbm 3518 3519 Signed-off-by: Brian Paterni <bpaterni@gmail.com> 3520 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 3521 3522commit 37b389ee9e13f065fb080d1269f9a6aed616c210 3523Author: Michel Dänzer <michel.daenzer@amd.com> 3524Date: Fri May 15 10:24:24 2015 +0900 3525 3526 glamor: Deal with glamor_glyphs_init being removed from xserver 3527 3528 Port of radeon commit 818c180c8932233b214a35ba0647af82f7bcec3d. 3529 3530commit 22917044e419023d487f816e0d4f094695b55fa6 3531Author: Alex Deucher <alexander.deucher@amd.com> 3532Date: Tue May 12 13:29:00 2015 -0400 3533 3534 add some new tonga pci ids 3535 3536 Reviewed-by: Jammy Zhou <Jammy.Zhou@amd.com> 3537 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 3538 Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 3539 3540commit e71be4a22799ec4c02051b75c5fed16a3a953c7b 3541Author: Alex Deucher <alexander.deucher@amd.com> 3542Date: Tue May 12 13:25:02 2015 -0400 3543 3544 add new bonaire pci id 3545 3546 Reviewed-by: Jammy Zhou <Jammy.Zhou@amd.com> 3547 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 3548 Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 3549 3550commit b795d1e137b34a314b4b41d025d96ca9251d6bbe 3551Author: Michel Dänzer <michel.daenzer@amd.com> 3552Date: Thu May 7 18:05:32 2015 +0900 3553 3554 Link against libgbm 3555 3556 Fixes unresolved symbol "gbm_create_device". 3557 3558 Reported-and-Tested-by: Brian Paterni <bpaterni@gmail.com> 3559 3560commit 7e3b27390a03e423772717fca3c757cf5cc4d7b4 3561Author: Jammy Zhou <Jammy.Zhou@amd.com> 3562Date: Tue May 12 05:34:49 2015 +0800 3563 3564 Disable tiling for PRIME shared pixmap 3565 3566 Signed-off-by: Jammy Zhou <Jammy.Zhou@amd.com> 3567 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 3568 3569commit 4840f918ab7d61b4f55bcdff3afdac7b34e45d88 3570Author: Jammy Zhou <Jammy.Zhou@amd.com> 3571Date: Tue May 12 00:09:42 2015 +0800 3572 3573 Use gbm_bo_get_fd to get DMA_BUF fd 3574 3575 When GBM is used for buffer allocation, gbm_bo_get_fd should be 3576 used to get the DMA_BUF fd. 3577 3578 Signed-off-by: Jammy Zhou <Jammy.Zhou@amd.com> 3579 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 3580 3581commit b69c5b3cc2d7da3bb85acd687db9b5a021258914 3582Author: Marek Olšák <marek.olsak@amd.com> 3583Date: Fri Mar 27 22:56:37 2015 +0100 3584 3585 ddx: use amdgpu_query_crtc_from_id 3586 3587 Reviewed-by: Jammy Zhou <Jammy.Zhou@amd.com> 3588 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3589 3590commit 91aa694a7da7b690a3e5d59a1a8fa42cbb3ebda4 3591Author: Marek Olšák <marek.olsak@amd.com> 3592Date: Fri Mar 27 22:22:35 2015 +0100 3593 3594 ddx: remove AMDGPUIsAccelWorking 3595 3596 libdrm fails to initialize without acceleration, so this always returns true. 3597 3598 Reviewed-by: Jammy Zhou <Jammy.Zhou@amd.com> 3599 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3600 3601commit afc33040f862e2e13ba7f132bb363cf16fb6a1d7 3602Author: Marek Olšák <marek.olsak@amd.com> 3603Date: Fri Mar 27 22:14:37 2015 +0100 3604 3605 ddx: enable acceleration by default on Hawaii 3606 3607 Reviewed-by: Jammy Zhou <Jammy.Zhou@amd.com> 3608 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3609 3610commit 8a34a8149860ac15e83ccdbd8d9a527d8d3e5997 3611Author: Jammy Zhou <Jammy.Zhou@amd.com> 3612Date: Mon Apr 27 14:27:34 2015 +0800 3613 3614 Remove throttling from amdgpu_dri2_copy_region2 3615 3616 Throttling should be handled by the client-side drivers. 3617 3618 Signed-off-by: Jammy Zhou <Jammy.Zhou@amd.com> 3619 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 3620 3621commit 9f61a5506b1028d30c99cb5866abcec35d5c9cb8 3622Author: Alex Deucher <alexander.deucher@amd.com> 3623Date: Fri Apr 24 11:47:32 2015 -0400 3624 3625 fixup README 3626 3627 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> 3628 Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 3629 3630commit a49ad11af18dad74506c2f69d7bbda07b67529d2 3631Author: Michel Dänzer <michel.daenzer@amd.com> 3632Date: Fri Apr 24 09:57:27 2015 +0900 3633 3634 Add 10-amdgpu.conf xorg.conf.d snippet 3635 3636 This instructs Xorg >= 1.16 to try loading the amdgpu driver for devices 3637 managed by the amdgpu kernel driver. 3638 3639 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3640 3641commit fa4aed6cf56048a6520eac57514e38db3685cd15 3642Author: Michel Dänzer <michel.daenzer@amd.com> 3643Date: Fri Apr 24 09:53:33 2015 +0900 3644 3645 Document Option "AccelMethod" in the manpage 3646 3647 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3648 3649commit fe4a4b6836252cc8caa642a32fb3910c8590076b 3650Author: Michel Dänzer <michel.daenzer@amd.com> 3651Date: Fri Apr 24 09:52:04 2015 +0900 3652 3653 Fix build when gbm.h doesn't define GBM_BO_USE_LINEAR 3654 3655 Option "AccelMethod" "none" is ignored in that case. 3656 3657 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> 3658 3659commit 84df3e7114fb71b5e10c1a6f7869ab1505fef5b0 3660Author: Michel Dänzer <michel.daenzer@amd.com> 3661Date: Fri Apr 24 09:51:22 2015 +0900 3662 3663 glamor: Handle GLAMOR_* flags removed from xserver 3664 3665 The behaviour is the same as when the removed flags were passed in. 3666 3667 (cherry picked from radeon commit b16609b453bb1a181198cf27778f205dc23fb642) 3668 3669 Reviewed-by: Christian König <christian.koenig@amd.com> 3670 3671commit b947f4bf4efa8841bea4d306d0b0d21c7511c724 3672Author: Michel Dänzer <michel.daenzer@amd.com> 3673Date: Fri Apr 24 09:50:51 2015 +0900 3674 3675 Move #include "radeon_glamor.h" from amdgpu_drv.h to where it's needed 3676 3677 (cherry picked from radeon commit 4b8adebb80158bcf81ada83bb88517febe931b12) 3678 3679 Reviewed-by: Christian König <christian.koenig@amd.com> 3680 3681commit ff62bf6e9dce55dbde92baf4fa30193c7344ee8a 3682Author: Alex Deucher <alexander.deucher@amd.com> 3683Date: Mon Apr 20 11:57:52 2015 -0400 3684 3685 amdgpu: add the xf86-video-amdgpu driver 3686 3687 This adds the new xf86-video-amdgpu driver for 3688 newer AMD GPUs. 3689 3690 Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 3691