Received: by 2002:a05:6358:3188:b0:123:57c1:9b43 with SMTP id q8csp9997848rwd; Wed, 21 Jun 2023 14:59:50 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ7BPEfDvMjn0LbITCf/xY7RI1g82eduXCiXysyAOlrJJsCtAmi8gVHU8k1cE2oK2vLzIXs7 X-Received: by 2002:a05:6a00:2351:b0:668:6445:8931 with SMTP id j17-20020a056a00235100b0066864458931mr17455306pfj.29.1687384790096; Wed, 21 Jun 2023 14:59:50 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1687384790; cv=none; d=google.com; s=arc-20160816; b=WO6PWY9q+BZYLnIAsm1L9IpRMZ6RJwBS8iUyAr1ygBgppVbwLv1jlfDfGpDdcIClK+ YZV+gIYtKjWyhva4UE3XkwFluIU3aLpHcbE39WGsJfBn9Ebcm6JPoeEnNy7wERW7r2Gu lapMb9z37pVEQ1W8A2TujS+7OTtm7P1Tnej7HnXrBSzyBaHYyb9JWuRL63zxD/h9pCQ7 R5l6aSA2hGHTBP8RrijhInK7F4Hv/XkNul++h1K4t0GosJ5X8RDbVAYmYur/SUvks6lN 7rM1gp37FVEEBjxv7AIUI47Di6BzewVktTYHT0O0CwbTsWEYkv5v6mNkoV1XP+CoKqSw mxjA== 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-disposition:mime-version :references:message-id:subject:cc:to:from:date; bh=n1jaBR216N+scUnGc0/yNf0BtYnP87odPn3yDMAJbSg=; b=z7qzCPXoOi7y0dlA8s6Eja/pJ7D0dsEF3ORB38aln3L4PMMRsObHBZLtz2rBlAgE5D 05r0fPNWxreeDS5Chlfl5KUAXqn/xM8YKbmMqjc46tF6lA3oU+Hs2yCZOfEpnKZ8TonN CXhRRaMtgyfI9sXHmDyqMit0OVB9Lvh/ReQVR19YZc6qeeIdNTmbB9nKHoFLn7oMPd2M CjCIOEKPPh7Vj+HIkcKiVTfHDIjLO12EDHDq3jxrfclGuCEfMlz9CAnwBuPdT02Sk8LN Hv0kR6qE6nigQ6K1O8rwIrDpBfEwjZqC2SVDOSnPhrWMTYMU6TnjjC7g6wrjpSOYZDf/ UPDA== ARC-Authentication-Results: i=1; mx.google.com; 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 p8-20020aa79e88000000b00666c9148d03si405650pfq.6.2023.06.21.14.59.38; Wed, 21 Jun 2023 14:59:50 -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; 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 S230237AbjFUVpa (ORCPT + 99 others); Wed, 21 Jun 2023 17:45:30 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55400 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229661AbjFUVp3 (ORCPT ); Wed, 21 Jun 2023 17:45:29 -0400 Received: from relay05.th.seeweb.it (relay05.th.seeweb.it [5.144.164.166]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7ADBD1BC for ; Wed, 21 Jun 2023 14:45:27 -0700 (PDT) Received: from SoMainline.org (94-211-6-86.cable.dynamic.v4.ziggo.nl [94.211.6.86]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by m-r2.th.seeweb.it (Postfix) with ESMTPSA id 1E6993F88A; Wed, 21 Jun 2023 23:45:24 +0200 (CEST) Date: Wed, 21 Jun 2023 23:45:22 +0200 From: Marijn Suijten To: Bryan O'Donoghue Cc: linux-arm-msm@vger.kernel.org, freedreno@lists.freedesktop.org, devicetree@vger.kernel.org, robdclark@gmail.com, quic_abhinavk@quicinc.com, dmitry.baryshkov@linaro.org, sean@poorly.run, airlied@gmail.com, daniel@ffwll.ch, robh+dt@kernel.org, dianders@chromium.org, david@ixit.cz, krzysztof.kozlowski+dt@linaro.org, swboyd@chromium.org, konrad.dybcio@somainline.org, agross@kernel.org, andersson@kernel.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Rob Herring , Krzysztof Kozlowski Subject: Re: [PATCH v9 2/2] dt-bindings: msm: dsi-controller-main: Document clocks on a per compatible basis Message-ID: References: <20230118171621.102694-1-bryan.odonoghue@linaro.org> <20230118171621.102694-3-bryan.odonoghue@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230118171621.102694-3-bryan.odonoghue@linaro.org> X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE 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! On 2023-01-18 17:16:21, Bryan O'Donoghue wrote: > Each compatible has a different set of clocks which are associated with it. > Add in the list of clocks for each compatible. So if each set of compatibles have their own unique set of clocks, is there a reason to have so many duplicate then: blocks? I ran into this while preparing for submitting SM6125 DPU and having no clue where to add it. > Acked-by: Rob Herring > Acked-by: Krzysztof Kozlowski > Signed-off-by: Bryan O'Donoghue > --- > .../display/msm/dsi-controller-main.yaml | 218 ++++++++++++++++-- > 1 file changed, 201 insertions(+), 17 deletions(-) > > diff --git a/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml b/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml > index 35668caa190c4..ad1ba15b74c19 100644 > --- a/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml > +++ b/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml > @@ -9,9 +9,6 @@ title: Qualcomm Display DSI controller > maintainers: > - Krishna Manikandan > > -allOf: > - - $ref: "../dsi-controller.yaml#" > - > properties: > compatible: > oneOf: > @@ -50,22 +47,23 @@ properties: > maxItems: 1 > > clocks: > - items: > - - description: Display byte clock > - - description: Display byte interface clock > - - description: Display pixel clock > - - description: Display core clock > - - description: Display AHB clock > - - description: Display AXI clock > + description: | > + Several clocks are used, depending on the variant. Typical ones are:: > + - bus:: Display AHB clock. > + - byte:: Display byte clock. > + - byte_intf:: Display byte interface clock. > + - core:: Display core clock. > + - core_mss:: Core MultiMedia SubSystem clock. mm*?? > + - iface:: Display AXI clock. > + - mdp_core:: MDP Core clock. > + - mnoc:: MNOC clock > + - pixel:: Display pixel clock. > + minItems: 3 > + maxItems: 9 > > clock-names: > - items: > - - const: byte > - - const: byte_intf > - - const: pixel > - - const: core > - - const: iface > - - const: bus > + minItems: 3 > + maxItems: 9 > > phys: > maxItems: 1 > @@ -161,6 +159,192 @@ required: > - assigned-clock-parents > - ports > > +allOf: > + - $ref: ../dsi-controller.yaml# > + - if: > + properties: > + compatible: > + contains: > + enum: > + - qcom,apq8064-dsi-ctrl > + then: > + properties: > + clocks: > + maxItems: 7 > + clock-names: > + items: > + - const: iface > + - const: bus > + - const: core_mmss > + - const: src > + - const: byte > + - const: pixel > + - const: core > + > + - if: > + properties: > + compatible: > + contains: > + enum: > + - qcom,msm8916-dsi-ctrl > + then: > + properties: > + clocks: > + maxItems: 6 > + clock-names: > + items: > + - const: mdp_core > + - const: iface > + - const: bus > + - const: byte > + - const: pixel > + - const: core So this... > + > + - if: > + properties: > + compatible: > + contains: > + enum: > + - qcom,msm8953-dsi-ctrl > + then: > + properties: > + clocks: > + maxItems: 6 > + clock-names: > + items: > + - const: mdp_core > + - const: iface > + - const: bus > + - const: byte > + - const: pixel > + - const: core Is the same as the above. Can we merge msm8953 into msm8916 or do you expect differences down the line? > + > + - if: > + properties: > + compatible: > + contains: > + enum: > + - qcom,msm8974-dsi-ctrl > + then: > + properties: > + clocks: > + maxItems: 7 > + clock-names: > + items: > + - const: mdp_core > + - const: iface > + - const: bus > + - const: byte > + - const: pixel > + - const: core > + - const: core_mmss > + > + - if: > + properties: > + compatible: > + contains: > + enum: > + - qcom,msm8996-dsi-ctrl > + then: > + properties: > + clocks: > + maxItems: 7 > + clock-names: > + items: > + - const: mdp_core > + - const: byte > + - const: iface > + - const: bus > + - const: core_mmss > + - const: pixel > + - const: core This could be the same as msm8226/msm8974 if we reorder the entries. > + > + - if: > + properties: > + compatible: > + contains: > + enum: > + - qcom,msm8998-dsi-ctrl > + then: > + properties: > + clocks: > + maxItems: 6 > + clock-names: > + items: > + - const: byte > + - const: byte_intf > + - const: pixel > + - const: core > + - const: iface > + - const: bus Then, here... > + > + - if: > + properties: > + compatible: > + contains: > + enum: > + - qcom,sc7180-dsi-ctrl > + - qcom,sc7280-dsi-ctrl > + - qcom,sm8250-dsi-ctrl > + - qcom,sm8150-dsi-ctrl > + - qcom,sm8250-dsi-ctrl > + - qcom,sm8350-dsi-ctrl > + - qcom,sm8450-dsi-ctrl > + - qcom,sm8550-dsi-ctrl > + then: > + properties: > + clocks: > + maxItems: 6 > + clock-names: > + items: > + - const: byte > + - const: byte_intf > + - const: pixel > + - const: core > + - const: iface > + - const: bus ... and here ... > + > + - if: > + properties: > + compatible: > + contains: > + enum: > + - qcom,sdm660-dsi-ctrl > + then: > + properties: > + clocks: > + maxItems: 9 > + clock-names: > + items: > + - const: mdp_core > + - const: byte > + - const: byte_intf > + - const: mnoc > + - const: iface > + - const: bus > + - const: core_mmss > + - const: pixel > + - const: core > + > + - if: > + properties: > + compatible: > + contains: > + enum: > + - qcom,sdm845-dsi-ctrl > + then: > + properties: > + clocks: > + maxItems: 6 > + clock-names: > + items: > + - const: byte > + - const: byte_intf > + - const: pixel > + - const: core > + - const: iface > + - const: bus and here, we have *three* identical lists of clocks. Should they (have been) combined? I can send a patch fixing these all if desired! - Marijn > + > additionalProperties: false > > examples: > -- > 2.38.1 >