[coreboot-gerrit] New patch to review for coreboot: ifdtool: promote max_regions as global
Alexander Couzens (lynxis@fe80.eu)
gerrit at coreboot.org
Sat Oct 8 00:41:47 CEST 2016
Alexander Couzens (lynxis at fe80.eu) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/16934
-gerrit
commit 403c68017ff03b24415fdbe1faa7393822c289f0
Author: Alexander Couzens <lynxis at fe80.eu>
Date: Sat Oct 8 00:29:15 2016 +0200
ifdtool: promote max_regions as global
max_regions is set to the maximal regions based on the ifd version
Change-Id: I9fa5a4565f4dbd67b5c6df97756311560e2a18bc
Signed-off-by: Alexander Couzens <lynxis at fe80.eu>
---
util/ifdtool/ifdtool.c | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git a/util/ifdtool/ifdtool.c b/util/ifdtool/ifdtool.c
index 43054e0..b8f409a 100644
--- a/util/ifdtool/ifdtool.c
+++ b/util/ifdtool/ifdtool.c
@@ -28,6 +28,7 @@
#endif
static int ifd_version;
+static int max_regions = 0;
static int selected_chip = 0;
static const struct region_name region_names[MAX_REGIONS] = {
@@ -85,9 +86,11 @@ static void check_ifd_version(char *image, int size)
switch (read_freq) {
case SPI_FREQUENCY_20MHZ:
ifd_version = IFD_VERSION_1;
+ max_regions = MAX_REGIONS_OLD;
break;
case SPI_FREQUENCY_17MHZ:
ifd_version = IFD_VERSION_2;
+ max_regions = MAX_REGIONS;
break;
default:
fprintf(stderr, "Unknown descriptor version: %d\n",
@@ -653,7 +656,6 @@ static void dump_layout(char *image, int size, char *layout_fname)
static void write_regions(char *image, int size)
{
int i;
- int max_regions = MAX_REGIONS;
fdbar_t *fdb = find_fd(image, size);
if (!fdb)
@@ -662,10 +664,6 @@ static void write_regions(char *image, int size)
frba_t *frba =
(frba_t *) (image + (((fdb->flmap0 >> 16) & 0xff) << 4));
- /* Older descriptor images have fewer regions */
- if (ifd_version < IFD_VERSION_2)
- max_regions = MAX_REGIONS_OLD;
-
for (i = 0; i < max_regions; i++) {
region_t region = get_region(frba, i);
dump_region(i, frba);
More information about the coreboot-gerrit
mailing list