/** * @file % !FILENAME % * * @section desc File description * * Dispatch table for application % !CPUNAME % * Automatically generated by goil on % !TIMESTAMP % * from root OIL file % !OILFILENAME % * * @section copyright Copyright * * Trampoline OS * * Trampoline is copyright (c) IRCCyN 2005-2010 * Trampoline is protected by the French intellectual property law. * * This software is distributed under the Lesser GNU Public Licence * * @section infos File informations * * $Date$ * $Rev$ * $Author$ * $URL$ */ #include "tpl_dispatch_table.h" % foreach api_sec in APIUSED do foreach file in api_sec::FILE do % #include "% !file::VALUE %.h"% end foreach end foreach # Build a list of system calls sorted by CALLABLE_BY_ISR1 let listOfApiFunc := @( ) foreach api_sec in APIUSED do foreach api_func in api_sec::SYSCALL do let listOfApiFunc += api_func end foreach end foreach sort listOfApiFunc by CALLABLE_BY_ISR1 > % #define OS_START_SEC_CONST_UNSPECIFIED #include "tpl_memmap.h" CONST(tpl_system_call, OS_CONST) tpl_dispatch_table[SYSCALL_COUNT] = { /* os services */ % foreach api_func in listOfApiFunc do % (tpl_system_call) % !api_func::KERNEL between %, % end foreach % }; % # In multicore, we retrieve in this table if a service should lock the kernel # or not if OS::NUMBER_OF_CORES > 1 then% /* Lists services that should lock the kernel */ CONST(tpl_bool, OS_CONST) tpl_service_lock_kernel[SYSCALL_COUNT] = { % let api_func_name := "" foreach api_func in listOfApiFunc do let api_func_name := api_func::NAME let lock_kernel := exists api_func::LOCK_KERNEL default (true) % (tpl_bool) % !TRUEFALSE(lock_kernel) %% between %, /* % !api_func_name % */ % after % /* % !api_func_name % */% end foreach % };% end if% #define OS_STOP_SEC_CONST_UNSPECIFIED #include "tpl_memmap.h" % if OS::WITHORTI then% #define OS_START_SEC_VAR_UNSPECIFIED #include "tpl_memmap.h"% if OS::NUMBER_OF_CORES > 1 then% VAR(uint32, OS_VAR) tpl_servicetrace[NUMBER_OF_CORES];% else% VAR(uint32, OS_VAR) tpl_servicetrace;% end if% #define OS_STOP_SEC_VAR_UNSPECIFIED #include "tpl_memmap.h" % end if % /* End of file tpl_dispatch_table.c */