Commit Graph

210 Commits

Author SHA1 Message Date
Christian Mauderer
2f509b572f bsp/mpc83xx: Fix non-ASCII characters 2020-12-14 10:48:57 +01:00
Sebastian Huber
d7a48e1b25 rtems: Improve RTEMS_NO_RETURN attribute
Provide RTEMS_NO_RETURN also in case RTEMS_DEBUG is defined to prevent errors
like this:

error: no return statement in function returning non-void [-Werror=return-type]

Use C11 and C++11 standard means to declare a no-return function.

Close #4122.
2020-10-10 14:00:37 +02:00
Joel Sherrill
0c74ff92b5 Misc: Correct spelling of occurred 2020-10-07 08:38:28 -05: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
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
Chris Johns
3ec5f20484 powerpc/io: The eieio() function clashes with FreeBSD. Change. 2020-08-12 12:59:09 +10:00
Sebastian Huber
33314eb60a bsps/clock: Fix fast idle clock tick support
If we interrupt a thread dispatch critical section (thread dispatch
disable level != ISR nest level), then we should not do the fast idle
mode since this may delay an ongoing system call forever.
2020-07-23 08:56:06 +02:00
Sebastian Huber
523551ccf6 bsps/powerpc: Remove obsolete BSPs
Update #3951.
2020-07-05 12:56:05 +02:00
Sebastian Huber
70b803b554 bsps/powerpc: Remove SPE enabled variants
The PowerPC SPE support was removed from GCC.

Update #3951.
2020-07-05 12:56:01 +02:00
Sebastian Huber
69690f60b4 bsps/powerpc: Remove __atexit form start.o
Remove superflous __atexit stuff in start.o.  It is no longer required
by GCC and may cause linker problems.

See GCC commit:

commit 362c63a5e8b5aacfff3e5af0911e42ba7c775042
Author: Geoff Keating <geoffk@cygnus.com>
Date:   Fri Apr 14 23:16:25 2000 +0000
2020-07-05 12:56:01 +02:00
Sebastian Huber
9b5af6a47f bsps/powerpc: Fix tlbie instruction usage
GCC 10 no longer passes -many to the assembler.  This enables more
checks in the assembler.

The 0 in the tlbie instruction is the L operand which selects a 4KiB
page size.
2020-07-05 12:56:01 +02:00
Sebastian Huber
9b3b33d91a bsps/powerpc: Fix inline assembly
GCC 10 no longer passes -many to the assembler.  This enables more
checks in the assembler.
2020-07-05 12:56:01 +02:00
Sebastian Huber
b4a786df18 bsp/qoriq: Fix tlbwe sequence 2020-07-05 12:56:01 +02:00
Chris Johns
1b1755d9a6 testsuite: Add expected-fail to psim
Updates #2962
2020-05-06 18:39:55 +10:00
Sebastian Huber
4b9b6ddb9f Use rtems_get_version_string()
Update #3970.
2020-05-06 07:39:09 +02:00
Sebastian Huber
92a3a19c75 tests: Exclude record02 for some BSPs
Update #3938.
2020-04-06 21:22:14 +02:00
Sebastian Huber
299a82f45e bsp/qoriq: Fix off by one error in clock init
Close #3921.
2020-04-02 09:13:53 +02:00
Joel Sherrill
097ea1ecc5 psim: Rework device tree so devices do not conflict with 256MB RAM
updates #3849.
2020-03-05 18:27:52 -06:00
Sebastian Huber
61e2d73f09 bsp/mpc5643l_*: Exclude some tests
These tests do not fit into the available memory.
2020-02-27 08:25:40 +01:00
Sebastian Huber
eea21eaca1 bsps: Rework work area initialization
The work area initialization was done by the BSP through
bsp_work_area_initialize(). This approach predated the system
initialization through the system initialization linker set. The
workspace and C program heap were unconditionally initialized.  The aim
is to support RTEMS application configurations which do not need the
workspace and C program heap.  In these configurations, the workspace
and C prgram heap should not get initialized.

Change all bsp_work_area_initialize() to implement _Memory_Get()
instead.  Move the dirty memory, sbrk(), per-CPU data, workspace, and
malloc() heap initialization into separate system initialization steps.
This makes it also easier to test the individual initialization steps.

This change adds a dependency to _Heap_Extend() to all BSPs.  This
dependency will be removed in a follow up change.

Update #3838.
2020-02-04 06:06:41 +01:00
Sebastian Huber
34a7a12f48 bsps: Add RTEMS_SYSINIT_BSP_EARLY
Add new BSP system initialization step for work to be performed before
the work areas are initialized.

Update #3838.
2020-02-04 05:52:28 +01:00
Sebastian Huber
ffa1153170 bsps: Add RamEnd to linker command files
Update #3838.
2020-02-04 05:52:28 +01:00
Sebastian Huber
a3706d4ce1 bsps/powerpc: Fix warning
Update #3834.
2020-01-02 07:54:47 +01:00
Sebastian Huber
86abbb6e1e bsps/powerpc: Support constructors with priority
Close #3339.
2019-12-19 14:21:05 +01:00
Sebastian Huber
bb99cd0d83 clock: Simplify driver initialization
Use a system initialization handler instead of a legacy IO driver.

Update #3834.
2019-12-11 09:05:07 +01:00
Sebastian Huber
a6b2080e1c clock: Remove Clock_exit() from API
This function is no longer supported by the standard clock driver
implementation (clockimpl.h).

