summaryrefslogtreecommitdiff
path: root/arch/arm/mach-uniphier/board_init.c
diff options
context:
space:
mode:
authorMasahiro Yamada <yamada.masahiro@socionext.com>2017-01-21 09:05:27 (GMT)
committerMasahiro Yamada <yamada.masahiro@socionext.com>2017-01-22 07:49:33 (GMT)
commitee8ef5afa87bf37d493bf7be9d475e54d6c2ebee (patch)
tree26698081909c04e0f0c3f1d1a664d83e60ec0884 /arch/arm/mach-uniphier/board_init.c
parente27d6c7d328caf75bd7680109bc6610bc681f46e (diff)
downloadu-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.c20
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;
}