From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 31C3AC7EE2E for ; Sat, 10 Jun 2023 10:27:13 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231342AbjFJK1M (ORCPT ); Sat, 10 Jun 2023 06:27:12 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45992 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230308AbjFJK1L (ORCPT ); Sat, 10 Jun 2023 06:27:11 -0400 Received: from mail-yw1-x1133.google.com (mail-yw1-x1133.google.com [IPv6:2607:f8b0:4864:20::1133]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7E68E35BB for ; Sat, 10 Jun 2023 03:27:10 -0700 (PDT) Received: by mail-yw1-x1133.google.com with SMTP id 00721157ae682-565eb83efe4so24840177b3.0 for ; Sat, 10 Jun 2023 03:27:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1686392829; x=1688984829; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=to8oZ7L4fC+T49c7O2RXAbP8nJvmZRdwodJiT0ePUgs=; b=VtfoIIBi2gjH8mp/MVxkQnvYC58lGIrKyL1oN9HdMV2QIktHsfiMb7nG1eK+hsPfAn c96AHXJCFWm4BYoTbUUw+s0mrnbCF0m4V1D4E1TAAUEdHPVBdztK+sR/B53Aeu3DA2WF bR5lRfV0MrgBcPEMC3yfPypP3eQswXm2ZNAfBVQg/Recb+MgBGw8THISDUfL3IROQF/h zi6pMuJO66v17QGaf9n6xOa6kIb5OkjVHwJODl23BlrrbGcSedvUm8WyAatcB5Qvfsp1 DiGywfyCvuey04+bMIQJZYw3HaIpFrJmLVUafIO6QhGwZUv50Relfvjfkbo0XLyywpbY 9CdQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686392829; x=1688984829; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=to8oZ7L4fC+T49c7O2RXAbP8nJvmZRdwodJiT0ePUgs=; b=c9Xd4eNlnjfFliag4MiNLYgpBz88pkVUwqn7P3AgBy3mBWMe1Zt56+0LG/0HYEO4VV b+5tbR5SzU2YPrzwGK2NOallYcvX6g60Gg7UHCc0ZsCBFD6B+y55wbDw0+NdP3bX5a2Z 6C1AkLwEJT2FvUSujq9Y288nVChSh2v0B/Kz0ues2gdOPfX7edFJf/o1EJjIib8ck7Bj cZpnXz0mZrLpm6Sc+2WpVEPeKGSWp9iGM4eC4i8+0M+2R3QM/uDFLaiugV6HETp73CS4 4E0WBATUEdgsXw1dUmabr2f8O0/D3EvCfTdsOpMZlh/UhT0wGsYoR4U13Mp1UN1UsXwe vb7A== X-Gm-Message-State: AC+VfDz+ntkE5uHKDgpRJQ8HmKTutRzrnFSvSeVa/iiEKF5FUWLHJsW2 gMxsLt7/pG5lEaATQ7n4X3UoVS5NbWdxrZ/hYpTljw== X-Google-Smtp-Source: ACHHUZ6OSKyE7M/AKX5RnhMGNLiUXry/Ecu8iTy734i4jNpdrWoupgCkvkkVY50NCYi04PH1Fm8GCv9SFC9Tcqs5ltM= X-Received: by 2002:a81:8841:0:b0:565:9a3d:a3f9 with SMTP id y62-20020a818841000000b005659a3da3f9mr3920231ywf.9.1686392829544; Sat, 10 Jun 2023 03:27:09 -0700 (PDT) MIME-Version: 1.0 References: <1676286704-818-1-git-send-email-quic_kalyant@quicinc.com> <1676286704-818-3-git-send-email-quic_kalyant@quicinc.com> <20230301082403.vm4ejqod3ba5wkzp@SoMainline.org> In-Reply-To: <20230301082403.vm4ejqod3ba5wkzp@SoMainline.org> From: Yongqin Liu Date: Sat, 10 Jun 2023 18:26:58 +0800 Message-ID: Subject: Re: [PATCH v4 2/4] drm/msm/dpu: add DSPPs into reservation upon a CTM request To: Marijn Suijten , Kalyan Thota Cc: dri-devel@lists.freedesktop.org, linux-arm-msm@vger.kernel.org, freedreno@lists.freedesktop.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, robdclark@chromium.org, dianders@chromium.org, swboyd@chromium.org, quic_vpolimer@quicinc.com, dmitry.baryshkov@linaro.org, quic_abhinavk@quicinc.com, Amit Pundir , Sumit Semwal , John Stultz Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org Hi, Kalyan Thota It seems this change caused some drm problems with the Android build. I tested with one Android build that based on the ACK android-mainline kernel[1], and there are the message printed like 01-01 06:51:50.541 504 504 E : [drm:_dpu_rm_check_lm_and_get_connected_blks] [dpu error]failed to get dspp on lm 0 01-01 06:51:50.551 504 504 E : [drm:_dpu_rm_check_lm_and_get_connected_blks] [dpu error]failed to get dspp on lm 0 01-01 06:51:50.560 504 504 E : [drm:_dpu_rm_check_lm_and_get_connected_blks] [dpu error]failed to get dspp on lm 0 01-01 06:51:50.570 504 504 E : [drm:_dpu_rm_check_lm_and_get_connected_blks] [dpu error]failed to get dspp on lm 0 01-01 06:51:50.579 504 504 E : [drm:_dpu_rm_make_reservation] [dpu error]unable to find appropriate mixers 01-01 06:51:50.588 504 504 E : [drm:dpu_rm_reserve] [dpu error]failed to reserve hw resources: -119 For details, please check the link here: https://termbin.com/31lc If I revert this commit, then the problem will be gone. Could you please help check if there is any problem with this commit? [1]: https://android.googlesource.com/kernel/common/+/refs/heads/android-mainline Thanks, Yongqin Liu On Wed, 1 Mar 2023 at 16:24, Marijn Suijten wrote: > > On 2023-02-13 03:11:42, Kalyan Thota wrote: > > Add DSPP blocks into the topology for reservation, if there > > is a CTM request for that composition. > > > > Signed-off-by: Kalyan Thota > > Reviewed-by: Dmitry Baryshkov > > Reviewed-by: Marijn Suijten > > > --- > > Changes in v1: > > - Minor nits (Dmitry) > > > > Changes in v2: > > - Populate DSPPs into the reservation only if CTM is requested (Dmitry) > > --- > > drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 15 ++++++--------- > > 1 file changed, 6 insertions(+), 9 deletions(-) > > > > diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c > > index 9c6817b..46d2a5c 100644 > > --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c > > +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c > > @@ -545,7 +545,8 @@ bool dpu_encoder_use_dsc_merge(struct drm_encoder *drm_enc) > > static struct msm_display_topology dpu_encoder_get_topology( > > struct dpu_encoder_virt *dpu_enc, > > struct dpu_kms *dpu_kms, > > - struct drm_display_mode *mode) > > + struct drm_display_mode *mode, > > + struct drm_crtc_state *crtc_state) > > { > > struct msm_display_topology topology = {0}; > > int i, intf_count = 0; > > @@ -563,8 +564,7 @@ static struct msm_display_topology dpu_encoder_get_topology( > > * 1 LM, 1 INTF > > * 2 LM, 1 INTF (stream merge to support high resolution interfaces) > > * > > - * Adding color blocks only to primary interface if available in > > - * sufficient number > > + * Add dspps to the reservation requirements if ctm is requested > > */ > > if (intf_count == 2) > > topology.num_lm = 2; > > @@ -573,11 +573,8 @@ static struct msm_display_topology dpu_encoder_get_topology( > > else > > topology.num_lm = (mode->hdisplay > MAX_HDISPLAY_SPLIT) ? 2 : 1; > > > > - if (dpu_enc->disp_info.intf_type == DRM_MODE_ENCODER_DSI) { > > - if (dpu_kms->catalog->dspp && > > - (dpu_kms->catalog->dspp_count >= topology.num_lm)) > > - topology.num_dspp = topology.num_lm; > > - } > > + if (crtc_state->ctm) > > + topology.num_dspp = topology.num_lm; > > > > topology.num_enc = 0; > > topology.num_intf = intf_count; > > @@ -643,7 +640,7 @@ static int dpu_encoder_virt_atomic_check( > > } > > } > > > > - topology = dpu_encoder_get_topology(dpu_enc, dpu_kms, adj_mode); > > + topology = dpu_encoder_get_topology(dpu_enc, dpu_kms, adj_mode, crtc_state); > > > > /* Reserve dynamic resources now. */ > > if (!ret) { > > -- > > 2.7.4 > > -- Best Regards, Yongqin Liu --------------------------------------------------------------- #mailing list linaro-android@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-android