Update #3436.
2019-12-11 09:04:49 +01:00
Sebastian Huber
05a32e15c7 bsp/mpc55xxevb: Remove obsolete linker cmd file
Update #3818.
2019-11-25 11:32:19 +01:00
Sebastian Huber
3e9f5a55ad bsp/gen83xx: Remove obsolete linker command file
Update #3818.
2019-11-25 11:32:18 +01:00
Sebastian Huber
41ab50e4cd bsp/t32mppc: Rename linker command file
This BSP family uses only one linker command file.  Use the standard
name.

Update #3818.
2019-11-14 15:07:57 +01:00
Sebastian Huber
9b858ee6ef bsp/motorola_powerpc: Fix linker command file
Fix the __size symbol value to reflect the total size of the bootloader.
This prevents a bootloader crash with application images above a certain
threshold (e.g. fileio sample program).

Update #3727.
2019-06-27 14:36:56 +02:00
Sebastian Huber
f419349a13 bsps/powerpc: Adjust ppcboot.lds
The GNU ld had a couple of changes which resulted in a broken bootloader
image generation.  Recent linker versions tie assignments to their
nearest output section statement.  Place all absolute symbols which are
used with @sectoff relocations into a special section.

See also:

"Binutils 2.28 on PowerPC: dangerous relocation: generic linker can't
handle R_PPC_SECTOFF_HA"

https://www.sourceware.org/ml/binutils/2019-05/msg00183.html

Update #3727
2019-05-27 10:14:48 +02:00
Sebastian Huber
45d06591f1 bsps: Always build generic interrupt support
This makes it possible to write tests for the generic interrupt
controller support.

Update #3269.
2019-05-16 07:29:24 +02:00
Sebastian Huber
30d61a66d9 bsps/powerpc: Fix constructors with priority
Update #3339.
2019-05-07 10:31:51 +02:00
Sebastian Huber
f6895c6d55 bsps/powerpc: Fix C++ exception handling
Close #3736.
2019-05-07 10:31:51 +02:00
Sebastian Huber
f4db49a1ab bsp/motorola_powerpc: Fix bootloader output 2019-05-07 08:45:52 +02:00
Sebastian Huber
be50969881 bsp/motorola_powerpc: Fix debug output
Update #3122.
2019-04-12 14:38:06 +02:00
Sebastian Huber
ad87de4a67 score: Rename _SMP_Get_processor_count()
Rename _SMP_Get_processor_count() in _SMP_Get_processor_maximum() to be
in line with the API level rtems_scheduler_get_processor_maximum().

Update #3732.
2019-04-11 09:19:12 +02:00
Sebastian Huber
cfcd6dc98c score: Rename _SMP_Processor_count
Rename _SMP_Processor_count in _SMP_Processor_maximum to be in line with
the API level rtems_scheduler_get_processor_maximum().

Update #3732.
2019-04-11 09:19:12 +02:00
Sebastian Huber
03c9f24061 rtems: Add rtems_scheduler_get_processor()
Add rtems_scheduler_get_processor() as a replacement for
rtems_get_current_processor(). The rtems_get_current_processor() is a
bit orphaned. Adopt it by the Scheduler Manager. This is in line with
the glibc sched_getcpu() function.

Deprecate rtems_get_current_processor().

Update #3731.
2019-04-09 08:06:46 +02:00
Goetz Pfeiffer
a2aec0b72d Set the small data section size to max. for beatnik BSPs.
This applies changes similar to patch 294c6f46a6 to the beatnik BSP.
This is a board support for the mvme5500 and mvme6100 CPU.
2019-04-04 10:27:33 +11:00
Chris Johns
294c6f46a6 Set the small data section size to max. for mvme5500 and mvme2100 BSPs
Closes #3728
2019-03-30 09:58:31 +11:00
Sebastian Huber
9e4895805a bsps/powerpc: Initialize stack earlier
The __eabi() call may use the stack.

Update #3459.
2019-03-15 07:34:07 +01:00
Sebastian Huber
3fe215502a Remove superfluous <rtems/system.h> includes 2019-03-14 13:13:27 +01:00
Joel Sherrill
d7e2e8bbf0 mpc5643l_evb-testsuite.tcfg: : Update to account for static allocation and BSP small memory 2019-03-12 11:01:24 -05:00
Joel Sherrill
f22a59def6 mpc5643l_dpu-testsuite.tcfg: Update to account for static allocation and BSP small memory 2019-03-12 11:01:24 -05:00
Sebastian Huber
828276b081 bsps: Adjust shared Doxygen groups
Update #3706.
2019-03-08 07:42:54 +01:00
Sebastian Huber
c991eeeccc bsps: Adjust bsp.h Doxygen groups
Update #3706.
2019-03-08 07:42:54 +01:00
Sebastian Huber
3b68442f28 bsps/powerpc: Move mpc55xx header files
They are only used by this BSP.
2019-03-07 10:44:19 +01:00
Chris Johns
ec1dd51aae libdl: Add small data support to the remaining PowerPC BSPs.
Updates #3687
2019-03-07 06:33:47 +11:00
Chris Johns
96e4b22312 testsuite: Make the OPERATION_COUNT a test configuration parameter.
- Add a small memory test config file.
- Update the small memory PowerPC BSPs to use the new test config.
2019-03-07 06:33:47 +11:00