diff options
author | Dave Airlie <airlied@redhat.com> | 2014-08-27 21:48:05 -0400 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2014-08-27 21:48:05 -0400 |
commit | 5fa9be63a42bd4336448d27cbd1f3b993744dd88 (patch) | |
tree | dca828a26ee0741ef161d715032c68f5c7a44704 | |
parent | 00e7208997d7a42b6f7b22f582523755f43a2f9b (diff) | |
parent | 0d9509d2119528d176f89d67d3004cd92942b57a (diff) |
Merge branch 'msm-fixes-3.17' of git://people.freedesktop.org/~robclark/linux into drm-fixes
misc msm fixes from Rob.
* 'msm-fixes-3.17' of git://people.freedesktop.org/~robclark/linux:
drm/msm: Fix missing unlock on error in msm_fbdev_create()
drm/msm: fix compile error for non-dt builds
drm/msm/mdp4: request vblank during modeset
drm/msm: avoid flood of kernel logs on faults
-rw-r--r-- | drivers/gpu/drm/msm/mdp/mdp4/mdp4_crtc.c | 2 | ||||
-rw-r--r-- | drivers/gpu/drm/msm/msm_drv.c | 3 | ||||
-rw-r--r-- | drivers/gpu/drm/msm/msm_fbdev.c | 2 | ||||
-rw-r--r-- | drivers/gpu/drm/msm/msm_iommu.c | 4 |
4 files changed, 6 insertions, 5 deletions
diff --git a/drivers/gpu/drm/msm/mdp/mdp4/mdp4_crtc.c b/drivers/gpu/drm/msm/mdp/mdp4/mdp4_crtc.c index 74cebb51e8c2..c6c80ea28c35 100644 --- a/drivers/gpu/drm/msm/mdp/mdp4/mdp4_crtc.c +++ b/drivers/gpu/drm/msm/mdp/mdp4/mdp4_crtc.c | |||
@@ -397,6 +397,7 @@ static void mdp4_crtc_prepare(struct drm_crtc *crtc) | |||
397 | struct mdp4_crtc *mdp4_crtc = to_mdp4_crtc(crtc); | 397 | struct mdp4_crtc *mdp4_crtc = to_mdp4_crtc(crtc); |
398 | DBG("%s", mdp4_crtc->name); | 398 | DBG("%s", mdp4_crtc->name); |
399 | /* make sure we hold a ref to mdp clks while setting up mode: */ | 399 | /* make sure we hold a ref to mdp clks while setting up mode: */ |
400 | drm_crtc_vblank_get(crtc); | ||
400 | mdp4_enable(get_kms(crtc)); | 401 | mdp4_enable(get_kms(crtc)); |
401 | mdp4_crtc_dpms(crtc, DRM_MODE_DPMS_OFF); | 402 | mdp4_crtc_dpms(crtc, DRM_MODE_DPMS_OFF); |
402 | } | 403 | } |
@@ -407,6 +408,7 @@ static void mdp4_crtc_commit(struct drm_crtc *crtc) | |||
407 | crtc_flush(crtc); | 408 | crtc_flush(crtc); |
408 | /* drop the ref to mdp clk's that we got in prepare: */ | 409 | /* drop the ref to mdp clk's that we got in prepare: */ |
409 | mdp4_disable(get_kms(crtc)); | 410 | mdp4_disable(get_kms(crtc)); |
411 | drm_crtc_vblank_put(crtc); | ||
410 | } | 412 | } |
411 | 413 | ||
412 | static int mdp4_crtc_mode_set_base(struct drm_crtc *crtc, int x, int y, | 414 | static int mdp4_crtc_mode_set_base(struct drm_crtc *crtc, int x, int y, |
diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c index b447c01ad89c..26ee80db17af 100644 --- a/drivers/gpu/drm/msm/msm_drv.c +++ b/drivers/gpu/drm/msm/msm_drv.c | |||
@@ -974,12 +974,11 @@ static int msm_pdev_probe(struct platform_device *pdev) | |||
974 | 974 | ||
975 | for (i = 0; i < ARRAY_SIZE(devnames); i++) { | 975 | for (i = 0; i < ARRAY_SIZE(devnames); i++) { |
976 | struct device *dev; | 976 | struct device *dev; |
977 | int ret; | ||
978 | 977 | ||
979 | dev = bus_find_device_by_name(&platform_bus_type, | 978 | dev = bus_find_device_by_name(&platform_bus_type, |
980 | NULL, devnames[i]); | 979 | NULL, devnames[i]); |
981 | if (!dev) { | 980 | if (!dev) { |
982 | dev_info(master, "still waiting for %s\n", devnames[i]); | 981 | dev_info(&pdev->dev, "still waiting for %s\n", devnames[i]); |
983 | return -EPROBE_DEFER; | 982 | return -EPROBE_DEFER; |
984 | } | 983 | } |
985 | 984 | ||
diff --git a/drivers/gpu/drm/msm/msm_fbdev.c b/drivers/gpu/drm/msm/msm_fbdev.c index 9c5221ce391a..ab5bfd2d0ebf 100644 --- a/drivers/gpu/drm/msm/msm_fbdev.c +++ b/drivers/gpu/drm/msm/msm_fbdev.c | |||
@@ -143,7 +143,7 @@ static int msm_fbdev_create(struct drm_fb_helper *helper, | |||
143 | ret = msm_gem_get_iova_locked(fbdev->bo, 0, &paddr); | 143 | ret = msm_gem_get_iova_locked(fbdev->bo, 0, &paddr); |
144 | if (ret) { | 144 | if (ret) { |
145 | dev_err(dev->dev, "failed to get buffer obj iova: %d\n", ret); | 145 | dev_err(dev->dev, "failed to get buffer obj iova: %d\n", ret); |
146 | goto fail; | 146 | goto fail_unlock; |
147 | } | 147 | } |
148 | 148 | ||
149 | fbi = framebuffer_alloc(0, dev->dev); | 149 | fbi = framebuffer_alloc(0, dev->dev); |
diff --git a/drivers/gpu/drm/msm/msm_iommu.c b/drivers/gpu/drm/msm/msm_iommu.c index 099af483fdf0..7acdaa5688b7 100644 --- a/drivers/gpu/drm/msm/msm_iommu.c +++ b/drivers/gpu/drm/msm/msm_iommu.c | |||
@@ -27,8 +27,8 @@ struct msm_iommu { | |||
27 | static int msm_fault_handler(struct iommu_domain *iommu, struct device *dev, | 27 | static int msm_fault_handler(struct iommu_domain *iommu, struct device *dev, |
28 | unsigned long iova, int flags, void *arg) | 28 | unsigned long iova, int flags, void *arg) |
29 | { | 29 | { |
30 | DBG("*** fault: iova=%08lx, flags=%d", iova, flags); | 30 | pr_warn_ratelimited("*** fault: iova=%08lx, flags=%d\n", iova, flags); |
31 | return -ENOSYS; | 31 | return 0; |
32 | } | 32 | } |
33 | 33 | ||
34 | static int msm_iommu_attach(struct msm_mmu *mmu, const char **names, int cnt) | 34 | static int msm_iommu_attach(struct msm_mmu *mmu, const char **names, int cnt) |