Message ID | 20221028034155.5580-6-quic_bjorande@quicinc.com |
---|---|
State | New |
Headers | show |
Series | interconnect: osm-l3: SC8280XP L3 and DDR scaling | expand |
On Thu, 27 Oct 2022 20:41:50 -0700, Bjorn Andersson wrote: > Add EPSS L3 compatibles for sm8350 and sc8280xp, but while at it also > introduce generic compatible for both qcom,osm-l3 and qcom,epss-l3. > > Signed-off-by: Bjorn Andersson <quic_bjorande@quicinc.com> > --- > .../bindings/interconnect/qcom,osm-l3.yaml | 22 +++++++++++++------ > 1 file changed, 15 insertions(+), 7 deletions(-) > My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check' on your patch (DT_CHECKER_FLAGS is new in v5.13): yamllint warnings/errors: ./Documentation/devicetree/bindings/interconnect/qcom,osm-l3.yaml:27:7: [error] duplication of key "items" in mapping (key-duplicates) dtschema/dtc warnings/errors: make[1]: *** Deleting file 'Documentation/devicetree/bindings/interconnect/qcom,osm-l3.example.dts' Documentation/devicetree/bindings/interconnect/qcom,osm-l3.yaml:27:7: found duplicate key "items" with value "[]" (original value: "[]") make[1]: *** [Documentation/devicetree/bindings/Makefile:26: Documentation/devicetree/bindings/interconnect/qcom,osm-l3.example.dts] Error 1 make[1]: *** Waiting for unfinished jobs.... ./Documentation/devicetree/bindings/interconnect/qcom,osm-l3.yaml:27:7: found duplicate key "items" with value "[]" (original value: "[]") /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/interconnect/qcom,osm-l3.yaml: ignoring, error parsing file make: *** [Makefile:1492: dt_binding_check] Error 2 doc reference errors (make refcheckdocs): See https://patchwork.ozlabs.org/patch/ This check can fail if there are any dependencies. The base for a patch series is generally the most recent rc1. If you already ran 'make dt_binding_check' and didn't see the above error(s), then make sure 'yamllint' is installed and dt-schema is up to date: pip3 install dtschema --upgrade Please check and re-submit.
On Thu, Nov 03, 2022 at 08:25:17AM -0400, Krzysztof Kozlowski wrote: > On 02/11/2022 23:44, Bjorn Andersson wrote: > > On Fri, Oct 28, 2022 at 06:12:29PM -0400, Krzysztof Kozlowski wrote: > >> On 27/10/2022 23:41, Bjorn Andersson wrote: > >>> Add EPSS L3 compatibles for sm8350 and sc8280xp, but while at it also > >>> introduce generic compatible for both qcom,osm-l3 and qcom,epss-l3. > >>> > >>> Signed-off-by: Bjorn Andersson <quic_bjorande@quicinc.com> > >>> --- > >>> .../bindings/interconnect/qcom,osm-l3.yaml | 22 +++++++++++++------ > >>> 1 file changed, 15 insertions(+), 7 deletions(-) > >>> > >>> diff --git a/Documentation/devicetree/bindings/interconnect/qcom,osm-l3.yaml b/Documentation/devicetree/bindings/interconnect/qcom,osm-l3.yaml > >>> index bf538c0c5a81..ae0995341a78 100644 > >>> --- a/Documentation/devicetree/bindings/interconnect/qcom,osm-l3.yaml > >>> +++ b/Documentation/devicetree/bindings/interconnect/qcom,osm-l3.yaml > >>> @@ -16,13 +16,21 @@ description: > >>> > >>> properties: > >>> compatible: > >>> - enum: > >>> - - qcom,sc7180-osm-l3 > >>> - - qcom,sc7280-epss-l3 > >>> - - qcom,sc8180x-osm-l3 > >>> - - qcom,sdm845-osm-l3 > >>> - - qcom,sm8150-osm-l3 > >>> - - qcom,sm8250-epss-l3 > >>> + oneOf: > >>> + items: > >> > >> oneOf expects a list, so this should be " - items" > >> > > > > Ahh, thanks. Must have missed running the dt_binding_check on this one. > > > >>> + - enum: > >>> + - qcom,sc7180-osm-l3 > >>> + - qcom,sc8180x-osm-l3 > >>> + - qcom,sdm845-osm-l3 > >>> + - qcom,sm8150-osm-l3 > >>> + - const: qcom,osm-l3 > >> > >> The concept is good, but are you sure all SoCs will be compatible with > >> generic osm-l3? > > > > Per the current implementation yes, worst case if one or more of them isn't the > > more specific compatible can be used to alter the behavior of that platform. > > > >> Why not using dedicated compatible of one soc, e.g. the > >> oldest here? We already did like that for BWMON, DMA and few others. > >> > > > > Because if we say compatible = "qcom,sc8180x-osm-l3", "qcom,sdm845-osm-l3" and > > there is a quirk needed for "qcom,sdm845-osm-l3" we're forced to add a "special > > case" every other *-osm-l3 in the driver. > > > > This way we can have a generic implementation for the qcom,osm-l3 and if we > > realize that we need to quirk something for the oldest platform, we can do so > > without affecting the others. > > True. This also means we do not really know which one is the generic > implementation :) > There currently is an implementation without platform specific quirks, I call that the generic implementation and suggest that we refer to that using "qcom,osm-l3". If we instead were to use sdm845 as the generic compatible, and there turns out to be a need for a quirk for this platform, you: 1) no longer have a generic implementation, but 4 platform-specific implementations 2) have 3 platforms claiming to be compatible with the quirked (now specialized) implementation, which they clearly aren't anymore Therefor I favor using generic names for generic compatibles. Regards, Bjorn
diff --git a/Documentation/devicetree/bindings/interconnect/qcom,osm-l3.yaml b/Documentation/devicetree/bindings/interconnect/qcom,osm-l3.yaml index bf538c0c5a81..ae0995341a78 100644 --- a/Documentation/devicetree/bindings/interconnect/qcom,osm-l3.yaml +++ b/Documentation/devicetree/bindings/interconnect/qcom,osm-l3.yaml @@ -16,13 +16,21 @@ description: properties: compatible: - enum: - - qcom,sc7180-osm-l3 - - qcom,sc7280-epss-l3 - - qcom,sc8180x-osm-l3 - - qcom,sdm845-osm-l3 - - qcom,sm8150-osm-l3 - - qcom,sm8250-epss-l3 + oneOf: + items: + - enum: + - qcom,sc7180-osm-l3 + - qcom,sc8180x-osm-l3 + - qcom,sdm845-osm-l3 + - qcom,sm8150-osm-l3 + - const: qcom,osm-l3 + items: + - enum: + - qcom,sc7280-epss-l3 + - qcom,sc8280xp-epss-l3 + - qcom,sm8250-epss-l3 + - qcom,sm8350-epss-l3 + - const: qcom,epss-l3 reg: maxItems: 1
Add EPSS L3 compatibles for sm8350 and sc8280xp, but while at it also introduce generic compatible for both qcom,osm-l3 and qcom,epss-l3. Signed-off-by: Bjorn Andersson <quic_bjorande@quicinc.com> --- .../bindings/interconnect/qcom,osm-l3.yaml | 22 +++++++++++++------ 1 file changed, 15 insertions(+), 7 deletions(-)