From patchwork Tue Sep 10 10:06:51 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Daniel Vetter X-Patchwork-Id: 2865031 Return-Path: X-Original-To: patchwork-intel-gfx@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork1.web.kernel.org (Postfix) with ESMTP id 837179F495 for ; Tue, 10 Sep 2013 10:07:45 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 4BA2820253 for ; Tue, 10 Sep 2013 10:07:44 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by mail.kernel.org (Postfix) with ESMTP id 7AFF320251 for ; Tue, 10 Sep 2013 10:07:39 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 679C0E68CA for ; Tue, 10 Sep 2013 03:07:39 -0700 (PDT) X-Original-To: intel-gfx@lists.freedesktop.org Delivered-To: intel-gfx@lists.freedesktop.org Received: from mail-bk0-f47.google.com (mail-bk0-f47.google.com [209.85.214.47]) by gabe.freedesktop.org (Postfix) with ESMTP id 6A41BE5F78 for ; Tue, 10 Sep 2013 03:06:47 -0700 (PDT) Received: by mail-bk0-f47.google.com with SMTP id mx12so2786669bkb.20 for ; Tue, 10 Sep 2013 03:06:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ffwll.ch; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-type:content-transfer-encoding; bh=9eVyWOg6uLKcnFpDgiEocKZ+nYnxmi8VYFPjcedKDRA=; b=P7wvKspdKrMk45FfvaXUId/bh0aay6+/SMQ49dIwAZsrYUdbetWbT1Au0Iea6as+r5 fLxlI9MJiHDSpOpK+lBtLnwETQOFA459fO8kSokuqCFAskMTjTNAURWdeyY0Cuy8x+i4 M5gw7ewvkUK6XVU7QjTQRR0GBlKSiOpMewhJM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-type:content-transfer-encoding; bh=9eVyWOg6uLKcnFpDgiEocKZ+nYnxmi8VYFPjcedKDRA=; b=cib/5WGNJeveoGlPR3Fe4T4dQOxyimBQLp5S62i+8aKnQm8D0IeqqHscigRBneni0n oDMPxst17Sm0S8qaiIGY1iaAjq5x1ZaLWCDeAQv/pjbG3e72bLLHQE8E6+2vABi3rKuk dwH3BeOQM7NRlWOdqysGNsQuodwQ9f4nfWk0bq5RuCHtNT+et9h7lfKSCUW8cMIaL2l9 WGV10WOxrI0+5XxDUWk30eUQ60Gi1mZjfkFJQL24pMfD42+xkH69BCQXh+iXnecDQ33m L+l0bqfLUHyOpY0MRhZR0VI3cNKnDE4luwbNassXGIstq1LCE6aNoqIdFXxk1EMGu/yq 7vyA== X-Gm-Message-State: ALoCoQkX0eau2svmq4OU7NydVoZh2o2BuKOTO46eoJLsEdOeifGwjs9/d5kswgqC2tsfHpmFXqbf X-Received: by 10.205.76.133 with SMTP id ze5mr942840bkb.37.1378807606020; Tue, 10 Sep 2013 03:06:46 -0700 (PDT) Received: from phenom.ffwll.local (178-83-130-250.dynamic.hispeed.ch. [178.83.130.250]) by mx.google.com with ESMTPSA id on10sm4878713bkb.13.1969.12.31.16.00.00 (version=TLSv1.2 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Tue, 10 Sep 2013 03:06:45 -0700 (PDT) From: Daniel Vetter To: Intel Graphics Development Date: Tue, 10 Sep 2013 12:06:51 +0200 Message-Id: <1378807612-18399-2-git-send-email-daniel.vetter@ffwll.ch> X-Mailer: git-send-email 1.8.4.rc3 In-Reply-To: <1378807612-18399-1-git-send-email-daniel.vetter@ffwll.ch> References: <1378807612-18399-1-git-send-email-daniel.vetter@ffwll.ch> MIME-Version: 1.0 Cc: Daniel Vetter Subject: [Intel-gfx] [PATCH 2/3] drm/i915/sdvo: Robustify the dtd<->drm_mode conversions X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: intel-gfx-bounces+patchwork-intel-gfx=patchwork.kernel.org@lists.freedesktop.org Errors-To: intel-gfx-bounces+patchwork-intel-gfx=patchwork.kernel.org@lists.freedesktop.org X-Spam-Status: No, score=-4.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_MED,RP_MATCHES_RCVD,T_DKIM_INVALID,UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP We've failed to properly clear out the flags when converting a dtd to a drm mode. For more paranoia just memset the entire structure (and drop the now redundant clears). Also since commit 135c81b8c3c9a70d7b55758c9c2a247a4abb7b64 Author: Daniel Vetter Date: Sun Jul 21 21:37:09 2013 +0200 drm/i915: clean up crtc timings computation we don't update the crtc timings any more properly, so do that again. Cc: Rodrigo Vivi Cc: Jesse Barnes Cc: Ville Syrjälä Reported-by: Ville Syrjälä Signed-off-by: Daniel Vetter --- drivers/gpu/drm/i915/intel_sdvo.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_sdvo.c b/drivers/gpu/drm/i915/intel_sdvo.c index 5033c74..d4a046d 100644 --- a/drivers/gpu/drm/i915/intel_sdvo.c +++ b/drivers/gpu/drm/i915/intel_sdvo.c @@ -788,6 +788,8 @@ static void intel_sdvo_get_dtd_from_mode(struct intel_sdvo_dtd *dtd, uint16_t h_sync_offset, v_sync_offset; int mode_clock; + memset(dtd, 0, sizeof(*dtd)); + width = mode->hdisplay; height = mode->vdisplay; @@ -830,14 +832,14 @@ static void intel_sdvo_get_dtd_from_mode(struct intel_sdvo_dtd *dtd, if (mode->flags & DRM_MODE_FLAG_PVSYNC) dtd->part2.dtd_flags |= DTD_FLAG_VSYNC_POSITIVE; - dtd->part2.sdvo_flags = 0; dtd->part2.v_sync_off_high = v_sync_offset & 0xc0; - dtd->part2.reserved = 0; } static void intel_sdvo_get_mode_from_dtd(struct drm_display_mode * mode, const struct intel_sdvo_dtd *dtd) { + memset(mode, 0, sizeof(*mode)); + mode->hdisplay = dtd->part1.h_active; mode->hdisplay += ((dtd->part1.h_high >> 4) & 0x0f) << 8; mode->hsync_start = mode->hdisplay + dtd->part2.h_sync_off; @@ -872,6 +874,8 @@ static void intel_sdvo_get_mode_from_dtd(struct drm_display_mode * mode, mode->flags |= DRM_MODE_FLAG_PVSYNC; else mode->flags |= DRM_MODE_FLAG_NVSYNC; + + drm_mode_set_crtcinfo(mode); } static bool intel_sdvo_check_supp_encode(struct intel_sdvo *intel_sdvo)