summaryrefslogtreecommitdiffstats
path: root/cpukit/rtems/Makefile.am (unfollow)
Commit message (Collapse)AuthorFilesLines
2018-10-10build: Merge rtems/Makefile.amSebastian Huber1-202/+0
2018-10-09build: Remove specialized CPPFLAGSSebastian Huber1-1/+0
2018-10-01rtems: Add rtems_task_exit()Sebastian Huber1-0/+1
Update #3533.
2018-06-05rtems: Move _Status_Object_name_errors_to_statusSebastian Huber1-0/+1
Move _Status_Object_name_errors_to_status to a separate file to avoid a dependency on errno. Dependencies to errno are hard to be removed by the linker garbage collection.
2018-01-25Remove make preinstallChris Johns1-55/+0
A speciality of the RTEMS build system was the make preinstall step. It copied header files from arbitrary locations into the build tree. The header files were included via the -Bsome/build/tree/path GCC command line option. This has at least seven problems: * The make preinstall step itself needs time and disk space. * Errors in header files show up in the build tree copy. This makes it hard for editors to open the right file to fix the error. * There is no clear relationship between source and build tree header files. This makes an audit of the build process difficult. * The visibility of all header files in the build tree makes it difficult to enforce API barriers. For example it is discouraged to use BSP-specifics in the cpukit. * An introduction of a new build system is difficult. * Include paths specified by the -B option are system headers. This may suppress warnings. * The parallel build had sporadic failures on some hosts. This patch removes the make preinstall step. All installed header files are moved to dedicated include directories in the source tree. Let @RTEMS_CPU@ be the target architecture, e.g. arm, powerpc, sparc, etc. Let @RTEMS_BSP_FAMILIY@ be a BSP family base directory, e.g. erc32, imx, qoriq, etc. The new cpukit include directories are: * cpukit/include * cpukit/score/cpu/@RTEMS_CPU@/include * cpukit/libnetworking The new BSP include directories are: * bsps/include * bsps/@RTEMS_CPU@/include * bsps/@RTEMS_CPU@/@RTEMS_BSP_FAMILIY@/include There are build tree include directories for generated files. The include directory order favours the most general header file, e.g. it is not possible to override general header files via the include path order. The "bootstrap -p" option was removed. The new "bootstrap -H" option should be used to regenerate the "headers.am" files. Update #3254.
2017-07-11rtems: Add rtems_scheduler_ident_by_processor_setSebastian Huber1-0/+1
Update #3070.
2017-07-11rtems: Add rtems_scheduler_ident_by_processor()Sebastian Huber1-0/+1
Update #3069.
2016-11-10rtems: Add scheduler processor add/removeSebastian Huber1-0/+2
Update #2797.
2016-11-02rtems: Add rtems_task_iterate()Sebastian Huber1-0/+1
Update #2423.
2016-09-21rtems: Add rtems_task_get_priority()Sebastian Huber1-0/+1
Update #2556. Update #2784.
2016-05-26score: Add Status_Control for all APIsSebastian Huber1-3/+0
Unify the status codes of the Classic and POSIX API to use the new enum Status_Control. This eliminates the Thread_Control::Wait::timeout_code field and the timeout parameter of _Thread_queue_Enqueue_critical() and _MPCI_Send_request_packet(). It gets rid of the status code translation tables and instead uses simple bit operations to get the status for a particular API. This enables translation of status code constants at compile time. Add _Thread_Wait_get_status() to avoid direct access of thread internal data structures.
2016-05-12mpci: Delete unused region supportSebastian Huber1-2/+0
2016-05-04rtems: Remove task variablesSebastian Huber1-7/+0
Update #2494. Update #2555.
2016-04-14Obsolete rtems_clock_get() directive.Joel Sherrill1-1/+0
This service was marked as deprecated long prior to the 4.11 release series and is now being removed. closes #2676.
2016-02-03rtems: Delete empty _RTEMS_API_Initialize()Sebastian Huber1-1/+0
2016-02-03Optional Classic Barrier initializationSebastian Huber1-1/+0
Update #2408.
2016-02-03Optional Classic Rate Monotonic initializationSebastian Huber1-1/+0
Update #2408.
2016-02-03Optional Classic Dual-Ported Memory initializationSebastian Huber1-1/+0
Update #2408.
2016-02-03Optional Classic Region initializationSebastian Huber1-1/+0
Update #2408.
2016-02-03Optional Classic Partition initializationSebastian Huber1-1/+0
Update #2408.
2016-02-03Optional Classic Semaphore initializationSebastian Huber1-1/+0
Update #2408.
2016-02-03Optional Classic Message Queue initializationSebastian Huber1-1/+0
Update #2408.
2016-02-03Optional Classic Event initializationSebastian Huber1-1/+0
Update #2408.
2016-02-03Optional Classic Signal initializationSebastian Huber1-1/+0
Update #2408.
2016-02-03Optional Classic Timer initializationSebastian Huber1-1/+0
Update #2408.
2016-02-03Optional Classic Tasks initializationSebastian Huber1-1/+0
Update #2408.
2015-12-24api: Remove deprecated NotepadsAun-Ali Zaidi1-2/+0
Notepads where a feature of RTEMS' tasks that simply functioned in the same way as POSIX keys or threaded local storage (TLS). They were introduced well before per task variables, which are also deprecated, and were barely used in favor of their POSIX alternatives. In addition to their scarce usage, Notepads took up unnecessary memory. For each task: - 16 32-bit integers were allocated. - A total of 64 bytes per task per thread. This is especially critical in low memory and safety-critical applications. They are also defined as uint32_t, and therefore are not guaranteed to hold a pointer. Lastly, they are not portable solutions for SMP and uniprocessor systems, like POSIX keys and TLS. updates #2493.
2015-05-20timecounter: Use in RTEMSAlexander Krutwig1-2/+0
Replace timestamp implementation with FreeBSD bintime and timecounters. New test sptests/sptimecounter02. Update #2271.
2015-05-19score: Generalize _Event_Timeout()Sebastian Huber1-1/+0
Add a thread wait timeout code. Replace _Event_Timeout() with a general purpose _Thread_Timeout() watchdog handler. Update #2273.
2015-03-05score: Implement fine-grained locking for eventsSebastian Huber1-1/+0
Use the ISR lock of the thread object to protect the event state and use the Giant lock only for the blocking operations. Update #2273.
2014-08-25rtems: Inline rtems_clock_get_ticks_since_boot()Sebastian Huber1-1/+0
Update documentation.
2014-06-30rtems: Delete unused <rtems/rtems/atomic.h>Sebastian Huber1-3/+0
2014-05-28score: Multiprocessor Resource Sharing ProtocolSebastian Huber1-0/+1
Add basic support for the Multiprocessor Resource Sharing Protocol (MrsP). The Multiprocessor Resource Sharing Protocol (MrsP) is defined in A. Burns and A.J. Wellings, A Schedulability Compatible Multiprocessor Resource Sharing Protocol - MrsP, Proceedings of the 25th Euromicro Conference on Real-Time Systems (ECRTS 2013), July 2013. It is a generalization of the Priority Ceiling Protocol to SMP systems. Each MrsP semaphore uses a ceiling priority per scheduler instance. These ceiling priorities can be specified with rtems_semaphore_set_priority(). A task obtaining or owning a MrsP semaphore will execute with the ceiling priority for its scheduler instance as specified by the MrsP semaphore object. Tasks waiting to get ownership of a MrsP semaphore will not relinquish the processor voluntarily. In case the owner of a MrsP semaphore gets preempted it can ask all tasks waiting for this semaphore to help out and temporarily borrow the right to execute on one of their assigned processors. The help out feature is not implemented with this patch.
2014-04-15rtems: Add task get/set schedulerSebastian Huber1-0/+2
2014-04-15rtems: Add scheduler get processorsSebastian Huber1-0/+1
2014-04-15rtems: Add scheduler identificationSebastian Huber1-0/+1
2014-04-15score: Task get/set affinitySebastian Huber1-7/+2
Make rtems_task_get_affinity() and rtems_task_set_affinity() available on non-SMP configurations. Allow larger CPU sets.
2014-04-11rtems: Rename rtems_smp_get_current_processor()Sebastian Huber1-0/+1
Rename rtems_smp_get_current_processor() in rtems_get_current_processor(). Make rtems_get_current_processor() a function in uni-processor configurations to enable ABI compatibility with SMP configurations.
2014-04-11rtems: Rename rtems_smp_get_processor_count()Sebastian Huber1-0/+2
Rename rtems_smp_get_processor_count() in rtems_get_processor_count(). Make rtems_get_processor_count() a function in uni-processor configurations to enable ABI compatibility with SMP configurations.
2014-04-04Disable per task variables when SMP is enabledJoel Sherrill1-0/+3
Per task variables are inherently unsafe in SMP systems. This patch disables them from the build and adds warnings in the appropriate documentation and configuration sections.
2014-03-31score: PR2152: Use allocator mutex for objectsSebastian Huber1-1/+0
Use allocator mutex for objects allocate/free. This prevents that the thread dispatch latency depends on the workspace/heap fragmentation.
2014-03-07rtems: Add Classic API get and set affinity methods.Jennifer Averett1-0/+7
Add the following methods: + rtems_task_get_affinity + rtems_task_set_affinity
2014-02-17Require presence of <stdatomic.h> for SMP supportSebastian Huber1-1/+1
2014-02-12score: Change debug helper functionsSebastian Huber1-1/+1
Rename rtems_internal_error_description() to rtems_internal_error_text(). Rename rtems_fatal_source_description() to rtems_fatal_source_text(). Rename rtems_status_code_description() to rtems_status_text(). Remove previous implementation of rtems_status_text().
2014-02-06rtems: Add rtems_status_code_description()Sebastian Huber1-0/+1
2013-12-24cpukit/rtems: Add rtems_clock_get_uptime_nanoseconds to the RTEMS API.Chris Johns1-0/+1
Add Timestamp support in the score to return a timestamp in nanoseconds. Add a test. Update the RTEMS API documentation.
2013-08-08PR766: Delete __RTEMS_INSIDE__Sebastian Huber1-2/+0
2013-07-26rtems: Create signal implementation headerSebastian Huber1-0/+1
Move implementation specific parts of signal.h into new header file signalimpl.h. The signal.h contains now only the application visible API.
2013-07-23rtems: Create tasks implementation headerSebastian Huber1-2/+1
Move implementation specific parts of tasks.h and tasks.inl into new header file tasksimpl.h. The tasks.h contains now only the application visible API.
2013-07-23rtems: Create region implementation headerSebastian Huber1-1/+1
Move implementation specific parts of region.h and region.inl into new header file regionimpl.h. The region.h contains now only the application visible API.