blob: cd0547e04467861ea9062e875ee3d8422d521b01 [file] [log] [blame]
TrustworthySystems1621d7b2014-07-22 14:12:00 +10001/*
Gerwin Klein600fe152021-02-10 19:19:17 +11002 * Copyright 2017, Data61, CSIRO (ABN 41 687 119 230)
TrustworthySystems1621d7b2014-07-22 14:12:00 +10003 *
Gerwin Klein600fe152021-02-10 19:19:17 +11004 * SPDX-License-Identifier: BSD-2-Clause
TrustworthySystems1621d7b2014-07-22 14:12:00 +10005 */
6
Anna Lyons135c6512017-09-28 12:16:03 +10007#pragma once
TrustworthySystems1621d7b2014-07-22 14:12:00 +10008
9#include <sel4/types.h>
10#include <allocman/properties.h>
11#include <vka/cspacepath_t.h>
12
13struct allocman;
14
15typedef struct cspace_interface {
16 int (*alloc)(struct allocman *alloc, void *cookie, cspacepath_t *path);
Adrian Danisbd03ee52015-04-21 15:17:01 +100017 void (*free)(struct allocman *alloc, void *cookie, const cspacepath_t *path);
TrustworthySystems1621d7b2014-07-22 14:12:00 +100018 cspacepath_t (*make_path)(void *cookie, seL4_CPtr slot);
19 struct allocman_properties properties;
20 void *cspace;
21} cspace_interface_t;
22