1/*
2 * Copyright 2018 Haiku Inc. All Rights Reserved.
3 * Copyright 2007, Travis Geiselbrecht. All rights reserved.
4 * Distributed under the terms of the MIT License.
5 */
6#ifndef _KERNEL_COMMPAGE_COMPAT_H
7#define _KERNEL_COMMPAGE_COMPAT_H
8
9
10#include <image.h>
11#include <SupportDefs.h>
12
13#define COMMPAGE_COMPAT
14#include <commpage_defs.h>
15
16
17#ifdef __cplusplus
18extern "C" {
19#endif
20
21status_t	commpage_compat_init(void);
22status_t	commpage_compat_init_post_cpus(void);
23void*		allocate_commpage_compat_entry(int entry, size_t size);
24addr_t		fill_commpage_compat_entry(int entry, const void* copyFrom,
25				size_t size);
26image_id	get_commpage_compat_image();
27area_id		clone_commpage_compat_area(team_id team, void** address);
28
29// implemented in the architecture specific part
30status_t	arch_commpage_compat_init(void);
31status_t	arch_commpage_compat_init_post_cpus(void);
32
33
34#ifdef __cplusplus
35}      // extern "C"
36#endif
37
38
39#endif /* _KERNEL_COMMPAGE_COMPAT_H */
40