From: Christian Marangi <ansuelsmth@gmail.com>
To: Jens Axboe <axboe@kernel.dk>, Jonathan Corbet <corbet@lwn.net>,
Ulf Hansson <ulf.hansson@linaro.org>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Christian Marangi <ansuelsmth@gmail.com>,
INAGAKI Hiroshi <musashino.open@gmail.com>,
Daniel Golle <daniel@makrotopia.org>,
Christian Brauner <brauner@kernel.org>,
Al Viro <viro@zeniv.linux.org.uk>, Ming Lei <ming.lei@redhat.com>,
Jan Kara <jack@suse.cz>, Li Lingfeng <lilingfeng3@huawei.com>,
Christian Heusel <christian@heusel.eu>,
Avri Altman <avri.altman@wdc.com>,
Adrian Hunter <adrian.hunter@intel.com>,
Linus Walleij <linus.walleij@linaro.org>,
Mikko Rapeli <mikko.rapeli@linaro.org>,
Riyan Dhiman <riyandhiman14@gmail.com>,
Jorge Ramirez-Ortiz <jorge@foundries.io>,
Dominique Martinet <dominique.martinet@atmark-techno.com>,
Jens Wiklander <jens.wiklander@linaro.org>,
Christophe JAILLET <christophe.jaillet@wanadoo.fr>,
Li Zhijian <lizhijian@fujitsu.com>,
linux-block@vger.kernel.org, linux-doc@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-mmc@vger.kernel.org,
devicetree@vger.kernel.org, Lorenzo Bianconi <lorenzo@kernel.org>,
Miquel Raynal <miquel.raynal@bootlin.com>,
upstream@airoha.com
Subject: [PATCH v5 6/6] dt-bindings: mmc: Document support for partition table in mmc-card
Date: Wed, 2 Oct 2024 00:18:58 +0200 [thread overview]
Message-ID: <20241001221931.9309-7-ansuelsmth@gmail.com> (raw)
In-Reply-To: <20241001221931.9309-1-ansuelsmth@gmail.com>
Document support for defining a partition table in the mmc-card node.
This is needed if the eMMC doesn't have a partition table written and
the bootloader of the device load data by using absolute offset of the
block device. This is common on embedded device that have eMMC installed
to save space and have non removable block devices.
If an OF partition table is detected, any partition table written in the
eMMC will be ignored and won't be parsed.
eMMC provide a generic disk for user data and if supported (JEDEC 4.4+)
also provide two additional disk ("boot1" and "boot2") for special usage
of boot operation where normally is stored the bootloader or boot info.
New JEDEC version also supports up to 4 GP partition for other usage
called "gp1", "gp2", "gp3", "gp4".
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
---
.../devicetree/bindings/mmc/mmc-card.yaml | 52 +++++++++++++++++++
1 file changed, 52 insertions(+)
diff --git a/Documentation/devicetree/bindings/mmc/mmc-card.yaml b/Documentation/devicetree/bindings/mmc/mmc-card.yaml
index fd347126449a..1d91d4272de0 100644
--- a/Documentation/devicetree/bindings/mmc/mmc-card.yaml
+++ b/Documentation/devicetree/bindings/mmc/mmc-card.yaml
@@ -13,6 +13,10 @@ description: |
This documents describes the devicetree bindings for a mmc-host controller
child node describing a mmc-card / an eMMC.
+ It's possible to define a fixed partition table for an eMMC for the user
+ partition, the 2 BOOT partition (boot1/2) and the 4 GP (gp1/2/3/4) if supported
+ by the eMMC.
+
properties:
compatible:
const: mmc-card
@@ -26,6 +30,24 @@ properties:
Use this to indicate that the mmc-card has a broken hpi
implementation, and that hpi should not be used.
+patternProperties:
+ "^partitions(-boot[12]|-gp[14])?$":
+ $ref: /schemas/mtd/partitions/partitions.yaml
+
+ patternProperties:
+ "^partition@[0-9a-f]+$":
+ $ref: /schemas/mtd/partitions/partition.yaml
+
+ properties:
+ reg:
+ description: Must be multiple of 512 as it's converted
+ internally from bytes to SECTOR_SIZE (512 bytes)
+
+ required:
+ - reg
+
+ unevaluatedProperties: false
+
required:
- compatible
- reg
@@ -42,6 +64,36 @@ examples:
compatible = "mmc-card";
reg = <0>;
broken-hpi;
+
+ partitions {
+ compatible = "fixed-partitions";
+
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "kernel"; /* Kernel */
+ reg = <0x0 0x2000000>; /* 32 MB */
+ };
+
+ partition@2000000 {
+ label = "rootfs";
+ reg = <0x2000000 0x40000000>; /* 1GB */
+ };
+ };
+
+ partitions-boot1 {
+ compatible = "fixed-partitions";
+
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "bl";
+ reg = <0x0 0x2000000>; /* 32MB */
+ read-only;
+ };
+ };
};
};
--
2.45.2
next prev parent reply other threads:[~2024-10-01 22:20 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-01 22:18 [PATCH v5 0/6] block: partition table OF support Christian Marangi
2024-10-01 22:18 ` [PATCH v5 1/6] block: add support for defining read-only partitions Christian Marangi
2024-10-01 22:18 ` [PATCH v5 2/6] docs: block: Document support for read-only partition in cmdline part Christian Marangi
2024-10-01 22:18 ` [PATCH v5 3/6] block: introduce device_add_of_disk() Christian Marangi
2024-10-02 8:40 ` Christoph Hellwig
2024-10-02 8:46 ` Christian Marangi
2024-10-02 9:04 ` Christoph Hellwig
2024-10-01 22:18 ` [PATCH v5 4/6] mmc: block: attach partitions fwnode if found in mmc-card Christian Marangi
2024-10-02 13:59 ` Linus Walleij
2024-10-01 22:18 ` [PATCH v5 5/6] block: add support for partition table defined in OF Christian Marangi
2024-10-02 8:43 ` Christoph Hellwig
2024-10-01 22:18 ` Christian Marangi [this message]
2024-10-02 14:01 ` [PATCH v5 6/6] dt-bindings: mmc: Document support for partition table in mmc-card Linus Walleij
2024-10-02 21:07 ` Rob Herring (Arm)
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=20241001221931.9309-7-ansuelsmth@gmail.com \
--to=ansuelsmth@gmail.com \
--cc=adrian.hunter@intel.com \
--cc=avri.altman@wdc.com \
--cc=axboe@kernel.dk \
--cc=brauner@kernel.org \
--cc=christian@heusel.eu \
--cc=christophe.jaillet@wanadoo.fr \
--cc=conor+dt@kernel.org \
--cc=corbet@lwn.net \
--cc=daniel@makrotopia.org \
--cc=devicetree@vger.kernel.org \
--cc=dominique.martinet@atmark-techno.com \
--cc=jack@suse.cz \
--cc=jens.wiklander@linaro.org \
--cc=jorge@foundries.io \
--cc=krzk+dt@kernel.org \
--cc=lilingfeng3@huawei.com \
--cc=linus.walleij@linaro.org \
--cc=linux-block@vger.kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mmc@vger.kernel.org \
--cc=lizhijian@fujitsu.com \
--cc=lorenzo@kernel.org \
--cc=mikko.rapeli@linaro.org \
--cc=ming.lei@redhat.com \
--cc=miquel.raynal@bootlin.com \
--cc=musashino.open@gmail.com \
--cc=riyandhiman14@gmail.com \
--cc=robh@kernel.org \
--cc=ulf.hansson@linaro.org \
--cc=upstream@airoha.com \
--cc=viro@zeniv.linux.org.uk \
/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 NNTP newsgroup(s).