drm/radeon: Move GEM BO to drm_framebuffer
Since drm_framebuffer can now store GEM objects directly, place them there rather than in our own subclass. As this makes the framebuffer create_handle and destroy functions the same as the GEM framebuffer helper, we can reuse those. Acked-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Daniel Stone <daniels@collabora.com> Cc: Alex Deucher <alexander.deucher@amd.com> Cc: Christian König <christian.koenig@amd.com> Cc: David (ChunMing) Zhou <David1.Zhou@amd.com> Cc: amd-gfx@lists.freedesktop.org Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:

committed by
Alex Deucher

parent
c99c7d6ef9
commit
a110dfe3ab
@@ -1176,7 +1176,7 @@ static int dce4_crtc_do_set_base(struct drm_crtc *crtc,
|
||||
/* If atomic, assume fb object is pinned & idle & fenced and
|
||||
* just update base pointers
|
||||
*/
|
||||
obj = radeon_fb->obj;
|
||||
obj = radeon_fb->base.obj[0];
|
||||
rbo = gem_to_radeon_bo(obj);
|
||||
r = radeon_bo_reserve(rbo, false);
|
||||
if (unlikely(r != 0))
|
||||
@@ -1442,7 +1442,7 @@ static int dce4_crtc_do_set_base(struct drm_crtc *crtc,
|
||||
|
||||
if (!atomic && fb && fb != crtc->primary->fb) {
|
||||
radeon_fb = to_radeon_framebuffer(fb);
|
||||
rbo = gem_to_radeon_bo(radeon_fb->obj);
|
||||
rbo = gem_to_radeon_bo(radeon_fb->base.obj[0]);
|
||||
r = radeon_bo_reserve(rbo, false);
|
||||
if (unlikely(r != 0))
|
||||
return r;
|
||||
@@ -1490,7 +1490,7 @@ static int avivo_crtc_do_set_base(struct drm_crtc *crtc,
|
||||
target_fb = crtc->primary->fb;
|
||||
}
|
||||
|
||||
obj = radeon_fb->obj;
|
||||
obj = radeon_fb->base.obj[0];
|
||||
rbo = gem_to_radeon_bo(obj);
|
||||
r = radeon_bo_reserve(rbo, false);
|
||||
if (unlikely(r != 0))
|
||||
@@ -1642,7 +1642,7 @@ static int avivo_crtc_do_set_base(struct drm_crtc *crtc,
|
||||
|
||||
if (!atomic && fb && fb != crtc->primary->fb) {
|
||||
radeon_fb = to_radeon_framebuffer(fb);
|
||||
rbo = gem_to_radeon_bo(radeon_fb->obj);
|
||||
rbo = gem_to_radeon_bo(radeon_fb->base.obj[0]);
|
||||
r = radeon_bo_reserve(rbo, false);
|
||||
if (unlikely(r != 0))
|
||||
return r;
|
||||
@@ -2153,7 +2153,7 @@ static void atombios_crtc_disable(struct drm_crtc *crtc)
|
||||
struct radeon_bo *rbo;
|
||||
|
||||
radeon_fb = to_radeon_framebuffer(crtc->primary->fb);
|
||||
rbo = gem_to_radeon_bo(radeon_fb->obj);
|
||||
rbo = gem_to_radeon_bo(radeon_fb->base.obj[0]);
|
||||
r = radeon_bo_reserve(rbo, false);
|
||||
if (unlikely(r))
|
||||
DRM_ERROR("failed to reserve rbo before unpin\n");
|
||||
|
Reference in New Issue
Block a user