diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_fb.c b/drivers/gpu/drm/rockchip/rockchip_drm_fb.c index b5dac5749106..4cb6fc93baea 100644 --- a/drivers/gpu/drm/rockchip/rockchip_drm_fb.c +++ b/drivers/gpu/drm/rockchip/rockchip_drm_fb.c @@ -144,6 +144,7 @@ rockchip_drm_logo_fb_alloc(struct drm_device *dev, const struct drm_mode_fb_cmd2 fb->flags |= ROCKCHIP_DRM_MODE_LOGO_FB; rockchip_logo_fb->logo = logo; rockchip_logo_fb->fb.obj[0] = &rockchip_logo_fb->rk_obj.base; + rockchip_logo_fb->fb.obj[0]->funcs = &rockchip_gem_object_funcs; drm_gem_object_init(dev, rockchip_logo_fb->fb.obj[0], PAGE_ALIGN(logo->size)); rockchip_logo_fb->rk_obj.dma_addr = logo->dma_addr; rockchip_logo_fb->rk_obj.kvaddr = logo->kvaddr; diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_gem.c b/drivers/gpu/drm/rockchip/rockchip_drm_gem.c index d62534849a6f..ed208bf979b4 100644 --- a/drivers/gpu/drm/rockchip/rockchip_drm_gem.c +++ b/drivers/gpu/drm/rockchip/rockchip_drm_gem.c @@ -584,7 +584,7 @@ static void rockchip_gem_release_object(struct rockchip_gem_object *rk_obj) kfree(rk_obj); } -static const struct drm_gem_object_funcs rockchip_gem_object_funcs = { +const struct drm_gem_object_funcs rockchip_gem_object_funcs = { .free = rockchip_gem_free_object, .export = rockchip_drm_gem_prime_export, .get_sg_table = rockchip_gem_prime_get_sg_table, diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_gem.h b/drivers/gpu/drm/rockchip/rockchip_drm_gem.h index 7b13590ffb43..5b434cb1e494 100644 --- a/drivers/gpu/drm/rockchip/rockchip_drm_gem.h +++ b/drivers/gpu/drm/rockchip/rockchip_drm_gem.h @@ -76,4 +76,7 @@ int rockchip_gem_prime_end_cpu_access(struct drm_gem_object *obj, enum dma_data_direction dir); void rockchip_gem_get_ddr_info(void); + +extern const struct drm_gem_object_funcs rockchip_gem_object_funcs; + #endif /* _ROCKCHIP_DRM_GEM_H */