Fork us on GitHub Follow us on Facebook Follow us on Twitter

Changeset eb66f236 in mainline


Ignore:
Timestamp:
2011-07-10T12:20:57Z (10 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master
Children:
666d6dc
Parents:
bee37cf
Message:

Support for searching EFI configuration table.

Location:
boot
Files:
1 added
2 edited

Legend:

Unmodified
Added
Removed
  • boot/arch/ia64/Makefile.inc

    rbee37cf reb66f236  
    4747        arch/$(BARCH)/src/putchar.c \
    4848        $(COMPS_C) \
     49        genarch/src/efi.c \
    4950        genarch/src/division.c \
    5051        generic/src/balloc.c \
  • boot/genarch/include/efi.h

    rbee37cf reb66f236  
    3030#define BOOT_EFI_H_
    3131
     32#include <arch/types.h>
     33
     34typedef struct {
     35        uint64_t signature;
     36        uint32_t revision;
     37        uint32_t header_size;
     38        uint32_t crc32;
     39        uint32_t reserved;
     40} efi_table_header_t;
     41
     42#define SAL_SYSTEM_TABLE_GUID \
     43        { \
     44                { \
     45                        0x32, 0x2d, 0x9d, 0xeb, 0x88, 0x2d, 0xd3, 0x11, \
     46                        0x9a, 0x16, 0x00, 0x90, 0x27, 0x3f, 0xc1, 0x4d \
     47                } \
     48        }
     49
     50typedef union {
     51        uint8_t bytes[16];
     52        struct {
     53                uint64_t low;
     54                uint64_t high;
     55        };
     56} efi_guid_t;
     57
     58typedef struct {
     59        efi_guid_t guid;
     60        void *table;
     61} efi_configuration_table_t;
     62
     63typedef struct {
     64        efi_table_header_t hdr;
     65        char *fw_vendor;
     66        uint32_t fw_revision;
     67        void *cons_in_handle;
     68        void *cons_in;
     69        void *cons_out_handle;
     70        void *cons_out;
     71        void *cons_err_handle;
     72        void *cons_err;
     73        void *runtime_services;
     74        void *boot_services;
     75        sysarg_t conf_table_entries;
     76        efi_configuration_table_t *conf_table;
     77} efi_system_table_t;
     78
    3279typedef enum {
    3380        EFI_RESERVED,
     
    57104#define EFI_PAGE_SIZE   4096
    58105
     106extern void *efi_vendor_table_find(efi_system_table_t *, efi_guid_t);
     107
    59108#endif
Note: See TracChangeset for help on using the changeset viewer.