summaryrefslogtreecommitdiffstats
path: root/spec (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* validation: Test <rtems/score/basedefs.h>Frank Kühndel2022-03-241-0/+2
| | | | | | | | | | | | The test source code is generated from specification items by the "./spec2modules.py" script contained in the git://git.rtems.org/rtems-central.git Git repository. Please read the "How-To" section in the "Software Requirements Engineering" chapter of the RTEMS Software Engineering manual to get more information about the process. Update #3716.
* validation: Test Barrier ManagerSebastian Huber2022-03-243-4/+6
| | | | | | | | | | | | The test source code is generated from specification items by the "./spec2modules.py" script contained in the git://git.rtems.org/rtems-central.git Git repository. Please read the "How-To" section in the "Software Requirements Engineering" chapter of the RTEMS Software Engineering manual to get more information about the process. Update #3716.
* validation: Test attributesSebastian Huber2022-03-241-0/+1
| | | | | | | | | | | | The test source code is generated from specification items by the "./spec2modules.py" script contained in the git://git.rtems.org/rtems-central.git Git repository. Please read the "How-To" section in the "Software Requirements Engineering" chapter of the RTEMS Software Engineering manual to get more information about the process. Update #3716.
* validation: Test application configurationSebastian Huber2022-03-247-2/+53
| | | | | | | | | | | | The test source code is generated from specification items by the "./spec2modules.py" script contained in the git://git.rtems.org/rtems-central.git Git repository. Please read the "How-To" section in the "Software Requirements Engineering" chapter of the RTEMS Software Engineering manual to get more information about the process. Update #3716.
* validation: Test object identificationSebastian Huber2022-03-241-0/+2
| | | | | | | | | | | | The test source code is generated from specification items by the "./spec2modules.py" script contained in the git://git.rtems.org/rtems-central.git Git repository. Please read the "How-To" section in the "Software Requirements Engineering" chapter of the RTEMS Software Engineering manual to get more information about the process. Update #3716.
* validation: Test mutex operationsSebastian Huber2022-03-241-0/+3
| | | | | | | | | | | | The test source code is generated from specification items by the "./spec2modules.py" script contained in the git://git.rtems.org/rtems-central.git Git repository. Please read the "How-To" section in the "Software Requirements Engineering" chapter of the RTEMS Software Engineering manual to get more information about the process. Update #3716.
* validation: Test semaphore operationsSebastian Huber2022-03-241-0/+3
| | | | | | | | | | | | The test source code is generated from specification items by the "./spec2modules.py" script contained in the git://git.rtems.org/rtems-central.git Git repository. Please read the "How-To" section in the "Software Requirements Engineering" chapter of the RTEMS Software Engineering manual to get more information about the process. Update #3716.
* validation: Test thread queuesSebastian Huber2022-03-242-0/+16
| | | | | | | | | | | | The test source code is generated from specification items by the "./spec2modules.py" script contained in the git://git.rtems.org/rtems-central.git Git repository. Please read the "How-To" section in the "Software Requirements Engineering" chapter of the RTEMS Software Engineering manual to get more information about the process. Update #3716.
* validation: Add system termination test suitesSebastian Huber2022-03-2412-0/+203
| | | | | | | | | | | | The test source code is generated from specification items by the "./spec2modules.py" script contained in the git://git.rtems.org/rtems-central.git Git repository. Please read the "How-To" section in the "Software Requirements Engineering" chapter of the RTEMS Software Engineering manual to get more information about the process. Update #3716.
* validation: Add test suitesSebastian Huber2022-03-2420-10/+150
| | | | | | | | | | | | The test source code is generated from specification items by the "./spec2modules.py" script contained in the git://git.rtems.org/rtems-central.git Git repository. Please read the "How-To" section in the "Software Requirements Engineering" chapter of the RTEMS Software Engineering manual to get more information about the process. Update #3716.
* validation: Improve support librarySebastian Huber2022-03-243-0/+27
| | | | Update #3716.
* libtest: Add scheduler test supportSebastian Huber2022-03-241-0/+2
| | | | | | | | | Add support to record scheduler operations. This support is especially important for tests in SMP configurations since the thread switch extension is quite difficult to use due to the asynchronous nature of thread dispatching. In contrast, the scheduler operations occur normally in a deterministic order. Update #3716.
* score: Add _IO_Relax()Sebastian Huber2022-03-241-0/+1
| | | | | | | This function may be used to burn a couple of processor cycles with minimum impact on the system bus. It may be used in busy wait loops. Since it is a global function, it is possible to wrap it in device driver test code.
* build: Exclude rcxx01 test for sh BSPsSebastian Huber2022-03-236-0/+6
| | | | There seems to be a code size increase with GCC 12.
* microblaze: Add JFFS2 AXI QSPI driverAlex White2022-03-154-0/+43
| | | | This driver has been tested with Micron NOR Flash via AXI Quad SPI.
* bsp/fvp: Use only vector table of start sectionSebastian Huber2022-03-111-0/+2
|
* smptests/smpstart01: New test programSebastian Huber2022-03-082-0/+21
| | | | Update #4627.
* bsps/riscv: Support .riscv.attributesSebastian Huber2022-02-251-1/+1
|
* spec/microblaze: Use configurable RAM sizeKinsey Moore2022-02-233-1/+24
| | | | | | When committed, the MicroBlaze RAM size was hard-coded to 16MB. This changes the default to 256MB and sets the KCU105 BSPs to 2GB since that is what the board has on it.
* cpukit/libdebugger: Add MicroBlaze supportKinsey Moore2022-02-233-0/+18
| | | | | | | | | | | | Add MicroBlaze support for libdebugger. This uses only software break type instructions to provide self-hosted GDB debugging support for applications since internal control of debug hardware is not possible. Also of note, this implementation for MicroBlaze would typically use the brki instruction for software break, but instead uses an illegal opcode to manage software breaks as exceptions. This is due to poor interaction with the debug hardware where the debug hardware will intercept software breaks instead of allowing the software break vector to execute.
* kern_ntptime.c: Port to RTEMSSebastian Huber2022-02-213-1/+22
| | | | | | Remove previous adjtime() implementation. Update #2348.
* cpukit/microblaze: Add exception extensionsKinsey Moore2022-02-042-0/+3
| | | | | Add the functions necessary to support RTEMS_EXCEPTION_EXTENSIONS and mark this functionality as available on MicroBlaze.
* cpukit/microblaze: Add debug vector and handlerKinsey Moore2022-02-041-0/+1
| | | | | | This patch adds a vector for debug events along with a hook similar to the exception framework. The debug vector generates an exception frame for use by libdebugger.
* cpukit/microblaze: Add exception frameworkKinsey Moore2022-02-041-1/+0
| | | | | | | | | | | This patch updates the CPU_Exception_frame to include all necessary registers, combines hardware snd software exception handlers into a shared vector, provides an architecture-specific hook for taking control of exception handling, and moves exception handling over to actually using the CPU_Exception_frame instead of a minimal interrupt stack frame. As the significant contents of _exception_handler.S have been entirely rewritten, the copyright information on this file has been updated to reflect that.
* microblaze: Add support for libbsd networkingAlex White2022-02-019-1/+139
| | | | | This includes fixes and improvements necessary to get libbsd networking running.
* microblaze: Add support for libbsd.Jennifer Averett2022-02-011-0/+2
|
* sparc: Mark dl06 as expected failSebastian Huber2022-01-281-1/+3
|
* cpukit: Prevent error with disabled stack checkerKinsey Moore2022-01-272-0/+21
| | | | | | | | | | | When the stack checker is not enabled, the stack checker reporting function can still be called. This prevents that call from performing a null memory access in trying to find the high water mark if the stack checker was never initialized. This also introduces a test to ensure this call does not cause a crash. Closes #4588
* Remove obsolete rtems_gxx_*() implementationSebastian Huber2022-01-276-65/+0
| | | | | | | | | | | GCC versions prior to 6.1 used a RTEMS thread model based on rtems_gxx_*() functions. GCC version 6.1 or later uses the self-contained synchronization objects of Newlib <sys/lock.h> for the RTEMS thread model. Remove the obsolete implementation. Close #3143.
* bsps: Default to CPU counter benchmark timerSebastian Huber2022-01-1521-21/+21
| | | | | | Most BSPs which used the stubbed benachmark timer provide a CPU counter. All BSPs provide at least a stub CPU counter. Simply use the benchmark timer implementation using the CPU counter.
* bsp/imx7: dl06 fails expectedlySebastian Huber2022-01-142-0/+15
|
* aarch64: always boot into EL1NSGedare Bloom2022-01-125-28/+0
| | | | | | | | | | | Always start the executive in Exception Level 1, Non-Secure mode. If we boot in EL3 Secure with GICv3 then we have to initialize the distributor and redistributor to set up G1NS interrupts early in the boot sequence before stepping down from EL3S to EL1NS. Now there is no need to distinguish between secure and non-secure world execution after the primary core boots, so get rid of the AARCH64_IS_NONSECURE configuration option.
* build: Fix build item formatSebastian Huber2022-01-113-9/+6
|
* bsp/mrm332: Fix TLS support in linker command fileSebastian Huber2021-12-221-2/+0
|
* Remove powerpc/haleakala boardJoel Sherrill2021-12-176-136/+0
| | | | Closes #4302.
* bsps/arm: Add missing Cache Manager source fileSebastian Huber2021-12-132-0/+2
|
* spec: Update location of cadence I2CKinsey Moore2021-12-092-3/+7
| | | | | | When the cadence I2C code was moved to a shared directory, the references were updated but the install locations weren't. This updates the install locations to match what out-of-tree applications expect.
* build: Move test header to right library itemSebastian Huber2021-12-092-3/+5
|
* rtems: Move scheduler directives to own headerSebastian Huber2021-12-021-0/+1
| | | | | | Move all rtems_scheduler_* directives to the new header file <rtems/rtems/scheduler.h>. Add a Scheduler Manager API and implementation group.
* libc: Optimize malloc() initializationSebastian Huber2021-11-3011-1/+10
| | | | | | | | | | | | | | | | The BSPs provide memory for the separate C Program Heap initialization via _Memory_Get(). Most BSPs provide exactly one memory area. Only two BSPs provide more than one memory area (arm/altera-cyclone-v and bsps/powerpc/mpc55xxevb). Only if more than one memory area is provided, there is a need to use _Heap_Extend(). Provide two implementations to initialize the separate C Program Heap and let the BSP select one of the implementations based on the number of provided memory areas. This gets rid of a dependency on _Heap_Extend(). It also avoids dead code sections for most BSPs. Change licence to BSD-2-Clause according to file history. Update #3053.
* score: Optimize Workspace Handler initializationSebastian Huber2021-11-3010-0/+10
| | | | | | | | | | | | The BSPs provide memory for the workspace initialization via _Memory_Get(). Most BSPs provide exactly one memory area. Only two BSPs provide more than one memory area (arm/altera-cyclone-v and bsps/powerpc/mpc55xxevb). Only if more than one memory area is provided, there is a need to use _Heap_Extend(). Provide two implementations to initialize the workspace handler and let the BSP select one of the implementations based on the number of provided memory areas. This gets rid of a dependency on _Heap_Extend(). It also avoids dead code sections for most BSPs.
* build: Use common objects item for get memorySebastian Huber2021-11-30117-84/+210
|
* score: Split wkspace.cSebastian Huber2021-11-301-0/+2
| | | | Splitting the file avoids unnecessary link-time dependencies.
* bsp_specs: Delete last remnants of these.Joel Sherrill2021-11-291-3/+0
| | | | Updates #3937.
* build: Remove trailing white spaceSebastian Huber2021-11-292-2/+2
|
* score: Move _Thread_queue_Extract()Sebastian Huber2021-11-231-0/+1
| | | | | | | Move _Thread_queue_Extract() since this function is not used by the core services (threads, semaphores, mutexes, message queues). Update #4546.
* score: Add _Thread_MP_Extract_proxy()Sebastian Huber2021-11-232-1/+1
| | | | | | | | Remove _Thread_queue_Extract_with_proxy() and move the proxy extraction to _Thread_MP_Extract_proxy(). Move similar code blocks of the previous caller of _Thread_queue_Extract_with_proxy() to helper functions. Update #4546.
* score: Add SMP scheduler make/clean stickySebastian Huber2021-11-231-0/+1
| | | | | | | | | | | | | | | | | | | | This patch fixes the following broken behaviour: While a thread is scheduled on a helping scheduler, while it does not own a MrsP semaphore, if it obtains a MrsP semaphore, then no scheduler node using an idle thread and the ceiling priority of the semaphore is unblocked for the home scheduler. This could lead to priority inversion issues and is not in line with the MrsP protocol. Introduce two new scheduler operations which are only enabled if RTEMS_SMP is defined. The operations are used to make the scheduler node of the home scheduler sticky and to clean the sticky property. This helps to keep the sticky handing out of the frequently used priority update operation. Close #4532.
* score: Add red-black tree append/prependSebastian Huber2021-11-231-0/+2
| | | | | | | These functions are a faster alternative to _RBTree_Insert_inline() if it is known that the new node is the maximum/minimum node. Update #4531.
* rtems: Add external functionsSebastian Huber2021-11-181-0/+2
| | | | | | These external functions rtems_scheduler_get_processor() and rtems_scheduler_get_processor_maximum() which may be used by bindings for languages other than C/C++.