summaryrefslogtreecommitdiffstats
path: root/sys/message.h
blob: 1a3b43e265314e52748f5c76b3b03181e32fc2a8 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#ifndef _JOVE_SYS_MESSAGE_H
#define _JOVE_SYS_MESSAGE_H 1

#include "hal/obj.h"
#include "hal/memory.h"

#ifdef DEBUG_MESSAGE
#include "lib/printf.h"
#define message_klogf(fmt, ...) kprintf("%s: " fmt, __func__, __VA_ARGS__)
#else
#define message_klogf(fmt, ...) 
#endif

int message_new(jove_owned_obj_t *untyped_obj);

int message_hasmap(jove_owned_obj_t *message);
virtaddr_t message_unmap(jove_owned_obj_t *message, jove_owned_obj_t *pagedir);
int message_map(jove_owned_obj_t *message, jove_owned_obj_t *pagedir, virtaddr_t vaddr);

uintptr_t message_getdata(jove_owned_obj_t *message);

#endif