x86: fsp: Report correct number of E820 table entries
authorBin Meng <bmeng.cn@gmail.com>
Mon, 28 Sep 2015 09:11:59 +0000 (02:11 -0700)
committerSimon Glass <sjg@chromium.org>
Tue, 29 Sep 2015 04:56:27 +0000 (21:56 -0700)
The logic to calculate the number of E820 table entries is wrong
when walking through the FSP HOB tables. Fix it.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Tested-by: Jian Luo <jian.luo4@boschrexroth.de>
Acked-by: Simon Glass <sjg@chromium.org>
arch/x86/lib/fsp/fsp_dram.c

index 28552fa..e51ca96 100644 (file)
@@ -72,9 +72,10 @@ unsigned install_e820_map(unsigned max_entries, struct e820entry *entries)
                                entries[num_entries].type = E820_RAM;
                        else if (res_desc->type == RES_MEM_RESERVED)
                                entries[num_entries].type = E820_RESERVED;
+
+                       num_entries++;
                }
                hdr = get_next_hob(hdr);
-               num_entries++;
        }
 
        /* Mark PCIe ECAM address range as reserved */