aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Delaunay <patrick.delaunay@foss.st.com>2023-06-08 17:09:55 +0200
committerPatrice Chotard <patrice.chotard@foss.st.com>2023-06-16 11:04:41 +0200
commit3a67b61ca04cea80e86008d83d6d996734609dfe (patch)
treebf698111f7bcc45f4881a826bae97733ae8dcfe7
parent82a4a255aa4898cbea16677d7e5b34cc83345f51 (diff)
downloadu-boot-3a67b61ca04cea80e86008d83d6d996734609dfe.zip
u-boot-3a67b61ca04cea80e86008d83d6d996734609dfe.tar.gz
u-boot-3a67b61ca04cea80e86008d83d6d996734609dfe.tar.bz2
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>
-rw-r--r--arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog.c8
-rw-r--r--arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog.h8
2 files changed, 14 insertions, 2 deletions
diff --git a/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog.c b/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog.c
index bddd7a4..030614c 100644
--- a/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog.c
+++ b/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog.c
@@ -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;
}
diff --git a/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog.h b/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog.h
index 7493008..a196270 100644
--- a/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog.h
+++ b/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog.h
@@ -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,
};