void TaskEntry(void) { SysTaskCreate(keventd, NULL, "keventd", 5, NULL, 0 ); #ifdef FS rest_init(); #endif usrAppInit(); }
void usrRoot (char *pMemPoolStart, unsigned memPoolSize) { usrKernelCoreInit (); /* core kernel facilities */ cpuPwrFrameWorkInit ( CPU_PWR_TASK_P_STATE, CPU_PWR_ISR_P_STATE, CPU_PWR_UTIL_PERIOD1, CPU_PWR_UTIL_PERIOD2, CPU_PWR_HIGH_THRESHOLD, CPU_PWR_LOW_THRESHOLD ); /* CPU Power management framework Component */ cpuPwrLightMgrInit(); /* CPU Power Light utilization manager Component */ poolLibInit(); /* memory pools of fixed size items */ memInit (pMemPoolStart, memPoolSize, MEM_PART_DEFAULT_OPTIONS); /* full featured memory allocator */ memPartLibInit (pMemPoolStart, memPoolSize); /* core memory partition manager */ memInfoInit (); /* memory allocator info routines */ rtpHookLibInit (RTP_HOOK_TBL_SIZE); /* Add hook routines to be called on RTP operations. */ usrSysctlInit(); /* System control function */ usrHwSysctlInit(); /* System control hardware info registration */ rtpLibInit (RTP_HOOK_TBL_SIZE, SYSCALL_HOOK_TBL_SIZE, RTP_SIGNAL_QUEUE_SIZE, TASK_USER_EXC_STACK_OVERFLOW_SIZE, TASK_USER_EXEC_STACK_OVERFLOW_SIZE, TASK_USER_EXEC_STACK_UNDERFLOW_SIZE, RTP_FD_NUM_MAX); /* Real Time Process. */ sdLibInit (SD_HOOK_TBL_SIZE); /* provide data sharing between RTPs or kernel */ shlLibInit (); /* provide sharing of code between RTPs */ pgPoolLibInit(); /* Generic Page Pool Allocator */ pgPoolVirtLibInit(); /* Page Pool Allocator for Virtual Space */ pgPoolPhysLibInit(); /* Page Pool Allocator for Physical Space */ /* basic MMU component */ usrMmuInit ((VIRT_ADDR) pMemPoolStart, memPoolSize); /* MMU global map support */ usrTextProtect (); /* write-protect program text */ usrPmInit (); /* reboot-safe protected memory region manager */ usrEdrInit (); /* reboot-safe protected error log */ edrSystemDebugModeInit (); /* a flag indicating the system is in 'debug' mode */ pgMgrLibInit(); /* Page Manager Library */ usrKernelIntStkProtect(); /* insert underflow and overflow guard pages on interrupt stack */ taskStackGuardPageEnable(); /* insert underflow and overflow guard pages to kernel task stacks */ taskStackNoExecEnable(); /* enable non-executable kernel task stacks */ sysClkInit (); /* System clock component */ vxIpiLibInit (); /* Inter Processor Interrupts for SMP and AMP */ edrStubInit (); /* protected error log stub initialization */ /* Modified definitions for generalized coprocessor */ setLibInit (); /* sets of unspecified item types */ usrIosCoreInit (); /* core I/O system */ usrKernelExtraInit (); /* extended kernel facilities */ usrIosExtraInit (); /* extended I/O system */ sockLibInit (); /* Socket API */ usrNetworkInit (); /* Initialize the network subsystem */ selTaskDeleteHookAdd (); /* selectInit, part 2, install task delete hook */ cplusCtorsLink (); /* run compiler generated initialization functions at system startup */ usrCplusLibInit (); /* Basic support for C++ applications */ cplusDemanglerInit (); /* Support library for kernel shell and loader: provides human readable forms of C++ identifiers */ usrScInit (); /* The system call initialization sequence */ usrToolsInit (); /* software development tools */ usrAppInit (); /* call usrAppInit() (in your usrAppInit.c project file) after startup. */ usrRtpAppInitBootline (); /* Launch RTP from a string-encoded list in the boot parameters. */ }