1290866Sbapt<?xml version="1.0" ?>
2290866Sbapt<!--
3290866Sbapt  Copyright 2017, Data61
4290866Sbapt  Commonwealth Scientific and Industrial Research Organisation (CSIRO)
5290866Sbapt  ABN 41 687 119 230.
6290866Sbapt
7290866Sbapt  This software may be distributed and modified according to the terms of
8290866Sbapt  the BSD 2-Clause license. Note that NO WARRANTY is provided.
9290866Sbapt  See "LICENSE_BSD2.txt" for details.
10290866Sbapt
11290866Sbapt     @TAG(DATA61_BSD)
12290866Sbapt  -->
13290866Sbapt<api name="ObjectApiAarch32" label_prefix="aarch32_">
14290866Sbapt    <struct name="seL4_UserContext">
15290866Sbapt        <member name="pc"/>
16290866Sbapt        <member name="sp"/>
17290866Sbapt        <member name="cpsr"/>
18290866Sbapt        <member name="r0"/>
19290866Sbapt        <member name="r1"/>
20290866Sbapt        <member name="r8"/>
21290866Sbapt        <member name="r9"/>
22290866Sbapt        <member name="r10"/>
23290866Sbapt        <member name="r11"/>
24290866Sbapt        <member name="r12"/>
25290866Sbapt        <member name="r2"/>
26290866Sbapt        <member name="r3"/>
27290866Sbapt        <member name="r4"/>
28290866Sbapt        <member name="r5"/>
29290866Sbapt        <member name="r6"/>
30290866Sbapt        <member name="r7"/>
31290866Sbapt        <member name="r14"/>
32290866Sbapt    </struct>
33290866Sbapt    <interface name="seL4_ARM_PageDirectory" manual_name="Page Directory">
34290866Sbapt        <method id="ARMPDClean_Data" name="Clean_Data" manual_name="Clean Data" manual_label="pd_clean">
35290866Sbapt                <brief>
36290866Sbapt                    Clean cached pages within a page directory
37290866Sbapt                </brief>
38290866Sbapt                <description>
39290866Sbapt                    <docref>See <autoref label="ch:vspace"/>.</docref>
40290866Sbapt                </description>
41290866Sbapt            <param dir="in" name="start" type="seL4_Word"
42290866Sbapt            description="Start address"/>
43290866Sbapt            <param dir="in" name="end" type="seL4_Word"
44290866Sbapt            description="End address"/>
45290866Sbapt        </method>
46290866Sbapt        <method id="ARMPDInvalidate_Data" name="Invalidate_Data" manual_name="Invalidate Data" manual_label="pd_invalidate">
47290866Sbapt                <brief>
48290866Sbapt                    Invalidate cached pages within a page directory
49290866Sbapt                </brief>
50290866Sbapt             <description>
51                 <docref>See <autoref label="ch:vspace"/>.</docref>
52             </description>
53            <param dir="in" name="start" type="seL4_Word"
54            description="Start address"/>
55            <param dir="in" name="end" type="seL4_Word"
56            description="End address"/>
57        </method>
58        <method id="ARMPDCleanInvalidate_Data" name="CleanInvalidate_Data"
59            manual_name="Clean and Invalidate Data" manual_label="pd_clean_invalidate">
60                <brief>
61                    Clean and invalidate cached pages within a page directory
62                </brief>
63             <description>
64                 <docref>See <autoref label="ch:vspace"/>.</docref>
65             </description>
66            <param dir="in" name="start" type="seL4_Word"
67            description="Start address"/>
68            <param dir="in" name="end" type="seL4_Word"
69            description="End address"/>
70        </method>
71        <method id="ARMPDUnify_Instruction" name="Unify_Instruction" manual_name="Unify Instruction" manual_label="pd_unify_instruction">
72                <brief>
73                    Clean and invalidate cached instruction pages to point of unification
74                </brief>
75             <description>
76                 <docref>See <autoref label="ch:vspace"/>.</docref>
77             </description>
78            <param dir="in" name="start" type="seL4_Word"
79            description="Start address"/>
80            <param dir="in" name="end" type="seL4_Word"
81            description="End address"/>
82        </method>
83    </interface>
84</api>
85