Commit Graph

30613 Commits

Author SHA1 Message Date
Sebastian Huber
a95d909878 arm: Validate IT[7:0] bit field of PSR
Update #3093.
2017-08-10 08:18:40 +02:00
Sebastian Huber
ca9490ca36 bsp/imx: Fix UART interrupt
Update #3090.
2017-08-04 14:46:44 +02:00
Sebastian Huber
694c31f990 bsp/imx: New BSP
Update #3090.
2017-08-04 14:24:56 +02:00
Sebastian Huber
ffe7c0e749 bsps/arm: Add ARMv7-AR Generic Timer clock driver
Update #3090.
2017-08-04 14:22:33 +02:00
Sebastian Huber
ef04443b19 bsps/arm: Add ARMv7-AR Generic Timer support
Update #3090.
2017-08-04 14:22:32 +02:00
Sebastian Huber
30be024aa4 Optional Clock_driver_support_shutdown_hardware()
Make Clock_driver_support_shutdown_hardware() optional.  This avoids
the atexit() support on memory constrained targets.
2017-08-04 14:22:32 +02:00
Sebastian Huber
a8694035ae bsps/powerpc: Add PPC_EXC_INTERRUPT_FRAME_SIZE
Use a specific define for the interrupt exception frame size.

Update #3082.
2017-08-01 11:43:57 +02:00
Sebastian Huber
23cb9afeb6 bsps/powerpc: Rename ppc_exc_wrap_async_normal
Rename ppc_exc_wrap_async_normal to ppc_exc_interrupt to avoid a bit of
obfuscation.

Update #3082.
2017-08-01 11:38:32 +02:00
Sebastian Huber
b7be94390b bsps/powerpc: Do not set ouput format and arch
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.
2017-07-31 14:39:51 +02:00
Sebastian Huber
65ee42ce8e bsp/qoriq: Simplify fatal exceptions
Avoid use of small-data area, since it is not supported in the ELFv2 ABI
by GCC.

Update #3082.
2017-07-31 14:39:47 +02:00
Sebastian Huber
a597984b99 powerpc: Add register defines
Update #3082.
Update #3085.
2017-07-31 13:43:38 +02:00
Sebastian Huber
2d0a8058a8 bsps/powerpc: Fix format specifiers 2017-07-31 13:43:29 +02:00
Sebastian Huber
af97ba8f29 score: Add RTEMS_HAVE_MEMBER_SAME_TYPE()
This fixes some "variably modified" warnings and a clang compile error.
2017-07-31 09:48:11 +02:00
Joel Sherrill
3ebbabbb93 psximfs02/init.c: Increase size of buffer to avoid overwrite 2017-07-28 15:53:21 -05:00
Joel Sherrill
dd6992fd7c Remove Edison BSP.
Intel has obsoleted this hardware and the BSP was never completed.

