From: Rob Herring <robh@kernel.org>
To: Amit Kumar Mahapatra <amit.kumar-mahapatra@amd.com>
Cc: miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com,
krzk+dt@kernel.org, conor+dt@kernel.org,
linux-mtd@lists.infradead.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, git@amd.com,
amitrkcian2002@gmail.com
Subject: Re: [PATCH v13 1/3] dt-bindings: mtd: Describe MTD partitions concatenation
Date: Thu, 5 Jun 2025 08:47:31 -0500 [thread overview]
Message-ID: <20250605134731.GA2439158-robh@kernel.org> (raw)
In-Reply-To: <20250603194209.1341374-2-amit.kumar-mahapatra@amd.com>
On Wed, Jun 04, 2025 at 01:12:07AM +0530, Amit Kumar Mahapatra wrote:
> The AMD QSPI controller supports an advanced connection modes called
> Stacked mode which allow the controller to treat two different flashes
> as one storage.
>
> In Stacked connection mode flashes share the same SPI bus, but different CS
> line, controller driver asserts the CS of the flash to which it needs to
> communicate. Stacked mode is a software abstraction rather than a
> controller feature or capability. At any given time, the controller
> communicates with one of the two connected flash devices, as determined by
> the requested address and data length. If an operation starts on one flash
> and ends on the other, the mtd layer needs to split it into two separate
> operations and adjust the data length accordingly. For more information on
> the modes please feel free to go through the controller flash interface
> below [1].
>
> To support stacked mode, the existing MTD concat driver has been extended
> to be more generic, enabling multiple sets of MTD partitions to be
> virtually concatenated, with each set forming a distinct logical MTD
> device.
>
> A new Device Tree property is introduced to facilitate this, containing
> phandles of the partitions to be concatenated with the one where the
> property is defined. This approach supports multiple sets of concatenated
> partitions.
>
> [1] https://docs.amd.com/r/en-US/am011-versal-acap-trm/QSPI-Flash-Device-Interface
>
> Suggested-by: Miquel Raynal <miquel.raynal@bootlin.com>
> Suggested-by: Rob Herring <robh@kernel.org>
> Signed-off-by: Amit Kumar Mahapatra <amit.kumar-mahapatra@amd.com>
> ---
> .../bindings/mtd/partitions/partition.yaml | 18 ++++++++++++++++++
> 1 file changed, 18 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/mtd/partitions/partition.yaml b/Documentation/devicetree/bindings/mtd/partitions/partition.yaml
> index 80d0452a2a33..2ef4bde02cd9 100644
> --- a/Documentation/devicetree/bindings/mtd/partitions/partition.yaml
> +++ b/Documentation/devicetree/bindings/mtd/partitions/partition.yaml
> @@ -57,6 +57,13 @@ properties:
> user space from
> type: boolean
>
> + part-concat-next:
> + description: List of phandles to MTD partitions that need be concatenated
> + with the current partition.
> + $ref: /schemas/types.yaml#/definitions/phandle-array
> + minItems: 1
> + maxItems: 16
Add:
items:
maxItems: 1
Because phandle-array is really a matrix.
> +
> align:
> $ref: /schemas/types.yaml#/definitions/uint32
> minimum: 2
> @@ -138,4 +145,15 @@ examples:
> reg = <0x200000 0x100000>;
> align = <0x4000>;
> };
> +
> + part0: partition@400000 {
> + part-concat-next = <&part1>;
> + label = "part0_0";
> + reg = <0x400000 0x100000>;
> + };
> +
> + part1: partition@800000 {
> + label = "part0_1";
> + reg = <0x800000 0x800000>;
> + };
> };
> --
> 2.34.1
>
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
WARNING: multiple messages have this Message-ID (diff)
From: Rob Herring <robh@kernel.org>
To: Amit Kumar Mahapatra <amit.kumar-mahapatra@amd.com>
Cc: miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com,
krzk+dt@kernel.org, conor+dt@kernel.org,
linux-mtd@lists.infradead.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, git@amd.com,
amitrkcian2002@gmail.com
Subject: Re: [PATCH v13 1/3] dt-bindings: mtd: Describe MTD partitions concatenation
Date: Thu, 5 Jun 2025 08:47:31 -0500 [thread overview]
Message-ID: <20250605134731.GA2439158-robh@kernel.org> (raw)
In-Reply-To: <20250603194209.1341374-2-amit.kumar-mahapatra@amd.com>
On Wed, Jun 04, 2025 at 01:12:07AM +0530, Amit Kumar Mahapatra wrote:
> The AMD QSPI controller supports an advanced connection modes called
> Stacked mode which allow the controller to treat two different flashes
> as one storage.
>
> In Stacked connection mode flashes share the same SPI bus, but different CS
> line, controller driver asserts the CS of the flash to which it needs to
> communicate. Stacked mode is a software abstraction rather than a
> controller feature or capability. At any given time, the controller
> communicates with one of the two connected flash devices, as determined by
> the requested address and data length. If an operation starts on one flash
> and ends on the other, the mtd layer needs to split it into two separate
> operations and adjust the data length accordingly. For more information on
> the modes please feel free to go through the controller flash interface
> below [1].
>
> To support stacked mode, the existing MTD concat driver has been extended
> to be more generic, enabling multiple sets of MTD partitions to be
> virtually concatenated, with each set forming a distinct logical MTD
> device.
>
> A new Device Tree property is introduced to facilitate this, containing
> phandles of the partitions to be concatenated with the one where the
> property is defined. This approach supports multiple sets of concatenated
> partitions.
>
> [1] https://docs.amd.com/r/en-US/am011-versal-acap-trm/QSPI-Flash-Device-Interface
>
> Suggested-by: Miquel Raynal <miquel.raynal@bootlin.com>
> Suggested-by: Rob Herring <robh@kernel.org>
> Signed-off-by: Amit Kumar Mahapatra <amit.kumar-mahapatra@amd.com>
> ---
> .../bindings/mtd/partitions/partition.yaml | 18 ++++++++++++++++++
> 1 file changed, 18 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/mtd/partitions/partition.yaml b/Documentation/devicetree/bindings/mtd/partitions/partition.yaml
> index 80d0452a2a33..2ef4bde02cd9 100644
> --- a/Documentation/devicetree/bindings/mtd/partitions/partition.yaml
> +++ b/Documentation/devicetree/bindings/mtd/partitions/partition.yaml
> @@ -57,6 +57,13 @@ properties:
> user space from
> type: boolean
>
> + part-concat-next:
> + description: List of phandles to MTD partitions that need be concatenated
> + with the current partition.
> + $ref: /schemas/types.yaml#/definitions/phandle-array
> + minItems: 1
> + maxItems: 16
Add:
items:
maxItems: 1
Because phandle-array is really a matrix.
> +
> align:
> $ref: /schemas/types.yaml#/definitions/uint32
> minimum: 2
> @@ -138,4 +145,15 @@ examples:
> reg = <0x200000 0x100000>;
> align = <0x4000>;
> };
> +
> + part0: partition@400000 {
> + part-concat-next = <&part1>;
> + label = "part0_0";
> + reg = <0x400000 0x100000>;
> + };
> +
> + part1: partition@800000 {
> + label = "part0_1";
> + reg = <0x800000 0x800000>;
> + };
> };
> --
> 2.34.1
>
next prev parent reply other threads:[~2025-06-05 14:09 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-03 19:42 [PATCH v13 0/3] mtd: Add support for stacked memories Amit Kumar Mahapatra
2025-06-03 19:42 ` Amit Kumar Mahapatra
2025-06-03 19:42 ` [PATCH v13 1/3] dt-bindings: mtd: Describe MTD partitions concatenation Amit Kumar Mahapatra
2025-06-03 19:42 ` Amit Kumar Mahapatra
2025-06-05 13:47 ` Rob Herring [this message]
2025-06-05 13:47 ` Rob Herring
2025-06-03 19:42 ` [PATCH v13 2/3] mtd: Move struct mtd_concat definition to header file Amit Kumar Mahapatra
2025-06-03 19:42 ` Amit Kumar Mahapatra
2025-06-03 19:42 ` [PATCH v13 3/3] mtd: Add driver for concatenating devices Amit Kumar Mahapatra
2025-06-03 19:42 ` Amit Kumar Mahapatra
2025-06-04 8:21 ` Miquel Raynal
2025-06-04 8:21 ` Miquel Raynal
2025-06-05 4:58 ` Mahapatra, Amit Kumar
2025-06-05 4:58 ` Mahapatra, Amit Kumar
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=20250605134731.GA2439158-robh@kernel.org \
--to=robh@kernel.org \
--cc=amit.kumar-mahapatra@amd.com \
--cc=amitrkcian2002@gmail.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=git@amd.com \
--cc=krzk+dt@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mtd@lists.infradead.org \
--cc=miquel.raynal@bootlin.com \
--cc=richard@nod.at \
--cc=vigneshr@ti.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 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.