Commit Graph

34104 Commits

Author SHA1 Message Date
Jan Sommer
1f77518fca bsps/pc386: Add missing license header
Closes #4093.
2020-09-23 08:25:30 -05:00
Sebastian Huber
18fe650ad0 or1k: Do not use printk() for _CPU_Fatal_halt()
Debug output can be added to user-defined fatal error handlers.
2020-09-23 07:35:05 +02:00
Sebastian Huber
2248b3781d or1k: Remove superfluous includes
Including <stdio.h> in <rtems/score/cpu.h> breaks libbsd.
2020-09-23 07:35:05 +02:00
Sebastian Huber
e8450a6c36 bsps/riscv: Add bsp_fdt_map_intr()
This function is required by libbsd.
2020-09-23 07:35:05 +02:00
Chris Johns
5ebba2c5f4 libmisc/capture: Add rtems-trace-buffer-default.c to the autotools build 2020-09-23 13:59:31 +10:00
Chris Johns
de58eb2f4f cpukit/rtems: Add taskconstruct.c to the autotools build 2020-09-23 13:46:48 +10:00
Sebastian Huber
d9bdf16664 rtems: Install missing header file
Update #3053.
2020-09-22 09:44:01 +02:00
Sebastian Huber
d110e6e3b3 bsp/gen83xx: Add missing source file
Update #3818.
2020-09-21 06:34:56 +02:00
Sebastian Huber
e59cb6a2b2 bsps/powerpc: Remove __ppc_generic define
Do not force BSPs to define __ppc_generic.

This was probably the last command line define in the BSPs.
2020-09-20 17:45:11 +02:00
Sebastian Huber
456b8ae371 bsp/motorola_powerpc: Remove obsolete GCC option
commit 20c89ab7c5091ee48535392cae2177aa1a1c43eb
Author: Segher Boessenkool <segher@kernel.crashing.org>
Date:   Fri Jan 12 21:50:52 2018 +0100

    rs6000: Remove -mstring

    -mstring is only enabled by default on 601, and with -Os on some
    configurations.  It is almost always slower (than not using it) and
    does not very often lead to smaller code.

    This patch disables it.  If a user uses -mstring he gets a warning
    (but not with -mno-string).  I left the target attribute in place, it
    just doesn't do anything anymore.

    The patch also deletes a whole bunch of code.  The 'N' and 'O' output
    modifiers are now unused, but now is not the time to delete them.
2020-09-20 17:42:11 +02:00
Sebastian Huber
3c68456a25 bsps/powerpc: Remove -fno-common
Remove -fno-common because it is the default since GCC 10.
2020-09-20 17:39:02 +02:00
Sebastian Huber
9f2a2075fc capture: Move default trace data
Provide the default trace data in a separate file to avoid issues on targets
with a small-data area.

Close #3883.
2020-09-20 17:32:10 +02:00
Sebastian Huber
2b1a4ac84f build: Fix linker path
Use -B for the linker since some architectures use extra start files defined by
the GCC specification and provided by the BSP, for example powerpc.  Start
files are not found by -L.

In the long run, the GCC defined start files should be provided by GCC.  This
is a GCC 11 topic.

Update #3818
2020-09-20 17:32:10 +02:00
Sebastian Huber
da27e962b1 score: Document _Scheduler_Try_to_schedule_node() 2020-09-18 19:38:24 +02:00
Sebastian Huber
0b410b8ac7 rtems: Generate <rtems.h>
Change license to BSD-2-Clause according to file history and
documentation re-licensing agreement.

Update #3053.
Update #3899.
Update #3993.
2020-09-18 18:55:09 +02:00
Sebastian Huber
7892ac0ca4 rtems: From <rtems.h> to <rtems/rtems/mp.h>
Move multiprocessing related definitions to <rtems/rtems/mp.h>.  This
makes <rtems.h> an include only header file.
2020-09-18 18:55:09 +02:00
Sebastian Huber
c161216d44 rtems: From <rtems.h> to <rtems/rtems/types.h>
Move type related definition to <rtems/rtems/types.h>.  The goal is to
make <rtems.h> an include only header file.
2020-09-18 18:55:09 +02:00
Sebastian Huber
d433b72427 rtems: From <rtems.h> to <rtems/rtems/tasks.h>
Move task related declarations and definitions to <rtems/rtems/tasks.h>.
The goal is to make <rtems.h> an include only header file.
2020-09-18 18:55:09 +02:00
Sebastian Huber
1615b5ff17 rtems: From <rtems.h> to <rtems/rtems/object.h>
Move object related declarations and definitions to
<rtems/rtems/object.h>.  The goal is to make <rtems.h> an include only
header file.
2020-09-18 18:55:09 +02:00
Sebastian Huber
5353ea89d7 rtems: Move from <rtems.h> to <rtems/config.h>
Move configuration related declarations and definitions to
<rtems/config.h>.  The goal is to make <rtems.h> an include only header
file.
2020-09-18 18:55:09 +02:00
Sebastian Huber
96ea30f0c9 score: Improve Scheduler Handler documentation 2020-09-18 18:52:49 +02:00
Gedare Bloom
031f8124f2 gitignore: ignore top-level ini files 2020-09-18 09:49:19 -06:00
Sebastian Huber
4e5327ff94 doxygen: Wrap long lines 2020-09-18 08:20:03 +02:00
Sebastian Huber
2f65e136e5 rtems: Fix typo
Update #3959.
2020-09-17 20:07:29 +02:00
Sebastian Huber
3dd4cbb50d validation: rtems_task_construct() errors
This is the first test case generated from a specification item in the
rtems-central repository.

Update #3959.
2020-09-17 17:42:25 +02:00
Sebastian Huber
139ffa25d9 validation: Add general purpose test suite
Add a general purpose test suite for validation tests.

This is the first test suite generated from a specification item in the
rtems-central repository.

Update #3959.
2020-09-17 17:42:25 +02:00
Sebastian Huber
ad22c6552a doxygen: Move top-level group definitions
Update #3959.
2020-09-17 17:42:25 +02:00
Sebastian Huber
6942e5f991 rtems: Add rtems_task_construct()
In contrast to rtems_task_create() this function constructs a task with
a user-provided task storage area.  The new directive uses a
configuration structure instead of individual parameters.

Add RTEMS_TASK_STORAGE_SIZE() to calculate the recommended size of a
task storage area based on the task attributes and the size dedicated to
the task stack and thread-local storage.  This macro may allow future
extensions without breaking the API.

Add application configuration option
CONFIGURE_MINIMUM_TASKS_WITH_USER_PROVIDED_STORAGE to adjust RTEMS
Workspace size estimate.

Update #3959.
2020-09-17 17:42:25 +02:00
Sebastian Huber
c312f3110e CONFIGURE_MAXIMUM_THREAD_LOCAL_STORAGE_SIZE
Add this application configuration option.  This configuration option can be
used to reserve space for the dynamic linking of modules with thread-local
storage objects.

Add RTEMS_TASK_STORAGE_ALIGNMENT to define the minium alignment of a
thread-local storage size.

Update #4074.
2020-09-17 17:42:25 +02:00
Sebastian Huber
dce1cdf19e rtems: Add RTEMS_ALIGN_UP()
Update #3959.
Update #4074.
2020-09-17 17:42:25 +02:00
Sebastian Huber
641b31a48d rtems: Add RTEMS_ALIGN_DOWN()
Update #3959.
Update #4074.
2020-09-17 17:42:25 +02:00
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