|
@@ -5154,8 +5154,6 @@ static int intel_crtc_mode_set(struct drm_crtc *crtc,
|
|
|
|
|
|
I915_WRITE(DSPCNTR(plane), dspcntr);
|
|
|
POSTING_READ(DSPCNTR(plane));
|
|
|
- if (!HAS_PCH_SPLIT(dev))
|
|
|
- intel_enable_plane(dev_priv, plane, pipe);
|
|
|
|
|
|
ret = intel_pipe_set_base(crtc, x, y, old_fb);
|
|
|
|
|
@@ -5605,9 +5603,9 @@ static int intel_crtc_clock_get(struct drm_device *dev, struct drm_crtc *crtc)
|
|
|
intel_clock_t clock;
|
|
|
|
|
|
if ((dpll & DISPLAY_RATE_SELECT_FPA1) == 0)
|
|
|
- fp = FP0(pipe);
|
|
|
+ fp = I915_READ(FP0(pipe));
|
|
|
else
|
|
|
- fp = FP1(pipe);
|
|
|
+ fp = I915_READ(FP1(pipe));
|
|
|
|
|
|
clock.m1 = (fp & FP_M1_DIV_MASK) >> FP_M1_DIV_SHIFT;
|
|
|
if (IS_PINEVIEW(dev)) {
|
|
@@ -6579,8 +6577,10 @@ intel_user_framebuffer_create(struct drm_device *dev,
|
|
|
return ERR_PTR(-ENOENT);
|
|
|
|
|
|
intel_fb = kzalloc(sizeof(*intel_fb), GFP_KERNEL);
|
|
|
- if (!intel_fb)
|
|
|
+ if (!intel_fb) {
|
|
|
+ drm_gem_object_unreference_unlocked(&obj->base);
|
|
|
return ERR_PTR(-ENOMEM);
|
|
|
+ }
|
|
|
|
|
|
ret = intel_framebuffer_init(dev, intel_fb, mode_cmd, obj);
|
|
|
if (ret) {
|