aboutsummaryrefslogtreecommitdiffstats
path: root/recipes/x-load/x-load-git/beagleboard/bb8547fcbc54ecc7a75f9ad45a31042a04d8a2ce.patch
diff options
context:
space:
mode:
authorKoen Kooi <koen@openembedded.org>2010-04-13 22:36:49 +0200
committerKoen Kooi <koen@openembedded.org>2010-04-13 22:37:54 +0200
commitd6db3a4a170fbaae39d77243b5831e72f7642916 (patch)
tree8be52cef1d19f02a85bada0eee62c72f55704b8c /recipes/x-load/x-load-git/beagleboard/bb8547fcbc54ecc7a75f9ad45a31042a04d8a2ce.patch
parent01daac1be0f89f00495f920359edc4b39c7a100f (diff)
downloadopenembedded-d6db3a4a170fbaae39d77243b5831e72f7642916.tar.gz
x-load git: patch beagleboard MLO to be less stupid searching for FAT partitions
Diffstat (limited to 'recipes/x-load/x-load-git/beagleboard/bb8547fcbc54ecc7a75f9ad45a31042a04d8a2ce.patch')
-rw-r--r--recipes/x-load/x-load-git/beagleboard/bb8547fcbc54ecc7a75f9ad45a31042a04d8a2ce.patch35
1 files changed, 35 insertions, 0 deletions
diff --git a/recipes/x-load/x-load-git/beagleboard/bb8547fcbc54ecc7a75f9ad45a31042a04d8a2ce.patch b/recipes/x-load/x-load-git/beagleboard/bb8547fcbc54ecc7a75f9ad45a31042a04d8a2ce.patch
new file mode 100644
index 0000000000..d447fd0b78
--- /dev/null
+++ b/recipes/x-load/x-load-git/beagleboard/bb8547fcbc54ecc7a75f9ad45a31042a04d8a2ce.patch
@@ -0,0 +1,35 @@
+From bb8547fcbc54ecc7a75f9ad45a31042a04d8a2ce Mon Sep 17 00:00:00 2001
+From: Laine Walker-Avina <lwalkera@ieee.org>
+Date: Tue, 13 Apr 2010 13:27:31 -0700
+Subject: [PATCH] FAT: Find the start of the first partition in a non-hardcoded way
+
+---
+ fs/fat/fat.c | 12 +++++-------
+ 1 files changed, 5 insertions(+), 7 deletions(-)
+
+diff --git a/fs/fat/fat.c b/fs/fat/fat.c
+index eb754c0..c6bdb13 100644
+--- a/fs/fat/fat.c
++++ b/fs/fat/fat.c
+@@ -145,13 +145,11 @@ fat_register_device(block_dev_desc_t *dev_desc, int part_no)
+ return -1;
+ }
+ #else
+- /* FIXME we need to determine the start block of the
+- * partition where the DOS FS resides. This can be done
+- * by using the get_partition_info routine. For this
+- * purpose the libpart must be included.
+- */
+- part_offset=63;
+- //part_offset=0;
++ part_offset = buffer[DOS_PART_TBL_OFFSET+8] |
++ buffer[DOS_PART_TBL_OFFSET+9] <<8 |
++ buffer[DOS_PART_TBL_OFFSET+10]<<16 |
++ buffer[DOS_PART_TBL_OFFSET+11]<<24;
++
+ cur_part = 1;
+ #endif
+ }
+--
+1.6.1
+