Commit b0b3d253 authored by Thomas Zimmermann's avatar Thomas Zimmermann Committed by Dmitry Baryshkov

drm/msm: Remove struct msm_fbdev

Remove struct msm_fbdev, which is an empty wrapper around struct
drm_fb_helper. Use the latter directly. No functional changes.

v2:
	* kfree fbdev helper instance on init errors (Dmitri)
Signed-off-by: default avatarThomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: default avatarDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Patchwork: https://patchwork.freedesktop.org/patch/530554/
Link: https://lore.kernel.org/r/20230403124538.8497-5-tzimmermann@suse.deSigned-off-by: default avatarDmitry Baryshkov <dmitry.baryshkov@linaro.org>
parent 0c8d2639
...@@ -18,12 +18,6 @@ ...@@ -18,12 +18,6 @@
* fbdev funcs, to implement legacy fbdev interface on top of drm driver * fbdev funcs, to implement legacy fbdev interface on top of drm driver
*/ */
#define to_msm_fbdev(x) container_of(x, struct msm_fbdev, base)
struct msm_fbdev {
struct drm_fb_helper base;
};
static int msm_fbdev_mmap(struct fb_info *info, struct vm_area_struct *vma) static int msm_fbdev_mmap(struct fb_info *info, struct vm_area_struct *vma)
{ {
struct drm_fb_helper *helper = (struct drm_fb_helper *)info->par; struct drm_fb_helper *helper = (struct drm_fb_helper *)info->par;
...@@ -129,16 +123,13 @@ static const struct drm_fb_helper_funcs msm_fb_helper_funcs = { ...@@ -129,16 +123,13 @@ static const struct drm_fb_helper_funcs msm_fb_helper_funcs = {
struct drm_fb_helper *msm_fbdev_init(struct drm_device *dev) struct drm_fb_helper *msm_fbdev_init(struct drm_device *dev)
{ {
struct msm_drm_private *priv = dev->dev_private; struct msm_drm_private *priv = dev->dev_private;
struct msm_fbdev *fbdev;
struct drm_fb_helper *helper; struct drm_fb_helper *helper;
int ret; int ret;
fbdev = kzalloc(sizeof(*fbdev), GFP_KERNEL); helper = kzalloc(sizeof(*helper), GFP_KERNEL);
if (!fbdev) if (!helper)
return NULL; return NULL;
helper = &fbdev->base;
drm_fb_helper_prepare(dev, helper, 32, &msm_fb_helper_funcs); drm_fb_helper_prepare(dev, helper, 32, &msm_fb_helper_funcs);
ret = drm_fb_helper_init(dev, helper); ret = drm_fb_helper_init(dev, helper);
...@@ -159,7 +150,7 @@ struct drm_fb_helper *msm_fbdev_init(struct drm_device *dev) ...@@ -159,7 +150,7 @@ struct drm_fb_helper *msm_fbdev_init(struct drm_device *dev)
drm_fb_helper_fini(helper); drm_fb_helper_fini(helper);
fail: fail:
drm_fb_helper_unprepare(helper); drm_fb_helper_unprepare(helper);
kfree(fbdev); kfree(helper);
return NULL; return NULL;
} }
...@@ -168,7 +159,6 @@ void msm_fbdev_free(struct drm_device *dev) ...@@ -168,7 +159,6 @@ void msm_fbdev_free(struct drm_device *dev)
struct msm_drm_private *priv = dev->dev_private; struct msm_drm_private *priv = dev->dev_private;
struct drm_fb_helper *helper = priv->fbdev; struct drm_fb_helper *helper = priv->fbdev;
struct drm_framebuffer *fb = helper->fb; struct drm_framebuffer *fb = helper->fb;
struct msm_fbdev *fbdev;
DBG(); DBG();
...@@ -176,8 +166,6 @@ void msm_fbdev_free(struct drm_device *dev) ...@@ -176,8 +166,6 @@ void msm_fbdev_free(struct drm_device *dev)
drm_fb_helper_fini(helper); drm_fb_helper_fini(helper);
fbdev = to_msm_fbdev(priv->fbdev);
/* this will free the backing object */ /* this will free the backing object */
if (fb) { if (fb) {
struct drm_gem_object *bo = msm_framebuffer_bo(fb, 0); struct drm_gem_object *bo = msm_framebuffer_bo(fb, 0);
...@@ -186,7 +174,7 @@ void msm_fbdev_free(struct drm_device *dev) ...@@ -186,7 +174,7 @@ void msm_fbdev_free(struct drm_device *dev)
} }
drm_fb_helper_unprepare(helper); drm_fb_helper_unprepare(helper);
kfree(fbdev); kfree(helper);
priv->fbdev = NULL; priv->fbdev = NULL;
} }
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment