@@ -241,12 +241,11 @@ static int msm_fb_show(struct seq_file *m, void *arg)
{
struct drm_info_node *node = (struct drm_info_node *) m->private;
struct drm_device *dev = node->minor->dev;
- struct msm_drm_private *priv = dev->dev_private;
struct drm_framebuffer *fb, *fbdev_fb = NULL;
- if (priv->fbdev) {
+ if (dev->fb_helper && dev->fb_helper->fb) {
seq_printf(m, "fbcon ");
- fbdev_fb = priv->fbdev->fb;
+ fbdev_fb = dev->fb_helper->fb;
msm_framebuffer_describe(fbdev_fb, m);
}
@@ -242,7 +242,7 @@ static int msm_drm_uninit(struct device *dev)
msm_rd_debugfs_cleanup(priv);
#ifdef CONFIG_DRM_FBDEV_EMULATION
- if (fbdev && priv->fbdev)
+ if (fbdev && ddev->fb_helper)
msm_fbdev_free(ddev);
#endif
@@ -537,7 +537,7 @@ static int msm_drm_init(struct device *dev, const struct drm_driver *drv)
#ifdef CONFIG_DRM_FBDEV_EMULATION
if (kms && fbdev)
- priv->fbdev = msm_fbdev_init(ddev);
+ msm_fbdev_init(ddev);
#endif
ret = msm_debugfs_late_init(ddev);
@@ -129,8 +129,6 @@ struct msm_drm_private {
bool is_a2xx;
bool has_cached_coherent;
- struct drm_fb_helper *fbdev;
-
struct msm_rd_state *rd; /* debugfs to dump all submits */
struct msm_rd_state *hangrd; /* debugfs to dump hanging submits */
struct msm_perf_state *perf;
@@ -122,7 +122,6 @@ static const struct drm_fb_helper_funcs msm_fb_helper_funcs = {
/* initialize fbdev helper */
struct drm_fb_helper *msm_fbdev_init(struct drm_device *dev)
{
- struct msm_drm_private *priv = dev->dev_private;
struct drm_fb_helper *helper;
int ret;
@@ -142,8 +141,6 @@ struct drm_fb_helper *msm_fbdev_init(struct drm_device *dev)
if (ret)
goto fini;
- priv->fbdev = helper;
-
return helper;
fini:
@@ -156,8 +153,7 @@ struct drm_fb_helper *msm_fbdev_init(struct drm_device *dev)
void msm_fbdev_free(struct drm_device *dev)
{
- struct msm_drm_private *priv = dev->dev_private;
- struct drm_fb_helper *helper = priv->fbdev;
+ struct drm_fb_helper *helper = dev->fb_helper;
struct drm_framebuffer *fb = helper->fb;
DBG();
@@ -176,5 +172,5 @@ void msm_fbdev_free(struct drm_device *dev)
drm_fb_helper_unprepare(helper);
kfree(helper);
- priv->fbdev = NULL;
+ dev->fb_helper = NULL;
}