diff options
author | Dave Airlie <airlied@redhat.com> | 2016-10-27 20:35:59 -0400 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2016-10-27 20:35:59 -0400 |
commit | a1873c62710b23e9afbd2faeed5f28649cbe4739 (patch) | |
tree | fd07fb6b1dc0c61a15ba563cad3ef2e46687f45c /drivers/gpu/drm/amd/amdgpu/amdgpu_display.c | |
parent | 5481e27f6fd06b7cb902072e81d6b083db8155eb (diff) | |
parent | 3495a103579380288a130dc1862488cd8a4293f5 (diff) |
Merge branch 'drm-next-4.10' of git://people.freedesktop.org/~agd5f/linux into drm-next
First new feature pull for 4.10. Highlights:
- Support for multple virtual displays in the virtual dce component
- New VM mgr to support non-contiguous vram buffers
- Support for UVD powergating on additional asics
- Power management improvements
- lots of code cleanup and bug fixes
* 'drm-next-4.10' of git://people.freedesktop.org/~agd5f/linux: (107 commits)
drm/amdgpu: turn on/off uvd clock when dpm enable/disable on CI
drm/amdgpu: disable dpm before turn off clock when vce idle.
drm/amdgpu: enable uvd bypass mode for CI/VI.
drm/amdgpu: just not load smc firmware if smu is already running
drm/amdgpu: when suspend, set boot state instand of disable dpm.
drm/amdgpu: use failed label to handle context init failure
drm/amdgpu: add amdgpu_ttm_bo_eviction_valuable callback
drm/ttm: make eviction decision a driver callback v2
drm/ttm: fix coding style in ttm_bo_driver.h
drm/radeon/pm: autoswitch power state when in balanced mode
drm/amd/powerplay: fix spelling mistake and add KERN_WARNING to printks
drm/amdgpu:new ids flag for preempt
drm/amdgpu: mark symbols static where possible
drm/amdgpu: change function declarations and add missing header dependencies
drm/amdgpu: s/amdgpuCrtc/amdgpu_crtc/ in pageflip code
drm/amdgpu/atom: remove a bunch of unused functions
drm/amdgpu: consolidate atom scratch reg handling for hangs
drm/amdgpu: use amdgpu_bo_[create|free]_kernel for wb
drm/amdgpu: add VCE VM session tracking
drm/amdgpu: improve parse_cs handling a bit
...
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_display.c')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_display.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c index 083e2b429872..c7bc2b3c1b97 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c | |||
@@ -68,9 +68,9 @@ static void amdgpu_flip_work_func(struct work_struct *__work) | |||
68 | struct amdgpu_flip_work *work = | 68 | struct amdgpu_flip_work *work = |
69 | container_of(delayed_work, struct amdgpu_flip_work, flip_work); | 69 | container_of(delayed_work, struct amdgpu_flip_work, flip_work); |
70 | struct amdgpu_device *adev = work->adev; | 70 | struct amdgpu_device *adev = work->adev; |
71 | struct amdgpu_crtc *amdgpuCrtc = adev->mode_info.crtcs[work->crtc_id]; | 71 | struct amdgpu_crtc *amdgpu_crtc = adev->mode_info.crtcs[work->crtc_id]; |
72 | 72 | ||
73 | struct drm_crtc *crtc = &amdgpuCrtc->base; | 73 | struct drm_crtc *crtc = &amdgpu_crtc->base; |
74 | unsigned long flags; | 74 | unsigned long flags; |
75 | unsigned i; | 75 | unsigned i; |
76 | int vpos, hpos; | 76 | int vpos, hpos; |
@@ -85,14 +85,14 @@ static void amdgpu_flip_work_func(struct work_struct *__work) | |||
85 | /* Wait until we're out of the vertical blank period before the one | 85 | /* Wait until we're out of the vertical blank period before the one |
86 | * targeted by the flip | 86 | * targeted by the flip |
87 | */ | 87 | */ |
88 | if (amdgpuCrtc->enabled && | 88 | if (amdgpu_crtc->enabled && |
89 | (amdgpu_get_crtc_scanoutpos(adev->ddev, work->crtc_id, 0, | 89 | (amdgpu_get_crtc_scanoutpos(adev->ddev, work->crtc_id, 0, |
90 | &vpos, &hpos, NULL, NULL, | 90 | &vpos, &hpos, NULL, NULL, |
91 | &crtc->hwmode) | 91 | &crtc->hwmode) |
92 | & (DRM_SCANOUTPOS_VALID | DRM_SCANOUTPOS_IN_VBLANK)) == | 92 | & (DRM_SCANOUTPOS_VALID | DRM_SCANOUTPOS_IN_VBLANK)) == |
93 | (DRM_SCANOUTPOS_VALID | DRM_SCANOUTPOS_IN_VBLANK) && | 93 | (DRM_SCANOUTPOS_VALID | DRM_SCANOUTPOS_IN_VBLANK) && |
94 | (int)(work->target_vblank - | 94 | (int)(work->target_vblank - |
95 | amdgpu_get_vblank_counter_kms(adev->ddev, amdgpuCrtc->crtc_id)) > 0) { | 95 | amdgpu_get_vblank_counter_kms(adev->ddev, amdgpu_crtc->crtc_id)) > 0) { |
96 | schedule_delayed_work(&work->flip_work, usecs_to_jiffies(1000)); | 96 | schedule_delayed_work(&work->flip_work, usecs_to_jiffies(1000)); |
97 | return; | 97 | return; |
98 | } | 98 | } |
@@ -104,12 +104,12 @@ static void amdgpu_flip_work_func(struct work_struct *__work) | |||
104 | adev->mode_info.funcs->page_flip(adev, work->crtc_id, work->base, work->async); | 104 | adev->mode_info.funcs->page_flip(adev, work->crtc_id, work->base, work->async); |
105 | 105 | ||
106 | /* Set the flip status */ | 106 | /* Set the flip status */ |
107 | amdgpuCrtc->pflip_status = AMDGPU_FLIP_SUBMITTED; | 107 | amdgpu_crtc->pflip_status = AMDGPU_FLIP_SUBMITTED; |
108 | spin_unlock_irqrestore(&crtc->dev->event_lock, flags); | 108 | spin_unlock_irqrestore(&crtc->dev->event_lock, flags); |
109 | 109 | ||
110 | 110 | ||
111 | DRM_DEBUG_DRIVER("crtc:%d[%p], pflip_stat:AMDGPU_FLIP_SUBMITTED, work: %p,\n", | 111 | DRM_DEBUG_DRIVER("crtc:%d[%p], pflip_stat:AMDGPU_FLIP_SUBMITTED, work: %p,\n", |
112 | amdgpuCrtc->crtc_id, amdgpuCrtc, work); | 112 | amdgpu_crtc->crtc_id, amdgpu_crtc, work); |
113 | 113 | ||
114 | } | 114 | } |
115 | 115 | ||