summaryrefslogtreecommitdiffstats
path: root/sys/arm/mv
diff options
context:
space:
mode:
authorwma <wma@FreeBSD.org>2016-02-29 09:22:39 +0000
committerwma <wma@FreeBSD.org>2016-02-29 09:22:39 +0000
commit6dd3382ff8741c8167dd44d3f94b1c162da3be3a (patch)
tree8f473b7ed4691fe398e44ade68a0d37d22739240 /sys/arm/mv
parent62517cc3146261ea135285ef32ce74057c20648a (diff)
downloadFreeBSD-src-6dd3382ff8741c8167dd44d3f94b1c162da3be3a.zip
FreeBSD-src-6dd3382ff8741c8167dd44d3f94b1c162da3be3a.tar.gz
Fix fdt_get_mem_regions() to work with 64-bit addresses
Use u_long instead of uint32_t variables to avoid overflow in case of PA space bigger than 32-bit. Obtained from: Semihalf Submitted by: Michal Stanek <mst@semihalf.com> Sponsored by: Annapurna Labs Approved by: cognet (mentor) Reviewed by: andrew, br, wma Differential revision: https://reviews.freebsd.org/D5393
Diffstat (limited to 'sys/arm/mv')
-rw-r--r--sys/arm/mv/mv_common.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/arm/mv/mv_common.c b/sys/arm/mv/mv_common.c
index ec55357..d58fb39f 100644
--- a/sys/arm/mv/mv_common.c
+++ b/sys/arm/mv/mv_common.c
@@ -917,7 +917,8 @@ decode_win_sdram_fixup(void)
{
struct mem_region mr[FDT_MEM_REGIONS];
uint8_t window_valid[MV_WIN_DDR_MAX];
- int mr_cnt, memsize, err, i, j;
+ int mr_cnt, err, i, j;
+ u_long memsize;
uint32_t valid_win_num = 0;
/* Grab physical memory regions information from device tree. */
OpenPOWER on IntegriCloud