drm/amdgpu: Use drm_fb_helper_fill_info
authorDaniel Vetter <daniel.vetter@ffwll.ch>
Tue, 26 Mar 2019 13:19:51 +0000 (14:19 +0100)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Wed, 27 Mar 2019 08:55:58 +0000 (09:55 +0100)
Should not cause any changes.

v2: Rebase

Reviewed-by: Noralf Trønnes <noralf@tronnes.org>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Cc: Alex Deucher <alexander.deucher@amd.com>
Cc: "Christian König" <christian.koenig@amd.com>
Cc: Samuel Li <Samuel.Li@amd.com>
Cc: "Michel Dänzer" <michel.daenzer@amd.com>
Cc: Huang Rui <ray.huang@amd.com>
Cc: Junwei Zhang <Jerry.Zhang@amd.com>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: Daniel Stone <daniels@collabora.com>
Cc: Shirish S <shirish.s@amd.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190326132008.11781-4-daniel.vetter@ffwll.ch
drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c

index 24890d8f9ee4db2bec79c97a6d55f0c8ae807586..e4760921883923a7d4f9669e8235e8dd28a63d8d 100644 (file)
 static int
 amdgpufb_open(struct fb_info *info, int user)
 {
-       struct amdgpu_fbdev *rfbdev = info->par;
-       struct amdgpu_device *adev = rfbdev->adev;
-       int ret = pm_runtime_get_sync(adev->ddev->dev);
+       struct drm_fb_helper *fb_helper = info->par;
+       int ret = pm_runtime_get_sync(fb_helper->dev->dev);
        if (ret < 0 && ret != -EACCES) {
-               pm_runtime_mark_last_busy(adev->ddev->dev);
-               pm_runtime_put_autosuspend(adev->ddev->dev);
+               pm_runtime_mark_last_busy(fb_helper->dev->dev);
+               pm_runtime_put_autosuspend(fb_helper->dev->dev);
                return ret;
        }
        return 0;
@@ -63,11 +62,10 @@ amdgpufb_open(struct fb_info *info, int user)
 static int
 amdgpufb_release(struct fb_info *info, int user)
 {
-       struct amdgpu_fbdev *rfbdev = info->par;
-       struct amdgpu_device *adev = rfbdev->adev;
+       struct drm_fb_helper *fb_helper = info->par;
 
-       pm_runtime_mark_last_busy(adev->ddev->dev);
-       pm_runtime_put_autosuspend(adev->ddev->dev);
+       pm_runtime_mark_last_busy(fb_helper->dev->dev);
+       pm_runtime_put_autosuspend(fb_helper->dev->dev);
        return 0;
 }
 
@@ -233,8 +231,6 @@ static int amdgpufb_create(struct drm_fb_helper *helper,
                goto out;
        }
 
-       info->par = rfbdev;
-
        ret = amdgpu_display_framebuffer_init(adev->ddev, &rfbdev->rfb,
                                              &mode_cmd, gobj);
        if (ret) {
@@ -247,10 +243,6 @@ static int amdgpufb_create(struct drm_fb_helper *helper,
        /* setup helper */
        rfbdev->helper.fb = fb;
 
-       strcpy(info->fix.id, "amdgpudrmfb");
-
-       drm_fb_helper_fill_fix(info, fb->pitches[0], fb->format->depth);
-
        info->fbops = &amdgpufb_ops;
 
        tmp = amdgpu_bo_gpu_offset(abo) - adev->gmc.vram_start;
@@ -259,7 +251,7 @@ static int amdgpufb_create(struct drm_fb_helper *helper,
        info->screen_base = amdgpu_bo_kptr(abo);
        info->screen_size = amdgpu_bo_size(abo);
 
-       drm_fb_helper_fill_var(info, &rfbdev->helper, sizes->fb_width, sizes->fb_height);
+       drm_fb_helper_fill_info(info, &rfbdev->helper, sizes);
 
        /* setup aperture base/size for vesafb takeover */
        info->apertures->ranges[0].base = adev->ddev->mode_config.fb_base;