Received: by 2002:a05:6358:c692:b0:131:369:b2a3 with SMTP id fe18csp749255rwb; Wed, 26 Jul 2023 02:06:59 -0700 (PDT) X-Google-Smtp-Source: APBJJlEgTfdzLA+EiZWT75fi5DU6b568Xdi2C3ojcie9eBzDjvEfT4fOGXttGrgLy0agip6ZvfBN X-Received: by 2002:a05:6a20:6a1c:b0:138:1980:1837 with SMTP id p28-20020a056a206a1c00b0013819801837mr1764688pzk.13.1690362419553; Wed, 26 Jul 2023 02:06:59 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1690362419; cv=none; d=google.com; s=arc-20160816; b=lHV7zh+dFZTN1MuGV9RUcm0E+/7TStvX+RXXOl3BDRWNnaQ0p8YIpSwmeMjlJWW9iX Jt7cR5jkumG2DbevTL4kripM+LOTnuu2MEQt92k0qC12nZdFn09AdSGW/G/NahNZJKyw pQzEplSbGaSBSZvuBbR0jzinQF6gryq44aHAefzUZAxFPWSgWuXnGRi+krQ7vVl3PsWB GSK7C72vTysU9OOFY4gx/n27OosDmUFjm1Fo4D0WzipApkZWH7VkzQ6vtDwCPE8/1LY4 At7wn90V8LoCXfx81TCGKMoTtrvM6X+ofW0A11dqt3F44Xg+EZ4hCC5vAzEVUnxHm7rh ZLvA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=9lEWHCTpXo5muG8dgTfW1ehUGbdevBxdGvchXuIYBYI=; fh=9UT1cesJu3bF0W/s45sB4sqLXpf1IqtQa/NWIDYAtRA=; b=IQvsoYLJAJtwMvdc8X/Y8vcPOJeFRJpo2Xse4DlXJTEjUFhuv43a9P2scUSFFsAEoc AMxasp7PhFNcCnTJ6/iiAcp3GTX7YZW0HSLTIIUTkFz/zhkQEr3nGWHJHdDeegmkoeIR /4+J1jVtLql6ZOAp2iyhI7gEjRYv4Vc2dIZM8MhB9b1oSNsKuBkivVmHlL1VNft5sVdE 6qx9ffUDxAhtRQ0CFD0fajvuJ+sD8uYIVNuslgplreFgkiLKDTwXRa/dQAyEoEzpBj5J Gntk1l2JG7kLclNjNuZx8JeAkDpzgF2aS+JbRp1wEC2Ghhl3gTcotJNfN5iuMS+4DMgs ohEg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@foss.st.com header.s=selector1 header.b=zSKIXgfr; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=foss.st.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id y187-20020a638ac4000000b00563df304ec1si1067410pgd.664.2023.07.26.02.06.44; Wed, 26 Jul 2023 02:06:59 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-crypto-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; dkim=pass header.i=@foss.st.com header.s=selector1 header.b=zSKIXgfr; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=foss.st.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233439AbjGZIqy (ORCPT + 99 others); Wed, 26 Jul 2023 04:46:54 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:48352 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233399AbjGZIq2 (ORCPT ); Wed, 26 Jul 2023 04:46:28 -0400 Received: from mx07-00178001.pphosted.com (mx08-00178001.pphosted.com [91.207.212.93]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6304B4497; Wed, 26 Jul 2023 01:38:58 -0700 (PDT) Received: from pps.filterd (m0046661.ppops.net [127.0.0.1]) by mx07-00178001.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 36Q8JdQx025009; Wed, 26 Jul 2023 10:38:18 +0200 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foss.st.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding : content-type; s=selector1; bh=9lEWHCTpXo5muG8dgTfW1ehUGbdevBxdGvchXuIYBYI=; b=zSKIXgfrEPvbzU0iwJLlE3x/lNMruOEyMxsI7kC3laZE3qvBG8sBdevb9iyOqF/YygF3 sAM1UpZ263iptvLbJsJbN7ZSFZowpnaOLe71eIViTWrGOKPZS5WycWAhK/QsKMgwp4MN yze1reMvZstsFVfmGFsyYEJqja3d8/u9tPajtpUGJgGsPdlfiwxxAULGWf2rP+0wwV7t /CxmJ9DoJbCPRF2lpao+Ia+ZmPGIDH5jXIVxs/YGJc7I+TagCh+zWVsM0zlGZBNcZfHw Im+01pastJkL7bjTH6R+4WQsmBKiuVKvu+1g1lXfNbnUG5Ouqf57J3Sw4VtqT/fU2Hnk 1g== Received: from beta.dmz-eu.st.com (beta.dmz-eu.st.com [164.129.1.35]) by mx07-00178001.pphosted.com (PPS) with ESMTPS id 3s2uj99tdq-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 26 Jul 2023 10:38:18 +0200 Received: from euls16034.sgp.st.com (euls16034.sgp.st.com [10.75.44.20]) by beta.dmz-eu.st.com (STMicroelectronics) with ESMTP id B4837100049; Wed, 26 Jul 2023 10:38:17 +0200 (CEST) Received: from Webmail-eu.st.com (shfdag1node1.st.com [10.75.129.69]) by euls16034.sgp.st.com (STMicroelectronics) with ESMTP id A7F1820FA3A; Wed, 26 Jul 2023 10:38:17 +0200 (CEST) Received: from localhost (10.201.21.121) by SHFDAG1NODE1.st.com (10.75.129.69) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.21; Wed, 26 Jul 2023 10:38:17 +0200 From: Gatien Chevallier To: , , , , , , , , , , , , , , , , , , , , , , , , , Frank Rowand CC: , , , , , , , , , , , , , , , , Oleksii Moisieiev Subject: [IGNORE][PATCH v3 01/11] dt-bindings: Document common device controller bindings Date: Wed, 26 Jul 2023 10:38:00 +0200 Message-ID: <20230726083810.232100-2-gatien.chevallier@foss.st.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230726083810.232100-1-gatien.chevallier@foss.st.com> References: <20230726083810.232100-1-gatien.chevallier@foss.st.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Originating-IP: [10.201.21.121] X-ClientProxiedBy: SHFCAS1NODE2.st.com (10.75.129.73) To SHFDAG1NODE1.st.com (10.75.129.69) X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.267,Aquarius:18.0.957,Hydra:6.0.591,FMLib:17.11.176.26 definitions=2023-07-26_01,2023-07-25_01,2023-05-22_02 X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,RCVD_IN_DNSWL_BLOCKED,SPF_HELO_NONE,SPF_PASS, T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED 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-crypto@vger.kernel.org From: Oleksii Moisieiev Introducing of the common device controller bindings for the controller provider and consumer devices. Those bindings are intended to allow divided system on chip into muliple domains, that can be used to configure hardware permissions. Signed-off-by: Oleksii Moisieiev --- .../feature-domain-controller.yaml | 84 +++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 Documentation/devicetree/bindings/feature-controllers/feature-domain-controller.yaml diff --git a/Documentation/devicetree/bindings/feature-controllers/feature-domain-controller.yaml b/Documentation/devicetree/bindings/feature-controllers/feature-domain-controller.yaml new file mode 100644 index 000000000000..90a7c38c833c --- /dev/null +++ b/Documentation/devicetree/bindings/feature-controllers/feature-domain-controller.yaml @@ -0,0 +1,84 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/feature-controllers/feature-domain-controller.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Generic Domain Controller bindings + +maintainers: + - Oleksii Moisieiev + +description: |+ + Common Feature Domains Controller bindings properties + + Domain controllers allow to divided system on chip into multiple feature + domains that can be used to select by who hardware blocks could be accessed. + A feature domain could be a cluster of CPUs (or coprocessors), a range of + addresses or a group of hardware blocks. + + This device tree bindings can be used to bind feature domain consumer devices + with their feature domains provided by feature-domains controllers. + Feature omain controller provider can be represened by any node in the + device tree and can provide one or more configuration parameters, needed to + control parameters of the consumer device. A consumer node can refer to the + provider by phandle and a set of phandle arguments, specified by + '#feature-domain-cells' property in the device controller provider node. + + Device controllers are typically used to set the permissions of the hardware + block. The contents of the feature-domains configuration properties are + defined by the binding for the individual feature-domains controller device. + + Each node can be a consumer for the several providers. The first + configuration of 'feature-domains' or the one named 'default' is applied + before probing the device itself. + +# always select the core schema +select: true + +properties: + '#feature-domain-cells': + $ref: /schemas/types.yaml#/definitions/uint32 + description: + Number of cells in a feature-domains controller specifier; + Can be any value as specified by device tree binding documentation + of a particular provider. + + feature-domain-controller: + description: + Indicates that the node is feature-domain-controller provider. + + feature-domain-names: + $ref: '/schemas/types.yaml#/definitions/string-array' + description: + A list of feature-domains names, sorted in the same order as + feature-domains entries. Consumer drivers will use feature-domain-names + to match with existing feature-domains entries. + + feature-domains: + $ref: "/schemas/types.yaml#/definitions/phandle-array" + description: + A list of feature-domains controller specifiers, as defined by the + bindings of the feature-domain-controller provider. + +additionalProperties: true + +examples: + - | + ctrl0: ctrl@100 { + feature-domain-controller; + reg = <0x100 0x10>; + #feature-domain-cells = <2>; + }; + + ctrl1: ctrl@110 { + feature-domain-controller; + reg = <0x110 0x10>; + #feature-domain-cells = <3>; + }; + + foo@0 { + reg = <0x0 0x1>; + feature-domains = <&ctrl0 1 2>, <&ctrl1 3 4 5>; + feature-domain-names = "default", "unbind"; + }; -- 2.25.1