From patchwork Fri Feb 11 12:07:21 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Etienne Carriere X-Patchwork-Id: 541780 Delivered-To: patch@linaro.org Received: by 2002:ad5:420f:0:0:0:0:0 with SMTP id e15csp3020051imo; Fri, 11 Feb 2022 04:07:39 -0800 (PST) X-Google-Smtp-Source: ABdhPJxcDZA8mgiIlCAmgfCApaR7EtYx08/j1/hGRD3/y3U05Je3AglcoW+Nh1wZJQ5mFcLBk3s6 X-Received: by 2002:a17:906:2cc4:: with SMTP id r4mr1113663ejr.393.1644581259219; Fri, 11 Feb 2022 04:07:39 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1644581259; cv=none; d=google.com; s=arc-20160816; b=It0+KC5bZl3KAmIo1Ty7goByir8qkWvujbnk9X+utpM5wpSn8PrkHnXTVIMRKR9UNO UiPUl1WkNa4KacMP1+tjBu1jKD56i1GsC8Oofp7uoTyKqsvCzxo7ZB7x2w43tqYi++oz 2ZW+n2QPg6fvZWIyUE7p9AM229SjpdEr7UWhytxQvjqouONvg6WGm7ycTxsz0sjLdwRV FajRubx/o06q4IKmkMlPi/l1CHa0/zas3Gpt3x+Yd4BGPsdhv7WpewXhbEtpiUKffyZ0 momqcBP/UbfNRiLV4EuoKbiuR8R7iu+HVNMtAZgqLN98wkmwnqzmlNW7jqwAciZSkHYE kolQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:message-id:date:subject:cc:to :from:dkim-signature; bh=g9lAHSc4geU7e8avaLFkLDsPsuiUHlzWJfOJjvldNCE=; b=SC+Uj/TflmxKVpvfqBeYue/NosUeHCr28UblMUZ2R8g5GqicoriaMd+VWB/Skf1qEJ 1cWaVD1TwXS0pAmLB0EU+5OIILFm/teLtN6h8MgrFyH7g9WW18xaqlDjfy9xhshYvXK1 Rt9l0zmr02SSkue4uSQ1nPmnxSXsrz5mEZE7F2r8Xvymyu2H2XGStOof/ffSZSpqcCYC YxP1B502RR9RVy1cEJPzJT8rLhlQhfqHKFhNN8ipKZeiiaTlX/Z+FNcMOSMboi31YVR9 6l+WJ8JjmrD3EebQe5BOMrMP9l5YMG0ZFcs35bI2jK9gHgqZWFE8wTdTZg/r4JINvRSB QXyw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=YrROXaO2; spf=pass (google.com: domain of u-boot-bounces@lists.denx.de designates 85.214.62.61 as permitted sender) smtp.mailfrom=u-boot-bounces@lists.denx.de; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from phobos.denx.de (phobos.denx.de. [85.214.62.61]) by mx.google.com with ESMTPS id sd7si10103120ejc.364.2022.02.11.04.07.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 11 Feb 2022 04:07:39 -0800 (PST) Received-SPF: pass (google.com: domain of u-boot-bounces@lists.denx.de designates 85.214.62.61 as permitted sender) client-ip=85.214.62.61; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=YrROXaO2; spf=pass (google.com: domain of u-boot-bounces@lists.denx.de designates 85.214.62.61 as permitted sender) smtp.mailfrom=u-boot-bounces@lists.denx.de; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id A03EC83A2B; Fri, 11 Feb 2022 13:07:36 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.b="YrROXaO2"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 1ED8E83A3F; Fri, 11 Feb 2022 13:07:35 +0100 (CET) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de X-Spam-Level: X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.2 Received: from mail-wr1-x42c.google.com (mail-wr1-x42c.google.com [IPv6:2a00:1450:4864:20::42c]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id CF859836A9 for ; Fri, 11 Feb 2022 13:07:30 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=etienne.carriere@linaro.org Received: by mail-wr1-x42c.google.com with SMTP id h6so14846259wrb.9 for ; Fri, 11 Feb 2022 04:07:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id; bh=g9lAHSc4geU7e8avaLFkLDsPsuiUHlzWJfOJjvldNCE=; b=YrROXaO2wmYLw9sHQDfp6+GUg25kywOqCKv4UrObAWROC308qfcZKA4thMEfPGDQ0/ G7u8Hmh7wSFGl53CjlAaxzosj8YUaNggZmyxclIxGaHvR+68WeACTtzhKwgzjeVIKTMf wRRR4CDbVTTy9S3xQRtPQLO7essGgynEv5Fc+hfuAGiN/HgWOWlLp7x9Ar6gbkTDLsxm Bm7aYAw3+UQaf4C5+kz6370gD1WZ/zNvGg6a9aAVYUDkfG1IgpNuo8O1X8Pj16ypyu6o hU890sEJ++Y0ZYP4HfaAafXqqUy0qVA72u6vzIRrtKggrhkECYlN9qZPbbiHFkp+kSca M2yg== 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; bh=g9lAHSc4geU7e8avaLFkLDsPsuiUHlzWJfOJjvldNCE=; b=7SPLKCm8sTmQZ6BfmrHtwS14DAHgwGu6qRBEWYRVENvBfTk/sBTKSfAwoFbXAqMdRz zcLpdKahlGFn9T2/dslrGscuZvoFk8sP4ifMQwGJRga+eUYDIPY2CHMpQdZky0UIlIev dKMOoLujU8MPafvhtdjOipqsDwn/C1ha/InP+UWDlKK2y1b9ZNK1KevRmFjoXdnES8LP ro+U7jdguPDickzh0vqa9Itvu4M4yAhYor917ZFhiY5BC+bn7/m3B5F7WxV3bJ0S0aeI 7KOhl0dmYsJu+YE2yNYapMDF0huxrTTg3iT9SKN1myCI0fXvCKfWH8dWt+0AHY0GiM0C wpPw== X-Gm-Message-State: AOAM531MBtJs/wL5yNEj/5T4rkrScwLr4i6DyDy4sTpnBFJoSUQ+dp3y 7o9jYni8dwMoVihqxjvDf37Pa8DCicsP6w== X-Received: by 2002:a5d:5850:: with SMTP id i16mr1200186wrf.618.1644581250009; Fri, 11 Feb 2022 04:07:30 -0800 (PST) Received: from lmecxl0524.lme.st.com ([2a04:cec0:1057:737f:9927:5b5d:6280:5a68]) by smtp.gmail.com with ESMTPSA id u14sm4964439wmq.41.2022.02.11.04.07.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 11 Feb 2022 04:07:29 -0800 (PST) From: Etienne Carriere To: u-boot@lists.denx.de Cc: Etienne Carriere Subject: [PATCH 1/5] doc: binding: scmi: link to latest Linux kernel binding Date: Fri, 11 Feb 2022 13:07:21 +0100 Message-Id: <20220211120725.25358-1-etienne.carriere@linaro.org> X-Mailer: git-send-email 2.17.1 X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.39 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.103.5 at phobos.denx.de X-Virus-Status: Clean Changes SCMI bindings documentation to relate to Linux kernel source tree that recently changed the bindings description to YAML format. Signed-off-by: Etienne Carriere Reviewed-by: Patrick Delaunay --- doc/device-tree-bindings/arm/arm,scmi.txt | 236 +--------------------- 1 file changed, 2 insertions(+), 234 deletions(-) diff --git a/doc/device-tree-bindings/arm/arm,scmi.txt b/doc/device-tree-bindings/arm/arm,scmi.txt index 92572eabb5..0a7886da24 100644 --- a/doc/device-tree-bindings/arm/arm,scmi.txt +++ b/doc/device-tree-bindings/arm/arm,scmi.txt @@ -1,234 +1,2 @@ -System Control and Management Interface (SCMI) Message Protocol ----------------------------------------------------------- - -The SCMI is intended to allow agents such as OSPM to manage various functions -that are provided by the hardware platform it is running on, including power -and performance functions. - -This binding is intended to define the interface the firmware implementing -the SCMI as described in ARM document number ARM DEN 0056A ("ARM System Control -and Management Interface Platform Design Document")[0] provide for OSPM in -the device tree. - -Required properties: - -The scmi node with the following properties shall be under the /firmware/ node. - -- compatible : shall be "arm,scmi" or "arm,scmi-smc" for smc/hvc transports, - or "linaro,scmi-optee" for OP-TEE transport. -- mboxes: List of phandle and mailbox channel specifiers. It should contain - exactly one or two mailboxes, one for transmitting messages("tx") - and another optional for receiving the notifications("rx") if - supported. -- shmem : List of phandle pointing to the shared memory(SHM) area as per - generic mailbox client binding. -- #address-cells : should be '1' if the device has sub-nodes, maps to - protocol identifier for a given sub-node. -- #size-cells : should be '0' as 'reg' property doesn't have any size - associated with it. -- arm,smc-id : SMC id required when using smc or hvc transports -- linaro,optee-channel-id : Channel specifier required when using OP-TEE - transport. - -Optional properties: - -- mbox-names: shall be "tx" or "rx" depending on mboxes entries. - -See Documentation/devicetree/bindings/mailbox/mailbox.txt for more details -about the generic mailbox controller and client driver bindings. -Mailbox doorbell is used as a mechanism to alert the presence of a -messages and/or notification. - -Each protocol supported shall have a sub-node with corresponding compatible -as described in the following sections. If the platform supports dedicated -communication channel for a particular protocol, properties shall be present -in the sub-node corresponding to that protocol. These properties are: -- mboxes, mbox-names and shmem for mailbox transport -- arm,smc-id and shmem for smc/hvc transport -- linaro,optee-channel-id and possibly shmem for OP-TEE transport - -Clock/Performance bindings for the clocks/OPPs based on SCMI Message Protocol ------------------------------------------------------------- - -This binding uses the common clock binding[1]. - -Required properties: -- #clock-cells : Should be 1. Contains the Clock ID value used by SCMI commands. - -Power domain bindings for the power domains based on SCMI Message Protocol ------------------------------------------------------------- - -This binding for the SCMI power domain providers uses the generic power -domain binding[2]. - -Required properties: - - #power-domain-cells : Should be 1. Contains the device or the power - domain ID value used by SCMI commands. - -Regulator bindings for the SCMI Regulator based on SCMI Message Protocol ------------------------------------------------------------- -An SCMI Regulator is permanently bound to a well defined SCMI Voltage Domain, -and should be always positioned as a root regulator. -It does not support any current operation. - -SCMI Regulators are grouped under a 'regulators' node which in turn is a child -of the SCMI Voltage protocol node inside the desired SCMI instance node. - -This binding uses the common regulator binding[6]. - -Required properties: - - reg : shall identify an existent SCMI Voltage Domain. - -Sensor bindings for the sensors based on SCMI Message Protocol --------------------------------------------------------------- -SCMI provides an API to access the various sensors on the SoC. - -Required properties: -- #thermal-sensor-cells: should be set to 1. This property follows the - thermal device tree bindings[3]. - - Valid cell values are raw identifiers (Sensor ID) - as used by the firmware. Refer to platform details - for your implementation for the IDs to use. - -Reset signal bindings for the reset domains based on SCMI Message Protocol ------------------------------------------------------------- - -This binding for the SCMI reset domain providers uses the generic reset -signal binding[5]. - -Required properties: - - #reset-cells : Should be 1. Contains the reset domain ID value used - by SCMI commands. - -SRAM and Shared Memory for SCMI -------------------------------- - -A small area of SRAM is reserved for SCMI communication between application -processors and SCP. - -The properties should follow the generic mmio-sram description found in [4] - -Each sub-node represents the reserved area for SCMI. - -Required sub-node properties: -- reg : The base offset and size of the reserved area with the SRAM -- compatible : should be "arm,scmi-shmem" for Non-secure SRAM based - shared memory - -[0] http://infocenter.arm.com/help/topic/com.arm.doc.den0056a/index.html -[1] Documentation/devicetree/bindings/clock/clock-bindings.txt -[2] Documentation/devicetree/bindings/power/power-domain.yaml -[3] Documentation/devicetree/bindings/thermal/thermal.txt -[4] Documentation/devicetree/bindings/sram/sram.yaml -[5] Documentation/devicetree/bindings/reset/reset.txt -[6] Documentation/devicetree/bindings/regulator/regulator.yaml - -Example: - -sram@50000000 { - compatible = "mmio-sram"; - reg = <0x0 0x50000000 0x0 0x10000>; - - #address-cells = <1>; - #size-cells = <1>; - ranges = <0 0x0 0x50000000 0x10000>; - - cpu_scp_lpri: scp-shmem@0 { - compatible = "arm,scmi-shmem"; - reg = <0x0 0x200>; - }; - - cpu_scp_hpri: scp-shmem@200 { - compatible = "arm,scmi-shmem"; - reg = <0x200 0x200>; - }; -}; - -mailbox@40000000 { - .... - #mbox-cells = <1>; - reg = <0x0 0x40000000 0x0 0x10000>; -}; - -firmware { - - ... - - scmi { - compatible = "arm,scmi"; - mboxes = <&mailbox 0 &mailbox 1>; - mbox-names = "tx", "rx"; - shmem = <&cpu_scp_lpri &cpu_scp_hpri>; - #address-cells = <1>; - #size-cells = <0>; - - scmi_devpd: protocol@11 { - reg = <0x11>; - #power-domain-cells = <1>; - }; - - scmi_dvfs: protocol@13 { - reg = <0x13>; - #clock-cells = <1>; - }; - - scmi_clk: protocol@14 { - reg = <0x14>; - #clock-cells = <1>; - }; - - scmi_sensors0: protocol@15 { - reg = <0x15>; - #thermal-sensor-cells = <1>; - }; - - scmi_reset: protocol@16 { - reg = <0x16>; - #reset-cells = <1>; - }; - - scmi_voltage: protocol@17 { - reg = <0x17>; - - regulators { - regulator_devX: regulator@0 { - reg = <0x0>; - regulator-max-microvolt = <3300000>; - }; - - regulator_devY: regulator@9 { - reg = <0x9>; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <4200000>; - }; - - ... - }; - }; - }; -}; - -cpu@0 { - ... - reg = <0 0>; - clocks = <&scmi_dvfs 0>; -}; - -hdlcd@7ff60000 { - ... - reg = <0 0x7ff60000 0 0x1000>; - clocks = <&scmi_clk 4>; - power-domains = <&scmi_devpd 1>; - resets = <&scmi_reset 10>; -}; - -thermal-zones { - soc_thermal { - polling-delay-passive = <100>; - polling-delay = <1000>; - /* sensor ID */ - thermal-sensors = <&scmi_sensors0 3>; - ... - }; -}; +See Binding in Linux documentation: +Documentation/devicetree/bindings/firmware/arm,scmi.yaml