^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) /* SPDX-License-Identifier: GPL-2.0 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) * ESI service calls.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) * Copyright (c) Copyright 2005-2006 Hewlett-Packard Development Company, L.P.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) * Alex Williamson <alex.williamson@hp.com>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) #ifndef esi_h
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) #define esi_h
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) #include <linux/efi.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) #define ESI_QUERY 0x00000001
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) #define ESI_OPEN_HANDLE 0x02000000
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) #define ESI_CLOSE_HANDLE 0x02000001
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) enum esi_proc_type {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) ESI_PROC_SERIALIZED, /* calls need to be serialized */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) ESI_PROC_MP_SAFE, /* MP-safe, but not reentrant */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) ESI_PROC_REENTRANT /* MP-safe and reentrant */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) extern struct ia64_sal_retval esi_call_phys (void *, u64 *);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) extern int ia64_esi_call(efi_guid_t, struct ia64_sal_retval *,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) enum esi_proc_type,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) u64, u64, u64, u64, u64, u64, u64, u64);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) extern int ia64_esi_call_phys(efi_guid_t, struct ia64_sal_retval *, u64, u64,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) u64, u64, u64, u64, u64, u64);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) #endif /* esi_h */