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 18 extern "C" { 19 #endif 20 21 status_t commpage_compat_init(void); 22 status_t commpage_compat_init_post_cpus(void); 23 void* allocate_commpage_compat_entry(int entry, size_t size); 24 addr_t fill_commpage_compat_entry(int entry, const void* copyFrom, 25 size_t size); 26 image_id get_commpage_compat_image(); 27 area_id clone_commpage_compat_area(team_id team, void** address); 28 29 // implemented in the architecture specific part 30 status_t arch_commpage_compat_init(void); 31 status_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