summaryrefslogtreecommitdiff
path: root/sys/dev/vmware/vmci/vmci_queue_pair.h
blob: f07dba165811f293459759da1ecb5961f203d8b6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
/*-
 * Copyright (c) 2018 VMware, Inc.
 *
 * SPDX-License-Identifier: (BSD-2-Clause OR GPL-2.0)
 */

/* VMCI QueuePair API definition. */

#ifndef _VMCI_QUEUE_PAIR_H_
#define _VMCI_QUEUE_PAIR_H_

#include "vmci_kernel_if.h"
#include "vmci_queue.h"

int	vmci_qp_guest_endpoints_init(void);
void	vmci_qp_guest_endpoints_exit(void);
void	vmci_qp_guest_endpoints_sync(void);
void	vmci_qp_guest_endpoints_convert(bool to_local, bool device_reset);

int	vmci_queue_pair_alloc(struct vmci_handle *handle,
	    struct vmci_queue **produce_q, uint64_t produce_size,
	    struct vmci_queue **consume_q, uint64_t consume_size,
	    vmci_id peer, uint32_t flags, vmci_privilege_flags priv_flags);
int	vmci_queue_pair_detach(struct vmci_handle handle);

#endif /* !_VMCI_QUEUE_PAIR_H_ */