summaryrefslogtreecommitdiffstats
path: root/c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* bsp/imx: New BSPSebastian Huber2017-08-0419-1/+1332
| | | | Update #3090.
* bsps/arm: Add ARMv7-AR Generic Timer clock driverSebastian Huber2017-08-042-0/+206
| | | | Update #3090.
* bsps/arm: Add ARMv7-AR Generic Timer supportSebastian Huber2017-08-041-0/+322
| | | | Update #3090.
* Optional Clock_driver_support_shutdown_hardware()Sebastian Huber2017-08-048-32/+37
| | | | | Make Clock_driver_support_shutdown_hardware() optional. This avoids the atexit() support on memory constrained targets.
* bsps/powerpc: Add PPC_EXC_INTERRUPT_FRAME_SIZESebastian Huber2017-08-015-9/+11
| | | | | | Use a specific define for the interrupt exception frame size. Update #3082.
* bsps/powerpc: Rename ppc_exc_wrap_async_normalSebastian Huber2017-08-014-10/+10
| | | | | | | Rename ppc_exc_wrap_async_normal to ppc_exc_interrupt to avoid a bit of obfuscation. Update #3082.
* bsps/powerpc: Do not set ouput format and archSebastian Huber2017-07-311-4/+0
| | | | | | | | There is no need to explicitly set the output format and architecture in the linker script. This enables the usage of this linker script with the ELFv2 ABI (64-bit). Update #3082.
* bsp/qoriq: Simplify fatal exceptionsSebastian Huber2017-07-318-109/+420
| | | | | | | Avoid use of small-data area, since it is not supported in the ELFv2 ABI by GCC. Update #3082.
* bsps/powerpc: Fix format specifiersSebastian Huber2017-07-311-39/+39
|
* Remove Edison BSP.Joel Sherrill2017-07-2810-189/+3
| | | | | | Intel has obsoleted this hardware and the BSP was never completed. closes #3086.
* beagle/i2c/bbb-i2c.c: Eliminiate set but not used warningJoel Sherrill2017-07-281-1/+2
|
* bsp/qoriq: Fix pre-processor expansionSebastian Huber2017-07-282-3/+9
| | | | | Update #3082. Update #3085.
* bsp/t32mppc: Set PPC_PER_CPU_CONTROL_REGISTERSebastian Huber2017-07-281-2/+6
|
* bsp/t32mppc: Add SMP supportSebastian Huber2017-07-283-2/+9
|
* bsps/powerpc: Fix warningSebastian Huber2017-07-281-2/+0
|
* bsps/sparc64: Fix warningSebastian Huber2017-07-281-0/+2
|
* bsp/i386: Fix warningSebastian Huber2017-07-281-3/+3
|
* bsp/gen5200: Fix warningsSebastian Huber2017-07-281-6/+4
|
* bsp/qoriq: Fix warningSebastian Huber2017-07-281-1/+1
|
* bsp/qoriq: New BSP namesSebastian Huber2017-07-2813-49/+28
| | | | | | | | Due to the FDT support we can now reduce the BSP variants. Use the processor core to define the BSP variants. Update #3082. Update #3085.
* bsp/qoriq: Simplify initializationSebastian Huber2017-07-282-48/+7
| | | | | | | | | Do not flush/invalidate the caches. Instead enable the cache during the low-level initialization and perform an explicit cache flush for the read-only and fast-text sections. Update #3082. Update #3085.
* sparc: Add lazy floating point switchSebastian Huber2017-07-256-13/+203
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The SPARC ABI is a bit special with respect to the floating point context. The complete floating point context is volatile. Thus, from an ABI point of view nothing needs to be saved and restored during a context switch. Instead the floating point context must be saved and restored during interrupt processing. Historically, the deferred floating point switch was used for SPARC and the complete floating point context is saved and restored during a context switch to the new floating point unit owner. This is a bit dangerous since post-switch actions (e.g. signal handlers) and context switch extensions may silently corrupt the floating point context. The floating point unit is disabled for interrupt handlers. Thus, in case an interrupt handler uses the floating point unit then this will result in a trap (INTERNAL_ERROR_ILLEGAL_USE_OF_FLOATING_POINT_UNIT). In uniprocessor configurations, a lazy floating point context switch is used. In case an active floating point thread is interrupted (PSR[EF] == 1) and a thread dispatch is carried out, then this thread is registered as the floating point owner. When a floating point owner is present during a context switch, the floating point unit is disabled for the heir thread (PSR[EF] == 0). The floating point disabled trap checks that the use of the floating point unit is allowed and saves/restores the floating point context on demand. Update #3077.
* INTERNAL_ERROR_ILLEGAL_USE_OF_FLOATING_POINT_UNITSebastian Huber2017-07-253-0/+12
| | | | | | Add new fatal error INTERNAL_ERROR_ILLEGAL_USE_OF_FLOATING_POINT_UNIT. Update #3077.
* sparc: Rename SPARC_USE_SAFE_FP_SUPPORTSebastian Huber2017-07-251-3/+3
| | | | | | | Rename SPARC_USE_SAFE_FP_SUPPORT in SPARC_USE_SYNCHRONOUS_FP_SWITCH. Update comment. Update #3077.
* bsp/leon2: Add at697f variantSebastian Huber2017-07-256-4/+62
|
* bsp/leon2: Use hard-float by defaultSebastian Huber2017-07-251-1/+1
|
* bsps/sparc: Fix cache supportSebastian Huber2017-07-191-4/+9
| | | | | | | Fix infinite loop in rtems_invalidate_multiple_instruction_lines(). Implement this function. Close #3080.
* libchip: Fix format warningSebastian Huber2017-07-191-1/+1
|
* bsps: Fix warningSebastian Huber2017-07-191-0/+3
| | | | Update #3071.
* bsps/sparc: Add leon3 BSP variantsDaniel Cederman2017-07-1711-5/+134
| | | | | | | | | | | | | | | Rename NGMP to GR740 and add configs for UT699, UT700, and GR712RC The UT699 requires -mcpu=leon as it does not support the CAS instruction provided by -mcpu=leon3. It also requires -mfix-ut699 for errata fixes. UT700 and GR712RC requires the -mfix-ut700 and -mfix-gr712rc flags that have been recently added to GCC's master and 7-branch. Remove -msoft-float from the leon3 config to make the more common case of using the FPU the default. Update #3057.
* sparc: Add assembly workaround for LEON3FT B2BST errataDaniel Cederman2017-07-173-0/+87
| | | | | | | | | | | | | | | This patch adds NOP instructions to prevent instruction sequences that are sensitive to the LEON3FT B2BST errata. See GRLIB-TN-0009: "LEON3FT Stale Cache Entry After Store with Data Tag Parity Error" for more information. The sequences are only modified if __FIX_LEON3FT_B2BST is defined. The patch works in conjunction with the -mfix-ut700, -mfix-gr712rc, and -mfix-ut699 GCC flags that prevents the sensitive sequences from being generated. Update #3057.
* bsps: Include missing header fileSebastian Huber2017-07-125-1/+5
| | | | Update #3071.
* bsp/beagle: Add FDT support for Beaglebone BlackSichen Zhao2017-07-125-1/+26
|
* Add interrupt vector set/get affinitySebastian Huber2017-07-1211-70/+166
| | | | Close #3071.
* Add interrupt server moveSebastian Huber2017-07-121-0/+75
| | | | Update #3071.
* Add interrupt server set affinitySebastian Huber2017-07-121-0/+33
| | | | Update #3071.
* Add interrupt server suspend/resumeSebastian Huber2017-07-121-2/+59
| | | | | | | This mechanism can be used to safely move the interrupt server from one scheduler instance to another for example. Update #3071.
* Create one interrupt server per processorSebastian Huber2017-07-121-79/+184
| | | | | | | This allows load balancing of interrupt processing in SMP configurations. Update #3071.
* bsps/sparc: Fix ambapp_int_set_affinity()Sebastian Huber2017-07-111-1/+1
| | | | Update #3059.
* score: Introduce _SMP_Get_online_processors()Sebastian Huber2017-07-073-4/+6
| | | | Update #3059.
* score: Use <sys/bitset.h> for Processor_maskSebastian Huber2017-07-066-8/+12
| | | | | | | | Implement the Processor_mask via <sys/bitset.h>. Provide _Processor_mask_To_uint32_t() to enable its use in device specific routines, e.g. interrupt affinity register in an interrupt controller. Update #3059.
* Add rtems_interrupt_server_handler_iterate()Sebastian Huber2017-06-261-0/+70
|
* i386/shared/comm/i386-stub-glue.c: Fix duplicate const warningJoel Sherrill2017-06-211-1/+1
|
* lpc176x/misc/restart.c: Fix duplicate const warningJoel Sherrill2017-06-211-1/+1
|
* bsps: Improve interrupt vector enable/disable APISebastian Huber2017-06-2036-370/+238
| | | | | | Change bsp_interrupt_vector_enable() and bsp_interrupt_vector_disable() to not return a status code. Add bsp_interrupt_assert() and use it to validate the vector number in the vector enable/disable implementations.
* bsps/powerpc: Fix warningSebastian Huber2017-06-161-5/+5
| | | | Close #3051.
* Fix beagle i2c file bbb-i2c.c comment issuesSichen Zhao2017-06-151-19/+23
|
* Add the i2c driver for Beaglebone BlackSichen Zhao2017-06-145-141/+765
| | | | | | | | | | Update ticket #2891 and my GSOC project add c/src/lib/libbsp/arm/beagle/i2c/bbb-i2c.c modify c/src/lib/libbsp/arm/beagle/include/i2c.h modify c/src/lib/libbsp/arm/beagle/include/bbb-gpio.h modify c/src/lib/libcpu/arm/shared/include/am335x.h modify c/src/lib/libbsp/arm/beagle/Makefile.am Now can read the EEPROM by i2c, the test application link is: https://github.com/hahchenchen/GSOC-test-application
* Remove beagle old i2c codeSichen Zhao2017-06-143-633/+0
| | | | | | modify c/src/lib/libbsp/arm/beagle/Makefile.am modify c/src/lib/libbsp/arm/beagle/include/i2c.h delete c/src/lib/libbsp/arm/beagle/misc/i2c.c
* Remove excessive locking from cache operations.Alexei Pososin2017-06-141-35/+9
| | | | | | | | According to manual, the used operations (Clean Line by PA, Clean and Invalidate Line by PA, Cache Sync) are atomic and do not require locking. Update #3007.