blob: 0d8afb227298fe3d8659c6c77866ed9c7cac2e6f [file] [log] [blame]
// Copyright 2022 The Fuchsia Authors
//
// Use of this source code is governed by a MIT-style
// license that can be found in the LICENSE file or at
// https://opensource.org/licenses/MIT
#ifndef ZIRCON_KERNEL_PHYS_EFI_INCLUDE_PHYS_EFI_MAIN_H_
#define ZIRCON_KERNEL_PHYS_EFI_INCLUDE_PHYS_EFI_MAIN_H_
#include <lib/arch/ticks.h>
#include <efi/protocol/loaded-image.h>
#include <efi/system-table.h>
#include <efi/types.h>
// This is the entry point in the PE-COFF headers.
extern "C" efi_status EfiMain(efi_handle image, efi_system_table* systab);
void SetEfiStdout(efi_system_table* systab);
// The canonical entry point of the main program.
int main(int argc, char* argv[]);
// These are set by EfiMain before calling main.
extern arch::EarlyTicks gEfiEntryTicks;
extern efi_handle gEfiImageHandle;
extern efi_loaded_image_protocol* gEfiLoadedImage;
extern efi_system_table* gEfiSystemTable;
#endif // ZIRCON_KERNEL_PHYS_EFI_INCLUDE_PHYS_EFI_MAIN_H_