L4Re - L4 Runtime Environment
__kip-32bit.h
1 
7 /*
8  * (c) 2008-2009 Adam Lackorzynski <adam@os.inf.tu-dresden.de>,
9  * Alexander Warg <warg@os.inf.tu-dresden.de>,
10  * Björn Döbel <doebel@os.inf.tu-dresden.de>,
11  * Frank Mehnert <fm3@os.inf.tu-dresden.de>,
12  * Torsten Frenzel <frenzel@os.inf.tu-dresden.de>,
13  * Martin Pohlack <mp26@os.inf.tu-dresden.de>,
14  * Lars Reuther <reuther@os.inf.tu-dresden.de>
15  * economic rights: Technische Universität Dresden (Germany)
16  *
17  * This file is part of TUD:OS and distributed under the terms of the
18  * GNU General Public License 2.
19  * Please see the COPYING-GPL-2 file for details.
20  *
21  * As a special exception, you may use this file as part of a free software
22  * library without restriction. Specifically, if other files instantiate
23  * templates or use macros or inline functions from this file, or you compile
24  * this file and link it with other files to produce an executable, this
25  * file does not by itself cause the resulting executable to be covered by
26  * the GNU General Public License. This exception does not however
27  * invalidate any other reasons why the executable file might be covered by
28  * the GNU General Public License.
29  */
30 #pragma once
31 
32 #include <l4/sys/types.h>
33 
38 typedef struct l4_kernel_info_t
39 {
40  /* offset 0x00 */
49 
50  /* the following stuff is undocumented; we assume that the kernel
51  info page is located at offset 0x1000 into the L4 kernel boot
52  image so that these declarations are consistent with section 2.9
53  of the L4 Reference Manual */
54 
55  /* offset 0x10 */
56  /* Kernel debugger */
59 
60  /* offset 0x20 */
61  /* Sigma0 */
65 
66  /* offset 0x30 */
67  /* Sigma1 */
71 
72  /* offset 0x40 */
73  /* Root task */
77 
78  /* offset 0x50 */
79  /* L4 configuration */
83 
84  /* offset 0x60 */
86 
87  /* offset 0xA0 */
88  union {
89  volatile l4_cpu_time_t clock L4_DEPRECATED("Using kip.clock field is deprecated, use l4_kip_clock() and l4_kip_clock_lw() functions instead.");
90  volatile l4_cpu_time_t _clock_val;
91  };
93 
94  /* offset 0xB0 */
97 
98  /* offset 0xB8 */
100 
101  /* offset 0xE0 */
104  l4_umword_t _res07[2];
105 
106  /* offset 0xF0 */
107  struct l4_kip_platform_info platform_info;
l4_uint32_t magic
Kernel Info Page identifier ("L4µK").
Definition: __kip-32bit.h:41
l4_uint8_t kip_sys_calls
pointer to system calls
Definition: __kip-32bit.h:47
l4_uint32_t version
Kernel version.
Definition: __kip-32bit.h:44
l4_umword_t _res00[3]
default_kdebug_end
Definition: __kip-32bit.h:58
l4_umword_t vhw_offset
offset to vhw structure
Definition: __kip-32bit.h:103
l4_umword_t sigma1_esp
Sigma1 start stack pointer.
Definition: __kip-32bit.h:68
l4_umword_t root_esp
Root task stack pointer.
Definition: __kip-32bit.h:74
l4_umword_t sigma0_eip
Sigma0 instruction pointer.
Definition: __kip-32bit.h:63
Common L4 ABI Data Types.
l4_umword_t _res58[2]
reserved
Definition: __kip-32bit.h:82
struct l4_kernel_info_t l4_kernel_info_t
L4 Kernel Interface Page.
l4_uint8_t fill1[3]
reserved
Definition: __kip-32bit.h:48
l4_umword_t _res02[2]
reserved
Definition: __kip-32bit.h:70
l4_umword_t mem_info
memory information
Definition: __kip-32bit.h:81
L4 Kernel Interface Page.
Definition: __kip-32bit.h:38
l4_umword_t _res50[1]
reserved
Definition: __kip-32bit.h:80
l4_uint8_t offset_version_strings
offset to version string
Definition: __kip-32bit.h:45
l4_uint64_t l4_cpu_time_t
CPU clock type.
Definition: l4int.h:59
l4_umword_t _res01[2]
reserved
Definition: __kip-32bit.h:64
l4_umword_t _res03[2]
reserved
Definition: __kip-32bit.h:76
l4_umword_t _res06[10]
reserved
Definition: __kip-32bit.h:99
unsigned long l4_umword_t
Unsigned machine word.
Definition: l4int.h:52
l4_umword_t root_eip
Root task instruction pointer.
Definition: __kip-32bit.h:75
l4_umword_t frequency_cpu
CPU frequency in kHz.
Definition: __kip-32bit.h:95
l4_umword_t _res04[16]
reserved
Definition: __kip-32bit.h:85
l4_umword_t scheduler_granularity
for rounding time slices
Definition: __kip-32bit.h:57
l4_umword_t frequency_bus
Bus frequency.
Definition: __kip-32bit.h:96
unsigned char l4_uint8_t
Unsigned 8bit value.
Definition: l4int.h:36
l4_umword_t _res05[2]
reserved
Definition: __kip-32bit.h:92
l4_umword_t sigma1_eip
Sigma1 instruction pointer.
Definition: __kip-32bit.h:69
l4_umword_t sigma0_esp
Sigma0 start stack pointer.
Definition: __kip-32bit.h:62
l4_umword_t user_ptr
user_ptr
Definition: __kip-32bit.h:102
l4_uint8_t fill0[3]
reserved
Definition: __kip-32bit.h:46
unsigned int l4_uint32_t
Unsigned 32bit value.
Definition: l4int.h:40
#define L4_DEPRECATED(s)
Mark symbol deprecated.
Definition: compiler.h:239