diff --git a/drivers/partition/partition.c b/drivers/partition/partition.c index eff5c57cd..c60820dfc 100644 --- a/drivers/partition/partition.c +++ b/drivers/partition/partition.c @@ -460,5 +460,19 @@ const partition_entry_list_t *get_partition_entry_list(void) */ void partition_init(unsigned int image_id) { - load_partition_table(image_id); + int ret; + + ret = load_partition_table(image_id); + if (ret != 0) { + ERROR("Failed to parse partition with image id = %u\n", + image_id); + } +} + +/* + * Load a GPT based image. + */ +int gpt_partition_init(void) +{ + return load_partition_table(GPT_IMAGE_ID); } diff --git a/include/drivers/partition/partition.h b/include/drivers/partition/partition.h index 8e749c9dc..d567d4cbb 100644 --- a/include/drivers/partition/partition.h +++ b/include/drivers/partition/partition.h @@ -50,5 +50,6 @@ const partition_entry_t *get_partition_entry_by_type(const uuid_t *type_guid); const partition_entry_t *get_partition_entry_by_uuid(const uuid_t *part_uuid); const partition_entry_list_t *get_partition_entry_list(void); void partition_init(unsigned int image_id); +int gpt_partition_init(void); #endif /* PARTITION_H */