7#ifndef __XEN_PUBLIC_ARCH_RISCV_H__
8#define __XEN_PUBLIC_ARCH_RISCV_H__
13#if defined(__XEN__) || defined(__XEN_TOOLS__) || defined(__GNUC__)
14#define int64_aligned_t int64_t __attribute__((__aligned__(8)))
15#define uint64_aligned_t uint64_t __attribute__((__aligned__(8)))
19#define ___DEFINE_XEN_GUEST_HANDLE(name, type) \
20 typedef union { type *p; unsigned long q; } \
21 __guest_handle_ ## name; \
22 typedef union { type *p; uint64_aligned_t q; } \
23 __guest_handle_64_ ## name
32#define __DEFINE_XEN_GUEST_HANDLE(name, type) \
33 ___DEFINE_XEN_GUEST_HANDLE(name, type); \
34 ___DEFINE_XEN_GUEST_HANDLE(const_##name, const type)
35#define DEFINE_XEN_GUEST_HANDLE(name) __DEFINE_XEN_GUEST_HANDLE(name, name)
36#define __XEN_GUEST_HANDLE(name) __guest_handle_64_ ## name
37#define XEN_GUEST_HANDLE(name) __XEN_GUEST_HANDLE(name)
38#define XEN_GUEST_HANDLE_PARAM(name) __guest_handle_ ## name
39#define set_xen_guest_handle_raw(hnd, val) \
41 typeof(&(hnd)) sxghr_tmp_ = &(hnd); \
43 sxghr_tmp_->p = (val); \
45#define set_xen_guest_handle(hnd, val) set_xen_guest_handle_raw(hnd, val)
48#define PRI_xen_pfn PRIx64
49#define PRIu_xen_pfn PRIu64
52#define PRI_xen_ulong PRIx64
54#if defined(__XEN__) || defined(__XEN_TOOLS__)
80#define XEN_LEGACY_MAX_VCPUS 1
struct arch_vcpu_info arch_vcpu_info_t
struct arch_shared_info arch_shared_info_t
struct xen_pmu_arch xen_pmu_arch_t
struct vcpu_guest_context vcpu_guest_context_t
#define DEFINE_XEN_GUEST_HANDLE(name)
unsigned long long uint64_t
#define FILE_LICENCE(_licence)
Declare a particular licence as applying to a file.
#define FILE_SECBOOT(_status)
Declare a file's UEFI Secure Boot permission status.
unsigned long xen_ulong_t