summaryrefslogtreecommitdiffstats
path: root/spec (unfollow)
Commit message (Collapse)AuthorFilesLines
2021-05-17score: Move _Thread_queue_Queue_get_name_and_id()Sebastian Huber1-0/+1
Move this diagnostic function to a separate file since it does not provide a core function of the system. Change license to BSD-2-Clause according to file history and re-licensing agreement. Update #3053.
2021-05-17posix: Move clock_nanosleep()Sebastian Huber1-0/+1
Move clock_nanosleep() to a separate file to avoid a dependency on errno which pulls in the Newlib reentrancy support. This is an issue since most parts which are pulled in cannot be garbage collected by the linker due to the system initialization linker set.
2021-05-17bsps/imxrt: Fix OCRAM, ITCM and DTCM sizesChristian Mauderer7-4/+86
The sizes are configurable via fuses or per software via some registers. At the moment the registers are not changed. Changing the registers destroys data stored in the RAM areas (like application code or data). So either the fuses or some bootloader should be used to set them before the application starts. This also adds an OCRAM only linker command file. Update #4180
2021-05-14validation: Add support librarySebastian Huber4-4/+22
Add a library for support functions used by validation tests. Rename tc-support.* to tx-support.* since this file does not contain test cases.
2021-05-11score: Rename _Stack_Free_nothing()Sebastian Huber1-1/+1
Rename _Stack_Free_nothing() in _Objects_Free_nothing() to make it reusable for the message queue buffers. Update #4007.
2021-05-03bsps/riscv: Support RTEMS_NOINIT in linkcmdsSebastian Huber1-0/+7
Update #3866.
2021-04-30Use alias for rtems_task_self() and pthread_self()Sebastian Huber1-2/+1
This may reduce the code size a bit.
2021-04-27powerpc/shared/console: Make console baud rate configurable.Peter Dufault6-1/+16
The "powerpc/shared/console" code has the start-up console value fixed at 9600 baud. This changes the hard-wired constant "9600" in the code to the configuration setting "BSP_CONSOLE_BAUD" and adds configuration support in both the "waf" and the legacy configuration systems. Note that the VME BSPs beatnik, mvme3100, and mve5100 can be improved by adding a "mvmexxxx" BSP family. This configuration change, as well as future configuration changes, could then be made in a "grp.yml" file.
2021-04-23Nucleo UART3 (console) pins correctionRobin Mueller2-8/+2
Now using default pins
2021-04-22build: Remove duplicated attributesSebastian Huber2-2/+0
2021-04-20libcsupport: Move rtems_calloc()Sebastian Huber1-0/+1
Move rtems_calloc() since it only depends on rtems_malloc(). This may make it easier to customize the heap allocator. Change licence to BSD-2-Clause according to file history. Update #3053.
2021-04-20bsp/stm32h7: Remove duplicated build definitionsSebastian Huber1-89/+1
The links are already in spec/build/bsps/arm/stm32h7/grp.yml.
2021-04-13Revert "cpukit: Remove telnetd"Vijay Kumar Banerjee4-0/+50
This reverts commit 3299dda2454a8847c670a732f6c12ef1f2cc5dd0.
2021-04-07testsuites: Remove all legacy networking testsVijay Kumar Banerjee7-134/+0
Update #3850
2021-04-07spec: Remove residue bsps spec filesVijay Kumar Banerjee3-57/+0
Update #3850
2021-04-07cpukit: Remove telnetdVijay Kumar Banerjee4-50/+0
Update #3850
2021-04-07testsuites/libtests: Remove networking01Vijay Kumar Banerjee1-21/+0
Update #3850
2021-04-07bsps: Remove networking driversVijay Kumar Banerjee3-37/+0
Update #3850
2021-04-07cpukit/libfs: Remove nfsclientVijay Kumar Banerjee2-25/+0
Update #3850
2021-04-07cpukit: remove pppdVijay Kumar Banerjee3-36/+0
Update #3850
2021-04-07cpukit: Move ftpfs from libnetworking to libfsVijay Kumar Banerjee2-2/+2
Update #3850
2021-04-07spec: Remove RTEMS_NETWORKING optionsVijay Kumar Banerjee81-1067/+0
Update #3850
2021-04-07score: Replace Objects_Name_or_id_lookup_errorsSebastian Huber1-1/+0
Replace Objects_Name_or_id_lookup_errors with new Status_Control codes. Get rid of the _Status_Object_name_errors_to_status lookup table.
2021-04-06arm/stm32h7: Add STM32H7_USART3_GPIO_*Sebastian Huber3-0/+44
2021-04-06arm/stm32h7: Add STM32H7_HSE_FREQUENCYSebastian Huber2-0/+22
2021-04-06arm/nucleo-h743zi: New BSP variantSebastian Huber1-0/+17
2021-04-06build: Add group for arm/stm32h7Sebastian Huber3-419/+538
2021-04-01stm32h7: Add init for sdmmc pinsChristian Mauderer1-0/+1
Update #4372
2021-03-30bsps/shared: Add Xilinx-AXI SPI driver to wafJan Sommer4-0/+24
Updates #4321
2021-03-23validation: Add test case support functionsSebastian Huber2-0/+2
2021-03-21bsp/beagle: Ported Beagle pinmux driver to RTEMSG S Niteesh Babu1-0/+6
The following files have been ported 1) ti_pinmux.c 2) ti_pinmux.h 3) am335x_scm_padconf.c 4) am335x_scm_padconf.h Update #3784
2021-03-21bsps/beagle: Added SOC detection using FDTG S Niteesh Babu1-0/+1
Detects the SOC type using FDT and also replaces the ti_cpuid.h header in FreeBSD with custom one.
2021-03-19build: Add test exclude for arm/lpc2362Sebastian Huber1-0/+1
2021-03-16validation: Task create/constructSebastian Huber1-0/+2
Run the task create/construct tests also on validation test suite 1 which has exactly one processor configured.
2021-03-11Test suite for FTW.H methodsEshan dhawan2-0/+36
Signed-off-by: Eshan Dhawan <eshandhawan51@gmail.com>
2021-03-11leon,tn-0018: work around GRLIB-TN-0018 errataDaniel Hellstrom1-0/+1
Overview ======== The errata is worked around in the kernel without requiring toolchain modifications. It is triggered the JMPL/RETT return from trap instruction sequence never generated by the compiler and. There are also other conditions that must must be true to trigger the errata, for example the instruction that the trap returns to has to be a JMPL instruction. The errata can only be triggered if certain data is corrected by ECC (inflicted by radiation), thus it can not be triggered under normal operation. For more information see: www.gaisler.com/notes Affected RTEMS target BSPs: * GR712RC * UT699 * UT700/699E The work around is enabled by defining __FIX_LEON3_TN0018 at build time. After applying the following GCC patch, GCC will set the define when compiling for an affected multilib: * GR712RC (-mcpu=leon3 -mfix-gr712rc) * UT700/UT699E (-mpcu=leon3 -mfix-ut700) * UT699 (-mcpu=leon -mfix-ut699) When building for another multilib and TN0018 is still required, it is possible to enable it on the RTEMS kernel configure line using the TARGET_CFLAGS (-D__FIX_LEON3FT_TN0018) or other by other means. The following GCC patch sets __FIX_LEON3FT_TN0018 for the affected RTEMS multilibs: --------- diff --git a/gcc/config/sparc/rtemself.h b/gcc/config/sparc/rtemself.h index 6570590..ddec98c 100644 --- a/gcc/config/sparc/rtemself.h +++ b/gcc/config/sparc/rtemself.h @@ -33,6 +33,8 @@ builtin_assert ("system=rtems"); \ if (sparc_fix_b2bst) \ builtin_define ("__FIX_LEON3FT_B2BST"); \ + if (sparc_fix_gr712rc || sparc_fix_ut700 || sparc_fix_ut699) \ + builtin_define ("__FIX_LEON3FT_TN0018"); \ } \ while (0) --------- Workaround Implementation ========================= In general there are two approaches that the workaround uses: A) avoid ECC restarting the RETT instruction B) avoid returning from trap to a JMPL instruction Where A) comes at a higher performance cost than B), so B) is used where posssible. B) can be achived for certain returns from trap handlers if trap entry is controlled by assembly, such as system calls. A) A special JMPL/RETT sequence where instruction cache is disabled temporarily to avoid RETT containing ECC errors, and reading of RETT source registers to "clean" them from incorrect ECC just before RETT is executed. B) The work around prevents JMPL after system calls (TA instruction) and modifies assembly code on return from traps jumping back to application code. Note that for some traps the trapped instruction is always re-executed and can therefore not trigger the errata, for example the SAVE instruction causing window overflow or an float instruction causing FPU disabled trap. RTEMS SPARC traps workaround implementation: NAME NOTE TRAP COMMENT * window overflow 1 - 0x05 always returns to a SAVE * window underflow 1 - 0x06 always returns to a RESTORE * interrupt traps 2 - 0x10..1f special rett sequence workaround * syscall 3 - 0x80 shutdown system - never returns * ABI flush windows 2 - 0x83 special rett sequence workaround * syscall_irqdis 4 - 0x89 * syscall_irqen 4 - 0x8A * syscall_irqdis_fp 1 - 0x8B always jumps back to FP instruction * syscall_lazy_fp_switch 5 - 0x04 A) jumps back to FP instruction, or to B) _Internal_error() starting with SAVE Notes: 1) no workaround needed because trap always returns to non-JMPL instruction 2) workaround implemented by special rett sequence 3) no workaround needed because system call never returns 4) workaround implemented by inserting NOP in system call generation. Thus fall into 1) when workaround is enabled and no trap handler fix needed. 5) trap handler branches into both 1) and returning to _Internal_error() which starts with a SAVE and besides since it shuts down the system that RETT should never be in cache (only executed once) so fix not necessary in this case. Any custom trap handlers may also have to be updated. To simplify that, helper work around assembly code in macros are available in a separate include file <libcpu/grlib-tn-0018.h>. Close #4155.
2021-03-11leon3: avoid dependency on apbuart/timer driverDaniel Hellstrom1-0/+1
Moves drvmgr_drivers[] from amba.c to a separate file in order to avoid the dependecy on APBUART/GPTIMER drivers. This has an effect when user configured not to use timer or uart in their project.
2021-03-11leon,grcan: split out GRCAN non-FD specific support in separate fileDaniel Hellstrom1-0/+1
Close #4324.
2021-03-11leon,grcanfd: split out GRCANFD specific support in separate fileDaniel Hellstrom1-0/+1
Update #4324.
2021-03-11leon,can: introduce common CAN baud-rate calculation functionDaniel Hellstrom1-0/+2
Reimplemented the baud-rate algorithm from scratch to cope with GRCAN, GRCANFD and OC_CAN devices. Update #4323.
2021-03-10bsps/xilinx_zynq: Add SPI driver to wafJan Sommer4-0/+24
Updates #4320
2021-03-09build: Fix broken linkSebastian Huber1-1/+1
2021-03-08spec/aarch64: Enable previously disabled testsAlex White2-18/+2
This enables several testsuites that were initially disabled during development.
2021-03-05spec/aarch64: Rename ZynqMP QEMU BSPsKinsey Moore3-3/+3
The current ZynqMP BSPs don't have _qemu in their name as do all other RTEMS BSPs that are specifically made to run on QEMU. This fixes the naming for those ZynqMP BSP variants for easier identification.
2021-03-05spec: Move hypervisor start for use by AArch64Kinsey Moore2-1/+1
AArch64 on hardware is often started at EL2 instead of EL1 from either u-boot or a first stage bootloader. This allows RTEMS to drop from EL2 execution to EL1 to operate as normal.
2021-03-05spec/aarch64: Remove sp37 from intermittent testsAlex White2-2/+0
2021-03-05bsps/aarch64: Resolve usage of SUBALIGN()Kinsey Moore2-2/+0
Remove usage of SUBALIGN() in aarch64 linkcmds which works around a difference in behavior on AArch64 platforms. This is no longer necessary since alignment is now enforced explicitly. Closes #4178.
2021-03-04validation: Fix for 64-bit targetsSebastian Huber2-6/+0
Closes #4179.
2021-03-02bsps/beagle: Adding QEP driver support to BeagleBoneBlack BSPJames Fitzsimons1-1/+4
2021-03-01score: Fix _Stack_Extend_size()Sebastian Huber1-0/+1
Check for an integer overflow. Add a validation test for task create errors.