arm: dart6ul: fix ddr size macro
authorMarc Ferland <ferlandm@amotus.ca>
Mon, 4 Jan 2021 19:07:53 +0000 (14:07 -0500)
committerStefano Babic <sbabic@denx.de>
Sat, 23 Jan 2021 12:47:50 +0000 (13:47 +0100)
The previous macro was off by one bit and so we were getting a ddr
size which was twice the real size. This commit refactors the macro so
it returns the right size in _bytes_ and modifies the printf call so the
size is still printed in MiB.

Signed-off-by: Marc Ferland <ferlandm@amotus.ca>
board/variscite/dart_6ul/dart_6ul.c

index d997d81..764aaa8 100644 (file)
@@ -180,7 +180,7 @@ struct dart6ul_info {
 #define DART6UL_INFO_STORAGE_GET(n) ((n) & 0x3)
 #define DART6UL_INFO_WIFI_GET(n)    ((n) >> 2 & 0x1)
 #define DART6UL_INFO_REV_GET(n)     ((n) >> 3 & 0x3)
-#define DART6UL_DDRSIZE_IN_MIB(n)   ((n) << 8)
+#define DART6UL_DDRSIZE(n)          ((n) * SZ_128M)
 #define DART6UL_INFO_MAGIC          0x32524156
 
 static const char *som_info_storage_to_str(u8 som_info)
@@ -253,7 +253,7 @@ int checkboard(void)
               info->date,
               som_info_storage_to_str(info->som_info),
               DART6UL_INFO_WIFI_GET(info->som_info) ? "yes" : "no",
-              DART6UL_DDRSIZE_IN_MIB(info->ddr_size),
+              DART6UL_DDRSIZE(info->ddr_size) / SZ_1M,
               som_info_rev_to_str(info->som_info));
 
        free(info);