Loading drivers/gpu/drm/msm/msm_drv.c +22 −22 Original line number Diff line number Diff line Loading @@ -429,16 +429,19 @@ static int msm_drm_init(struct device *dev, struct drm_driver *drv) priv = kzalloc(sizeof(*priv), GFP_KERNEL); if (!priv) { ret = -ENOMEM; goto err_unref_drm_dev; drm_dev_unref(ddev); return -ENOMEM; } ddev->dev_private = priv; priv->dev = ddev; ret = mdp5_mdss_init(ddev); if (ret) goto err_free_priv; if (ret) { kfree(priv); drm_dev_unref(ddev); return ret; } mdss = priv->mdss; Loading @@ -453,12 +456,17 @@ static int msm_drm_init(struct device *dev, struct drm_driver *drv) /* Bind all our sub-components: */ ret = component_bind_all(dev, ddev); if (ret) goto err_destroy_mdss; if (ret) { if (mdss && mdss->funcs) mdss->funcs->destroy(ddev); kfree(priv); drm_dev_unref(ddev); return ret; } ret = msm_init_vram(ddev); if (ret) goto err_msm_uninit; goto fail; msm_gem_shrinker_init(ddev); Loading @@ -484,7 +492,7 @@ static int msm_drm_init(struct device *dev, struct drm_driver *drv) */ dev_err(dev, "failed to load kms\n"); ret = PTR_ERR(kms); goto err_msm_uninit; goto fail; } /* Enable normalization of plane zpos */ Loading @@ -494,7 +502,7 @@ static int msm_drm_init(struct device *dev, struct drm_driver *drv) ret = kms->funcs->hw_init(kms); if (ret) { dev_err(dev, "kms hw init failed: %d\n", ret); goto err_msm_uninit; goto fail; } } Loading @@ -504,7 +512,7 @@ static int msm_drm_init(struct device *dev, struct drm_driver *drv) ret = drm_vblank_init(ddev, priv->num_crtcs); if (ret < 0) { dev_err(dev, "failed to initialize vblank\n"); goto err_msm_uninit; goto fail; } if (kms) { Loading @@ -513,13 +521,13 @@ static int msm_drm_init(struct device *dev, struct drm_driver *drv) pm_runtime_put_sync(dev); if (ret < 0) { dev_err(dev, "failed to install IRQ handler\n"); goto err_msm_uninit; goto fail; } } ret = drm_dev_register(ddev, 0); if (ret) goto err_msm_uninit; goto fail; drm_mode_config_reset(ddev); Loading @@ -530,23 +538,15 @@ static int msm_drm_init(struct device *dev, struct drm_driver *drv) ret = msm_debugfs_late_init(ddev); if (ret) goto err_msm_uninit; goto fail; drm_kms_helper_poll_init(ddev); return 0; err_msm_uninit: fail: msm_drm_uninit(dev); return ret; err_destroy_mdss: if (mdss && mdss->funcs) mdss->funcs->destroy(ddev); err_free_priv: kfree(priv); err_unref_drm_dev: drm_dev_unref(ddev); return ret; } /* Loading Loading
drivers/gpu/drm/msm/msm_drv.c +22 −22 Original line number Diff line number Diff line Loading @@ -429,16 +429,19 @@ static int msm_drm_init(struct device *dev, struct drm_driver *drv) priv = kzalloc(sizeof(*priv), GFP_KERNEL); if (!priv) { ret = -ENOMEM; goto err_unref_drm_dev; drm_dev_unref(ddev); return -ENOMEM; } ddev->dev_private = priv; priv->dev = ddev; ret = mdp5_mdss_init(ddev); if (ret) goto err_free_priv; if (ret) { kfree(priv); drm_dev_unref(ddev); return ret; } mdss = priv->mdss; Loading @@ -453,12 +456,17 @@ static int msm_drm_init(struct device *dev, struct drm_driver *drv) /* Bind all our sub-components: */ ret = component_bind_all(dev, ddev); if (ret) goto err_destroy_mdss; if (ret) { if (mdss && mdss->funcs) mdss->funcs->destroy(ddev); kfree(priv); drm_dev_unref(ddev); return ret; } ret = msm_init_vram(ddev); if (ret) goto err_msm_uninit; goto fail; msm_gem_shrinker_init(ddev); Loading @@ -484,7 +492,7 @@ static int msm_drm_init(struct device *dev, struct drm_driver *drv) */ dev_err(dev, "failed to load kms\n"); ret = PTR_ERR(kms); goto err_msm_uninit; goto fail; } /* Enable normalization of plane zpos */ Loading @@ -494,7 +502,7 @@ static int msm_drm_init(struct device *dev, struct drm_driver *drv) ret = kms->funcs->hw_init(kms); if (ret) { dev_err(dev, "kms hw init failed: %d\n", ret); goto err_msm_uninit; goto fail; } } Loading @@ -504,7 +512,7 @@ static int msm_drm_init(struct device *dev, struct drm_driver *drv) ret = drm_vblank_init(ddev, priv->num_crtcs); if (ret < 0) { dev_err(dev, "failed to initialize vblank\n"); goto err_msm_uninit; goto fail; } if (kms) { Loading @@ -513,13 +521,13 @@ static int msm_drm_init(struct device *dev, struct drm_driver *drv) pm_runtime_put_sync(dev); if (ret < 0) { dev_err(dev, "failed to install IRQ handler\n"); goto err_msm_uninit; goto fail; } } ret = drm_dev_register(ddev, 0); if (ret) goto err_msm_uninit; goto fail; drm_mode_config_reset(ddev); Loading @@ -530,23 +538,15 @@ static int msm_drm_init(struct device *dev, struct drm_driver *drv) ret = msm_debugfs_late_init(ddev); if (ret) goto err_msm_uninit; goto fail; drm_kms_helper_poll_init(ddev); return 0; err_msm_uninit: fail: msm_drm_uninit(dev); return ret; err_destroy_mdss: if (mdss && mdss->funcs) mdss->funcs->destroy(ddev); err_free_priv: kfree(priv); err_unref_drm_dev: drm_dev_unref(ddev); return ret; } /* Loading