linux/include/uapi/linux/arm_sdei.h

/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
/* Copyright (C) 2017 Arm Ltd. */
#ifndef _UAPI_LINUX_ARM_SDEI_H
#define _UAPI_LINUX_ARM_SDEI_H

#define SDEI_1_0_FN_BASE
#define SDEI_1_0_MASK
#define SDEI_1_0_FN(n)

#define SDEI_1_0_FN_SDEI_VERSION
#define SDEI_1_0_FN_SDEI_EVENT_REGISTER
#define SDEI_1_0_FN_SDEI_EVENT_ENABLE
#define SDEI_1_0_FN_SDEI_EVENT_DISABLE
#define SDEI_1_0_FN_SDEI_EVENT_CONTEXT
#define SDEI_1_0_FN_SDEI_EVENT_COMPLETE
#define SDEI_1_0_FN_SDEI_EVENT_COMPLETE_AND_RESUME
#define SDEI_1_0_FN_SDEI_EVENT_UNREGISTER
#define SDEI_1_0_FN_SDEI_EVENT_STATUS
#define SDEI_1_0_FN_SDEI_EVENT_GET_INFO
#define SDEI_1_0_FN_SDEI_EVENT_ROUTING_SET
#define SDEI_1_0_FN_SDEI_PE_MASK
#define SDEI_1_0_FN_SDEI_PE_UNMASK
#define SDEI_1_0_FN_SDEI_INTERRUPT_BIND
#define SDEI_1_0_FN_SDEI_INTERRUPT_RELEASE
#define SDEI_1_0_FN_SDEI_PRIVATE_RESET
#define SDEI_1_0_FN_SDEI_SHARED_RESET

#define SDEI_VERSION_MAJOR_SHIFT
#define SDEI_VERSION_MAJOR_MASK
#define SDEI_VERSION_MINOR_SHIFT
#define SDEI_VERSION_MINOR_MASK
#define SDEI_VERSION_VENDOR_SHIFT
#define SDEI_VERSION_VENDOR_MASK

#define SDEI_VERSION_MAJOR(x)
#define SDEI_VERSION_MINOR(x)
#define SDEI_VERSION_VENDOR(x)

/* SDEI return values */
#define SDEI_SUCCESS
#define SDEI_NOT_SUPPORTED
#define SDEI_INVALID_PARAMETERS
#define SDEI_DENIED
#define SDEI_PENDING
#define SDEI_OUT_OF_RESOURCE

/* EVENT_REGISTER flags */
#define SDEI_EVENT_REGISTER_RM_ANY
#define SDEI_EVENT_REGISTER_RM_PE

/* EVENT_STATUS return value bits */
#define SDEI_EVENT_STATUS_RUNNING
#define SDEI_EVENT_STATUS_ENABLED
#define SDEI_EVENT_STATUS_REGISTERED

/* EVENT_COMPLETE status values */
#define SDEI_EV_HANDLED
#define SDEI_EV_FAILED

/* GET_INFO values */
#define SDEI_EVENT_INFO_EV_TYPE
#define SDEI_EVENT_INFO_EV_SIGNALED
#define SDEI_EVENT_INFO_EV_PRIORITY
#define SDEI_EVENT_INFO_EV_ROUTING_MODE
#define SDEI_EVENT_INFO_EV_ROUTING_AFF

/* and their results */
#define SDEI_EVENT_TYPE_PRIVATE
#define SDEI_EVENT_TYPE_SHARED
#define SDEI_EVENT_PRIORITY_NORMAL
#define SDEI_EVENT_PRIORITY_CRITICAL

#endif /* _UAPI_LINUX_ARM_SDEI_H */