diff options
author | Masahiro Yamada <yamada.masahiro@socionext.com> | 2017-01-21 09:05:27 (GMT) |
---|---|---|
committer | Masahiro Yamada <yamada.masahiro@socionext.com> | 2017-01-22 07:49:33 (GMT) |
commit | ee8ef5afa87bf37d493bf7be9d475e54d6c2ebee (patch) | |
tree | 26698081909c04e0f0c3f1d1a664d83e60ec0884 /arch/arm/mach-uniphier/board_init.c | |
parent | e27d6c7d328caf75bd7680109bc6610bc681f46e (diff) | |
download | u-boot-ee8ef5afa87bf37d493bf7be9d475e54d6c2ebee.tar.xz |
ARM: uniphier: add macro to generate SoC data look-up function
There are similar functions that look up SoC data by the SoC ID.
The new macro UNIPHIER_DEFINE_SOCDATA_FUNC will be helpful to
avoid the code duplication.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Diffstat (limited to 'arch/arm/mach-uniphier/board_init.c')
-rw-r--r-- | arch/arm/mach-uniphier/board_init.c | 20 |
1 files changed, 3 insertions, 17 deletions
diff --git a/arch/arm/mach-uniphier/board_init.c b/arch/arm/mach-uniphier/board_init.c index 413b338..ac7e3a6 100644 --- a/arch/arm/mach-uniphier/board_init.c +++ b/arch/arm/mach-uniphier/board_init.c @@ -169,32 +169,18 @@ static const struct uniphier_initdata uniphier_initdata[] = { }, #endif }; - -static const struct uniphier_initdata *uniphier_get_initdata( - unsigned int soc_id) -{ - int i; - - for (i = 0; i < ARRAY_SIZE(uniphier_initdata); i++) { - if (uniphier_initdata[i].soc_id == soc_id) - return &uniphier_initdata[i]; - } - - return NULL; -} +UNIPHIER_DEFINE_SOCDATA_FUNC(uniphier_get_initdata, uniphier_initdata) int board_init(void) { const struct uniphier_initdata *initdata; - unsigned int soc_id; int ret; led_puts("U0"); - soc_id = uniphier_get_soc_id(); - initdata = uniphier_get_initdata(soc_id); + initdata = uniphier_get_initdata(); if (!initdata) { - pr_err("unsupported board\n"); + pr_err("unsupported SoC\n"); return -EINVAL; } |