]> rtime.felk.cvut.cz Git - l4.git/blob - kernel/fiasco/src/abi/arm/kip-arm.cpp
05dfdae27aeacdbcf066bc2e86f9880bc286dc76
[l4.git] / kernel / fiasco / src / abi / arm / kip-arm.cpp
1 /*
2  * ARM Kernel-Info Page
3  */
4
5 INTERFACE [arm]:
6
7 #include "types.h"
8
9 EXTENSION class Kip
10 {
11 public:
12   struct Platform_info
13   {
14     Unsigned32 cpuid;
15     Unsigned32 mp;
16   };
17
18   /* 0x00 */
19   Mword      magic;
20   Mword      version;
21   Unsigned8  offset_version_strings;
22   Unsigned8  fill0[3];
23   Unsigned8  kip_sys_calls;
24   Unsigned8  fill1[3];
25
26   /* the following stuff is undocumented; we assume that the kernel
27      info page is located at offset 0x1000 into the L4 kernel boot
28      image so that these declarations are consistent with section 2.9
29      of the L4 Reference Manual */
30
31   /* 0x10 */
32   Mword      sched_granularity;
33   Mword      _res1[3];
34
35   /* 0x20 */
36   Mword      sigma0_sp, sigma0_ip;
37   Mword      _res2[2];
38
39   /* 0x30 */
40   Mword      sigma1_sp, sigma1_ip;
41   Mword      _res3[2];
42
43   /* 0x40 */
44   Mword      root_sp, root_ip;
45   Mword      _res4[2];
46
47   /* 0x50 */
48   Mword      _res_50;
49   Mword      _mem_info;
50   Mword      _res_58[2];
51
52   /* 0x60 */
53   Mword      _res5[16];
54
55   /* 0xA0 */
56   volatile Cpu_time clock;
57   Unsigned64 _res6;
58
59   /* 0xB0 */
60   Mword      frequency_cpu;
61   Mword      frequency_bus;
62
63   /* 0xB8 */
64   Mword      _res7[10];
65
66   /* 0xE0 */
67   Mword      user_ptr;
68   Mword      vhw_offset;
69   Unsigned32 _res8[2];
70
71   /* 0xF0 */
72   Platform_info platform_info;
73   Unsigned32 __reserved[18];
74 };
75
76 //---------------------------------------------------------------------------
77 IMPLEMENTATION [arm && debug]:
78
79 IMPLEMENT inline
80 void
81 Kip::debug_print_syscalls() const
82 {}