From 56d7ab74767c60c4ec48061864df0c421e4799e7 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 30 Jun 2016 10:52:14 -0600 Subject: image: Create a table of information for each category Add a table that contains the category name, the number of items in each category and a pointer to the table of items. This will allow us to use generic code to deal with the categories. Signed-off-by: Simon Glass Reviewed-by: Tom Rini --- common/image.c | 13 +++++++++++++ include/image.h | 9 +++++++++ 2 files changed, 22 insertions(+) diff --git a/common/image.c b/common/image.c index 0be09e5..4e503b3 100644 --- a/common/image.c +++ b/common/image.c @@ -176,6 +176,19 @@ static const table_entry_t uimage_comp[] = { { -1, "", "", }, }; +struct table_info { + const char *desc; + int count; + const table_entry_t *table; +}; + +static const struct table_info table_info[IH_COUNT] = { + { "architecture", IH_ARCH_COUNT, uimage_arch }, + { "compression", IH_COMP_COUNT, uimage_comp }, + { "operating system", IH_OS_COUNT, uimage_os }, + { "image type", IH_TYPE_COUNT, uimage_type }, +}; + /*****************************************************************************/ /* Legacy format routines */ /*****************************************************************************/ diff --git a/include/image.h b/include/image.h index 7646dae..5879ebc 100644 --- a/include/image.h +++ b/include/image.h @@ -123,6 +123,15 @@ struct lmb; # define IMAGE_OF_SYSTEM_SETUP 0 #endif +enum ih_category { + IH_ARCH, + IH_COMP, + IH_OS, + IH_TYPE, + + IH_COUNT, +}; + /* * Operating System Codes */ -- cgit v1.1