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