closes #3086.
2017-07-28 14:17:32 -05:00
Joel Sherrill
9cb874d667 beagle/i2c/bbb-i2c.c: Eliminiate set but not used warning 2017-07-28 14:17:32 -05:00
Joel Sherrill
bed7ec11b8 psxmmap01/init.c: Correct printf() format specifier 2017-07-28 11:24:34 -05:00
Joel Sherrill
0238e316ad cpukit/include/rtems/inttypes.h: Correct PRIdioctl_command_t 2017-07-28 11:24:34 -05:00
Sebastian Huber
8966e8a3a0 bsp/qoriq: Fix pre-processor expansion
Update #3082.
Update #3085.
2017-07-28 15:40:36 +02:00
Sebastian Huber
5d0fa04792 bsp/t32mppc: Set PPC_PER_CPU_CONTROL_REGISTER 2017-07-28 15:03:47 +02:00
Sebastian Huber
585706a4ec bsp/t32mppc: Add SMP support 2017-07-28 14:43:22 +02:00
Sebastian Huber
77cbb2a444 psxtests/psxmmap01: Fix warning
Update #2859.
2017-07-28 13:53:43 +02:00
Sebastian Huber
cd7991b8df bsps/powerpc: Fix warning 2017-07-28 13:50:12 +02:00
Sebastian Huber
9379c705a8 bsps/sparc64: Fix warning 2017-07-28 13:40:45 +02:00
Sebastian Huber
1d894f5528 untar: Fix compile error 2017-07-28 13:34:46 +02:00
Sebastian Huber
f1355f2211 untar: Fix use of uninitialized variable 2017-07-28 13:31:51 +02:00
Sebastian Huber
9d1522ed32 Fix IO control request type 2017-07-28 13:28:11 +02:00
Sebastian Huber
0684f3592b bsp/i386: Fix warning 2017-07-28 13:10:19 +02:00
Sebastian Huber
fd3437c1af bsp/gen5200: Fix warnings 2017-07-28 13:06:55 +02:00
Sebastian Huber
a9f5812505 bsp/qoriq: Fix warning 2017-07-28 13:06:41 +02:00
Sebastian Huber
7f1e6fa369 libtests/block08: Fix format warning 2017-07-28 12:19:05 +02:00
Sebastian Huber
0db7c550ac bsp/qoriq: New BSP names
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.
2017-07-28 10:12:36 +02:00
Sebastian Huber
b615e9b3ee bsp/qoriq: Simplify initialization
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.
2017-07-28 10:12:28 +02:00
Joel Sherrill
3fd019739f psxmmap01/test_helper.c: Use correct printf format for size_t 2017-07-27 17:29:24 -05:00
Joel Sherrill
3a3d85c606 psxmmap01/test_driver.c: Fix mmap_h handler type mismatch 2017-07-27 17:29:02 -05:00
Sebastian Huber
146adb1edf sparc: Add lazy floating point switch
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.
2017-07-25 11:41:12 +02:00
Sebastian Huber
600d88dfd7 INTERNAL_ERROR_ILLEGAL_USE_OF_FLOATING_POINT_UNIT
Add new fatal error INTERNAL_ERROR_ILLEGAL_USE_OF_FLOATING_POINT_UNIT.

Update #3077.
2017-07-25 11:41:11 +02:00
Sebastian Huber
a400d06f48 sparc: Rename SPARC_USE_SAFE_FP_SUPPORT
Rename SPARC_USE_SAFE_FP_SUPPORT in SPARC_USE_SYNCHRONOUS_FP_SWITCH.
Update comment.

Update #3077.
2017-07-25 11:41:11 +02:00
Sebastian Huber
b2e1bded07 score: Add optional _CPU_Context_Destroy()
Update #3077.
2017-07-25 11:41:10 +02:00
Sebastian Huber
671efc50a3 bsp/leon2: Add at697f variant 2017-07-25 11:41:10 +02:00
Sebastian Huber
9f84bdb09a bsp/leon2: Use hard-float by default 2017-07-25 11:41:09 +02:00
Gedare Bloom
c6d897e544 posix: fix warnings with mmap from heap/wkspace
Avoid void pointer arithmetic.

Updates #2859.
2017-07-24 15:11:00 -04:00
Gedare Bloom
b264998fa9 posix: replace mmap mappings lock with libio lock
Use the libio mutex lock instead of the mmap mappings lock.

Updates #2859.
2017-07-24 14:46:49 -04:00
Sebastian Huber
1c256e6fbe tmtests/tmcontext01: Prevent GCC 7.1 optimizations
It is getting harder to prevent the compiler from optimizing away the
recursive function calls.
2017-07-20 11:39:07 +02:00
Sebastian Huber
b965f461a8 posix: Use unprotected chain operations
Operarations are already protected by mmap_mappings_lock.

Updates #2859.
2017-07-20 07:26:27 +02:00
Kevin Kirspel
bb01a36dfb Fixed issue with searching mapped addresses
The loop that checks if the current address is already mapped uses
the same local variable for the chanin node as the newly allocated
chain node so the allocated chain node gets over written.

Added a new local variable for the loop that checks the address

Updates #2859.
2017-07-20 07:25:43 +02:00
Sebastian Huber
5f1ae90e18 sptests/sptls02: Use standard test IO
Update #3076.
2017-07-19 16:01:09 +02:00
Sebastian Huber
7ed8ad0adb bsps/sparc: Fix cache support
Fix infinite loop in rtems_invalidate_multiple_instruction_lines().
Implement this function.

Close #3080.
2017-07-19 15:55:44 +02:00
Sebastian Huber
0ea7ca9ea8 sptests/spcache01: Use standard test IO
Update #3076.
2017-07-19 15:55:44 +02:00
Sebastian Huber
a0271a704b tests: Use floating point task
These tests directly or indirectly use fprintf(), etc. which may use the
floating point unit.

Update #3076.
2017-07-19 15:55:43 +02:00