| /* |
| * Copyright (c) 2021 EPAM Systems |
| * |
| * SPDX-License-Identifier: Apache-2.0 |
| */ |
| #ifndef __XEN_EVENTS_H__ |
| #define __XEN_EVENTS_H__ |
| |
| #include <xen/public/event_channel.h> |
| |
| #include <kernel.h> |
| |
| typedef void (*evtchn_cb_t)(void *priv); |
| |
| struct event_channel_handle { |
| evtchn_cb_t cb; |
| void *priv; |
| }; |
| |
| typedef struct event_channel_handle evtchn_handle_t; |
| |
| void notify_evtchn(evtchn_port_t port); |
| int bind_event_channel(evtchn_port_t port, evtchn_cb_t cb, void *data); |
| int unbind_event_channel(evtchn_port_t port); |
| |
| int xen_events_init(void); |
| |
| #endif /* __XEN_EVENTS_H__ */ |