[PATCH 2/2] xload: be more flexible when searching for second stage bootloader.
Vicente Bergas
vicencb at gmail.com
Thu Oct 1 16:08:39 PDT 2015
A first stage bootloader can read fat and ext4 filesystems, and
even both can be compiled-in at the same time.
But then xload has a hardcoded fat filesystem mount option which
renders ext4 unusable.
This patch tries to mount it as ext4 if the fat attempt fails.
Then, a typical use case of an ext4 formatted filesystem
is it to be a standard linux filesystem, which contains
boot-related files in /boot. So, when searching for the second stage
bootloader, try /boot/barebox.bin after not finding it in /barebox.bin
Signed-off-by: Vicente Bergas <vicencb at gmail.com>
---
arch/arm/mach-omap/xload.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/arch/arm/mach-omap/xload.c b/arch/arm/mach-omap/xload.c
index ebcbcbc..8805930 100644
--- a/arch/arm/mach-omap/xload.c
+++ b/arch/arm/mach-omap/xload.c
@@ -117,7 +117,7 @@ static void *omap_xload_boot_mmc(void)
partname = asprintf("%s.0", diskdev);
- ret = mount(partname, "fat", "/", NULL);
+ ret = mount(partname, NULL, "/", NULL);
if (ret) {
printf("Unable to mount %s (%d)\n", partname, ret);
@@ -128,6 +128,8 @@ static void *omap_xload_boot_mmc(void)
free(partname);
buf = read_file("/barebox.bin", &len);
+ if (!buf)
+ buf = read_file("/boot/barebox.bin", &len);
if (!buf) {
printf("could not read barebox.bin from sd card\n");
return NULL;
--
2.6.0
More information about the barebox
mailing list