source: atk2-sc3_fl850f1l/arch/gcc/tool_svc.h@ 117

Last change on this file since 117 was 117, checked in by ertl-ishikawa, 9 years ago

ATK2-SC3 1.3.2 FL850F1L(RH850F1L)依存部(GCC/GHS/CCRH)を追加

File size: 15.7 KB
Line 
1/*
2 * TOPPERS ATK2
3 * Toyohashi Open Platform for Embedded Real-Time Systems
4 * Automotive Kernel Version 2
5 *
6 * Copyright (C) 2011-2014 by Center for Embedded Computing Systems
7 * Graduate School of Information Science, Nagoya Univ., JAPAN
8 * Copyright (C) 2011-2014 by FUJI SOFT INCORPORATED, JAPAN
9 * Copyright (C) 2011-2013 by Spansion LLC, USA
10 * Copyright (C) 2011-2013 by NEC Communication Systems, Ltd., JAPAN
11 * Copyright (C) 2011-2014 by Panasonic Advanced Technology Development Co., Ltd., JAPAN
12 * Copyright (C) 2011-2014 by Renesas Electronics Corporation, JAPAN
13 * Copyright (C) 2011-2014 by Sunny Giken Inc., JAPAN
14 * Copyright (C) 2011-2014 by TOSHIBA CORPORATION, JAPAN
15 * Copyright (C) 2011-2014 by Witz Corporation, JAPAN
16 *
17 * 上記著作権者は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ
18 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
19 * 変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
20 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
21 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー
22 * スコード中に含まれていること.
23 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
24 * 用できる形で再配布する場合には,再配布に伴うドキュメント(利用
25 * 者マニュアルなど)に,上記の著作権表示,この利用条件および下記
26 * の無保証規定を掲載すること.
27 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
28 * 用できない形で再配布する場合には,次のいずれかの条件を満たすこ
29 * と.
30 * (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
31 * 作権表示,この利用条件および下記の無保証規定を掲載すること.
32 * (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
33 * 報告すること.
34 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
35 * 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
36 * また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
37 * 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
38 * 免責すること.
39 *
40 * 本ソフトウェアは,AUTOSAR(AUTomotive Open System ARchitecture)仕
41 * 様に基づいている.上記の許諾は,AUTOSARの知的財産権を許諾するもので
42 * はない.AUTOSARは,AUTOSAR仕様に基づいたソフトウェアを商用目的で利
43 * 用する者に対して,AUTOSARパートナーになることを求めている.
44 *
45 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お
46 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
47 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
48 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
49 * の責任を負わない.
50 *
51 * $Id: tool_svc.h 186 2015-06-25 00:37:32Z t_ishikawa $
52 */
53
54/* This file is generated from svc.def by gensvc_atk. */
55
56#ifndef TOPPERS_TOOL_SVC_H
57#define TOPPERS_TOOL_SVC_H
58
59#define SVC_TRAP(system_service) _trap_ ## system_service
60
61#ifndef TOPPERS_SVC_FUNCCALL
62#define StartOS _trap_StartOS
63#define ShutdownOS _trap_ShutdownOS
64#define ActivateTask _trap_ActivateTask
65#define TerminateTask _trap_TerminateTask
66#define ChainTask _trap_ChainTask
67#define Schedule _trap_Schedule
68#define GetTaskID _trap_GetTaskID
69#define GetTaskState _trap_GetTaskState
70#define EnableAllInterrupts _trap_EnableAllInterrupts
71#define DisableAllInterrupts _trap_DisableAllInterrupts
72#define ResumeAllInterrupts _trap_ResumeAllInterrupts
73#define SuspendAllInterrupts _trap_SuspendAllInterrupts
74#define ResumeOSInterrupts _trap_ResumeOSInterrupts
75#define SuspendOSInterrupts _trap_SuspendOSInterrupts
76#define GetISRID _trap_GetISRID
77#define DisableInterruptSource _trap_DisableInterruptSource
78#define EnableInterruptSource _trap_EnableInterruptSource
79#define GetResource _trap_GetResource
80#define ReleaseResource _trap_ReleaseResource
81#define SetEvent _trap_SetEvent
82#define ClearEvent _trap_ClearEvent
83#define GetEvent _trap_GetEvent
84#define WaitEvent _trap_WaitEvent
85#define GetAlarmBase _trap_GetAlarmBase
86#define GetAlarm _trap_GetAlarm
87#define SetRelAlarm _trap_SetRelAlarm
88#define SetAbsAlarm _trap_SetAbsAlarm
89#define CancelAlarm _trap_CancelAlarm
90#define IncrementCounter _trap_IncrementCounter
91#define GetCounterValue _trap_GetCounterValue
92#define GetElapsedValue _trap_GetElapsedValue
93#define CheckISRMemoryAccess _trap_CheckISRMemoryAccess
94#define CheckTaskMemoryAccess _trap_CheckTaskMemoryAccess
95#define CheckTaskAccess _trap_CheckTaskAccess
96#define CheckISRAccess _trap_CheckISRAccess
97#define CheckAlarmAccess _trap_CheckAlarmAccess
98#define CheckResourceAccess _trap_CheckResourceAccess
99#define CheckCounterAccess _trap_CheckCounterAccess
100#define CheckScheduleTableAccess _trap_CheckScheduleTableAccess
101#define CheckTaskOwnership _trap_CheckTaskOwnership
102#define CheckISROwnership _trap_CheckISROwnership
103#define CheckAlarmOwnership _trap_CheckAlarmOwnership
104#define CheckCounterOwnership _trap_CheckCounterOwnership
105#define CheckScheduleTableOwnership _trap_CheckScheduleTableOwnership
106#define GetApplicationID _trap_GetApplicationID
107#define CallTrustedFunction _trap_CallTrustedFunction
108#define GetApplicationState _trap_GetApplicationState
109#define GetActiveApplicationMode _trap_GetActiveApplicationMode
110#define StartScheduleTableRel _trap_StartScheduleTableRel
111#define StartScheduleTableAbs _trap_StartScheduleTableAbs
112#define StopScheduleTable _trap_StopScheduleTable
113#define NextScheduleTable _trap_NextScheduleTable
114#define GetScheduleTableStatus _trap_GetScheduleTableStatus
115#define GetFaultyContext _trap_GetFaultyContext
116#define ioc_send_generic _trap_ioc_send_generic
117#define ioc_write_generic _trap_ioc_write_generic
118#define ioc_receive_generic _trap_ioc_receive_generic
119#define ioc_read_generic _trap_ioc_read_generic
120#define ioc_empty_queue_generic _trap_ioc_empty_queue_generic
121#define AllowAccess _trap_AllowAccess
122#define TerminateApplication _trap_TerminateApplication
123#endif
124
125#ifndef TOPPERS_MACRO_ONLY
126
127LOCAL_INLINE void
128_trap_StartOS(AppModeType Mode)
129{
130 CAL_SVC_1N(void, TFN_STARTOS, AppModeType, Mode);
131}
132
133LOCAL_INLINE void
134_trap_ShutdownOS(StatusType Error)
135{
136 CAL_SVC_1N(void, TFN_SHUTDOWNOS, StatusType, Error);
137}
138
139LOCAL_INLINE StatusType
140_trap_ActivateTask(TaskType TaskID)
141{
142 CAL_SVC_1M(StatusType, TFN_ACTIVATETASK, TaskType, TaskID);
143}
144
145LOCAL_INLINE StatusType
146_trap_TerminateTask(void)
147{
148 CAL_SVC_0M(StatusType, TFN_TERMINATETASK);
149}
150
151LOCAL_INLINE StatusType
152_trap_ChainTask(TaskType TaskID)
153{
154 CAL_SVC_1M(StatusType, TFN_CHAINTASK, TaskType, TaskID);
155}
156
157LOCAL_INLINE StatusType
158_trap_Schedule(void)
159{
160 CAL_SVC_0M(StatusType, TFN_SCHEDULE);
161}
162
163LOCAL_INLINE StatusType
164_trap_GetTaskID(TaskRefType TaskID)
165{
166 CAL_SVC_1M(StatusType, TFN_GETTASKID, TaskRefType, TaskID);
167}
168
169LOCAL_INLINE StatusType
170_trap_GetTaskState(TaskType TaskID, TaskStateRefType State)
171{
172 CAL_SVC_2M(StatusType, TFN_GETTASKSTATE, TaskType, TaskID, TaskStateRefType, State);
173}
174
175LOCAL_INLINE void
176_trap_EnableAllInterrupts(void)
177{
178 CAL_SVC_0N(void, TFN_ENABLEALLINTERRUPTS);
179}
180
181LOCAL_INLINE void
182_trap_DisableAllInterrupts(void)
183{
184 CAL_SVC_0N(void, TFN_DISABLEALLINTERRUPTS);
185}
186
187LOCAL_INLINE void
188_trap_ResumeAllInterrupts(void)
189{
190 CAL_SVC_0N(void, TFN_RESUMEALLINTERRUPTS);
191}
192
193LOCAL_INLINE void
194_trap_SuspendAllInterrupts(void)
195{
196 CAL_SVC_0N(void, TFN_SUSPENDALLINTERRUPTS);
197}
198
199LOCAL_INLINE void
200_trap_ResumeOSInterrupts(void)
201{
202 CAL_SVC_0N(void, TFN_RESUMEOSINTERRUPTS);
203}
204
205LOCAL_INLINE void
206_trap_SuspendOSInterrupts(void)
207{
208 CAL_SVC_0N(void, TFN_SUSPENDOSINTERRUPTS);
209}
210
211LOCAL_INLINE ISRType
212_trap_GetISRID(void)
213{
214 CAL_SVC_0M(ISRType, TFN_GETISRID);
215}
216
217LOCAL_INLINE StatusType
218_trap_DisableInterruptSource(ISRType DisableISR)
219{
220 CAL_SVC_1M(StatusType, TFN_DISABLEINTERRUPTSOURCE, ISRType, DisableISR);
221}
222
223LOCAL_INLINE StatusType
224_trap_EnableInterruptSource(ISRType EnableISR)
225{
226 CAL_SVC_1M(StatusType, TFN_ENABLEINTERRUPTSOURCE, ISRType, EnableISR);
227}
228
229LOCAL_INLINE StatusType
230_trap_GetResource(ResourceType ResID)
231{
232 CAL_SVC_1M(StatusType, TFN_GETRESOURCE, ResourceType, ResID);
233}
234
235LOCAL_INLINE StatusType
236_trap_ReleaseResource(ResourceType ResID)
237{
238 CAL_SVC_1M(StatusType, TFN_RELEASERESOURCE, ResourceType, ResID);
239}
240
241LOCAL_INLINE StatusType
242_trap_SetEvent(TaskType TaskID, EventMaskType Mask)
243{
244 CAL_SVC_2M(StatusType, TFN_SETEVENT, TaskType, TaskID, EventMaskType, Mask);
245}
246
247LOCAL_INLINE StatusType
248_trap_ClearEvent(EventMaskType Mask)
249{
250 CAL_SVC_1M(StatusType, TFN_CLEAREVENT, EventMaskType, Mask);
251}
252
253LOCAL_INLINE StatusType
254_trap_GetEvent(TaskType TaskID, EventMaskRefType Event)
255{
256 CAL_SVC_2M(StatusType, TFN_GETEVENT, TaskType, TaskID, EventMaskRefType, Event);
257}
258
259LOCAL_INLINE StatusType
260_trap_WaitEvent(EventMaskType Mask)
261{
262 CAL_SVC_1M(StatusType, TFN_WAITEVENT, EventMaskType, Mask);
263}
264
265LOCAL_INLINE StatusType
266_trap_GetAlarmBase(AlarmType AlarmID, AlarmBaseRefType Info)
267{
268 CAL_SVC_2M(StatusType, TFN_GETALARMBASE, AlarmType, AlarmID, AlarmBaseRefType, Info);
269}
270
271LOCAL_INLINE StatusType
272_trap_GetAlarm(AlarmType AlarmID, TickRefType Tick)
273{
274 CAL_SVC_2M(StatusType, TFN_GETALARM, AlarmType, AlarmID, TickRefType, Tick);
275}
276
277LOCAL_INLINE StatusType
278_trap_SetRelAlarm(AlarmType AlarmID, TickType increment, TickType cycle)
279{
280 CAL_SVC_3M(StatusType, TFN_SETRELALARM, AlarmType, AlarmID, TickType, increment, TickType, cycle);
281}
282
283LOCAL_INLINE StatusType
284_trap_SetAbsAlarm(AlarmType AlarmID, TickType start, TickType cycle)
285{
286 CAL_SVC_3M(StatusType, TFN_SETABSALARM, AlarmType, AlarmID, TickType, start, TickType, cycle);
287}
288
289LOCAL_INLINE StatusType
290_trap_CancelAlarm(AlarmType AlarmID)
291{
292 CAL_SVC_1M(StatusType, TFN_CANCELALARM, AlarmType, AlarmID);
293}
294
295LOCAL_INLINE StatusType
296_trap_IncrementCounter(CounterType CounterID)
297{
298 CAL_SVC_1M(StatusType, TFN_INCREMENTCOUNTER, CounterType, CounterID);
299}
300
301LOCAL_INLINE StatusType
302_trap_GetCounterValue(CounterType CounterID, TickRefType Value)
303{
304 CAL_SVC_2M(StatusType, TFN_GETCOUNTERVALUE, CounterType, CounterID, TickRefType, Value);
305}
306
307LOCAL_INLINE StatusType
308_trap_GetElapsedValue(CounterType CounterID, TickRefType Value, TickRefType ElapsedValue)
309{
310 CAL_SVC_3M(StatusType, TFN_GETELAPSEDVALUE, CounterType, CounterID, TickRefType, Value, TickRefType, ElapsedValue);
311}
312
313LOCAL_INLINE AccessType
314_trap_CheckISRMemoryAccess(ISRType ISRID, MemoryStartAddressType Address, MemorySizeType Size)
315{
316 CAL_SVC_3M(AccessType, TFN_CHECKISRMEMORYACCESS, ISRType, ISRID, MemoryStartAddressType, Address, MemorySizeType, Size);
317}
318
319LOCAL_INLINE AccessType
320_trap_CheckTaskMemoryAccess(TaskType TaskID, MemoryStartAddressType Address, MemorySizeType Size)
321{
322 CAL_SVC_3M(AccessType, TFN_CHECKTASKMEMORYACCESS, TaskType, TaskID, MemoryStartAddressType, Address, MemorySizeType, Size);
323}
324
325LOCAL_INLINE ObjectAccessType
326_trap_CheckTaskAccess(ApplicationType ApplID, TaskType TaskID)
327{
328 CAL_SVC_2M(ObjectAccessType, TFN_CHECKTASKACCESS, ApplicationType, ApplID, TaskType, TaskID);
329}
330
331LOCAL_INLINE ObjectAccessType
332_trap_CheckISRAccess(ApplicationType ApplID, ISRType ISRID)
333{
334 CAL_SVC_2M(ObjectAccessType, TFN_CHECKISRACCESS, ApplicationType, ApplID, ISRType, ISRID);
335}
336
337LOCAL_INLINE ObjectAccessType
338_trap_CheckAlarmAccess(ApplicationType ApplID, AlarmType AlarmID)
339{
340 CAL_SVC_2M(ObjectAccessType, TFN_CHECKALARMACCESS, ApplicationType, ApplID, AlarmType, AlarmID);
341}
342
343LOCAL_INLINE ObjectAccessType
344_trap_CheckResourceAccess(ApplicationType ApplID, ResourceType ResID)
345{
346 CAL_SVC_2M(ObjectAccessType, TFN_CHECKRESOURCEACCESS, ApplicationType, ApplID, ResourceType, ResID);
347}
348
349LOCAL_INLINE ObjectAccessType
350_trap_CheckCounterAccess(ApplicationType ApplID, CounterType CounterID)
351{
352 CAL_SVC_2M(ObjectAccessType, TFN_CHECKCOUNTERACCESS, ApplicationType, ApplID, CounterType, CounterID);
353}
354
355LOCAL_INLINE ObjectAccessType
356_trap_CheckScheduleTableAccess(ApplicationType ApplID, ScheduleTableType ScheduleTableID)
357{
358 CAL_SVC_2M(ObjectAccessType, TFN_CHECKSCHEDULETABLEACCESS, ApplicationType, ApplID, ScheduleTableType, ScheduleTableID);
359}
360
361LOCAL_INLINE ApplicationType
362_trap_CheckTaskOwnership(TaskType TaskID)
363{
364 CAL_SVC_1M(ApplicationType, TFN_CHECKTASKOWNERSHIP, TaskType, TaskID);
365}
366
367LOCAL_INLINE ApplicationType
368_trap_CheckISROwnership(ISRType ISRID)
369{
370 CAL_SVC_1M(ApplicationType, TFN_CHECKISROWNERSHIP, ISRType, ISRID);
371}
372
373LOCAL_INLINE ApplicationType
374_trap_CheckAlarmOwnership(AlarmType AlarmID)
375{
376 CAL_SVC_1M(ApplicationType, TFN_CHECKALARMOWNERSHIP, AlarmType, AlarmID);
377}
378
379LOCAL_INLINE ApplicationType
380_trap_CheckCounterOwnership(CounterType CounterID)
381{
382 CAL_SVC_1M(ApplicationType, TFN_CHECKCOUNTEROWNERSHIP, CounterType, CounterID);
383}
384
385LOCAL_INLINE ApplicationType
386_trap_CheckScheduleTableOwnership(ScheduleTableType ScheduleTableID)
387{
388 CAL_SVC_1M(ApplicationType, TFN_CHECKSCHEDULETABLEOWNERSHIP, ScheduleTableType, ScheduleTableID);
389}
390
391LOCAL_INLINE ApplicationType
392_trap_GetApplicationID(void)
393{
394 CAL_SVC_0M(ApplicationType, TFN_GETAPPLICATIONID);
395}
396
397LOCAL_INLINE StatusType
398_trap_CallTrustedFunction(TrustedFunctionIndexType FunctionIndex, TrustedFunctionParameterRefType FunctionParams)
399{
400 CAL_SVC_2M(StatusType, TFN_CALLTRUSTEDFUNCTION, TrustedFunctionIndexType, FunctionIndex, TrustedFunctionParameterRefType, FunctionParams);
401}
402
403LOCAL_INLINE StatusType
404_trap_GetApplicationState(ApplicationType Application, ApplicationStateRefType Value)
405{
406 CAL_SVC_2M(StatusType, TFN_GETAPPLICATIONSTATE, ApplicationType, Application, ApplicationStateRefType, Value);
407}
408
409LOCAL_INLINE AppModeType
410_trap_GetActiveApplicationMode(void)
411{
412 CAL_SVC_0M(AppModeType, TFN_GETACTIVEAPPLICATIONMODE);
413}
414
415LOCAL_INLINE StatusType
416_trap_StartScheduleTableRel(ScheduleTableType ScheduleTableID, TickType Offset)
417{
418 CAL_SVC_2M(StatusType, TFN_STARTSCHEDULETABLEREL, ScheduleTableType, ScheduleTableID, TickType, Offset);
419}
420
421LOCAL_INLINE StatusType
422_trap_StartScheduleTableAbs(ScheduleTableType ScheduleTableID, TickType Start)
423{
424 CAL_SVC_2M(StatusType, TFN_STARTSCHEDULETABLEABS, ScheduleTableType, ScheduleTableID, TickType, Start);
425}
426
427LOCAL_INLINE StatusType
428_trap_StopScheduleTable(ScheduleTableType ScheduleTableID)
429{
430 CAL_SVC_1M(StatusType, TFN_STOPSCHEDULETABLE, ScheduleTableType, ScheduleTableID);
431}
432
433LOCAL_INLINE StatusType
434_trap_NextScheduleTable(ScheduleTableType ScheduleTableID_From, ScheduleTableType ScheduleTableID_To)
435{
436 CAL_SVC_2M(StatusType, TFN_NEXTSCHEDULETABLE, ScheduleTableType, ScheduleTableID_From, ScheduleTableType, ScheduleTableID_To);
437}
438
439LOCAL_INLINE StatusType
440_trap_GetScheduleTableStatus(ScheduleTableType ScheduleTableID, ScheduleTableStatusRefType ScheduleStatus)
441{
442 CAL_SVC_2M(StatusType, TFN_GETSCHEDULETABLESTATUS, ScheduleTableType, ScheduleTableID, ScheduleTableStatusRefType, ScheduleStatus);
443}
444
445LOCAL_INLINE FaultyContextType
446_trap_GetFaultyContext(void)
447{
448 CAL_SVC_0M(FaultyContextType, TFN_GETFAULTYCONTEXT);
449}
450
451LOCAL_INLINE Std_ReturnType
452_trap_ioc_send_generic(IocType IocWrapperId, const void *in)
453{
454 CAL_SVC_2M(Std_ReturnType, TFN_IOC_SEND_GENERIC, IocType, IocWrapperId, const void *, in);
455}
456
457LOCAL_INLINE Std_ReturnType
458_trap_ioc_write_generic(IocType IocWrapperId, const void *in)
459{
460 CAL_SVC_2M(Std_ReturnType, TFN_IOC_WRITE_GENERIC, IocType, IocWrapperId, const void *, in);
461}
462
463LOCAL_INLINE Std_ReturnType
464_trap_ioc_receive_generic(IocType IocId, void *out)
465{
466 CAL_SVC_2M(Std_ReturnType, TFN_IOC_RECEIVE_GENERIC, IocType, IocId, void *, out);
467}
468
469LOCAL_INLINE Std_ReturnType
470_trap_ioc_read_generic(IocType IocId, void *out)
471{
472 CAL_SVC_2M(Std_ReturnType, TFN_IOC_READ_GENERIC, IocType, IocId, void *, out);
473}
474
475LOCAL_INLINE Std_ReturnType
476_trap_ioc_empty_queue_generic(IocType IocId)
477{
478 CAL_SVC_1M(Std_ReturnType, TFN_IOC_EMPTY_QUEUE_GENERIC, IocType, IocId);
479}
480
481LOCAL_INLINE StatusType
482_trap_AllowAccess(void)
483{
484 CAL_SVC_0M(StatusType, TFN_ALLOWACCESS);
485}
486
487LOCAL_INLINE StatusType
488_trap_TerminateApplication(ApplicationType Application, RestartType RestartOption)
489{
490 CAL_SVC_2M(StatusType, TFN_TERMINATEAPPLICATION, ApplicationType, Application, RestartType, RestartOption);
491}
492
493#endif /* TOPPERS_MACRO_ONLY */
494
495#endif /* TOPPERS_TOOL_SVC_H */
Note: See TracBrowser for help on using the repository browser.