mirror of
https://github.com/u-boot/u-boot.git
synced 2025-05-08 19:11:53 +00:00
part: detect EFI system partition
Up to now for MBR and GPT partitions the info field 'bootable' was set to 1 if either the partition was an EFI system partition or the bootable flag was set. Turn info field 'bootable' into a bit mask with separate bits for bootable and EFI system partition. This will allow us to identify the EFI system partition in the UEFI sub-system. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
This commit is contained in:
parent
4fe050e65f
commit
25801acc1f
4 changed files with 32 additions and 13 deletions
|
@ -51,13 +51,22 @@ struct block_drvr {
|
|||
#define PART_TYPE_LEN 32
|
||||
#define MAX_SEARCH_PARTITIONS 64
|
||||
|
||||
#define PART_BOOTABLE ((int)BIT(0))
|
||||
#define PART_EFI_SYSTEM_PARTITION ((int)BIT(1))
|
||||
|
||||
typedef struct disk_partition {
|
||||
lbaint_t start; /* # of first block in partition */
|
||||
lbaint_t size; /* number of blocks in partition */
|
||||
ulong blksz; /* block size in bytes */
|
||||
uchar name[PART_NAME_LEN]; /* partition name */
|
||||
uchar type[PART_TYPE_LEN]; /* string type description */
|
||||
int bootable; /* Active/Bootable flag is set */
|
||||
/*
|
||||
* The bootable is a bitmask with the following fields:
|
||||
*
|
||||
* PART_BOOTABLE the MBR bootable flag is set
|
||||
* PART_EFI_SYSTEM_PARTITION the partition is an EFI system partition
|
||||
*/
|
||||
int bootable;
|
||||
#if CONFIG_IS_ENABLED(PARTITION_UUIDS)
|
||||
char uuid[UUID_STR_LEN + 1]; /* filesystem UUID as string, if exists */
|
||||
#endif
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue