xref: /freebsd/sys/dev/vmware/vmci/vmci_doorbell.h (revision 62cfcf62f627e5093fb37026a6d8c98e4d2ef04c)
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 
16 int	vmci_doorbell_init(void);
17 void	vmci_doorbell_exit(void);
18 void	vmci_doorbell_hibernate(bool enter_hibernate);
19 void	vmci_doorbell_sync(void);
20 
21 int	vmci_doorbell_host_context_notify(vmci_id src_CID,
22 	    struct vmci_handle handle);
23 int	vmci_doorbell_get_priv_flags(struct vmci_handle handle,
24 	    vmci_privilege_flags *priv_flags);
25 
26 bool	vmci_register_notification_bitmap(PPN bitmap_PPN);
27 void	vmci_scan_notification_bitmap(uint8_t *bitmap);
28 
29 #endif /* !_VMCI_DOORBELL_H_ */
30