Received: by 2002:ac0:e350:0:0:0:0:0 with SMTP id g16csp380972imn; Thu, 4 Aug 2022 09:29:26 -0700 (PDT) X-Google-Smtp-Source: AA6agR5HP1yD7iqbM06DEsrPub+6NVsaaIEq1ihSWD/L/4YMAm40PetJyXSghDS3mLMzlYySR/ek X-Received: by 2002:a17:907:720f:b0:72f:1c62:8dac with SMTP id dr15-20020a170907720f00b0072f1c628dacmr1981120ejc.437.1659630566069; Thu, 04 Aug 2022 09:29:26 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1659630566; cv=none; d=google.com; s=arc-20160816; b=Zxga0PJndA3cVy+q6vnfeCr5TTAFxV/BHoBeGujpRiX5DgZSwoC20V0tCz/0Wq/x6m L4YVih+oUbNPVUUB7nZ4V7PZRbvDxXVlAXLmaBs3imtDx4q64JesRd9D94pFejqq0FA/ 6bfNh9gdU1tGXyMLZC8+DvJKN+aUpmRPTrKTa8GrHz0uWyaDqWY22r5oAZy8CDmG/jo3 wNIFs8VwjEirM7Qh6+TP4fxTIc+qLWySDJ1TYHdyHJenNCfnfOhXr/3yPddZHH9JhNHA pmevtmW6Hz/FugWvGMyRukSRRXu2kyOpPUtVgIKnpPEUn3f5zmCx4F43oJ7jKyjabXAy H3VA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=kvAqCBmhC1zB39spR1tg3XxszATJUMKEiGdcZPVBnEk=; b=IMFRIf5lq/B0LOaN7mJgFnmFXRc5endqDjtimJ8lgwWXlwykI7WmTYM48RDNfh3K+k tm7i0HUGluKE3DG/nj+/6SS8ddfkjahfsxheubz+/3bWY5kV51egUj1Xtx+z8hpVQgQG 2bfXO66+hgj4Hml32Dui9UCg7NghyeMGcg417ekF/yRqInVvh1Aeeup6PJEsKQTa1K7T S0d9vEuZDKy7yrnl37AHe2DqaBfM33reTmvfvoWgRZxSU9TLQrEEwS2Vn1SX0iEBP1UE Gor9o2qKmWSu+Qms5Ap366ZLQvolzeEW2N6lDJ3r2tLENBQwqXq9XUj1lrT6fhIVWgMp OYQw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=UErQStKI; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id o7-20020a509b07000000b0043dc97d184csi1621714edi.263.2022.08.04.09.28.59; Thu, 04 Aug 2022 09:29:26 -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=@linaro.org header.s=google header.b=UErQStKI; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232927AbiHDQVV (ORCPT + 99 others); Thu, 4 Aug 2022 12:21:21 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39360 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231265AbiHDQVU (ORCPT ); Thu, 4 Aug 2022 12:21:20 -0400 Received: from mail-ed1-x52f.google.com (mail-ed1-x52f.google.com [IPv6:2a00:1450:4864:20::52f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 94D256611A for ; Thu, 4 Aug 2022 09:21:18 -0700 (PDT) Received: by mail-ed1-x52f.google.com with SMTP id a89so298316edf.5 for ; Thu, 04 Aug 2022 09:21:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=kvAqCBmhC1zB39spR1tg3XxszATJUMKEiGdcZPVBnEk=; b=UErQStKIF5hZVlCtEqf1Am7dqLpJ3Gf93i3FVYaQ4WnaZGrJrjTToT0UTJCKeJWi7F C+ASE7ShUEwtc8+vcatkrMMqsliKcY70qJzCb9Qlf9Pkfquo1CyCK8lv35BU0pIjOOWC vDkE68covrngok0XigFTlS5HlB4zBDCRKFjJJM48SyUrICpUP/bg/2FzpPwnEpgnfTQ2 DELUKeugxTGXXTyQQHMmUQzzT2pMZVpi+PkYVvoCsuKElaZyanc/7Bb9OXKG4s9kxaXX HM7e45G9kdDwUwaMaNZT/WdQ289cMM5Ci4V4Bwk5qR5equtn3xIEJMy+oL1xCGN5WBTt ANFQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=kvAqCBmhC1zB39spR1tg3XxszATJUMKEiGdcZPVBnEk=; b=uIyqFg+wOMALWcV3awcc0KQLGBgMMb64v33CrUSqcfHeMDwXhto5Me7ydbJTNpjNF2 HdcYla8M8MHkI40KG3loOt6H2M4AhAIjv39jF2XpeQx+Hef07YzzwBfpLkezRejh+i6r Sn7fa2BLzYlPCyA5TE0Xd1aYYR/7vLab8Bjc/QnUO/Q2AaoCz2tt5PmVQDrlDD30vXJ4 PHuHR8jbRdyaILZMeXEjCDt276m1a7UeCRZoFFg77jmU46ChNCExKZqVQeDi8i4xx6L9 /Icv3cn58MamQmOfHgkKiTlHi9BP90V2Px55+NOZys+Y4Xv3k+lOxy3h/XsjvI7Vvc0Z yVFw== X-Gm-Message-State: ACgBeo2zf6aZeE7U1B69FBXQdd1ob5FFICVNzmHkR37nc+d6WvgPevz1 dXmgOSFWKQoE/wmIuoEddclnkbPCnyStgk1NCqonow== X-Received: by 2002:a05:6402:909:b0:435:a8b:5232 with SMTP id g9-20020a056402090900b004350a8b5232mr2845711edz.240.1659630077136; Thu, 04 Aug 2022 09:21:17 -0700 (PDT) MIME-Version: 1.0 References: <1657544224-10680-1-git-send-email-quic_vpolimer@quicinc.com> In-Reply-To: From: Robert Foss Date: Thu, 4 Aug 2022 18:21:05 +0200 Message-ID: Subject: Re: [PATCH v6 00/10] Add PSR support for eDP To: Doug Anderson Cc: Vinod Polimera , dri-devel , linux-arm-msm , freedreno , "open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS" , LKML , Rob Clark , Stephen Boyd , quic_kalyant , Dmitry Baryshkov , "Kuogee Hsieh (QUIC)" , quic_vproddut , Bjorn Andersson , "Aravind Venkateswaran (QUIC)" , "Abhinav Kumar (QUIC)" , Sankeerth Billakanti Content-Type: text/plain; charset="UTF-8" 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 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 On Fri, 29 Jul 2022 at 02:22, Doug Anderson wrote: > > Hi, > > On Mon, Jul 11, 2022 at 5:57 AM Vinod Polimera > wrote: > > > > Changes in v2: > > - Use dp bridge to set psr entry/exit instead of dpu_enocder. > > - Don't modify whitespaces. > > - Set self refresh aware from atomic_check. > > - Set self refresh aware only if psr is supported. > > - Provide a stub for msm_dp_display_set_psr. > > - Move dp functions to bridge code. > > > > Changes in v3: > > - Change callback names to reflect atomic interfaces. > > - Move bridge callback change to separate patch as suggested by Dmitry. > > - Remove psr function declaration from msm_drv.h. > > - Set self_refresh_aware flag only if psr is supported. > > - Modify the variable names to simpler form. > > - Define bit fields for PSR settings. > > - Add comments explaining the steps to enter/exit psr. > > - Change DRM_INFO to drm_dbg_db. > > > > Changes in v4: > > - Move the get crtc functions to drm_atomic. > > - Add atomic functions for DP bridge too. > > - Add ternary operator to choose eDP or DP ops. > > - Return true/false instead of 1/0. > > - mode_valid missing in the eDP bridge ops. > > - Move the functions to get crtc into drm_atomic.c. > > - Fix compilation issues. > > - Remove dpu_assign_crtc and get crtc from drm_enc instead of dpu_enc. > > - Check for crtc state enable while reserving resources. > > > > Changes in v5: > > - Move the mode_valid changes into a different patch. > > - Complete psr_op_comp only when isr is set. > > - Move the DP atomic callback changes to a different patch. > > - Get crtc from drm connector state crtc. > > - Move to separate patch for check for crtc state enable while > > reserving resources. > > > > Changes in v6: > > - Remove crtc from dpu_encoder_virt struct. > > - fix crtc check during vblank toggle crtc. > > - Misc changes. > > > > Signed-off-by: Sankeerth Billakanti > > Signed-off-by: Kalyan Thota > > Signed-off-by: Vinod Polimera > > > > Vinod Polimera (10): > > drm/msm/disp/dpu: clear dpu_assign_crtc and get crtc from connector > > state instead of dpu_enc > > drm: add helper functions to retrieve old and new crtc > > drm/msm/dp: use atomic callbacks for DP bridge ops > > drm/msm/dp: Add basic PSR support for eDP > > drm/msm/dp: use the eDP bridge ops to validate eDP modes > > drm/bridge: use atomic enable/disable callbacks for panel bridge > > drm/bridge: add psr support for panel bridge callbacks > > drm/msm/disp/dpu: use atomic enable/disable callbacks for encoder > > functions > > drm/msm/disp/dpu: add PSR support for eDP interface in dpu driver > > drm/msm/disp/dpu: check for crtc enable rather than crtc active to > > release shared resources > > > > drivers/gpu/drm/bridge/panel.c | 68 ++++++++-- > > drivers/gpu/drm/drm_atomic.c | 60 +++++++++ > > drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c | 17 ++- > > drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 56 +++++---- > > drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.h | 8 -- > > drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 2 +- > > drivers/gpu/drm/msm/dp/dp_catalog.c | 81 ++++++++++++ > > drivers/gpu/drm/msm/dp/dp_catalog.h | 4 + > > drivers/gpu/drm/msm/dp/dp_ctrl.c | 73 +++++++++++ > > drivers/gpu/drm/msm/dp/dp_ctrl.h | 3 + > > drivers/gpu/drm/msm/dp/dp_display.c | 31 +++-- > > drivers/gpu/drm/msm/dp/dp_display.h | 2 + > > drivers/gpu/drm/msm/dp/dp_drm.c | 184 ++++++++++++++++++++++++++-- > > drivers/gpu/drm/msm/dp/dp_drm.h | 9 +- > > drivers/gpu/drm/msm/dp/dp_link.c | 36 ++++++ > > drivers/gpu/drm/msm/dp/dp_panel.c | 22 ++++ > > drivers/gpu/drm/msm/dp/dp_panel.h | 6 + > > drivers/gpu/drm/msm/dp/dp_reg.h | 27 ++++ > > include/drm/drm_atomic.h | 7 ++ > > 19 files changed, 631 insertions(+), 65 deletions(-) > Which tree does this series apply to?