OpenCores
URL https://opencores.org/ocsvn/c0or1k/c0or1k/trunk

Subversion Repositories c0or1k

[/] [c0or1k/] [trunk/] [conts/] [libl4/] [include/] [l4lib/] [ipcdefs.h] - Blame information for rev 2

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 drasko
/*
2
 * Copyright (C) 2007, 2008 Bahadir Balban
3
 *
4
 * This file contains ipc definitions that are needed for server tasks
5
 * to communicate with each other. For example common shared memory ids
6
 * between two servers, or common ipc tags used between two servers are
7
 * defined here.
8
 */
9
#ifndef __IPCDEFS_H__
10
#define __IPCDEFS_H__
11
 
12
#include <l4/api/ipc.h>
13
#include <l4lib/types.h>
14
 
15
/*** IPC Tags used between server tasks ***/
16
 
17
/*
18
 * Tag 0 for L4_IPC_TAG_PFAULT
19
 * Tag 1 for L4_IPC_TAG_UNDEF_FAULT
20
 */
21
 
22
/* For ping ponging */
23
#define L4_IPC_TAG_SYNC_EXTENDED        3
24
#define L4_IPC_TAG_SYNC_FULL            4
25
#define L4_IPC_TAG_SYNC                 5
26
 
27
/* Posix system call tags */
28
#define L4_IPC_TAG_SHMGET               6
29
#define L4_IPC_TAG_SHMAT                7
30
#define L4_IPC_TAG_SHMDT                8
31
#define L4_IPC_TAG_MMAP                 9
32
#define L4_IPC_TAG_MUNMAP               10
33
#define L4_IPC_TAG_MSYNC                11
34
#define L4_IPC_TAG_OPEN                 12
35
#define L4_IPC_TAG_READ                 13
36
#define L4_IPC_TAG_WRITE                14
37
#define L4_IPC_TAG_LSEEK                15
38
#define L4_IPC_TAG_CLOSE                16
39
#define L4_IPC_TAG_BRK                  17
40
#define L4_IPC_TAG_READDIR              18
41
#define L4_IPC_TAG_MKDIR                19
42
#define L4_IPC_TAG_EXECVE               20
43
#define L4_IPC_TAG_CHDIR                21
44
#define L4_IPC_TAG_FORK                 22
45
#define L4_IPC_TAG_STAT                 23
46
#define L4_IPC_TAG_FSTAT                24
47
#define L4_IPC_TAG_FSYNC                25
48
#define L4_IPC_TAG_CLONE                26
49
#define L4_IPC_TAG_EXIT                 27
50
#define L4_IPC_TAG_WAIT                 28
51
 
52
/* Tags for ipc between fs0 and mm0 */
53
#define L4_IPC_TAG_TASKDATA             40
54
#define L4_IPC_TAG_PAGER_OPEN           41      /* vfs sends the pager open file data. */
55
#define L4_IPC_TAG_PAGER_READ           42      /* Pager reads file contents from vfs */
56
#define L4_IPC_TAG_PAGER_WRITE          43      /* Pager writes file contents to vfs */
57
#define L4_IPC_TAG_PAGER_CLOSE          44      /* Pager notifies vfs of file close */
58
#define L4_IPC_TAG_PAGER_UPDATE_STATS   45      /* Pager updates file stats in vfs */
59
#define L4_IPC_TAG_NOTIFY_FORK          46      /* Pager notifies vfs of process fork */
60
#define L4_IPC_TAG_NOTIFY_EXIT          47      /* Pager notifies vfs of process exit */
61
#define L4_IPC_TAG_PAGER_OPEN_BYPATH    48      /* Pager opens a vfs file by pathname */
62
 
63
#define L4_REQUEST_CAPABILITY           50      /* Request a capability from pager */
64
extern l4id_t pagerid;
65
 
66
/* For ipc to uart service (TODO: Shared mapping buffers???) */
67
#define L4_IPC_TAG_UART_SENDCHAR        51      /* Single char send (output) */
68
#define L4_IPC_TAG_UART_RECVCHAR        52      /* Single char recv (input) */
69
#define L4_IPC_TAG_UART_SENDBUF         53      /* Buffered send */
70
#define L4_IPC_TAG_UART_RECVBUF         54      /* Buffered recv */
71
 
72
/* For ipc to timer service (TODO: Shared mapping buffers???) */
73
#define L4_IPC_TAG_TIMER_GETTIME                                55
74
#define L4_IPC_TAG_TIMER_SLEEP                          56
75
#define L4_IPC_TAG_TIMER_WAKE_THREADS           57
76
 
77
#endif /* __IPCDEFS_H__ */

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.