forked from Mirrors/opensbi
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>
This commit is contained in:

committed by
Anup Patel

parent
23ef9c5f00
commit
df1c100001
@@ -13,8 +13,7 @@
|
||||
#include <sbi_utils/gpio/fdt_gpio.h>
|
||||
|
||||
/* List of FDT gpio drivers generated at compile time */
|
||||
extern struct fdt_gpio *fdt_gpio_drivers[];
|
||||
extern unsigned long fdt_gpio_drivers_size;
|
||||
extern struct fdt_gpio *const fdt_gpio_drivers[];
|
||||
|
||||
static int fdt_gpio_init(const void *fdt, int nodeoff)
|
||||
{
|
||||
@@ -27,7 +26,7 @@ static int fdt_gpio_init(const void *fdt, int nodeoff)
|
||||
return SBI_EINVAL;
|
||||
|
||||
/* Try all GPIO drivers one-by-one */
|
||||
for (pos = 0; pos < fdt_gpio_drivers_size; pos++) {
|
||||
for (pos = 0; fdt_gpio_drivers[pos]; pos++) {
|
||||
drv = fdt_gpio_drivers[pos];
|
||||
|
||||
match = fdt_match_node(fdt, nodeoff, drv->match_table);
|
||||
|
Reference in New Issue
Block a user