summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2016-06-30 10:52:14 -0600
committerTom Rini <trini@konsulko.com>2016-07-14 18:22:29 -0400
commit56d7ab74767c60c4ec48061864df0c421e4799e7 (patch)
tree56870ba61b51e06a02a814bb1393f2baa1c7dfbe
parent555f45d8f9168b09b406a241e7cee7980104d902 (diff)
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 <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
-rw-r--r--common/image.c13
-rw-r--r--include/image.h9
2 files changed, 22 insertions, 0 deletions
diff --git a/common/image.c b/common/image.c
index 0be09e5c630..4e503b3a060 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 7646daec5c8..5879ebcd7a5 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
*/