Linux-Doc Archive mirror
 help / color / mirror / Atom feed
From: Rob Herring <robh@kernel.org>
To: "Peng Fan (OSS)" <peng.fan@oss.nxp.com>
Cc: Jonathan Corbet <corbet@lwn.net>, Shawn Guo <shawnguo@kernel.org>,
	Sascha Hauer <s.hauer@pengutronix.de>,
	Pengutronix Kernel Team <kernel@pengutronix.de>,
	Fabio Estevam <festevam@gmail.com>,
	Krzysztof Kozlowski <krzk+dt@kernel.org>,
	Conor Dooley <conor+dt@kernel.org>,
	Sudeep Holla <sudeep.holla@arm.com>,
	Cristian Marussi <cristian.marussi@arm.com>,
	Peng Fan <peng.fan@nxp.com>,
	linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
	imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org,
	devicetree@vger.kernel.org
Subject: Re: [PATCH v3 2/6] dt-bindings: firmware: add i.MX95 SCMI Extension protocol
Date: Fri, 12 Apr 2024 08:34:00 -0500	[thread overview]
Message-ID: <20240412133400.GA2282201-robh@kernel.org> (raw)
In-Reply-To: <20240412-imx95-bbm-misc-v2-v3-2-4380a4070980@nxp.com>

On Fri, Apr 12, 2024 at 06:47:08PM +0800, Peng Fan (OSS) wrote:
> From: Peng Fan <peng.fan@nxp.com>
> 
> Add i.MX SCMI Extension protocols bindings for:
>  - Battery Backed Module(BBM) Protocol
>    This contains persistent storage (GPR), an RTC, and the ON/OFF button.
>    The protocol can also provide access to similar functions implemented via
>    external board components.
>  - MISC Protocol.
>    This includes controls that are misc settings/actions that must be exposed
>    from the SM to agents. They are device specific and are usually define to
>    access bit fields in various mix block control modules, IOMUX_GPR, and other
>    GPR/CSR owned by the SM.
> 
> Signed-off-by: Peng Fan <peng.fan@nxp.com>
> ---
>  .../devicetree/bindings/firmware/arm,scmi.yaml     | 21 +++++++++++++
>  .../bindings/firmware/nxp,imx95-scmi.yaml          | 36 ++++++++++++++++++++++
>  2 files changed, 57 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
> index 93fb7d05f849..fa2cc910c485 100644
> --- a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
> +++ b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
> @@ -247,6 +247,27 @@ properties:
>        reg:
>          const: 0x18
>  
> +  protocol@81:
> +    $ref: '#/$defs/protocol-node'
> +    unevaluatedProperties: false
> +
> +    properties:
> +      reg:
> +        const: 0x81
> +
> +  protocol@84:
> +    type: object
> +    anyOf:
> +      - allOf:
> +          - $ref: /schemas/firmware/nxp,imx95-scmi.yaml
> +          - $ref: '#/$defs/protocol-node'

If you put the ref under the protocol node, then it's 1 schema file per 
protocol per vendor. Also, we then have to list every possible protocol 
node here, and every one listed here will be valid for every vendor.  
What we discussed is putting the list of vendor protocol schemas at the 
top-level here and then the vendor schemas can list out all the protocol 
nodes.

Also, move "$ref: '#/$defs/protocol-node'" to nxp,imx95-scmi.yaml.

> +
> +    unevaluatedProperties: false
> +
> +    properties:
> +      reg:
> +        const: 0x84
> +
>  additionalProperties: false
>  
>  $defs:
> diff --git a/Documentation/devicetree/bindings/firmware/nxp,imx95-scmi.yaml b/Documentation/devicetree/bindings/firmware/nxp,imx95-scmi.yaml
> new file mode 100644
> index 000000000000..b84c4a53b78a
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/firmware/nxp,imx95-scmi.yaml
> @@ -0,0 +1,36 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +# Copyright 2024 NXP
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/firmware/nxp,imx95-scmi.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: i.MX95 System Control and Management Interface(SCMI) Vendor Protocols Extension
> +
> +maintainers:
> +  - Peng Fan <peng.fan@nxp.com>
> +
> +properties:
> +  nxp,wakeup-sources:
> +    description:
> +      Each entry consists of 2 integers, represents the source and electric signal edge
> +    items:
> +      items:
> +        - description: the wakeup source
> +        - description: the wakeup electric signal edge
> +    minItems: 1
> +    maxItems: 32
> +    $ref: /schemas/types.yaml#/definitions/uint32-matrix
> +
> +if:
> +  properties:
> +    reg:
> +      const: 0x84

This schema is only included from protocol@84 node, so how can this be 
false?

> +then:
> +  properties:
> +    nxp,wakeup-sources: true
> +else:
> +  properties:
> +    nxp,wakeup-sources: false
> +
> +additionalProperties: true
> 
> -- 
> 2.37.1
> 

  reply	other threads:[~2024-04-12 13:34 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-04-12 10:47 [PATCH v3 0/6] firmware: support i.MX95 SCMI BBM/MISC Extenstion Peng Fan (OSS)
2024-04-12 10:47 ` [PATCH v3 1/6] Documentation: firmware-guide: add NXP i.MX95 SCMI documentation Peng Fan (OSS)
2024-04-24  3:11   ` Peng Fan
2024-04-12 10:47 ` [PATCH v3 2/6] dt-bindings: firmware: add i.MX95 SCMI Extension protocol Peng Fan (OSS)
2024-04-12 13:34   ` Rob Herring [this message]
2024-04-12 13:50     ` Peng Fan
2024-04-16 13:07       ` Rob Herring
2024-04-16 13:19         ` Peng Fan
2024-04-12 10:47 ` [PATCH v3 3/6] firmware: arm_scmi: add initial support for i.MX BBM protocol Peng Fan (OSS)
2024-04-12 10:47 ` [PATCH v3 4/6] firmware: arm_scmi: add initial support for i.MX MISC protocol Peng Fan (OSS)
2024-04-12 10:47 ` [PATCH v3 5/6] firmware: imx: support BBM module Peng Fan (OSS)
2024-04-12 10:47 ` [PATCH v3 6/6] firmware: imx: add i.MX95 MISC driver Peng Fan (OSS)

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240412133400.GA2282201-robh@kernel.org \
    --to=robh@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=corbet@lwn.net \
    --cc=cristian.marussi@arm.com \
    --cc=devicetree@vger.kernel.org \
    --cc=festevam@gmail.com \
    --cc=imx@lists.linux.dev \
    --cc=kernel@pengutronix.de \
    --cc=krzk+dt@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=peng.fan@nxp.com \
    --cc=peng.fan@oss.nxp.com \
    --cc=s.hauer@pengutronix.de \
    --cc=shawnguo@kernel.org \
    --cc=sudeep.holla@arm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).