From: Dave Airlie Date: Sun, 6 Nov 2016 23:37:09 +0000 (+1000) Subject: Backmerge tag 'v4.9-rc4' into drm-next X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=7b624ad8fea1be7ff4c22643e212191aa6a2a3c2;p=GitHub%2Fmoto-9609%2Fandroid_kernel_motorola_exynos9610.git Backmerge tag 'v4.9-rc4' into drm-next Linux 4.9-rc4 This is needed for nouveau development. --- 7b624ad8fea1be7ff4c22643e212191aa6a2a3c2 diff --cc drivers/gpu/drm/amd/amdgpu/amdgpu_device.c index 6958d4af017f,7ca07e7b25c1..9e16e975f31a --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c @@@ -1975,12 -1956,10 +1975,13 @@@ int amdgpu_device_suspend(struct drm_de r = amdgpu_suspend(adev); - /* evict remaining vram memory */ + /* evict remaining vram memory + * This second call to evict vram is to evict the gart page table + * using the CPU. + */ amdgpu_bo_evict_vram(adev); + amdgpu_atombios_scratch_regs_save(adev); pci_save_state(dev->pdev); if (suspend) { /* Shut down the device */ diff --cc drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c index e480263387e1,968c4260d7a7..337c5b31d18d --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c @@@ -1772,8 -1755,9 +1772,9 @@@ void amdgpu_vm_manager_fini(struct amdg for (i = 0; i < AMDGPU_NUM_VM; ++i) { struct amdgpu_vm_id *id = &adev->vm_manager.ids[i]; - fence_put(adev->vm_manager.ids[i].first); + dma_fence_put(adev->vm_manager.ids[i].first); amdgpu_sync_free(&adev->vm_manager.ids[i].active); - fence_put(id->flushed_updates); - fence_put(id->last_flush); + dma_fence_put(id->flushed_updates); ++ dma_fence_put(id->last_flush); } } diff --cc drivers/gpu/drm/i915/intel_display.c index 6f8f6ec5b27a,0ad1879bfd9d..895b3dc50e3f --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@@ -2983,9 -2976,10 +2983,10 @@@ int skl_check_plane_surface(struct inte int ret; /* Rotate src coordinates to match rotated GTT view */ - if (intel_rotation_90_or_270(rotation)) + if (drm_rotation_90_or_270(rotation)) drm_rect_rotate(&plane_state->base.src, - fb->width, fb->height, DRM_ROTATE_270); + fb->width << 16, fb->height << 16, + DRM_ROTATE_270); /* * Handle the AUX surface first since