efi_loader: rename parent to header
authorHeinrich Schuchardt <xypron.glpk@gmx.de>
Wed, 26 Sep 2018 03:27:56 +0000 (05:27 +0200)
committerAlexander Graf <agraf@suse.de>
Sun, 2 Dec 2018 20:59:36 +0000 (21:59 +0100)
Rename the component parent of some EFI objects to header. This avoids
misunderstandings.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
cmd/bootefi.c
include/efi_loader.h
lib/efi_loader/efi_boottime.c
lib/efi_loader/efi_disk.c
lib/efi_loader/efi_gop.c
lib/efi_loader/efi_net.c

index faa00f75c2abc74c75ad74ad18c9191377350807..a1650d6cd1fdd87aa9a0a58a041dcd21bed87da5 100644 (file)
@@ -418,7 +418,7 @@ static efi_status_t do_bootefi_exec(void *efi,
 
                /* Move into EL2 and keep running there */
                armv8_switch_to_el2((ulong)entry,
-                                   (ulong)&image_obj->parent,
+                                   (ulong)&image_obj->header,
                                    (ulong)&systab, 0, (ulong)efi_run_in_el2,
                                    ES_TO_AARCH64);
 
@@ -435,7 +435,7 @@ static efi_status_t do_bootefi_exec(void *efi,
                secure_ram_addr(_do_nonsec_entry)(
                                        efi_run_in_hyp,
                                        (uintptr_t)entry,
-                                       (uintptr_t)&image_obj->parent,
+                                       (uintptr_t)&image_obj->header,
                                        (uintptr_t)&systab);
 
                /* Should never reach here, efi exits with longjmp */
@@ -443,12 +443,12 @@ static efi_status_t do_bootefi_exec(void *efi,
        }
 #endif
 
-       ret = efi_do_enter(&image_obj->parent, &systab, entry);
+       ret = efi_do_enter(&image_obj->header, &systab, entry);
 
 exit:
        /* image has returned, loaded-image obj goes *poof*: */
        if (image_obj)
-               efi_delete_handle(&image_obj->parent);
+               efi_delete_handle(&image_obj->header);
        if (mem_handle)
                efi_delete_handle(mem_handle);
 
@@ -546,10 +546,10 @@ static int do_bootefi(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
                /* Transfer environment variable efi_selftest as load options */
                set_load_options(loaded_image_info, "efi_selftest");
                /* Execute the test */
-               r = efi_selftest(&image_obj->parent, &systab);
+               r = efi_selftest(&image_obj->header, &systab);
                efi_restore_gd();
                free(loaded_image_info->load_options);
-               efi_delete_handle(&image_obj->parent);
+               efi_delete_handle(&image_obj->header);
                return r != EFI_SUCCESS;
        } else
 #endif
index 1c79905aac7c704e1f9cfe4a35291761e2e84dec..7a8aa2913a118fd287d48e6bea49f723a53cc87a 100644 (file)
@@ -193,10 +193,15 @@ struct efi_object {
 
 /**
  * struct efi_loaded_image_obj - handle of a loaded image
+ *
+ * @header:            EFI object header
+ * @reloc_base:                base address for the relocated image
+ * @reloc_size:                size of the relocated image
+ * @exit_jmp:          long jump buffer for returning form started image
+ * @entry:             entry address of the relocated image
  */
 struct efi_loaded_image_obj {
-       /* Generic EFI object parent class data */
-       struct efi_object parent;
+       struct efi_object header;
        void *reloc_base;
        aligned_u64 reloc_size;
        efi_status_t exit_status;
index 397647073c1848503a137a1ae2bfd57f1bab016f..e3d911fad67d6a0c196c5cce65384c303c7cae07 100644 (file)
@@ -1518,7 +1518,7 @@ efi_status_t efi_setup_loaded_image(struct efi_device_path *device_path,
        }
 
        /* Add internal object to object list */
-       efi_add_handle(&obj->parent);
+       efi_add_handle(&obj->header);
 
        if (info_ptr)
                *info_ptr = info;
@@ -1535,7 +1535,7 @@ efi_status_t efi_setup_loaded_image(struct efi_device_path *device_path,
                 * When asking for the device path interface, return
                 * bootefi_device_path
                 */
-               ret = efi_add_protocol(&obj->parent,
+               ret = efi_add_protocol(&obj->header,
                                       &efi_guid_device_path, device_path);
                if (ret != EFI_SUCCESS)
                        goto failure;
@@ -1545,7 +1545,7 @@ efi_status_t efi_setup_loaded_image(struct efi_device_path *device_path,
         * When asking for the loaded_image interface, just
         * return handle which points to loaded_image_info
         */
-       ret = efi_add_protocol(&obj->parent,
+       ret = efi_add_protocol(&obj->header,
                               &efi_guid_loaded_image, info);
        if (ret != EFI_SUCCESS)
                goto failure;
index e861feee4aa2c28737041a8a4f67761b944f17a1..c037526ad2d0ec21ef682b4875624b7ba251445a 100644 (file)
 
 const efi_guid_t efi_block_io_guid = BLOCK_IO_GUID;
 
+/**
+ * struct efi_disk_obj - EFI disk object
+ *
+ * @header:    EFI object header
+ * @ops:       EFI disk I/O protocol interface
+ * @ifname:    interface name for block device
+ * @dev_index: device index of block device
+ * @media:     block I/O media information
+ * @dp:                device path to the block device
+ * @part:      partition
+ * @volume:    simple file system protocol of the partition
+ * @offset:    offset into disk for simple partition
+ * @desc:      internal block device descriptor
+ */
 struct efi_disk_obj {
-       /* Generic EFI object parent class data */
-       struct efi_object parent;
-       /* EFI Interface callback struct for block I/O */
+       struct efi_object header;
        struct efi_block_io ops;
-       /* U-Boot ifname for block device */
        const char *ifname;
-       /* U-Boot dev_index for block device */
        int dev_index;
-       /* EFI Interface Media descriptor struct, referenced by ops */
        struct efi_block_io_media media;
-       /* EFI device path to this block device */
        struct efi_device_path *dp;
-       /* partition # */
        unsigned int part;
-       /* handle to filesys proto (for partition objects) */
        struct efi_simple_file_system_protocol *volume;
-       /* Offset into disk for simple partitions */
        lbaint_t offset;
-       /* Internal block device */
        struct blk_desc *desc;
 };
 
@@ -246,7 +250,7 @@ static efi_status_t efi_disk_add_dev(
                return EFI_OUT_OF_RESOURCES;
 
        /* Hook up to the device list */
-       efi_add_handle(&diskobj->parent);
+       efi_add_handle(&diskobj->header);
 
        /* Fill in object data */
        if (part) {
@@ -258,18 +262,18 @@ static efi_status_t efi_disk_add_dev(
                diskobj->dp = efi_dp_from_part(desc, part);
        }
        diskobj->part = part;
-       ret = efi_add_protocol(&diskobj->parent, &efi_block_io_guid,
+       ret = efi_add_protocol(&diskobj->header, &efi_block_io_guid,
                               &diskobj->ops);
        if (ret != EFI_SUCCESS)
                return ret;
-       ret = efi_add_protocol(&diskobj->parent, &efi_guid_device_path,
+       ret = efi_add_protocol(&diskobj->header, &efi_guid_device_path,
                               diskobj->dp);
        if (ret != EFI_SUCCESS)
                return ret;
        if (part >= 1) {
                diskobj->volume = efi_simple_file_system(desc, part,
                                                         diskobj->dp);
-               ret = efi_add_protocol(&diskobj->parent,
+               ret = efi_add_protocol(&diskobj->header,
                                       &efi_simple_file_system_protocol_guid,
                                       diskobj->volume);
                if (ret != EFI_SUCCESS)
@@ -381,7 +385,7 @@ efi_status_t efi_disk_register(void)
 
                /* Partitions show up as block devices in EFI */
                disks += efi_disk_create_partitions(
-                                       &disk->parent, desc, if_typename,
+                                       &disk->header, desc, if_typename,
                                        desc->devnum, dev->name);
        }
 #else
@@ -427,7 +431,7 @@ efi_status_t efi_disk_register(void)
 
                        /* Partitions show up as block devices in EFI */
                        disks += efi_disk_create_partitions
-                                               (&disk->parent, desc,
+                                               (&disk->header, desc,
                                                 if_typename, i, devname);
                }
        }
index a13c626f6fe6560c9281d7a20c5a7896a50cef90..fbd5d97de978eb70b14fc0bf958464b5f27a9cba 100644 (file)
@@ -16,15 +16,22 @@ DECLARE_GLOBAL_DATA_PTR;
 
 static const efi_guid_t efi_gop_guid = EFI_GOP_GUID;
 
+/**
+ * struct efi_gop_obj - graphical output protocol object
+ *
+ * @header:    EFI object header
+ * @ops:       graphical output protocol interface
+ * @info:      graphical output mode information
+ * @mode:      graphical output mode
+ * @bpix:      bits per pixel
+ * @fb:                frame buffer
+ */
 struct efi_gop_obj {
-       /* Generic EFI object parent class data */
-       struct efi_object parent;
-       /* EFI Interface callback struct for gop */
+       struct efi_object header;
        struct efi_gop ops;
-       /* The only mode we support */
        struct efi_gop_mode_info info;
        struct efi_gop_mode mode;
-       /* Fields we only have acces to during init */
+       /* Fields we only have access to during init */
        u32 bpix;
        void *fb;
 };
@@ -439,10 +446,10 @@ efi_status_t efi_gop_register(void)
        }
 
        /* Hook up to the device list */
-       efi_add_handle(&gopobj->parent);
+       efi_add_handle(&gopobj->header);
 
        /* Fill in object data */
-       ret = efi_add_protocol(&gopobj->parent, &efi_gop_guid,
+       ret = efi_add_protocol(&gopobj->header, &efi_gop_guid,
                               &gopobj->ops);
        if (ret != EFI_SUCCESS) {
                printf("ERROR: Failure adding gop protocol\n");
index ecc05f258c7d0f183988d2aeafa5f8cbdff9544c..c4f35cd50d334c3b4ebb3a6aecd74aa57000fcef 100644 (file)
@@ -24,13 +24,19 @@ static struct efi_event *network_timer_event;
  */
 static struct efi_event *wait_for_packet;
 
+/**
+ * struct efi_net_obj - EFI object representing a network interface
+ *
+ * @header:    EFI object header
+ * @net:       simple network protocol interface
+ * @net_mode:  status of the network interface
+ * @pxe:       PXE base code protocol interface
+ * @pxe_mode:  status of the PXE base code protocol
+ */
 struct efi_net_obj {
-       /* Generic EFI object parent class data */
-       struct efi_object parent;
-       /* EFI Interface callback struct for network */
+       struct efi_object header;
        struct efi_simple_network net;
        struct efi_simple_network_mode net_mode;
-       /* PXE struct to transmit dhcp data */
        struct efi_pxe pxe;
        struct efi_pxe_mode pxe_mode;
 };
@@ -325,18 +331,18 @@ efi_status_t efi_net_register(void)
        }
 
        /* Hook net up to the device list */
-       efi_add_handle(&netobj->parent);
+       efi_add_handle(&netobj->header);
 
        /* Fill in object data */
-       r = efi_add_protocol(&netobj->parent, &efi_net_guid,
+       r = efi_add_protocol(&netobj->header, &efi_net_guid,
                             &netobj->net);
        if (r != EFI_SUCCESS)
                goto failure_to_add_protocol;
-       r = efi_add_protocol(&netobj->parent, &efi_guid_device_path,
+       r = efi_add_protocol(&netobj->header, &efi_guid_device_path,
                             efi_dp_from_eth());
        if (r != EFI_SUCCESS)
                goto failure_to_add_protocol;
-       r = efi_add_protocol(&netobj->parent, &efi_pxe_guid,
+       r = efi_add_protocol(&netobj->header, &efi_pxe_guid,
                             &netobj->pxe);
        if (r != EFI_SUCCESS)
                goto failure_to_add_protocol;