1559a7b20SKonstantin Belousov /*- 27a158e82SAndrew Turner * Copyright (c) 2017 Andrew Turner 37a158e82SAndrew Turner * All rights reserved. 47a158e82SAndrew Turner * 57a158e82SAndrew Turner * This software was developed by SRI International and the University of 67a158e82SAndrew Turner * Cambridge Computer Laboratory under DARPA/AFRL contract FA8750-10-C-0237 77a158e82SAndrew Turner * ("CTSRD"), as part of the DARPA CRASH research programme. 87a158e82SAndrew Turner * 97a158e82SAndrew Turner * Redistribution and use in source and binary forms, with or without 107a158e82SAndrew Turner * modification, are permitted provided that the following conditions 117a158e82SAndrew Turner * are met: 127a158e82SAndrew Turner * 1. Redistributions of source code must retain the above copyright 137a158e82SAndrew Turner * notice, this list of conditions and the following disclaimer. 147a158e82SAndrew Turner * 2. Redistributions in binary form must reproduce the above copyright 157a158e82SAndrew Turner * notice, this list of conditions and the following disclaimer in the 167a158e82SAndrew Turner * documentation and/or other materials provided with the distribution. 177a158e82SAndrew Turner * 187a158e82SAndrew Turner * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 197a158e82SAndrew Turner * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 207a158e82SAndrew Turner * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 217a158e82SAndrew Turner * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 227a158e82SAndrew Turner * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 237a158e82SAndrew Turner * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 247a158e82SAndrew Turner * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 257a158e82SAndrew Turner * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 267a158e82SAndrew Turner * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 277a158e82SAndrew Turner * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 287a158e82SAndrew Turner * SUCH DAMAGE. 29559a7b20SKonstantin Belousov */ 30559a7b20SKonstantin Belousov 31d5d97bedSMike Karels #ifdef __arm__ 32d5d97bedSMike Karels #include <arm/efi.h> 33d5d97bedSMike Karels #else /* !__arm__ */ 34d5d97bedSMike Karels 35559a7b20SKonstantin Belousov #ifndef __ARM64_INCLUDE_EFI_H_ 36559a7b20SKonstantin Belousov #define __ARM64_INCLUDE_EFI_H_ 37559a7b20SKonstantin Belousov 38559a7b20SKonstantin Belousov #define EFIABI_ATTR 39559a7b20SKonstantin Belousov 407a158e82SAndrew Turner #ifdef _KERNEL 41a29bff7aSGreg V #define ARCH_MAY_USE_EFI 42a29bff7aSGreg V 437a158e82SAndrew Turner #define EFI_TIME_LOCK() 447a158e82SAndrew Turner #define EFI_TIME_UNLOCK() 457a158e82SAndrew Turner #define EFI_TIME_OWNED() 4650cd0be7SKonstantin Belousov 47*8efb1500SAndrew Turner #define EFI_RT_HANDLE_FAULTS_DEFAULT 1 487a158e82SAndrew Turner #endif 497a158e82SAndrew Turner 5050cd0be7SKonstantin Belousov struct efirt_callinfo { 5150cd0be7SKonstantin Belousov const char *ec_name; 5250cd0be7SKonstantin Belousov register_t ec_efi_status; 5350cd0be7SKonstantin Belousov register_t ec_fptr; 5450cd0be7SKonstantin Belousov register_t ec_argcnt; 5550cd0be7SKonstantin Belousov register_t ec_arg1; 5650cd0be7SKonstantin Belousov register_t ec_arg2; 5750cd0be7SKonstantin Belousov register_t ec_arg3; 5850cd0be7SKonstantin Belousov register_t ec_arg4; 5950cd0be7SKonstantin Belousov register_t ec_arg5; 6050cd0be7SKonstantin Belousov }; 6150cd0be7SKonstantin Belousov 62559a7b20SKonstantin Belousov #endif /* __ARM64_INCLUDE_EFI_H_ */ 63d5d97bedSMike Karels 64d5d97bedSMike Karels #endif /* !__arm__ */ 65