All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rob Herring <robh@kernel.org>
To: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Cc: sboyd@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org,
	matthias.bgg@gmail.com, hsin-hsiung.wang@mediatek.com,
	linux-kernel@vger.kernel.org, devicetree@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-mediatek@lists.infradead.org, kernel@collabora.com
Subject: Re: [PATCH v1 1/5] dt-bindings: spmi: Add MediaTek MT8196 SPMI 2 Arbiter/Controllers
Date: Fri, 27 Jun 2025 15:07:35 -0500	[thread overview]
Message-ID: <20250627200735.GA4094329-robh@kernel.org> (raw)
In-Reply-To: <20250623120047.108961-2-angelogioacchino.delregno@collabora.com>

On Mon, Jun 23, 2025 at 02:00:43PM +0200, AngeloGioacchino Del Regno wrote:
> Document the MT8196 SPMI 2.0 Controller with a new schema.
> This is a MIPI SPMI 2.0 compliant IP, composed of a main arbiter
> and two SPMI master controllers with Request Capable Slave (RCS)
> support.
> 
> Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
> ---
>  .../bindings/spmi/mediatek,mt8196-spmi.yaml   | 138 ++++++++++++++++++
>  1 file changed, 138 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/spmi/mediatek,mt8196-spmi.yaml
> 
> diff --git a/Documentation/devicetree/bindings/spmi/mediatek,mt8196-spmi.yaml b/Documentation/devicetree/bindings/spmi/mediatek,mt8196-spmi.yaml
> new file mode 100644
> index 000000000000..d7eb63e81a5c
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/spmi/mediatek,mt8196-spmi.yaml
> @@ -0,0 +1,138 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/spmi/mediatek,mt8196-spmi.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: MediaTek MT8196 SPMI 2.0 Controller
> +
> +maintainers:
> +  - Hsin-Hsiung Wang <hsin-hsiung.wang@mediatek.com>
> +  - AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
> +
> +description:
> +  The MediaTek MT8196 SoC features a SPMI version 2.0 compliant controller,
> +  with internal wrapping arbitration logic to allow for multiple on-chip
> +  devices to control up to two SPMI buses.
> +  The main arbiter also acts as an interrupt controller, arbitering also
> +  the interrupts coming from SPMI-connected devices into each of the nested
> +  interrupt controllers from any of the present SPMI buses.
> +
> +properties:
> +  compatible:
> +    oneOf:
> +      - enum:
> +          - mediatek,mt8196-spmi
> +      - items:
> +          - enum:
> +              - mediatek,mt6991-spmi
> +          - const: mediatek,mt8196-spmi
> +
> +  ranges: true
> +
> +  '#address-cells':
> +    const: 1
> +
> +  '#size-cells':
> +    const: 1
> +
> +patternProperties:
> +  "^spmi@[a-f0-9]+$":
> +    type: object
> +    $ref: /schemas/spmi/spmi.yaml
> +    unevaluatedProperties: false
> +
> +    properties:
> +      reg:
> +        items:
> +          - description: controller interface registers
> +          - description: spmi master controller registers
> +
> +      reg-names:
> +        items:
> +          - const: pmif
> +          - const: spmimst
> +
> +      clocks:
> +        items:
> +          - description: controller interface system clock
> +          - description: controller interface timer clock
> +          - description: spmi controller master clock
> +
> +      clock-names:
> +        items:
> +          - const: pmif_sys_ck
> +          - const: pmif_tmr_ck
> +          - const: spmimst_clk_mux
> +
> +      interrupts:
> +        maxItems: 1
> +
> +      interrupt-names:
> +        const: rcs
> +
> +      interrupt-controller: true
> +
> +      "#interrupt-cells":
> +        const: 3
> +        description: |
> +          cell 1: slave ID for the requested interrupt (0-15)
> +          cell 2: the requested peripheral interrupt (0-7)
> +          cell 3: interrupt flags indicating level-sense information,
> +                  as defined in dt-bindings/interrupt-controller/irq.h
> +    required:
> +      - reg
> +      - reg-names
> +      - clocks
> +      - clock-names
> +      - interrupts
> +      - interrupt-names
> +      - interrupt-controller
> +      - "#interrupt-cells"
> +
> +required:
> +  - compatible
> +  - ranges
> +  - '#address-cells'
> +  - '#size-cells'
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    #include <dt-bindings/interrupt-controller/arm-gic.h>
> +
> +    soc {
> +      #address-cells = <2>;
> +      #size-cells = <2>;
> +
> +      spmi-arbiter@1c018000 {
> +        compatible = "mediatek,mt8196-spmi";
> +        ranges = <0 0 0x1c018000 0x4900>;
> +        #address-cells = <1>;
> +        #size-cells = <1>;
> +
> +        spmi@0 {
> +          reg = <0 0x900>, <0x4800 0x100>;
> +          reg-names = "pmif", "spmimst";
> +          interrupts-extended = <&pio 292 IRQ_TYPE_LEVEL_HIGH>;
> +          interrupt-names = "rcs";
> +         interrupt-controller;

Indentation error.

Otherwise,

Reviewed-by: Rob Herring (Arm) <robh@kernel.org>

> +          #interrupt-cells = <3>;
> +          clocks = <&pmif_sys>, <&pmif_tmr>, <&spmi_mst>;
> +          clock-names = "pmif_sys_ck", "pmif_tmr_ck", "spmimst_clk_mux";
> +        };
> +
> +        spmi@2000 {
> +          reg = <0x2000 0x900>, <0x4000 0x100>;
> +          reg-names = "pmif", "spmimst";
> +          interrupts-extended = <&pio 291 IRQ_TYPE_LEVEL_HIGH>;
> +          interrupt-names = "rcs";
> +          interrupt-controller;
> +          #interrupt-cells = <3>;
> +          clocks = <&pmif_sys>, <&pmif_tmr>, <&spmi_mst>;
> +          clock-names = "pmif_sys_ck", "pmif_tmr_ck", "spmimst_clk_mux";
> +        };
> +      };
> +    };
> +...
> -- 
> 2.49.0
> 


  reply	other threads:[~2025-06-27 20:10 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-06-23 12:00 [PATCH v1 0/5] SPMI: MediaTek: Add support for multi-bus AngeloGioacchino Del Regno
2025-06-23 12:00 ` [PATCH v1 1/5] dt-bindings: spmi: Add MediaTek MT8196 SPMI 2 Arbiter/Controllers AngeloGioacchino Del Regno
2025-06-27 20:07   ` Rob Herring [this message]
2025-06-30 12:13     ` AngeloGioacchino Del Regno
2025-06-23 12:00 ` [PATCH v1 2/5] spmi: mtk-pmif: Add multi-bus support for SPMI 2.0 AngeloGioacchino Del Regno
2025-06-23 12:00 ` [PATCH v1 3/5] spmi: mtk-pmif: Keep spinlock until read is fully done AngeloGioacchino Del Regno
2025-06-23 12:00 ` [PATCH v1 4/5] spmi: mtk-pmif: Implement Request Capable Slave (RCS) interrupt AngeloGioacchino Del Regno
2025-06-23 12:00 ` [PATCH v1 5/5] spmi: mtk-pmif: Add support for MT8196 SPMI Controller AngeloGioacchino Del Regno
2025-06-24 14:51 ` [PATCH v1 0/5] SPMI: MediaTek: Add support for multi-bus Nícolas F. R. A. Prado

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=20250627200735.GA4094329-robh@kernel.org \
    --to=robh@kernel.org \
    --cc=angelogioacchino.delregno@collabora.com \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=hsin-hsiung.wang@mediatek.com \
    --cc=kernel@collabora.com \
    --cc=krzk+dt@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mediatek@lists.infradead.org \
    --cc=matthias.bgg@gmail.com \
    --cc=sboyd@kernel.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.