1/*-
2 * Copyright (c) 2018 VMware, Inc.
3 *
4 * SPDX-License-Identifier: (BSD-2-Clause OR GPL-2.0)
5 *
6 * $FreeBSD$
7 */
8
9/* Internal functions in the VMCI Doorbell API. */
10
11#ifndef _VMCI_DOORBELL_H_
12#define _VMCI_DOORBELL_H_
13
14#include "vmci_defs.h"
15
16int	vmci_doorbell_init(void);
17void	vmci_doorbell_exit(void);
18void	vmci_doorbell_hibernate(bool enter_hibernate);
19void	vmci_doorbell_sync(void);
20
21int	vmci_doorbell_host_context_notify(vmci_id src_CID,
22	    struct vmci_handle handle);
23int	vmci_doorbell_get_priv_flags(struct vmci_handle handle,
24	    vmci_privilege_flags *priv_flags);
25
26bool	vmci_register_notification_bitmap(PPN bitmap_PPN);
27void	vmci_scan_notification_bitmap(uint8_t *bitmap);
28
29#endif /* !_VMCI_DOORBELL_H_ */
30