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 v12 1/3] dt-bindings: mtd: Describe MTD partitions concatenation
Date: Tue, 11 Feb 2025 15:29:28 -0600 [thread overview]
Message-ID: <20250211212928.GA1188800-robh@kernel.org> (raw)
In-Reply-To: <20250205133730.273985-2-amit.kumar-mahapatra@amd.com>
On Wed, Feb 05, 2025 at 07:07:28PM +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].
>
> Introduce new DT property to specify which partitions are concatenated to
> each other.
>
> flash@0 {
> reg = <0>;
> partitions {
> compatible = "fixed-partitions";
> part-concat = <&flash0_part1>, <&flash1_part0>;
>
> flash0_part0: part0@0 {
> label = "part0_0";
> reg = <0x0 0x800000>;
> };
>
> flash0_part1: part1@800000 {
> label = "part0_1";
> reg = <0x800000 0x800000>;
> };
> };
> };
>
> flash@1 {
> reg = <1>;
> partitions {
> compatible = "fixed-partitions";
>
> flash1_part0: part1@0 {
> label = "part1_0";
> reg = <0x0 0x800000>;
> };
>
> flash1_part1: part1@800000 {
> label = "part1_1";
> reg = <0x800000 0x800000>;
> };
> };
> };
>
> The partitions that gets created are
> part0_0
> part1_1
> part0_1-part1_0-concat
'part-concat' doesn't work if you have multiple sets of partitions you
want to concatenate.
I think you need something like 'prev-partition' or 'next-partition' in
the partition nodes to create a linked list of partitions. Hopefully,
you don't need both properties, but you do have to scan everything to
figure out which ones are concatenated or not. For example, no property
can mean not concatenated or last partition if you use 'next-partition'.
Rob
next prev parent reply other threads:[~2025-02-11 21:29 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-05 13:37 [PATCH v12 0/3] mtd: Add support for stacked memories Amit Kumar Mahapatra
2025-02-05 13:37 ` [PATCH v12 1/3] dt-bindings: mtd: Describe MTD partitions concatenation Amit Kumar Mahapatra
2025-02-11 21:29 ` Rob Herring [this message]
2025-02-12 8:25 ` Miquel Raynal
2025-02-12 16:06 ` Rob Herring
2025-02-12 16:18 ` Miquel Raynal
2025-02-18 21:39 ` Rob Herring
2025-02-19 8:36 ` Miquel Raynal
2025-02-05 13:37 ` [PATCH v12 2/3] mtd: Move struct mtd_concat definition to header file Amit Kumar Mahapatra
2025-02-05 13:37 ` [PATCH v12 3/3] mtd: Add driver for concatenating devices Amit Kumar Mahapatra
2025-02-05 16:23 ` Markus Elfring
2025-03-18 15:53 ` Miquel Raynal
2025-03-19 6:17 ` Mahapatra, Amit Kumar
2025-03-19 8:21 ` Miquel Raynal
2025-04-30 14:18 ` Mahapatra, Amit Kumar
2025-05-12 10:01 ` Miquel Raynal
2025-05-13 14:45 ` Mahapatra, Amit Kumar
2025-05-16 14:06 ` Miquel Raynal
2025-05-21 6:13 ` Mahapatra, Amit Kumar
2025-05-26 8:10 ` Miquel Raynal
2025-05-26 14:27 ` Mahapatra, Amit Kumar
2025-05-26 14:39 ` Miquel Raynal
2025-05-26 15:01 ` Mahapatra, Amit Kumar
2025-05-27 8:21 ` Miquel Raynal
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=20250211212928.GA1188800-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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox