mail archive of the barebox mailing list
 help / color / mirror / Atom feed
* [PATCH] environment: bypass overlap check for mtd devices
@ 2018-10-12  7:03 Sascha Hauer
  0 siblings, 0 replies; only message in thread
From: Sascha Hauer @ 2018-10-12  7:03 UTC (permalink / raw)
  To: Barebox List; +Cc: Ladislav Michl

For mtd devices the overlap check does not work as expected for two
reasons. First is that cdev->offset is 0 for mtd partitions, instead
cdev->mtd->master_offset has to be used. That could be fixed easily.
Second on NAND devices the environment is on the bb devices and not
on the raw nand devices which means we would need something to get
the mtd device from the bb device before doing the check.

Both issues are fixable, but the check was mainly done to catch cases
when an environment partition is created in the free space before the
first MBR/GPT partition on SD/MMC devices, so leave out the mtd case
for now.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
 common/startup.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/common/startup.c b/common/startup.c
index 5793ea28ac..28edee4fce 100644
--- a/common/startup.c
+++ b/common/startup.c
@@ -91,6 +91,9 @@ static int check_overlap(const char *path)
 	if (!cenv)
 		return -EINVAL;
 
+	if (cenv->mtd)
+		return 0;
+
 	cdisk = cenv->master;
 
 	if (!cdisk)
-- 
2.19.0


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2018-10-12  7:03 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-10-12  7:03 [PATCH] environment: bypass overlap check for mtd devices Sascha Hauer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox