1/*
2 * Copyright (c) 2014 ETH Zurich.
3 * All rights reserved.
4 *
5 * This file is distributed under the terms in the attached LICENSE file.
6 * If you do not find this file, copies can be found by writing to:
7 * ETH Zurich D-INFK, Universitaetsstrasse 6, CH-8092 Zurich. Attn: Systems Group.
8 */
9
10#ifndef __XOMP_GATEWAY_H
11#define	__XOMP_GATEWAY_H
12
13/**
14 * \brief initializes the xomp gatway service
15 *
16 * \return SYS_ERR_OK on success
17 *         errval on failure
18 */
19errval_t xomp_gateway_init(void);
20
21/**
22 * \brief registers a new memory region that it can be requested lateron
23 *
24 * \param addr  the virtual address of the region
25 * \param frame frame capability backing the address
26 *
27 * \return SYS_ERR_OK on success
28 *         LIB_ERR_MALLOC_FAIL on failure
29 */
30errval_t xomp_gateway_mem_insert(struct capref frame,
31                                 lpaddr_t addr);
32
33/**
34 * \brief generates a memory token based on the domain
35 *
36 * \return 64bit token
37 */
38uint64_t xomp_gateway_make_token(void);
39
40
41#endif	/* __XOMP_GATEWAY_H */
42