aboutsummaryrefslogtreecommitdiff
path: root/platform/generic/platform.c
diff options
context:
space:
mode:
authorSamuel Holland <samuel.holland@sifive.com>2024-11-11 14:02:45 -0800
committerAnup Patel <anup@brainfault.org>2024-11-28 17:09:17 +0530
commitdf1c1000014049d95d65de831f9015a2dcf9fa34 (patch)
tree09ada6ab220ee86c1169a85777c32f2f2a6a1c47 /platform/generic/platform.c
parent23ef9c5f00b81cffbbf7ff6894f241fad07ee4b7 (diff)
downloadopensbi-df1c1000014049d95d65de831f9015a2dcf9fa34.zip
opensbi-df1c1000014049d95d65de831f9015a2dcf9fa34.tar.gz
opensbi-df1c1000014049d95d65de831f9015a2dcf9fa34.tar.bz2
treewide: Make carray arrays const and NULL-terminated
This allows the compiler to generate significantly better code, because it does not have to maintain either the loop counter or loop limit. Plus there are half as many symbols to relocate. This also simplifies passing carray arrays to helper functions. Signed-off-by: Samuel Holland <samuel.holland@sifive.com> Reviewed-by: Anup Patel <anup@brainfault.org>
Diffstat (limited to 'platform/generic/platform.c')
-rw-r--r--platform/generic/platform.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/platform/generic/platform.c b/platform/generic/platform.c
index 768b9b6..fb074d4 100644
--- a/platform/generic/platform.c
+++ b/platform/generic/platform.c
@@ -30,8 +30,7 @@
#include <sbi_utils/serial/semihosting.h>
/* List of platform override modules generated at compile time */
-extern const struct platform_override *platform_override_modules[];
-extern unsigned long platform_override_modules_size;
+extern const struct platform_override *const platform_override_modules[];
static const struct platform_override *generic_plat = NULL;
static const struct fdt_match *generic_plat_match = NULL;
@@ -42,7 +41,7 @@ static void fw_platform_lookup_special(const void *fdt, int root_offset)
const struct fdt_match *match;
int pos;
- for (pos = 0; pos < platform_override_modules_size; pos++) {
+ for (pos = 0; platform_override_modules[pos]; pos++) {
plat = platform_override_modules[pos];
if (!plat->match_table)
continue;