Commit Graph

33573 Commits

Author SHA1 Message Date
Sebastian Huber
11c1b862df build: Allow test program item UIDs with a "-"
Update #3818.
2020-09-17 17:42:25 +02:00
Sebastian Huber
845674e3fb build: Fix mghttpd01 test exclude
Update #3818.
2020-09-17 17:42:25 +02:00
Sebastian Huber
98d2adb935 libtest: Fix T_thread_switch_record()
If RTEMS_DEBUG is not defined, then we have to explicitly set the node
off the chain.

Update #3199.
2020-09-17 17:42:25 +02:00
Hesham Almatary
4897a82dec riscv: Make sifive_test finisher 4 bytes
QEMU is now stricter with MMIO sizes and accesses. uintptr_t on RV64
is 8 bytes and generates an sd instruction that Store/AMO faults
because sifive_test MMIO expects 4 bytes accesses.
2020-09-17 09:01:51 +01:00
Sebastian Huber
4eea8d4bc4 build: Fix dependencies for start and asm files
Add a feature to enforce an explicit target file for assembler sources.
Add a build start file node list and use it as a test program
dependency.

The fix for #3846 and #4080 needs to be combined, because the fix
for #3846 requires the removal of 'before=["cstlib"]'. This patch fixes
two issues:

1. The tracking of start file dependencies.

2. Reflect that executables depend on the start files.

We need a start.o file in the right path so that the linker can find is
as specified by the linker script, and not for example a start.S.17.o
file in some path. This part is addressed by the "explicit_asm_target"
feature.

This build process extension

@after("apply_link")
@feature("cprogram", "cxxprogram")
def process_start_files(self):
    if getattr(self, "start_files", False):
        self.link_task.dep_nodes.extend(self.bld.start_files)

addresses 2.

Close #3846.
Close #4080.
2020-09-17 08:57:54 +02:00
Sebastian Huber
4b767bd343 bsps/arm: Use RTEMS_SECTION() 2020-09-17 08:36:45 +02:00
Sebastian Huber
20d82377a6 arm: Fix arm_cp15_set_translation_table_entries()
In a multi-processor system we must broadcast the TLB maintenance operation to
the Inner Shareable domain to ensure that the other processors update their TLB
caches accordingly.

Close #4068.
2020-09-17 08:20:35 +02:00
Sebastian Huber
9979042a3a build: Fix multiple defintion error for i386/pc386
Make the objcopy an bld.objects() task generator.

Close #4079.
2020-09-15 20:07:47 +02:00
Sebastian Huber
2a4ccc4f8d bsp/pc386: Remove support for obsolete Binutils
Update #3818.
2020-09-15 15:14:38 +02:00
Sebastian Huber
8f424e4580 build: Fix i386/pc386 link of SMP start file
Update #3818.
2020-09-15 15:14:35 +02:00
Sebastian Huber
d9d31b381c build: Add RELOCADDR to i386/pc386 options
Update #3818.
2020-09-15 13:33:00 +02:00
Sebastian Huber
3be2380927 build: Fix i386/pc386 ABI flags
Update #3818.
2020-09-15 13:33:00 +02:00
Sebastian Huber
127c3ea527 build: Fix i386/pc386 with SMP enabled
Update #3818.
2020-09-15 09:20:28 +02:00
Sebastian Huber
2786b0aa38 bsps/riscv: Use far jump to boot_card()
Use a far jump to avoid errors like this:

