1<?xml version="1.0" ?> 2<!-- 3 Copyright 2017, Data61 4 Commonwealth Scientific and Industrial Research Organisation (CSIRO) 5 ABN 41 687 119 230. 6 7 This software may be distributed and modified according to the terms of 8 the BSD 2-Clause license. Note that NO WARRANTY is provided. 9 See "LICENSE_BSD2.txt" for details. 10 11 @TAG(DATA61_BSD) 12 --> 13<!-- Please see syscalls.xsd to see the format of this file --> 14<syscalls> 15 <!-- official API syscalls --> 16 <api> 17 <config> 18 <syscall name="Call" /> 19 <syscall name="ReplyRecv" /> 20 <syscall name="NBSendRecv" /> 21 <syscall name="NBSendWait" /> 22 <syscall name="Send" /> 23 <syscall name="NBSend" /> 24 <syscall name="Recv" /> 25 <syscall name="NBRecv" /> 26 <syscall name="Wait" /> 27 <syscall name="NBWait" /> 28 <syscall name="Yield" /> 29 </config> 30 </api> 31 <!-- Syscalls on the unknown syscall path. These definitions will be wrapped in #if condition --> 32 <debug> 33 <config condition="defined CONFIG_PRINTING"> 34 <syscall name="DebugPutChar" /> 35 <syscall name="DebugDumpScheduler" /> 36 </config> 37 <config condition="defined CONFIG_DEBUG_BUILD"> 38 <syscall name="DebugHalt" /> 39 <syscall name="DebugCapIdentify" /> 40 <syscall name="DebugSnapshot" /> 41 <syscall name="DebugNameThread"/> 42 </config> 43 <config condition="defined CONFIG_DANGEROUS_CODE_INJECTION"> 44 <syscall name="DebugRun"/> 45 </config> 46 <config condition="defined CONFIG_ENABLE_BENCHMARKS"> 47 <syscall name="BenchmarkFlushCaches" /> 48 <syscall name="BenchmarkResetLog" /> 49 <syscall name="BenchmarkFinalizeLog" /> 50 <syscall name="BenchmarkSetLogBuffer" /> 51 <syscall name="BenchmarkNullSyscall" /> 52 </config> 53 <config condition="defined CONFIG_BENCHMARK_TRACK_UTILISATION"> 54 <syscall name="BenchmarkGetThreadUtilisation" /> 55 <syscall name="BenchmarkResetThreadUtilisation" /> 56 </config> 57 <config condition="defined CONFIG_KERNEL_X86_DANGEROUS_MSR"> 58 <syscall name="X86DangerousWRMSR"/> 59 <syscall name="X86DangerousRDMSR"/> 60 </config> 61 <!-- This is not a debug syscall, but it needs to not appear in the 'API' syscall list 62 so that the check of 'is this a valid syscall' can remain a simple range check. 63 Therefore we'll put this here and the arch code will handle it before 64 passing to handleUnknownSyscall --> 65 <config condition="defined CONFIG_VTX"> 66 <syscall name="VMEnter"/> 67 </config> 68 </debug> 69</syscalls> 70