提交 503f2695 编写于 作者: X xypron.glpk@gmx.de 提交者: Alexander Graf

efi_loader: correct size for tpl level

The UEFI standard defines the type for the tpl level as EFI_TPL
alias UINTN.

UINTN is an integer is defined as an unsigned integer of native
width. So we can use size_t for the definition.
Signed-off-by: NHeinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: NAlexander Graf <agraf@suse.de>
上级 c6841592
......@@ -28,6 +28,8 @@ enum efi_event_type {
EFI_TIMER_RELATIVE = 2
};
#define UINTN size_t
#define EVT_TIMER 0x80000000
#define EVT_RUNTIME 0x40000000
#define EVT_NOTIFY_WAIT 0x00000100
......@@ -45,8 +47,8 @@ struct efi_event;
/* EFI Boot Services table */
struct efi_boot_services {
struct efi_table_hdr hdr;
efi_status_t (EFIAPI *raise_tpl)(unsigned long new_tpl);
void (EFIAPI *restore_tpl)(unsigned long old_tpl);
efi_status_t (EFIAPI *raise_tpl)(UINTN new_tpl);
void (EFIAPI *restore_tpl)(UINTN old_tpl);
efi_status_t (EFIAPI *allocate_pages)(int, int, unsigned long,
efi_physical_addr_t *);
......@@ -58,7 +60,7 @@ struct efi_boot_services {
efi_status_t (EFIAPI *free_pool)(void *);
efi_status_t (EFIAPI *create_event)(enum efi_event_type type,
unsigned long notify_tpl,
UINTN notify_tpl,
void (EFIAPI *notify_function) (
struct efi_event *event,
void *context),
......
......@@ -77,7 +77,7 @@ struct efi_object {
*/
struct efi_event {
u32 type;
unsigned long notify_tpl;
UINTN notify_tpl;
void (EFIAPI *notify_function)(struct efi_event *event, void *context);
void *notify_context;
u64 trigger_next;
......
......@@ -104,15 +104,15 @@ static int guidcmp(const efi_guid_t *g1, const efi_guid_t *g2)
return memcmp(g1, g2, sizeof(efi_guid_t));
}
static unsigned long EFIAPI efi_raise_tpl(unsigned long new_tpl)
static unsigned long EFIAPI efi_raise_tpl(UINTN new_tpl)
{
EFI_ENTRY("0x%lx", new_tpl);
EFI_ENTRY("0x%zx", new_tpl);
return EFI_EXIT(0);
}
static void EFIAPI efi_restore_tpl(unsigned long old_tpl)
static void EFIAPI efi_restore_tpl(UINTN old_tpl)
{
EFI_ENTRY("0x%lx", old_tpl);
EFI_ENTRY("0x%zx", old_tpl);
EFI_EXIT(efi_unsupported(__func__));
}
......@@ -180,7 +180,7 @@ static efi_status_t EFIAPI efi_free_pool_ext(void *buffer)
static struct efi_event efi_events[16];
static efi_status_t EFIAPI efi_create_event(
enum efi_event_type type, ulong notify_tpl,
enum efi_event_type type, UINTN notify_tpl,
void (EFIAPI *notify_function) (
struct efi_event *event,
void *context),
......@@ -188,7 +188,7 @@ static efi_status_t EFIAPI efi_create_event(
{
int i;
EFI_ENTRY("%d, 0x%lx, %p, %p", type, notify_tpl, notify_function,
EFI_ENTRY("%d, 0x%zx, %p, %p", type, notify_tpl, notify_function,
notify_context);
if (event == NULL)
return EFI_EXIT(EFI_INVALID_PARAMETER);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册