return &obj->base;
}
+void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj)
+{
+ drm_gem_object_put(obj);
+}
+
struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
struct drm_mode_fb_cmd2 *mode_cmd)
{
mode_cmd->modifier[0]),
mode_cmd);
if (IS_ERR(fb)) {
- drm_gem_object_put(obj);
+ intel_fbdev_fb_bo_destroy(obj);
goto err;
}
struct intel_display;
struct drm_gem_object *intel_fbdev_fb_bo_create(struct drm_device *drm, int size);
+void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj);
struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
struct drm_mode_fb_cmd2 *mode_cmd);
int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
return &obj->ttm.base;
}
+void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj)
+{
+ xe_bo_unpin_map_no_vm(gem_to_xe_bo(obj));
+}
+
struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
struct drm_mode_fb_cmd2 *mode_cmd)
{
mode_cmd->modifier[0]),
mode_cmd);
if (IS_ERR(fb)) {
- xe_bo_unpin_map_no_vm(gem_to_xe_bo(obj));
+ intel_fbdev_fb_bo_destroy(obj);
goto err;
}