Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 381ba329 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
* 'drm-intel-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/ickle/drm-intel:
  drm/i915/sdvo: Handle unsupported GET_SUPPORTED_ENHANCEMENTS gracefully
  drm/i915/sdvo: Cleanup connector on error path
  drm/i915: Fix 945GM regression in e259befd
parents 65097561 cf9a2f3a
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -2400,7 +2400,7 @@ i915_gem_clear_fence_reg(struct drm_gem_object *obj)
		I915_WRITE64(FENCE_REG_965_0 + (obj_priv->fence_reg * 8), 0);
		I915_WRITE64(FENCE_REG_965_0 + (obj_priv->fence_reg * 8), 0);
		break;
		break;
	case 3:
	case 3:
		if (obj_priv->fence_reg > 8)
		if (obj_priv->fence_reg >= 8)
			fence_reg = FENCE_REG_945_8 + (obj_priv->fence_reg - 8) * 4;
			fence_reg = FENCE_REG_945_8 + (obj_priv->fence_reg - 8) * 4;
		else
		else
	case 2:
	case 2:
+6 −9
Original line number Original line Diff line number Diff line
@@ -2170,8 +2170,7 @@ intel_sdvo_tv_init(struct intel_sdvo *intel_sdvo, int type)
        return true;
        return true;


err:
err:
	intel_sdvo_destroy_enhance_property(connector);
	intel_sdvo_destroy(connector);
	kfree(intel_sdvo_connector);
	return false;
	return false;
}
}


@@ -2243,8 +2242,7 @@ intel_sdvo_lvds_init(struct intel_sdvo *intel_sdvo, int device)
	return true;
	return true;


err:
err:
	intel_sdvo_destroy_enhance_property(connector);
	intel_sdvo_destroy(connector);
	kfree(intel_sdvo_connector);
	return false;
	return false;
}
}


@@ -2522,11 +2520,10 @@ static bool intel_sdvo_create_enhance_property(struct intel_sdvo *intel_sdvo,
		uint16_t response;
		uint16_t response;
	} enhancements;
	} enhancements;


	if (!intel_sdvo_get_value(intel_sdvo,
	enhancements.response = 0;
	intel_sdvo_get_value(intel_sdvo,
			     SDVO_CMD_GET_SUPPORTED_ENHANCEMENTS,
			     SDVO_CMD_GET_SUPPORTED_ENHANCEMENTS,
				  &enhancements, sizeof(enhancements)))
			     &enhancements, sizeof(enhancements));
		return false;

	if (enhancements.response == 0) {
	if (enhancements.response == 0) {
		DRM_DEBUG_KMS("No enhancement is supported\n");
		DRM_DEBUG_KMS("No enhancement is supported\n");
		return true;
		return true;