diff options
author | Rob Clark <robdclark@gmail.com> | 2015-05-07 15:20:13 -0400 |
---|---|---|
committer | Rob Clark <robdclark@gmail.com> | 2015-05-14 11:50:39 -0400 |
commit | 13f15565f7887a028b3442bbd763ff6d07b48479 (patch) | |
tree | 4a8ccfa0bd1d593d507ee22f6785cc1fb4d3dbe7 /drivers/gpu/drm/msm/msm_drv.c | |
parent | ff431fa4d96fc34568454aae4cc264a7760636a8 (diff) | |
download | linux-13f15565f7887a028b3442bbd763ff6d07b48479.tar.gz linux-13f15565f7887a028b3442bbd763ff6d07b48479.tar.bz2 linux-13f15565f7887a028b3442bbd763ff6d07b48479.zip |
drm/msm: setup vram after component_bind_all()
First of all, we don't want -EPROBE_DEFER when trying to bind children
to cause us to forget to free our vram. And second we don't want vram
allocation fail to trigger _unbind_all() before _bind_all().
Signed-off-by: Rob Clark <robdclark@gmail.com>
Diffstat (limited to 'drivers/gpu/drm/msm/msm_drv.c')
-rw-r--r-- | drivers/gpu/drm/msm/msm_drv.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c index 72f2b962efd4..cc6485ef2949 100644 --- a/drivers/gpu/drm/msm/msm_drv.c +++ b/drivers/gpu/drm/msm/msm_drv.c @@ -285,10 +285,6 @@ static int msm_load(struct drm_device *dev, unsigned long flags) drm_mode_config_init(dev); - ret = msm_init_vram(dev); - if (ret) - goto fail; - platform_set_drvdata(pdev, dev); /* Bind all our sub-components: */ @@ -296,6 +292,10 @@ static int msm_load(struct drm_device *dev, unsigned long flags) if (ret) return ret; + ret = msm_init_vram(dev); + if (ret) + goto fail; + switch (get_mdp_ver(pdev)) { case 4: kms = mdp4_kms_init(dev); |