summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* rtems: Fix message manager documentationSebastian Huber2021-09-161-2/+2
| | | | | | | Correct the description of the ``count`` parameter of rtems_message_queue_flush(). Update #4508.
* arm/xilinx: Fix zynq-uart interrupt receiveChris Johns2021-09-163-57/+67
| | | | | | | | - Trigger on a single character entering the RX FIFO - Disable the RX timeout - Send up to a FIFO full of data
* testsuites: Wrap putcharAlex White2021-09-1612-0/+12
| | | | The linker flag to wrap putchar was lost in translation from make to waf.
* rtems: Add header files to Doxygen groupsSebastian Huber2021-09-157-0/+14
|
* rtems: Move Doxygen group definitionSebastian Huber2021-09-152-10/+8
| | | | | Move the definition of the top-level Classic API implementation group to an implementation header file.
* rtems: Improve Classic API group descriptionSebastian Huber2021-09-151-1/+1
|
* rtems: Fix message manager documentationSebastian Huber2021-09-151-8/+10
| | | | | | | Remove bogus return status from rtems_message_queue_receive(). Clarify rtems_message_queue_flush(). Update #4508.
* rtems: Generate <rtems/extension.h>Sebastian Huber2021-09-151-177/+588
| | | | | | | | | | | | Remove the duplicated description which is an out dated copy and paste from the Classic API Guide. Instead, thoroughly document the individual extensions. Change license to BSD-2-Clause according to file histories and documentation re-licensing agreement. Update #3899. Update #3993.
* rtems: Generate <rtems/rtems/cache.h>Sebastian Huber2021-09-151-150/+512
| | | | | | | | | Change license to BSD-2-Clause according to file histories and documentation re-licensing agreement. Update #3899. Update #3993. Update #4513.
* build: Remove invalid attributesSebastian Huber2021-09-142-2/+0
|
* bsps/arm: Fix ABI flags for Cortex-M4Sebastian Huber2021-09-142-3/+5
| | | | Close #4504.
* bsps/zynqmp: Added I2C support for ZynqMPStephen Clark2021-09-099-0/+167
| | | | Added I2C drivers for ZynqMP and updated build system accordingly.
* bsps/zynq: Moved general i2c files to shared directoriesStephen Clark2021-09-094-5/+5
| | | | | Certain files related to the Zynq BSP's I2C driver are useable by the ZynqMP BSP as well. Moved these files to shared directory in anticipation of I2C support for ZynqMP.
* rtems: Initialize count of postponed jobsSebastian Huber2021-09-091-0/+1
| | | | | | | | | The rtems_rate_monotonic_get_status() directive returns an arbitrary number for the count of postponed jobs if it is called for a newly created period object. Set the count of postponed jobs to zero during object creation. Close #4511.
* rtems: Document time of day constraintsSebastian Huber2021-09-061-4/+13
| | | | Update #4338.
* score: Split up rbtreenext.cSebastian Huber2021-09-066-28/+183
| | | | | | | | | | Split up rbtreenext.c since only _RBTree_Minimum() is used by the operating system core services (thread queues and the EDF scheduler). Change license to BSD-2-Clause according to file history and re-licensing agreement. Update #3053.
* score: Change TOD_LATEST_YEAR to 2099Sebastian Huber2021-09-067-90/+58
| | | | | | | | This simplifies the implementation a bit. Declare _TOD_Days_to_date[] in <rtems/score/todimpl.h>. Make _TOD_Days_per_month[] and _TOD_Days_since_last_leap_year[] static. Update #4338.
* score: Simplify _TOD_Validate()Sebastian Huber2021-09-061-9/+25
| | | | Split up the multi line if statement into smaller parts.
* score: Limit the CLOCK_REALTIME settingSebastian Huber2021-09-063-1/+24
| | | | | Limit the CLOCK_REALTIME setting to ensure that the CLOCK_REALTIME is defined for a system uptime of at least 114 years.
* score: Add _TOD_Is_valid_new_time_of_day()Sebastian Huber2021-09-067-22/+87
| | | | | | Move the TOD validation to the callers of _TOD_Set(). This avoids dead code in case only rtems_clock_set() is used in an application because rtems_clock_set() always calls _TOD_Set() with a valid time of day.
* score: Remove TOD_TICKS_PER_SECOND_method()Sebastian Huber2021-09-064-50/+2
| | | | Use _Watchdog_Ticks_per_second instead.
* score: Return status in _TOD_Adjust()Sebastian Huber2021-09-063-4/+14
|
* score: Move _Thread_Dispatch()Sebastian Huber2021-09-034-20/+63
| | | | | | | | | | | | The _Thread_Dispatch() function was customized over time and now the work is done by _Thread_Do_dispatch() and specialized wrappers. The plain _Thread_Dispatch() is now only used in some CPU ports. Move it to a separate file to avoid dead code in the general. Change license to BSD-2-Clause according to file history and re-licensing agreement. Update #3053.
* score: Document thread queue operationsSebastian Huber2021-09-033-11/+63
|
* bsps/leon3: Rename fatal error codeSebastian Huber2021-09-022-2/+2
| | | | | | Rename LEON3_FATAL_INVALID_CACHE_CONFIG_MAIN_PROCESSOR in LEON3_FATAL_INVALID_CACHE_CONFIG_BOOT_PROCESSOR since the term "boot processor" is used elsewhere in the code base.
* Improve test of rtems_interrupt_get_affinity()Sebastian Huber2021-09-021-18/+21
| | | | | Use a CPU set which is larger than the internal processor set representation.
* validation: Improve generated test codeSebastian Huber2021-09-0220-1331/+1679
| | | | | | | Move the transition map members of the test context to a dedicated structure. Move the transition variant pre-condition prepare, action, and post-condition checks to a separate function to reduce the indentation level and allow skipping of transition variants.
* libtest: Return fixture context in T_case_begin()Sebastian Huber2021-09-022-2/+3
| | | | This makes it similar to T_push_fixture().
* bsps/imxrt: Improve SPI driverChristian Mauderer2021-09-021-73/+124
| | | | | | | | It wasn't possible to keep the CS line low between multiple message descriptors in one transfer. This patch reworks the driver so that it is possible. Update #4180
* score: Update priority only if necessarySebastian Huber2021-09-013-12/+16
| | | | | | In _Thread_queue_Flush_critical(), update the priority of the thread queue owner only if necessary. The scheduler update priority operation could be expensive.
* score: Remove _Thread_queue_Unblock_critical()Sebastian Huber2021-09-012-60/+12
| | | | | This function was only used in one place. Replace it with a call to _Thread_queue_Resume().
* score: Remove _Thread_queue_First_locked()Sebastian Huber2021-09-012-29/+9
| | | | | The _Thread_queue_First_locked() was only used in one place. Move the code of this inline function to this place.
* score: Fix blocking message queue receiveSebastian Huber2021-09-014-82/+62
| | | | | | | | | | | | | In order to ensure FIFO fairness across schedulers, the thread queue surrender operation must be used to dequeue a thread from the thread queue. The thread queue extract operation is intended for timeouts. Add _Thread_queue_Resume() which may be used to make extracted or surrendered threads ready again. Remove the now unused _Thread_queue_Extract_critical() function. Close #4509.
* score: Fix priority discipline handlingSebastian Huber2021-09-018-148/+196
| | | | | | | | | | | The priority queues in clustered scheduling configurations use a per scheduler priority queue rotation to ensure FIFO fairness across schedulers. This mechanism is implemented in the thread queue surrender operation. Unfortunately some semaphore and message queue directives used wrongly the thread queue extract operation. Fix this through the use of _Thread_queue_Surrender(). Update #4358.
* score: Document Futex HandlerSebastian Huber2021-09-011-2/+40
| | | | | | | | | | | | | | The behaviour of the futex operations is defined by Linux: https://man7.org/linux/man-pages/man2/futex.2.html Use EAGIN instead of EWOULDBLOCK to be in line with the Linux man page. These error numbers have the same value in Newlib. Using the same error numbers helps to avoid confusion. When you look at the history of the Linux man page you see that they replaced EWOULDBLOCK with EAGAIN over time. At the time of the RTEMS futex implementation they used EWOULDBLOCK.
* rtems: Fix partitions with RTEMS_MULIPROCESSINGSebastian Huber2021-08-311-1/+1
| | | | Replace call to removed _Partition_Free() with a call to _Objects_Free().
* psxtests/psxconfstr: Fix test caseSebastian Huber2021-08-301-13/+12
| | | | Update #3373.
* smpfatal01: Fix test time out on sparc/leon3Sebastian Huber2021-08-301-1/+1
| | | | | End the test on the processor which triggers the test condition. This avoids endless power down loops in the sparc/leon3 BSP.
* libmisc/shell: Check the shell command pointers when adding a commandChris Johns2021-08-211-0/+5
|
* libmisc/fdt: fix node initialise error with RTEMS_DEBUGChris Johns2021-08-211-0/+2
|
* cpukit/mghttpd: Support all descriptors in selectChris Johns2021-08-191-0/+31
| | | | | | | | - Support all possible descriptors in a select call. Borrowed from Christain and his mDNS change in LibBSD - If select (or poll) fails pause for a bit rather than locking up in a hard loop
* aarch64/versal: Enable TX and RX FIFOsChris Johns2021-08-191-5/+8
| | | | - Wait for the tx holding register to empty in a tx flush
* bsps/raspberrypi: Add SEV Instruction for RPi SMP firmware changes.pranav2021-08-181-0/+1
| | | | | | The Pi firmware added a wfe(wait for event), the cores 1-3 wait for the start address being written to the mailbox register, followed by a SEV poke to the mailbox that acts as a wfe wake-up event.
* confstr() support for RTEMSEshan dhawan2021-08-1810-0/+277
| | | | | | | | Closes #3373 confstr() style update Signed-off-by: Eshan Dhawan <eshandhawan51@gmail.com>
* score: Delete unused rtems_ada_selfSebastian Huber2021-08-181-5/+0
|
* score: Make zombie registry observableSebastian Huber2021-08-182-16/+40
| | | | | | This helps to write tests for _Thread_Wait_for_execution_stop(). Rename Thread_Zombie_control in Thread_Zombie_registry.
* score: Simplify _Thread_Kill_zombies()Sebastian Huber2021-08-181-8/+11
|
* score: Simplify _Per_CPU_Wait_for_job()Sebastian Huber2021-08-181-1/+0
| | | | | The _SMP_Fatal() is a no-return function, so the "break" statement is superfluous.
* score: Simplify _Thread_Create_idle_for_CPU()Sebastian Huber2021-08-181-7/+1
| | | | Online processors have a scheduler assigned.
* build: Merge default-by-family into by-variantSebastian Huber2021-08-18762-768/+7
| | | | | | | Prefix the BSP family name with "bsps/" to make it distinct to the BSP variant names. Update #4468.