From patchwork Wed Jul 20 07:33:26 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Krzysztof Kozlowski X-Patchwork-Id: 591899 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 7125DC433EF for ; Wed, 20 Jul 2022 07:33:36 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239670AbiGTHdf (ORCPT ); Wed, 20 Jul 2022 03:33:35 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52238 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239588AbiGTHde (ORCPT ); Wed, 20 Jul 2022 03:33:34 -0400 Received: from mail-lj1-x229.google.com (mail-lj1-x229.google.com [IPv6:2a00:1450:4864:20::229]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A32AE675BC for ; Wed, 20 Jul 2022 00:33:33 -0700 (PDT) Received: by mail-lj1-x229.google.com with SMTP id x10so19683116ljj.11 for ; Wed, 20 Jul 2022 00:33:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=yFHqm8LK5q9e9AM50wknJiUgH9ZSVdccKeaSxOT6p7U=; b=MC+i+3maH27etmdXK5VZeEK9Jt3HYbRxwe7KhGdIx5Pw3prLoIu50ECVMDRqYHREI5 KS1s5OSOvfxOMEa7h4WhAwwKGH+XT+nUonGxwNnepyMhGoqZy5TGz9XeMbx5jSOUOR8c O5MXtld9Ch1CfFsUSlK26q5DXWOBX113P49vxMzvNRBktwBnR1Uyn0T7D+PpHYs1ekoV iMm+EQJhF+ggpISnc8D+l2CG/vEUX3MX2e/Xv0vJEG+G5Bqih/au6u9C+w17QyQ+TN9Z /eLE+S0z5GS56iiEbrP53P9wHghMEMa84m+DGgOd6lrtNzW4px+UJEnZff9de2esXAWf rrEg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=yFHqm8LK5q9e9AM50wknJiUgH9ZSVdccKeaSxOT6p7U=; b=CYuvJu/qgZ9lzGBXQ+hExsmuWZY+UJp813Exn2CypsEToHVsXZDxUmQNSMD7tUscI8 FSPGAlRcGDDwlg3apIFaBy1QOU99xqHYvsJPYnLkUE8bS97uZGF8XzTIJmocp1fo2tnp 2C2Zqwml+llBeU3dfpoJn2u3zXqed3BL+A50QaelwTt7aqhGlHD42z9mH+1AtJDUQrOW 6V64YkwEzU3FJokt0Uxc58cn9Z9EsRCoNn1uTTTB/Qn+O/ZbZHPWjrZo2rTsqw7X5W8N Kkd63qD6rdvL+ukWyGkzB4WXwlI+VMCmK7CyeEvt/kCzzriEf2VrTqt+q88RlOzC9IY6 sXfA== X-Gm-Message-State: AJIora9a/BHGd/ByYAOUbR+zYhU7GoNkZzItoKUBwEF211kk7ZkO/xxj paQZJxzZOJPCmGRnp4K0ALNVNA== X-Google-Smtp-Source: AGRyM1tMAPO2SAQlLw6viF5ZFG3cCvo2nU2eOp7XalUwZV40NplyUAGZ/xfqZuH5O0/V3pDrqmZwxA== X-Received: by 2002:a2e:bf27:0:b0:25d:b90b:c487 with SMTP id c39-20020a2ebf27000000b0025db90bc487mr6696076ljr.372.1658302412016; Wed, 20 Jul 2022 00:33:32 -0700 (PDT) Received: from krzk-bin.. (89-162-31-138.fiber.signal.no. [89.162.31.138]) by smtp.gmail.com with ESMTPSA id m2-20020a056512114200b0047f7a390b30sm3627287lfg.76.2022.07.20.00.33.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 20 Jul 2022 00:33:31 -0700 (PDT) From: Krzysztof Kozlowski To: Andy Gross , Bjorn Andersson , Konrad Dybcio , Rob Herring , Krzysztof Kozlowski , linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Krzysztof Kozlowski , Rob Herring , Srinivas Kandagatla , Dmitry Baryshkov , Vinod Koul , Alex Elder , Robert Foss , Bhupesh Sharma Subject: [PATCH v5] dt-bindings: qcom: document preferred compatible naming Date: Wed, 20 Jul 2022 09:33:26 +0200 Message-Id: <20220720073326.19591-1-krzysztof.kozlowski@linaro.org> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-arm-msm@vger.kernel.org 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 Reviewed-by: Rob Herring Reviewed-by: Dmitry Baryshkov Reviewed-by: Bhupesh Sharma --- 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 Cc: Dmitry Baryshkov Cc: Vinod Koul Cc: Alex Elder Cc: Robert Foss Cc: Bhupesh Sharma --- .../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 + +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