From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from metis.ext.pengutronix.de ([2001:67c:670:201:290:27ff:fe1d:cc33]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1gWH6T-0007AB-Od for barebox@lists.infradead.org; Mon, 10 Dec 2018 08:39:54 +0000 Date: Mon, 10 Dec 2018 09:39:37 +0100 From: Sascha Hauer Message-ID: <20181210083937.7edjbvfih57shwrz@pengutronix.de> References: <20181207063433.7623-1-a.fatoum@pengutronix.de> <20181207063433.7623-4-a.fatoum@pengutronix.de> <20181207074302.babciy2rcwjvh2iq@pengutronix.de> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "barebox" Errors-To: barebox-bounces+u.kleine-koenig=pengutronix.de@lists.infradead.org Subject: Re: [PATCH 4/4] of: partition: add no-fixup device tree property To: Ahmad Fatoum Cc: barebox@lists.infradead.org On Fri, Dec 07, 2018 at 09:38:37AM +0100, Ahmad Fatoum wrote: > Hello Sascha, > > On 7/12/18 08:43, Sascha Hauer wrote: > > On Fri, Dec 07, 2018 at 07:34:37AM +0100, Ahmad Fatoum wrote: > >> Users can have reasons to inhibit barebox from fixing up partitions nodes > >> into the kernel device tree, like if it's a boot0-partitions node, which > >> doesn't have a kernel binding. > >> Allow users to specify a no-fixup property to indicate so. > >> > >> Signed-off-by: Ahmad Fatoum > >> --- > >> Documentation/devicetree/bindings/mtd/partition.txt | 3 +++ > >> drivers/of/partition.c | 9 +++++++++ > >> fs/devfs-core.c | 1 + > >> 3 files changed, 13 insertions(+) > >> > >> diff --git a/Documentation/devicetree/bindings/mtd/partition.txt b/Documentation/devicetree/bindings/mtd/partition.txt > >> index 4288a82437b4..a2e810276a9c 100644 > >> --- a/Documentation/devicetree/bindings/mtd/partition.txt > >> +++ b/Documentation/devicetree/bindings/mtd/partition.txt > >> @@ -4,6 +4,8 @@ In addition to the upstream binding, another property is added: > >> > >> Optional properties: > >> - partuuid : The partition UUID for this partition. > >> +- no-fixup : empty property, indicates that barebox shouldn't fix up the > >> + containing node into the kernel device tree. > >> > >> Additionally, barebox also supports partitioning the eMMC boot partitions if > >> the partition table node is named appropriately: > >> @@ -28,6 +30,7 @@ flash@0 { > >> emmc@1 { > >> boot0-partitions { > >> compatible = "fixed-partitions"; > >> + no-fixup; > >> #address-cells = <1>; > >> #size-cells = <1>; > > > > I am not so happy that we need an extra device tree property just to let > > barebox know that it shouldn't try a fixup for the boot partitions. > While my use case are the emmc boot-partitions, the binding is applicable to > all fixed-partitions. Before, there has only been an universal > of_partition_binding device parameter to turn off fixups. > > > > > In mci_register_partition() we unconditionally call > > of_partitions_register_fixup() even for the boot partitions. Wouldn't it > > be sufficient to just skip the call for the boot partitions? > > To expand on my reasoning, there are 3 device trees in arch/arm/dts that > use boot0-partitions. Their users would have had barebox print scary warnings > about their use on fixup unless they: > 1) disabled partition fixups completely > 2) added a boot0-partitions node to the kernel device tree, either unused > or for use by custom tooling > > The patch addresses both points, there is a device tree property to > selectively disable fixup and the second use case isn't broken, > unlike an unconditional (non-backward-compatible) skipping of fixups > for the boot partitions. Still why do we need a device tree property when all we have to do is to not call of_partitions_register_fixup() for the boot partitions? sascha -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | _______________________________________________ barebox mailing list barebox@lists.infradead.org http://lists.infradead.org/mailman/listinfo/barebox