relocation truncated to fit: R_RISCV_JAL against symbol `boot_card'
2020-09-15 09:20:27 +02:00
Sebastian Huber
4647789820 irqs01/smpirqs01: New tests
Close #4034.
2020-09-14 07:11:40 +02:00
Sebastian Huber
aa27a85a83 build: Use Python tarfile instead of pax
This patch is for the new build system.
2020-09-14 07:11:40 +02:00
Sebastian Huber
f3f0370f10 build: Alternative build system based on waf
Update #3818.
2020-09-14 07:11:32 +02:00
Gedare Bloom
9f096f4724 i386/score: fix assembly mnemonic
Closes #4076.
2020-09-12 09:11:28 -06:00
Joel Sherrill
5959b1e34c Remove tmoverhd which existed to produce the obsolete coverhd.h
Closes #4040.
2020-09-11 08:54:16 -05:00
Sebastian Huber
dd734d467d score: Fix _Thread_Initialize()
Fix an error cleanup path in SMP configurations to avoid a NULL pointer access.

Update #3959.
2020-09-11 15:47:02 +02:00
Joel Sherrill
e563e61c7a Remove remaining references to coverhd.h
Closes #4040.
2020-09-10 11:42:00 -05:00
Sebastian Huber
64d989d116 spintrcritical08: Increase clock tick interval
On some simulators, a clock tick interval of 1ms seems to be too short.
For example, the test failed on sparc/erc32 using the SIS.
2020-09-10 14:41:55 +02:00
Hesham Almatary
764ea57879 htif_console_handler is defined in htif.c
closes #4069.
2020-09-06 16:11:45 -05:00
Sebastian Huber
aedd92d147 score: Add stack free handler to TCB
This avoids a dependency to the stack free function in the thread
destruction.

Update #3959.
2020-08-31 17:30:17 +02:00
Sebastian Huber
2d5510307a score: Move _Stack_Allocator_free to separate file
This decouples the task stack allocation from the deallocation.

Update #3959.
2020-08-31 17:30:17 +02:00
Sebastian Huber
d8172209b3 score: Add _Stack_Allocator_do_initialize()
Do the stack allocator initialization and sanity check only if a
user-provided stack allocator was configured.  This avoids a dependency
of _Thread_Handler_initialization() on the stack allocator.

Update #3959.
2020-08-31 17:30:17 +02:00
Sebastian Huber
159db41166 score: Use _Freechain_Push()
The nodes are never NULL.

Update #3959.
2020-08-31 17:30:17 +02:00
Sebastian Huber
354c2b50a3 score: Add <rtems/score/freechainimpl.h>
Hide implementation details.

Update #3959.
2020-08-31 17:30:17 +02:00
Sebastian Huber
91c811a132 score: Add _Freechain_Push()
Update #3959.
2020-08-31 17:30:17 +02:00
Sebastian Huber
5bb93f22fc score: Fix debug assert
Do not access executing->current_state outside the protection of the
thread state lock.  Add missing state with a comment.
2020-08-31 17:30:17 +02:00
Sebastian Huber
6e6e23384f config: Add zero file descriptor data structures
Fix linker errors in the minimum test program on some BSPs introduced by
ced28f2cfc.
2020-08-31 17:30:17 +02:00
Sebastian Huber
ced28f2cfc config: Provide file descriptors only if necessary
Only provide the file descriptor array if
CONFIGURE_MAXIMUM_FILE_DESCRIPTORS > 0.  If someone configured
CONFIGURE_MAXIMUM_FILE_DESCRIPTORS == 0 and the appplication uses
something which requires a file descriptor, then a linker error will
show up.  An alternative would be to add a zero-length array
rtems_libio_iops[ 0 ] to librtemscpu.a which would be used in this
case.

Conditionally include some header files.
2020-08-31 16:19:57 +02:00
Sebastian Huber
1818b9a826 score: Optimize _Objects_Name_to_id_u32()
Remove the superfluous invalid name check since the object creation
directives ensure that objects with such a name cannot exist.  Also
finding an object with such a name would be no catastrophy if it really
exists.
2020-08-31 16:19:57 +02:00
Sebastian Huber
c7e30854f2 rtems: Add _RTEMS_Name_to_id()
Simplify object name to identifier directives.  Using
_RTEMS_Name_to_id() to implement the directives enables a tail call
optimization.

Change license to BSD-2-Clause according to file history.

Update #3053.
2020-08-31 16:19:57 +02:00
Sebastian Huber
33dbb3355f score: Constify objects name to id functions 2020-08-31 16:19:57 +02:00
Sebastian Huber
d556af3605 bsps: Always install IPI in SMP configs
The inter-processor interrupt (IPI) may be used to process per-CPU jobs.
See for example the blocked handler in T_interrupt_test().

Update #3199.
2020-08-31 16:19:53 +02:00
Jan Sommer
b87efa7599 bsp/xilinx-zynq: Flush TX-Buffer before initializing uart
Closes #4055
Closes #4056
2020-08-22 17:29:25 +10:00
Sebastian Huber
1a506170cc spintrcritical22: Use right thread wait flags 2020-08-21 13:48:48 +02:00
Sebastian Huber
cd74bd0c6d spintrcritical16: Use right thread wait flags 2020-08-21 13:48:44 +02:00
Sebastian Huber
a7a0a36461 config: Conditionally include header 2020-08-21 10:33:50 +02:00
Sebastian Huber
1bb2800102 mp03: Include missing header file 2020-08-21 09:18:29 +02:00
Sebastian Huber
abf25bcc99 score: Fix set but not used warning 2020-08-21 09:18:29 +02:00
Sebastian Huber
81efe37c35 confdefs: Fix cyclic dependency
Close #4061.
2020-08-21 08:57:09 +02:00
Sebastian Huber
75b2093afb sparc: Use RTEMS_XCONCAT()
Prefer macros with a proper namespace.
2020-08-20 14:55:14 +02:00
Sebastian Huber
fe6191f91a bsps/leon3: Remove superfluous includes 2020-08-20 14:54:18 +02:00
Sebastian Huber
95d37b6307 bsps/arm: Use _Assert() 2020-08-20 14:54:18 +02:00
eadler
208ebf2099 dd(1): Use a local swapbytes() function.
swab(3) has restrict qualifiers for src and dst.
Avoid relying on undefined overlapping swab behavior.

Obtained From: OpenBSD
2020-08-20 14:03:20 +02:00
Sebastian Huber
79fb53687b spintrcritical23: Fix unused variable warnings 2020-08-20 08:56:28 +02:00
Sebastian Huber
218053d0f1 sp37: Fix unused variable warnings 2020-08-20 08:56:28 +02:00
Aschref Ben Thabet
65e027c9ed psxkey01: Fix configuration
Key_ID array must have the right size, it shall have a value greater
than zero.
Note: In Standard C and C++, zero-size array is not
allowed..
2020-08-20 07:44:33 +02:00