From patchwork Wed Aug 5 14:46:38 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Daniel Vetter X-Patchwork-Id: 6950441 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.29.136]) by patchwork1.web.kernel.org (Postfix) with ESMTP id D9E6A9F358 for ; Wed, 5 Aug 2015 14:46:50 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 01DB720443 for ; Wed, 5 Aug 2015 14:46:50 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by mail.kernel.org (Postfix) with ESMTP id 0B41420430 for ; Wed, 5 Aug 2015 14:46:49 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 18E586E6EF; Wed, 5 Aug 2015 07:46:48 -0700 (PDT) X-Original-To: intel-gfx@lists.freedesktop.org Delivered-To: intel-gfx@lists.freedesktop.org Received: from mail-wi0-f180.google.com (mail-wi0-f180.google.com [209.85.212.180]) by gabe.freedesktop.org (Postfix) with ESMTPS id 0489B6E6EF for ; Wed, 5 Aug 2015 07:46:47 -0700 (PDT) Received: by wibhh20 with SMTP id hh20so27805278wib.0 for ; Wed, 05 Aug 2015 07:46:45 -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:mime-version:content-type :content-transfer-encoding; bh=1XmTc9ZKb8o2htp+8syMYdYTSC4f1TKITY/rk0D1Y5U=; b=UB4hLYUPH62an/EFMXFT7BtXD/8Pdhm0ngQjeHjoZuts3Uyy2e/cDuegSBFmPuNl8e cs6Y4sSNAwlkKiteud2zS6cNKesrFDzyhQYaPtroiHpP8GBa5W+4cxVEnaa169Qo9Ng4 bhFmCjzWF98Zo/fnlbgTSNWxcmIgEQRjdC7uk= 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:mime-version :content-type:content-transfer-encoding; bh=1XmTc9ZKb8o2htp+8syMYdYTSC4f1TKITY/rk0D1Y5U=; b=bo8qrLiL1zbAO0CX50968tM7jhRk9BfFFhm2utnArX3caKMWOQXi+zxH1+oc0DRMMq wH6rFyuSSGHUGtkvTDRFZc8rFD0HeHf4MehCxV67u0kF/CgKrzStTHvymWhrMG1fkjvx Zm7Q0QcdfLEbnVsLLvVEY39NoACqTOPz5nyUGkZp58eb5dOV6e1ZbP2SsqesW1moeLAK O2KFBBVCZUrtajmlTzq8HReN33LwbLqRVziLsAR1viQK+v4Ue02FoW3jbeJGbrgtTsoG EeWDUf+9irLva2tw7zVtPIJTwalSguUdAg/0E0F/Ubvv0tYtgXX+EEEbUFphlSXcfgpm nNBg== X-Gm-Message-State: ALoCoQlvP98s9Xn0daUj4ViM660kxiFZhCmRyimRRQwDnYPnQYX+kaEKhZkZoC8pJgU6GAqnXvhz X-Received: by 10.181.12.20 with SMTP id em20mr11219773wid.28.1438786005755; Wed, 05 Aug 2015 07:46:45 -0700 (PDT) Received: from phenom.ffwll.local (212-51-149-109.fiber7.init7.net. [212.51.149.109]) by smtp.gmail.com with ESMTPSA id q19sm7954090wik.16.2015.08.05.07.46.44 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Wed, 05 Aug 2015 07:46:45 -0700 (PDT) From: Daniel Vetter To: DRI Development Date: Wed, 5 Aug 2015 16:46:38 +0200 Message-Id: <1438785998-19883-1-git-send-email-daniel.vetter@ffwll.ch> X-Mailer: git-send-email 2.5.0 MIME-Version: 1.0 Cc: Daniel Vetter , Intel Graphics Development , Theodore Ts'o , Daniel Vetter Subject: [Intel-gfx] [PATCH] drm/i915: Read WM before sanitize_encoder/crtc calls X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" X-Spam-Status: No, score=-4.2 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 If we shut down the crtc we might run into WM consistency checks which fail because we haven't yet read out the WM state. So do that before we sanitized the state. This fixes a WARNING in the ilk wm code which assumes that level 0 WM are always enabled in it's internal tracking. But since we start out with all 0 in our driver structures the relevant boolean is false when loading. This regression was introduced in commit 0b2ae6d72e445b58ae39cfa6ec0b8d3f53ff7a6f Author: Ville Syrjälä Date: Wed Oct 9 19:17:55 2013 +0300 drm/i915: Add intel_pipe_wm and prepare for watermark pre-compute which added the WARN_ON(!r->enabel). Cc: Theodore Ts'o Reported-by: Theodore Ts'o Signed-off-by: Daniel Vetter --- Re-ping for testing so that I can merge this patch and send a pull to Linus. -Daniel --- drivers/gpu/drm/i915/intel_display.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 30e0f54ba19d..ae07fd0c395c 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -15121,6 +15121,11 @@ void intel_modeset_setup_hw_state(struct drm_device *dev, intel_modeset_readout_hw_state(dev); + if (IS_GEN9(dev)) + skl_wm_get_hw_state(dev); + else if (HAS_PCH_SPLIT(dev)) + ilk_wm_get_hw_state(dev); + /* * Now that we have the config, copy it to each CRTC struct * Note that this could go away if we move to using crtc_config @@ -15162,11 +15167,6 @@ void intel_modeset_setup_hw_state(struct drm_device *dev, pll->on = false; } - if (IS_GEN9(dev)) - skl_wm_get_hw_state(dev); - else if (HAS_PCH_SPLIT(dev)) - ilk_wm_get_hw_state(dev); - if (force_restore) { i915_redisable_vga(dev);