mail archive of the barebox mailing list
 help / color / mirror / Atom feed
From: Martin Hollingsworth <Martin.Hollingsworth@itk-engineering.de>
To: "barebox@lists.infradead.org" <barebox@lists.infradead.org>
Subject: How to overwrite an ext partition on eMMC
Date: Mon, 4 Jul 2016 12:32:04 +0000	[thread overview]
Message-ID: <521b64bd91194e5e8e5bdb2bb2f2376f@itk-engineering.de> (raw)

Hello folks,
I'm a little lost when trying to overwrite an ext partition on an eMMC memory inside of barebox. Your help finding the mistake is appreciated.

My Setup:
- Custom board with iMX6, 4GB eMMC and SD card reader (similar to Freescale SabreSD board)
- Using PTXdist to build barebox 2016.05.0 and linux
- The eMMC chip offers wear levelling, so I write a filesystem directly to it (using ptxdist created hd.img file flashed directly)
- The eMMC is partitioned as follows:
0x0, Size 1k --> partition table
0x400, Size 8M --> barebox and barebox_env (offset 0x400 forced by iMX6)
0x800400, Size 1G --> ext filesystem with rootfs and kernel

With this layout so far everything works fine. Now I would like to implement an update mechanism, where barebox erases the complete ext partition and replaces it. Under linux I would use something like dd and let it start at 0x800400. On barebox I have to use memcpy (thanks to Sascha for the hint http://lists.infradead.org/pipermail/barebox/2011-April/003308.html ) and this is where I get stuck.

So I first add partitions so that the memory area is listed under /dev:
devfs_add_partition("mmc3", 0x0, SZ_1K, DEVFS_PARTITION_FIXED, "mmc3.partable"); 
devfs_add_partition("mmc3", SZ_1K, SZ_8M, DEVFS_PARTITION_FIXED, "mmc3.barebox");
devfs_add_partition("mmc3", ( SZ_1K + SZ_8M ), SZ_1G, DEVFS_PARTITION_FIXED, "mmc3.rootfs");

This works for clearing the partitions data using memset:
memset -d /dev/mmc3.rootfs 0x0 0x0 1073741824 

However when I try to copy the root.ext2 filesystem onto this memory area, I can't mount the partition afterwards:
memcpy -s /mnt/sd/root.ext2 -d /dev/mmc3.rootfs 0 536870912
mount /dev/mmc3.rootfs /mnt/mmc/
mount: No such file or directory

I am questioning my approach, as I am not sure if it is correct to write an ext2 file directly to memory. Or am I making some other basic mistake here?

Thanks for your help and cheers,
Martin

--
M.Eng. Martin Hollingsworth
Medical Systems Engineering
 
ITK Engineering AG
Im Speyerer Tal 6
D-76761 Rülzheim
Tel.: +49 7272 7703-510
Fax: +49 7272 7703-100
 
mailto:martin.hollingsworth@itk-engineering.de

_____________________________________________________________
ITK Engineering AG  Im Speyerer Tal 6  76761 Rülzheim
Tel.: +49 7272 7703-0 Fax: +49 7272 7703-100 mailto:info@itk-engineering.de http://www.itk-engineering.de

Vorsitzender des Aufsichtsrats/Chairman of the Supervisory Board: Josef Würth Vorstand/Executive Board: Michael Englert (Vorsitzender), Dr. Helmuth Stahl Sitz der Gesellschaft/Registered Office: 76773 Kuhardt/Pfalz Registergericht/Registered Court: Amtsgericht Landau, HRB 30139 USt.-ID-Nr./VAT-ID-No. DE813165046
 _____________________________________________________________



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

             reply	other threads:[~2016-07-04 12:32 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-07-04 12:32 Martin Hollingsworth [this message]
2016-07-05  6:55 ` Sascha Hauer
2016-07-05  9:32   ` AW: " Martin Hollingsworth
2016-07-05 10:06     ` Sascha Hauer

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=521b64bd91194e5e8e5bdb2bb2f2376f@itk-engineering.de \
    --to=martin.hollingsworth@itk-engineering.de \
    --cc=barebox@lists.infradead.org \
    /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