Received: by 2002:a05:6358:f14:b0:e5:3b68:ec04 with SMTP id b20csp243757rwj; Thu, 22 Dec 2022 02:10:49 -0800 (PST) X-Google-Smtp-Source: AMrXdXucokthvgtrq9/OHDREW+eUlqxXRMvzV2vkHSPRjnjRAsRifXVLeP7myvuziVeA5vbnTeo0 X-Received: by 2002:a17:907:c084:b0:7c1:22a6:818f with SMTP id st4-20020a170907c08400b007c122a6818fmr3875534ejc.25.1671703849584; Thu, 22 Dec 2022 02:10:49 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1671703849; cv=none; d=google.com; s=arc-20160816; b=0V6XbOAkLSPB2yAuxXFFsuib4+3ySLwnMSLkzUs65PaCEnsHqEnGp7/rRelELjEgni 3SwTnTEMIBexY0fxHqLgfExCMbskojwlbOvjrDOlij+ikay+3JmPF2/dK7VvmZD/RAN1 5sQ2jvV3xl7MFF95aa0/WSmXlNhZvddJ2HjQx19ojhpQ/ZDYZ6DqSczb/RB1Fzb8uhzb UiZasmsFmF0ZvXF5PgwYCgDR+EmqZIbmpNXURfXMwC8ZrWdz0KDaEWhPBC4s4hs+CoRl s5LuoQAvSn7VvweFFsoMAgEEMth/KgWYD1fdx93dVokDj/B8ngI4Ch2NPjERMGwlr9Yf dSOA== 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=; b=qyvhBcsHALMe0FvKqOtNVkIwkq2VPd44l9eWvg+UTDF2tpH0j6VBnWXjVj3MouSOiX sKW2Bj2XpYyGZQyXf3omnEnuq3PGBdiF5zf8FQnPFH6hFgU9ohhnmG5bjsYyWeEi80kk UF5RxTwbv6v1f5K2B7PN5ArPb031Mj4w+F7iEBXB8Rd97mQK3+/L15JPWme4U5YrM687 mZsplc4DzjiPcrI2rofXavcWAMUgjybjZtpu/Q4TJygIiYEkFdRiPm41YUXF57SgplPm 5Z4bywWh/uYYJ4oVdBEPdDccIex+X2Y+ICh0IIv9DrBbPAumq9YwDCW6qM8ySwC+iOug onWg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@foss.st.com header.s=selector1 header.b=nLUae81s; 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; 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 v22-20020aa7d816000000b00458e689f41fsi311185edq.415.2022.12.22.02.10.33; Thu, 22 Dec 2022 02:10:49 -0800 (PST) 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; dkim=pass header.i=@foss.st.com header.s=selector1 header.b=nLUae81s; 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; 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 S235286AbiLVKID (ORCPT + 67 others); Thu, 22 Dec 2022 05:08:03 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:59612 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230451AbiLVKHs (ORCPT ); Thu, 22 Dec 2022 05:07:48 -0500 Received: from mx07-00178001.pphosted.com (mx08-00178001.pphosted.com [91.207.212.93]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B63A41E735; Thu, 22 Dec 2022 02:07:43 -0800 (PST) Received: from pps.filterd (m0046660.ppops.net [127.0.0.1]) by mx07-00178001.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 2BM7iScL006623; Thu, 22 Dec 2022 11:07:14 +0100 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=nLUae81sb/B8nEHkWezYe+qRi2cU/EkcAw+VzkgN5FzXyDa3HUuAyOPI7il9eK0s2ife IZepCuwAquTbAkfkHS2Sb8U8epqvqm0NmreppoVWXK/u/txgi9Z+WRvohtpPEzau0lRo rGCWPOTXYXu6P18wrK+1T0vP6ZfXI7K+R7LmkvjN+wkj+ztl5GzsdeEa985sX1bzmNII Sa65oXvvyNS3d+KM9iHq1LKijNe9maHXcvz5dtRKBpGkrn4upSCAGZmKDSwbPuGSgSC8 rx197s/xTyyFamqbMbdkvX8b70ApAxKygUF88NEYZJhwVmhTSAPMyIiEXfNkCkchxDiL Mg== 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 3mkc8jdtvc-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 22 Dec 2022 11:07:14 +0100 Received: from euls16034.sgp.st.com (euls16034.sgp.st.com [10.75.44.20]) by beta.dmz-eu.st.com (STMicroelectronics) with ESMTP id 8638810004B; Thu, 22 Dec 2022 11:07:11 +0100 (CET) Received: from Webmail-eu.st.com (shfdag1node1.st.com [10.75.129.69]) by euls16034.sgp.st.com (STMicroelectronics) with ESMTP id 1BC9A21D3C9; Thu, 22 Dec 2022 11:06:14 +0100 (CET) Received: from localhost (10.201.21.217) 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.13; Thu, 22 Dec 2022 11:06:13 +0100 From: Gatien Chevallier To: , , , , CC: , , , , , , , , Oleksii Moisieiev Subject: [RFC PATCH v2 1/7] dt-bindings: Document common device controller bindings Date: Thu, 22 Dec 2022 11:04:58 +0100 Message-ID: <20221222100504.68247-2-gatien.chevallier@foss.st.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20221222100504.68247-1-gatien.chevallier@foss.st.com> References: <20221222100504.68247-1-gatien.chevallier@foss.st.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Originating-IP: [10.201.21.217] X-ClientProxiedBy: EQNCAS1NODE4.st.com (10.75.129.82) To SHFDAG1NODE1.st.com (10.75.129.69) X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.923,Hydra:6.0.545,FMLib:17.11.122.1 definitions=2022-12-22_05,2022-12-21_01,2022-06-22_01 X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,RCVD_IN_DNSWL_LOW,SPF_HELO_NONE,SPF_PASS 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 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