Age | Commit message (Collapse) | Author |
|
If the CSafeLoader is available, load only the necessary build items.
This considerably speeds up the build setup time if the CSafeLoader is
used.
|
|
This makes it more obvious that this is an item UID.
|
|
Move the item cache handling to a ItemCache class. Implement this class
depending on the availability of CSafeLoader.
|
|
The CSafeLoader uses the C libyaml libary to considerably speed up the
loading of YAML files.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Make tests for libdl configurable since they are currently not
reproducible, see #4941.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
These memory benchmark programs are not supposed to run. Instead, they
can be analysed on the host system to measure the memory usage of
features. See the membench module of rtems-central.
Update #3716.
|
|
Replace the main page with a high level description of the RTEMS feature
set similar to:
https://docs.rtems.org/branches/master/user/overview/index.html#features
The replaced content can be found in the RTEMS Classic API Guide:
https://docs.rtems.org/branches/master/c-user/overview.html
https://docs.rtems.org/branches/master/c-user/key_concepts.html
Update #3705.
|
|
Update #4954.
|
|
Simplify leon3_counter_use_irqamp_timestamp().
Update #4954.
|
|
Update #4954.
|
|
Move code blocks to simplify C preprocessor usage.
Update #4954.
|
|
Merge the timecounter and CPU counter support for the leon3 BSP family.
Remove now unused functions from the CPU counter support of the erc32
and leon3 BSPs.
Update #4954.
|
|
Share the timecounter instance between the clock and the CPU counter.
This greatly simplifies the clock driver since we have to do the device
selection only in one place, the CPU counter support.
Update #4954.
|
|
Using the auto reload counter which generates the clock ticks for the
timecounter or CPU counter is quite difficult and only works in
uniprocessor configurations.
Update #4954.
|
|
Enable a BSP-specific CPU counter implementation.
Update #4954.
|
|
This is necessary to run the tests on SIS with profiling enabled.
Update #4954.
|
|
Fix a potential stack corruption in uniprocessor configurations during
start multitasking .
The system initialization uses the interrupt stack. A first level
interrupt shall never interrupt a context which uses the interrupt
stack. Such a use would lead to stack corruption and undefined system
behaviour. Unfortunately, in uniprocessor configurations this was the
case. Multiprocessing is started using _CPU_Context_restore(). The
caller of this function (_Thread_Start_multitasking()) uses the
interrupt stack. Later we have in cpukit/score/cpu/sparc/cpu_asm.S:
mov %g1, %psr ! restore status register and
! **** ENABLE TRAPS ****
ld [%o1 + G5_OFFSET], %g5 ! restore the global registers
ld [%o1 + G7_OFFSET], %g7
! Load thread specific ISR dispatch prevention flag
ld [%o1 + ISR_DISPATCH_DISABLE_STACK_OFFSET], %o2
! Store it to memory later to use the cycles
ldd [%o1 + L0_OFFSET], %l0 ! restore the local registers
ldd [%o1 + L2_OFFSET], %l2
ldd [%o1 + L4_OFFSET], %l4
ldd [%o1 + L6_OFFSET], %l6
! Now restore thread specific ISR dispatch prevention flag
st %o2, [%g6 + PER_CPU_ISR_DISPATCH_DISABLE]
ldd [%o1 + I0_OFFSET], %i0 ! restore the input registers
ldd [%o1 + I2_OFFSET], %i2
ldd [%o1 + I4_OFFSET], %i4
ldd [%o1 + I6_FP_OFFSET], %i6
ldd [%o1 + O6_SP_OFFSET], %o6 ! restore the output registers
Between the ENABLE TRAPS and the restore of the output registers, we
still use the stack of the caller and interrupts may be enabled. If an
interrupt happens in this code block, the interrupt stack is
concurrently used which may lead to a crash.
Fix this by adding a new function _SPARC_Start_multiprocessing() for
uniprocessor configurations. This function first sets the stack pointer
to use the stack of the heir thread.
Close #4955.
|
|
Make some performance tests compatible to other RTEMS versions which do
not allow changing the priority of a task which owns a priority
inheritance mutex.
Update #3716.
|
|
Do not depend on <rtems/chain.h>.
Update #3716.
|
|
Check the stack of the interrupted context during the multitasking
start.
Update #4955.
|
|
Enumerators are restricted to signed integers in some C standards.
|
|
|
|
The <rtems/test-info.h> header file is required for every RTEMS test
program. Move the RTEMS test printer support to a dedicated header file
<rtems/test-printer.h>. This removes an unnecessary dependency to the
RTEMS printer support in <rtems/test-info.h>.
Tests using the RTEMS Testing Framework no longer depend on the
<rtems/printer.h>.
|
|
This adds a function to allow reading of the SFDP configuration space
that describes attributes of NOR flash chips.
|
|
Expose a function to read the NOR flash chip ID information beyond the
minimum 3 bytes for the lookup table.
|
|
Doing the enabled-by processing just for the ldflags and just for the
link custom commands is confusing. Use an option instead which is
intended to be used for such use cases.
|
|
Update #4920.
|
|
Add _CPU_Get_TLS_thread_pointer() to get the thread pointer which is
used to get the address of thread-local storage objects associated with
a thread.
Update #4920.
|
|
Document that the build scripts in the testsuites produce a test program.
|
|
Fix rtems_configuration_get_interrupt_stack_size() for some code models.
The _ISR_Stack_size symbol has an arbitrary absolute address and may not
be representable in the code model used by the compiler.
Update #4953.
|
|
Store symbols with an arbitrary absolute address such as _TLS_Size,
_TLS_Alignment, _TLS_Data_size, and _TLS_BSS_size in an object to avoid issues
with some code models.
Update #4953.
|
|
|
|
It is too big with GCC 13.
|
|
Update #4953.
|