]> git.ipfire.org Git - thirdparty/u-boot.git/commitdiff
disk: part_efi: Remove redundant struct partition definition
authorJavier Martinez Canillas <javierm@redhat.com>
Thu, 12 Feb 2026 20:44:57 +0000 (21:44 +0100)
committerHeinrich Schuchardt <heinrich.schuchardt@canonical.com>
Sun, 15 Feb 2026 07:43:58 +0000 (08:43 +0100)
Now that dos_partition_t and struct partition are identical, the duplicated
data structure definition in the part_efi.h header can just be removed.

This results in a single, shared definition for MBR partition table
entries, instead of having the same definition in two different places.

Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
disk/part_efi.c
include/part_efi.h

index fb1ed534f8618c00eea353dfd3ba0d0c45460b29..d8b17ec2e91a563eff0f921bebe5ab81f40c955c 100644 (file)
@@ -51,7 +51,7 @@ static inline u32 efi_crc32(const void *buf, u32 len)
  * Private function prototypes
  */
 
-static int pmbr_part_valid(struct partition *part);
+static int pmbr_part_valid(dos_partition_t *part);
 static int is_pmbr_valid(legacy_mbr * mbr);
 static int is_gpt_valid(struct blk_desc *desc, u64 lba, gpt_header *pgpt_head,
                        gpt_entry **pgpt_pte);
@@ -990,7 +990,7 @@ int write_mbr_and_gpt_partitions(struct blk_desc *desc, void *buf)
  *
  * Returns: 1 if EFI GPT partition type is found.
  */
-static int pmbr_part_valid(struct partition *part)
+static int pmbr_part_valid(dos_partition_t *part)
 {
        if (part->sys_ind == EFI_PMBR_OSTYPE_EFI_GPT &&
                get_unaligned_le32(&part->start_sect) == 1UL) {
index fb402df6f13ec1cf68647b3c37b75e505c7feb9a..2cea508804657c0d969b6c0edc7ea9b9b23170b5 100644 (file)
@@ -18,6 +18,7 @@
 #define _DISK_PART_EFI_H
 
 #include <efi.h>
+#include <part_dos.h>
 
 #define MSDOS_MBR_SIGNATURE 0xAA55
 #define MSDOS_MBR_BOOT_CODE_SIZE 440
 /* linux/include/efi.h */
 typedef u16 efi_char16_t;
 
-/* based on linux/include/genhd.h */
-struct partition {
-       u8 boot_ind;            /* 0x80 - active */
-       u8 head;                /* starting head */
-       u8 sector;              /* starting sector */
-       u8 cyl;                 /* starting cylinder */
-       u8 sys_ind;             /* What partition type */
-       u8 end_head;            /* end head */
-       u8 end_sector;          /* end sector */
-       u8 end_cyl;             /* end cylinder */
-       __le32 start_sect;      /* starting sector counting from 0 */
-       __le32 nr_sects;        /* nr of sectors in partition */
-} __packed;
-
 /* based on linux/fs/partitions/efi.h */
 typedef struct _gpt_header {
        __le64 signature;
@@ -134,7 +121,7 @@ typedef struct _legacy_mbr {
        u8 boot_code[MSDOS_MBR_BOOT_CODE_SIZE];
        __le32 unique_mbr_signature;
        __le16 unknown;
-       struct partition partition_record[4];
+       dos_partition_t partition_record[4];
        __le16 signature;
 } __packed legacy_mbr;
 
@@ -153,7 +140,7 @@ struct efi_partition_info {
        u8 system;
        u8 reserved[7];
        union {
-               struct partition mbr;
+               dos_partition_t mbr;
                gpt_entry gpt;
        } info;
 } __packed;