stm32mp: stm32prog: Add support of ESP partition type

Add support of "ESP" partition type in flashlayout to select
the "EFI System Partition", associated to U-Boot "system"
partition type  guid, PARTITION_SYSTEM_GUID =
C12A7328-F81F-11d2-BA4B-00A0C93EC93B.

This partition is the bootable partition for efi boot.

Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
This commit is contained in:
Patrick Delaunay 2023-06-08 17:09:55 +02:00 committed by Patrice Chotard
parent 82a4a255aa
commit 3a67b61ca0
2 changed files with 14 additions and 2 deletions

View file

@ -429,6 +429,8 @@ static int parse_type(struct stm32prog_data *data,
part->part_type = PART_ENV;
} else if (!strcmp(p, "System")) {
part->part_type = PART_SYSTEM;
} else if (!strcmp(p, "ESP")) {
part->part_type = PART_ESP;
} else if (!strcmp(p, "FileSystem")) {
part->part_type = PART_FILESYSTEM;
} else if (!strcmp(p, "RawImage")) {
@ -1123,7 +1125,11 @@ static int create_gpt_partitions(struct stm32prog_data *data)
case PART_FIP:
type_str = FIP_TYPE_UUID;
break;
default:
case PART_ESP:
/* EFI System Partition */
type_str = "system";
break;
default: /* PART_FILESYSTEM or PART_SYSTEM for distro */
type_str = "linux";
break;
}

View file

@ -96,13 +96,19 @@ struct stm32_header_v2 {
u8 extension_padding[376];
};
/* partition type in flashlayout file */
/*
* partition type in flashlayout file
* SYSTEM = linux partition, bootable
* FILESYSTEM = linux partition
* ESP = EFI system partition
*/
enum stm32prog_part_type {
PART_BINARY,
PART_FIP,
PART_ENV,
PART_SYSTEM,
PART_FILESYSTEM,
PART_ESP,
RAW_IMAGE,
};