Received: by 2002:a05:6358:3188:b0:123:57c1:9b43 with SMTP id q8csp4588861rwd; Tue, 30 May 2023 07:24:43 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ5eOiaXmoBpz3j30DZ7WCHDJAKpjTp4v1uHgE7CJFukINozmRbIUmnN2FiKdrismYzj8Y+m X-Received: by 2002:a05:6a20:e486:b0:10b:cdb1:3563 with SMTP id ni6-20020a056a20e48600b0010bcdb13563mr2447888pzb.46.1685456683533; Tue, 30 May 2023 07:24:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1685456683; cv=none; d=google.com; s=arc-20160816; b=0g3axWFOTXnGNfkVmOAk57rkvse/gBX8T677sfgKxEiCTAXUVdFdLSmJg8UePcc+4u x0DjLWNNRq0VcpCWuAqRaEwR2vLTCYZw9IlWIibtP6OSH2MhcTFff+oZ02hH07JmayDq tzH/uQN/EELWclMpar7CMpIMeFCms8GxUYWOtrA4++J4htvsFZJlwge3FasjzVeTHFGw Tbnb4Irq2T+U32uMfw7e2Z2ck4xws3vPSzmbNC1COccuUvxFphy+QOaprFg7xRO8A0N+ ++XvnVs6BNA4F7lLNcg9XUvzmdjom/MesWSw7QXysW/u0BFkK5kGKeRHf9N09KE9jdLU tfbg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-transfer-encoding :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature; bh=7p73ODufu1/P74FptI7FRwaCItiP1sKbYRvV3n+M0V0=; b=LalBKLhRamttzAGgmYDkHSbpZo0lLPRLmh+2SWRzHvDtPb2Hjg39cx66CXqREzJvEZ AJNwuB9QJp+Xjksi7d3H3sgsZHk6TEjdCWdpivqRNrqEboQJquboZVusZcvqRRM0Ubh0 i/mm/A2VhUxWUAeJyL5G41uM7CMQPcJJcvoTNG0MwXH/s24W1nzvtlDBbeF4eZoes6X5 WgOEH/xzwYWMuyDkiqffgxTHv3X8nrO2aMTYdFuw/LaJG5WhJyfhiUb9ajfwHogCEXH/ S/BePRPBY+3eaUCJTMD2AwTn8PqDFSJf8UhSWAkKzdKox8/jBDcu0Q8X79SjQFqbrKon 88IQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@heitbaum.com header.s=google header.b=PzarIwSI; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id d2-20020a631d42000000b00533ffeaca3dsi10673283pgm.40.2023.05.30.07.24.28; Tue, 30 May 2023 07:24:43 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@heitbaum.com header.s=google header.b=PzarIwSI; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231264AbjE3Nt3 (ORCPT + 99 others); Tue, 30 May 2023 09:49:29 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38762 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231910AbjE3NtZ (ORCPT ); Tue, 30 May 2023 09:49:25 -0400 Received: from mail-pj1-x102f.google.com (mail-pj1-x102f.google.com [IPv6:2607:f8b0:4864:20::102f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 36DE6C7 for ; Tue, 30 May 2023 06:49:16 -0700 (PDT) Received: by mail-pj1-x102f.google.com with SMTP id 98e67ed59e1d1-2565a9107d2so2594944a91.0 for ; Tue, 30 May 2023 06:49:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=heitbaum.com; s=google; t=1685454555; x=1688046555; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date:from:to :cc:subject:date:message-id:reply-to; bh=7p73ODufu1/P74FptI7FRwaCItiP1sKbYRvV3n+M0V0=; b=PzarIwSIhRYrd8a9D1iPGmwviHC2XZt4+tfx7iv3dKbXBCvqRWGx9WoPv5WraiCSjm zgD8EF2ExxnBmzqJqpZ2xnxBOoQJjgm+v6OMnfUESSyJmbUZtTzVruClSMIw+5cXpChR k23PLH32rOaJYk7OJBiywbIPGc16TrY6HegpM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685454555; x=1688046555; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=7p73ODufu1/P74FptI7FRwaCItiP1sKbYRvV3n+M0V0=; b=f5Gh74TKi/iDaKyCCQHUpR9lNyOfZ/nxfNDVNNTfmZ4n+uidXJDVBLI5p4T01pAgBI OabUf1LsOQutlolotOQK/ZadHEb/tdeQxPSZwggafMawMywe3caO+wgwh3uNgoZJcJhO zzgSG9IjClCfgpFJ69zcYn5doOMl0uwIeVeRK5PgjVqil4avrhJjDJBG5ZH8P7apcOj+ qAT5RgK6oxAbRrFr8hlm858YqqgbIq93IOpCHPyELY01L8l2i/V52VJlL2GH2ErDyx7L LMR6EqL4onVtFQmLPTDc7/6uC3CdXvb2M+Lun75AtOMqhE65iTe7XCnZK8HmFXh410iz jIKw== X-Gm-Message-State: AC+VfDwKgEikQ7s4AbG4eDVQJA8lBTWxKIfwtZAtIztsrKIv1162I96B dfTTO1DeeHZq3h739fTTyPyNbg== X-Received: by 2002:a17:90a:fe13:b0:255:a8fb:a72a with SMTP id ck19-20020a17090afe1300b00255a8fba72amr2573662pjb.32.1685454555527; Tue, 30 May 2023 06:49:15 -0700 (PDT) Received: from 5e905162a5a7 ([122.199.31.3]) by smtp.gmail.com with ESMTPSA id nn6-20020a17090b38c600b002508f0ac3edsm4246116pjb.53.2023.05.30.06.49.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 30 May 2023 06:49:14 -0700 (PDT) Date: Tue, 30 May 2023 13:49:07 +0000 From: Rudi Heitbaum To: Imre Deak , Dave Airlie , Dave Airlie Cc: intel-gfx@lists.freedesktop.org, Rodrigo Vivi , Joonas Lahtinen , Linus Torvalds , Daniel Vetter , dri-devel , LKML Subject: Re: [v4,01/14] drm/i915: Fix PIPEDMC disabling for a bigjoiner configuration Message-ID: <20230530134907.GA8@5e905162a5a7> References: <20230510103131.1618266-2-imre.deak@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20230510103131.1618266-2-imre.deak@intel.com> X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Imre/Dave, Ref: [v4,01/14] drm/i915: Fix PIPEDMC disabling for a bigjoiner configuration [git pull] drm fixes for 6.4-rc4 drm-fixes-2023-05-26: drm fixes for 6.4-rc4 This patch has caused a regression between 6.4-rc3 and 6.4-rc4. Other tested kernels include 6.3.4 work fine. Dropping the patch allows the decode playback of media via Kodi. Without dropping the patch - the media starts and stutters then ceases to play. There is an additional issue that 6.4-rc4 audio playback is also failing (where 6.4-rc3 was fine), I have not yet tracked this down. This is all on: DMI: Intel(R) Client Systems NUC12WSKi7/NUC12WSBi7, BIOS WSADL357.0087.2023.0306.1931 03/06/2023 12th Gen Intel(R) Core(TM) i7-1260P (family: 0x6, model: 0x9a, stepping: 0x3) microcode: updated early: 0x429 -> 0x42a, date = 2023-02-14 Regards Rudi On Wed, May 10, 2023 at 01:31:18PM +0300, Imre Deak wrote: > For a bigjoiner configuration display->crtc_disable() will be called > first for the slave CRTCs and then for the master CRTC. However slave > CRTCs will be actually disabled only after the master CRTC is disabled > (from the encoder disable hooks called with the master CRTC state). > Hence the slave PIPEDMCs can be disabled only after the master CRTC is > disabled, make this so. > > intel_encoders_post_pll_disable() must be called only for the master > CRTC, as for the other two encoder disable hooks. While at it fix this > up as well. This didn't cause a problem, since > intel_encoders_post_pll_disable() will call the corresponding hook only > for an encoder/connector connected to the given CRTC, however slave > CRTCs will have no associated encoder/connector. > > Fixes: 3af2ff0840be ("drm/i915: Enable a PIPEDMC whenever its corresponding pipe is enabled") > Cc: Rodrigo Vivi > Cc: Ville Syrj?l? > Reviewed-by: Ville Syrj?l? > Signed-off-by: Imre Deak > --- > drivers/gpu/drm/i915/display/intel_display.c | 12 ++++++++++-- > 1 file changed, 10 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c > index 1d5d42a408035..116fa52290b84 100644 > --- a/drivers/gpu/drm/i915/display/intel_display.c > +++ b/drivers/gpu/drm/i915/display/intel_display.c > @@ -1702,9 +1702,17 @@ static void hsw_crtc_disable(struct intel_atomic_state *state, > > intel_disable_shared_dpll(old_crtc_state); > > - intel_encoders_post_pll_disable(state, crtc); > + if (!intel_crtc_is_bigjoiner_slave(old_crtc_state)) { > + struct intel_crtc *slave_crtc; > + > + intel_encoders_post_pll_disable(state, crtc); > > - intel_dmc_disable_pipe(i915, crtc->pipe); > + intel_dmc_disable_pipe(i915, crtc->pipe); > + > + for_each_intel_crtc_in_pipe_mask(&i915->drm, slave_crtc, > + intel_crtc_bigjoiner_slave_pipes(old_crtc_state)) > + intel_dmc_disable_pipe(i915, slave_crtc->pipe); > + } > } > > static void i9xx_pfit_enable(const struct intel_crtc_state *crtc_state)