Message ID | 20220720073326.19591-1-krzysztof.kozlowski@linaro.org |
---|---|
State | Superseded |
Headers | show |
Series | [v5] dt-bindings: qcom: document preferred compatible naming | expand |
On 20/07/2022 09:33, Krzysztof Kozlowski wrote: > Compatibles can come in two formats. Either "vendor,ip-soc" or > "vendor,soc-ip". Qualcomm bindings were mixing both of usages, so add a > DT schema file documenting preferred policy and enforcing it for all new > compatibles, except few existing patterns. > > Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> > Reviewed-by: Rob Herring <robh@kernel.org> > Guys, This is waiting for two months. If you do not like it, please respond with some comments. Best regards, Krzysztof
On Mon, 26 Sept 2022 at 12:30, Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> wrote: > > On 20/07/2022 09:33, Krzysztof Kozlowski wrote: > > Compatibles can come in two formats. Either "vendor,ip-soc" or > > "vendor,soc-ip". Qualcomm bindings were mixing both of usages, so add a > > DT schema file documenting preferred policy and enforcing it for all new > > compatibles, except few existing patterns. > > > > Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> > > Reviewed-by: Rob Herring <robh@kernel.org> > > > > Guys, > > This is waiting for two months. If you do not like it, please respond > with some comments. I'd say, this is good, it documents what was agreed before. Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
On 26/09/2022 13:16, Dmitry Baryshkov wrote: >> >> This is waiting for two months. If you do not like it, please respond >> with some comments. > > I'd say, this is good, it documents what was agreed before. > > Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Thanks. I will rebase and resend. Best regards, Krzysztof
On 7/20/22 1:03 PM, Krzysztof Kozlowski wrote: > Compatibles can come in two formats. Either "vendor,ip-soc" or > "vendor,soc-ip". Qualcomm bindings were mixing both of usages, so add a > DT schema file documenting preferred policy and enforcing it for all new > compatibles, except few existing patterns. > > Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> > Reviewed-by: Rob Herring <robh@kernel.org> > > --- > > Depends on: > https://lore.kernel.org/all/20220627143340.477120-1-krzysztof.kozlowski@linaro.org/ > https://lore.kernel.org/all/20220628092253.21905-1-krzysztof.kozlowski@linaro.org/ > > Changes since v4: > 1. Add qcm. > 2. Add more qcom,ipq806x exceptions. > 3. Add Rob's tag. > > Changes since v3: > 1. Add qcom,kpss-wdt-xxx to pattern for exceptions. > 2. Add ipq806x entries to list of exceptions. > > Changes since v2: > 1. Narrow the expected pattern to be followed by dash '-' after model > number (msm8996-) or by two letters and a dash (sc8280xp-). > 2. Add qcom,apss-wdt-xxx to list of exceptions. > 3. Use comment instead of description in the oneOf list. > > Changes since v1: > 1. Add schema instead of readme (Rob). > > Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> > Cc: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > Cc: Vinod Koul <vkoul@kernel.org> > Cc: Alex Elder <elder@linaro.org> > Cc: Robert Foss <robert.foss@linaro.org> > Cc: Bhupesh Sharma <bhupesh.sharma@linaro.org> > --- > .../devicetree/bindings/arm/qcom-soc.yaml | 65 +++++++++++++++++++ > 1 file changed, 65 insertions(+) > create mode 100644 Documentation/devicetree/bindings/arm/qcom-soc.yaml > > diff --git a/Documentation/devicetree/bindings/arm/qcom-soc.yaml b/Documentation/devicetree/bindings/arm/qcom-soc.yaml > new file mode 100644 > index 000000000000..9918b20e4478 > --- /dev/null > +++ b/Documentation/devicetree/bindings/arm/qcom-soc.yaml > @@ -0,0 +1,65 @@ > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/arm/qcom-soc.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Qualcomm SoC compatibles naming convention > + > +maintainers: > + - Bjorn Andersson <bjorn.andersson@linaro.org> Please use Bjorn's new email id. > + > +description: | > + Guidelines for new compatibles for SoC blocks/components. > + When adding new compatibles in new bindings, use the format:: > + qcom,SoC-IP > + > + For example:: > + qcom,sdm845-llcc-bwmon > + > + When adding new compatibles to existing bindings, use the format in the > + existing binding, even if it contradicts the above. > + > +select: > + properties: > + compatible: > + pattern: "^qcom,.*(apq|ipq|mdm|msm|qcm|qcs|sa|sc|sdm|sdx|sm)[0-9]+.*$" > + required: > + - compatible > + > +properties: > + compatible: > + oneOf: > + # Preferred naming style for compatibles of SoC components: > + - pattern: "^qcom,(apq|ipq|mdm|msm|qcm|qcs|sa|sc|sdm|sdx|sm)[0-9]+-.*$" > + - pattern: "^qcom,(sa|sc)8[0-9]+[a-z][a-z]?-.*$" > + > + # Legacy namings - variations of existing patterns/compatibles are OK, > + # but do not add completely new entries to these: > + - pattern: "^qcom,[ak]pss-wdt-(apq|ipq|mdm|msm|qcm|qcs|sa|sc|sdm|sdx|sm)[0-9]+.*$" > + - pattern: "^qcom,gcc-(apq|ipq|mdm|msm|qcm|qcs|sa|sc|sdm|sdx|sm)[0-9]+.*$" > + - pattern: "^qcom,mmcc-(apq|ipq|mdm|msm|qcm|qcs|sa|sc|sdm|sdx|sm)[0-9]+.*$" > + - pattern: "^qcom,pcie-(apq|ipq|mdm|msm|qcm|qcs|sa|sc|sdm|sdx|sm)[0-9]+.*$" > + - pattern: "^qcom,rpm-(apq|ipq|mdm|msm|qcm|qcs|sa|sc|sdm|sdx|sm)[0-9]+.*$" > + - pattern: "^qcom,scm-(apq|ipq|mdm|msm|qcm|qcs|sa|sc|sdm|sdx|sm)[0-9]+.*$" > + - enum: > + - qcom,gpucc-sdm630 > + - qcom,gpucc-sdm660 > + - qcom,lcc-apq8064 > + - qcom,lcc-ipq8064 > + - qcom,lcc-mdm9615 > + - qcom,lcc-msm8960 > + - qcom,lpass-cpu-apq8016 > + - qcom,usb-ss-ipq4019-phy > + - qcom,usb-hs-ipq4019-phy > + - qcom,vqmmc-ipq4019-regulator > + > + # Legacy compatibles with wild-cards - list cannot grow with new bindings: > + - enum: > + - qcom,ipq806x-gmac > + - qcom,ipq806x-nand > + - qcom,ipq806x-sata-phy > + - qcom,ipq806x-usb-phy-ss > + - qcom,ipq806x-usb-phy-hs > + > +additionalProperties: true Otherwise, LFTM, so: Reviewed-by: Bhupesh Sharma <bhupesh.sharma@linaro.org> Thanks.
On 27/09/2022 13:57, Bhupesh Sharma wrote: > > On 7/20/22 1:03 PM, Krzysztof Kozlowski wrote: >> Compatibles can come in two formats. Either "vendor,ip-soc" or >> "vendor,soc-ip". Qualcomm bindings were mixing both of usages, so add a >> DT schema file documenting preferred policy and enforcing it for all new >> compatibles, except few existing patterns. >> >> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> >> Reviewed-by: Rob Herring <robh@kernel.org> >> >> --- >> >> Depends on: >> https://lore.kernel.org/all/20220627143340.477120-1-krzysztof.kozlowski@linaro.org/ >> https://lore.kernel.org/all/20220628092253.21905-1-krzysztof.kozlowski@linaro.org/ >> >> Changes since v4: >> 1. Add qcm. >> 2. Add more qcom,ipq806x exceptions. >> 3. Add Rob's tag. >> >> Changes since v3: >> 1. Add qcom,kpss-wdt-xxx to pattern for exceptions. >> 2. Add ipq806x entries to list of exceptions. >> >> Changes since v2: >> 1. Narrow the expected pattern to be followed by dash '-' after model >> number (msm8996-) or by two letters and a dash (sc8280xp-). >> 2. Add qcom,apss-wdt-xxx to list of exceptions. >> 3. Use comment instead of description in the oneOf list. >> >> Changes since v1: >> 1. Add schema instead of readme (Rob). >> >> Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> >> Cc: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> >> Cc: Vinod Koul <vkoul@kernel.org> >> Cc: Alex Elder <elder@linaro.org> >> Cc: Robert Foss <robert.foss@linaro.org> >> Cc: Bhupesh Sharma <bhupesh.sharma@linaro.org> >> --- >> .../devicetree/bindings/arm/qcom-soc.yaml | 65 +++++++++++++++++++ >> 1 file changed, 65 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/arm/qcom-soc.yaml >> >> diff --git a/Documentation/devicetree/bindings/arm/qcom-soc.yaml b/Documentation/devicetree/bindings/arm/qcom-soc.yaml >> new file mode 100644 >> index 000000000000..9918b20e4478 >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/arm/qcom-soc.yaml >> @@ -0,0 +1,65 @@ >> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause >> +%YAML 1.2 >> +--- >> +$id: http://devicetree.org/schemas/arm/qcom-soc.yaml# >> +$schema: http://devicetree.org/meta-schemas/core.yaml# >> + >> +title: Qualcomm SoC compatibles naming convention >> + >> +maintainers: >> + - Bjorn Andersson <bjorn.andersson@linaro.org> > > Please use Bjorn's new email id. Indeed, thanks! Best regards, Krzysztof
diff --git a/Documentation/devicetree/bindings/arm/qcom-soc.yaml b/Documentation/devicetree/bindings/arm/qcom-soc.yaml new file mode 100644 index 000000000000..9918b20e4478 --- /dev/null +++ b/Documentation/devicetree/bindings/arm/qcom-soc.yaml @@ -0,0 +1,65 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/arm/qcom-soc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Qualcomm SoC compatibles naming convention + +maintainers: + - Bjorn Andersson <bjorn.andersson@linaro.org> + +description: | + Guidelines for new compatibles for SoC blocks/components. + When adding new compatibles in new bindings, use the format:: + qcom,SoC-IP + + For example:: + qcom,sdm845-llcc-bwmon + + When adding new compatibles to existing bindings, use the format in the + existing binding, even if it contradicts the above. + +select: + properties: + compatible: + pattern: "^qcom,.*(apq|ipq|mdm|msm|qcm|qcs|sa|sc|sdm|sdx|sm)[0-9]+.*$" + required: + - compatible + +properties: + compatible: + oneOf: + # Preferred naming style for compatibles of SoC components: + - pattern: "^qcom,(apq|ipq|mdm|msm|qcm|qcs|sa|sc|sdm|sdx|sm)[0-9]+-.*$" + - pattern: "^qcom,(sa|sc)8[0-9]+[a-z][a-z]?-.*$" + + # Legacy namings - variations of existing patterns/compatibles are OK, + # but do not add completely new entries to these: + - pattern: "^qcom,[ak]pss-wdt-(apq|ipq|mdm|msm|qcm|qcs|sa|sc|sdm|sdx|sm)[0-9]+.*$" + - pattern: "^qcom,gcc-(apq|ipq|mdm|msm|qcm|qcs|sa|sc|sdm|sdx|sm)[0-9]+.*$" + - pattern: "^qcom,mmcc-(apq|ipq|mdm|msm|qcm|qcs|sa|sc|sdm|sdx|sm)[0-9]+.*$" + - pattern: "^qcom,pcie-(apq|ipq|mdm|msm|qcm|qcs|sa|sc|sdm|sdx|sm)[0-9]+.*$" + - pattern: "^qcom,rpm-(apq|ipq|mdm|msm|qcm|qcs|sa|sc|sdm|sdx|sm)[0-9]+.*$" + - pattern: "^qcom,scm-(apq|ipq|mdm|msm|qcm|qcs|sa|sc|sdm|sdx|sm)[0-9]+.*$" + - enum: + - qcom,gpucc-sdm630 + - qcom,gpucc-sdm660 + - qcom,lcc-apq8064 + - qcom,lcc-ipq8064 + - qcom,lcc-mdm9615 + - qcom,lcc-msm8960 + - qcom,lpass-cpu-apq8016 + - qcom,usb-ss-ipq4019-phy + - qcom,usb-hs-ipq4019-phy + - qcom,vqmmc-ipq4019-regulator + + # Legacy compatibles with wild-cards - list cannot grow with new bindings: + - enum: + - qcom,ipq806x-gmac + - qcom,ipq806x-nand + - qcom,ipq806x-sata-phy + - qcom,ipq806x-usb-phy-ss + - qcom,ipq806x-usb-phy-hs + +additionalProperties: true