Commit Graph

32417 Commits

Author SHA1 Message Date
Sebastian Huber
5cb23f4b88 bsp/atsam: Use binary semaphore for I2C
Remove superfluous sleep before each I2C transfer.  Reset I2C module
after transfer timeouts.

Update #3534.
2018-10-01 09:01:29 +02:00
Sebastian Huber
fca9132aa5 bsp/atsam: Use binary semaphore for SPI
Update #3534.
2018-10-01 09:01:21 +02:00
Sebastian Huber
69a24c3cb0 bsp/imx: Add imx_ccm_sdhci_hz()
Update #3525.
2018-09-27 07:22:41 +02:00
Sebastian Huber
c56721cc6f printer: Fix Doxygen comments 2018-09-27 07:22:21 +02:00
Sebastian Huber
7d1acc03f1 stackchk: Fix interrupt stack preparation
We have to prepare the interrupt stack of each processor.

Update #3459.
2018-09-24 09:16:31 +02:00
Sebastian Huber
4221d932b4 stackchk: Improve support for interrupt stacks
Prepare the interrupt stack which may be used by the boot processor as
initialization stack with the stack sanity pattern.  Check the interrupt
stack of the current processor in the thread begin and switch extension.

Update #3459.
2018-09-21 07:59:03 +02:00
Sebastian Huber
a75a7d3c57 stackchk: Remove heap hack
It is now guranteed that threads do not use a freed stack during
termination.
2018-09-21 07:49:42 +02:00
Sebastian Huber
56e61e24bd Remove INTERNAL_ERROR_INTERRUPT_STACK_TOO_SMALL
The configured interrupt stack size (CONFIGURE_INTERRUPT_STACK_SIZE) is
checked against the minimum task stack size.  The minium tasks task
stack size is also a configuration option
(CONFIGURE_MINIMUM_TASK_STACK_SIZE).  So, this check does not really
help in case of configuration errors.  In addition, the interrupt stack
is also re-used as the initialization stack in most BSPs.  It is
probably better to use a stack checker to detect problems.

Update #3459.
2018-09-21 07:19:29 +02:00
Jacob Hansen
5cbc9c5922 clang: Keep -qrtems and -B for compilers without -specs support
This is needed for building rtems correctly with Clang.

Note that this change does not mean rtems can build correctly with
mainline clang. However the change allows building rtems with a
Clang toolchain that has a rtems frontend similar that of GCC's
builtin rtems specs.
2018-09-20 12:48:32 +02:00
Daniel Hellstrom
9ed109cc7f leon: remove warning missing string.h 2018-09-20 12:48:32 +02:00
Daniel Hellstrom
431661de35 smp03: make printout match actual task name 2018-09-20 12:48:32 +02:00
Martin Aberg
c2011b474e leon, grspw_pkt: support CCSDS/ISO16 data CRC
When the CCSDS/CCITT CRC-16 and 16-bit ISO-checksum logic is available in
GRSPW2, the DCRCT field is used to determine how to generate the CRC/checksum
code. grspw_hw_sup has been extended with the field ccsds_crc
2018-09-20 12:48:32 +02:00
Daniel Hellstrom
1a2656cd8e tm26: enable FP context when fprintf used
calling rtems_print_printer_fprintf_putc() results in usage of vfprintf()
which may use floating point instructions in its implementation.
2018-09-20 12:48:32 +02:00
Daniel Hellstrom
227b145e7f sparc: clang AS does no accept UNIMP without argument 2018-09-20 12:48:32 +02:00
Daniel Hellstrom
0aae151eba leon,grspw_pkt: protect TX descriptor from bad input (hdrlen) 2018-09-20 12:48:32 +02:00
Martin Aberg
ddc95ab04b leon, l2cache: workaround for scrubber
This is a workaround for a L2CACHE scrubber corner case described in GR740
User's Manual, Version 1.10, section 43.2.30.

The issue affects some version of the L2CACHE. However, since the performance
impact of the workaround is marginal, special device probing logic has been
avoided. In addition, this update does not affect users who enable the L2CACHE
and scrubber before RTEMS is started.
2018-09-20 12:48:32 +02:00
Daniel Hellstrom
56a7540cd8 leon: substitute printf with printk in driver init 2018-09-20 12:48:32 +02:00
Daniel Hellstrom
68a0012470 leon3, ckinit: avoid unsued code warnings when drvmgr is enabled 2018-09-20 12:48:32 +02:00
Daniel Hellstrom
d952d733fe leon3: fix warning when SMP is enabled 2018-09-20 12:48:32 +02:00
Daniel Cederman
1c34a9bd94 sparc: Remove sequence that could trigger B2BST errata 2018-09-20 12:48:32 +02:00
Daniel Cederman
e20da8bbf3 sparc: Return to previous section type when done with .data._SPARC_Counter 2018-09-20 12:48:32 +02:00
Sebastian Huber
b3cf79b9c4 bsp/leon3: Fix typo which breaks the CPU counter
Update #3456.
2018-09-20 07:27:28 +02:00
Sebastian Huber
776464aad4 score: Allocate per-CPU data only if necessary
The _Workspace_Allocate_aligned() would returns a non-NULL pointer for a
zero size allocation request if there is enough memory available.  This
conflicts with the size estimate of zero in
_Workspace_Space_for_per_CPU_data() if the per-CPU data set is empty.

Update #3507.
2018-09-19 11:52:47 +02:00
Sebastian Huber
68f339b6e3 Remove CONFIGURE_HAS_OWN_CONFIGURATION_TABLE
The RTEMS configuration should be done via explicit configuration
options to allow more freedom for implementation changes.

Update #3489.
Update #3490.
2018-09-17 14:22:17 +02:00
Sebastian Huber
5fa0a1f6ea config: Remove CONFIGURE_HAS_OWN_MOUNT_TABLE
RTEMS had the configuration option CONFIGURE_HAS_OWN_MOUNT_TABLE since
1999.  This configuration option was broken since RTEMS 4.11.  Remove
this broken configuration option.

Update #3488.
2018-09-17 14:22:17 +02:00
Sebastian Huber
bd5cec416d config: Remove CONFIGURE_HAS_OWN_FILESYSTEM_TABLE
This configuration was untested and undocumented. Remove it to avoid a
potential exposure of internal data structures to the application
domain.

Close #3520.
2018-09-17 14:22:17 +02:00
Hesham Almatary
9cda6f29a7 riscv: Allow platforms with no PLIC to proceed
Spike simulator and QEMU's spike_v1.10 don't have a PLIC
2018-09-17 14:22:17 +02:00
Sebastian Huber
62cb39d7fe bsp/tqm8xx: Remove unused files
Close #3513.
2018-09-17 08:56:32 +02:00
Sebastian Huber
688e101a65 bsp/tqm8xx: Fix polled vs. interrupt output
Update #3513.
2018-09-17 08:56:32 +02:00
Sebastian Huber
d22147e072 bsp/tqm8xx: Convert console to new Termios API
Update #3513.
2018-09-17 08:56:32 +02:00
Sebastian Huber
68920e7f92 bsp/tqm8xx: Move DMA support to channel descriptor
Update #3513.
2018-09-17 08:56:32 +02:00
Sebastian Huber
53fb03fe3d bsp/tqm8xx: Move rxBuf to channel descriptor
Update #3513.
2018-09-17 08:56:32 +02:00
Sebastian Huber
7b93d8570e bsp/tqm8xx: Use IRQ extensions API
Update #3513.
2018-09-17 08:56:32 +02:00
Sebastian Huber
94ea8a8b49 bsp/tqm8xx: Clear sbss section 2018-09-17 08:56:32 +02:00
Sebastian Huber
7916139eab bsp/tqm8xx: Use custom string to uint32_t
Avoid C locale support which is not available at this stage.
2018-09-17 08:56:31 +02:00
Sebastian Huber
fe283f6c77 powerpc: Fix _CPU_Counter_read() for MPC860
The mpc860 is a RTEMS-specific multilib define, see GCC
"gcc/config/rs6000/rtems.h".
2018-09-17 08:56:31 +02:00
Sebastian Huber
aaa6653b72 score: Fix PER_CPU_DATA_ITEM_DECLARE()
Fix PER_CPU_DATA_ITEM_DECLARE() for targets with a small-data area.

Update #3507.
2018-09-17 08:56:27 +02:00
Sebastian Huber
1fe1b820de score: Fix PER_CPU_DATA_GET_BY_OFFSET()
Add uniprocessor version for PER_CPU_DATA_GET_BY_OFFSET().  Fix warnings
in uniprocessor configurations.

Update #3507.
2018-09-10 12:01:50 +02:00
Sebastian Huber
e58f1cd381 Add more dummy values to <sys/priority.h>
Update #3472.
2018-09-10 10:38:45 +02:00
Sebastian Huber
709796209c score: Add thread pin/unpin support
Add support to temporarily pin a thread to its current processor.  This
may be used to access per-processor data structures in critical sections
with enabled thread dispatching, e.g. a pinned thread is allowed to
block.

Update #3508.
2018-09-10 10:38:45 +02:00
Sebastian Huber
d8bc0730f7 score: Modify _Scheduler_Unblock()
In SMP configurations, obtain the scheduler node for the block and
unblock operations through the same way via
Thread_Control::Scheduler::Scheduler_node.  This symmetry is important
in a follow up patch which introduces thread pinning.

Update #3508.
2018-09-10 10:38:45 +02:00
Sebastian Huber
cfc4231d8f score: Add flexible per-CPU data
Update #3507.
2018-09-10 10:38:45 +02:00
Sebastian Huber
77d374f580 cpukit/Makefile.am: Cleanup 2018-09-10 10:38:45 +02:00
Sebastian Huber
cb682532cf network: Use kernel/user space header files
Add and use <machine/rtems-bsd-kernel-space.h> and
<machine/rtems-bsd-user-space.h> similar to the libbsd to avoid command
line defines and defines scattered throught the code base.

Simplify cpukit/libnetworking/Makefile.am.

Update #3375.
2018-09-10 10:38:44 +02:00
Sebastian Huber
43fb904e47 network: Remove man page installation
The man page installation is broken since 2004-01-11 (commit
8c31a89fdf).  Nobody complained about
this, so just remove some dead code from the Makefile.am.
2018-09-10 10:38:44 +02:00
Sebastian Huber
eae4d14787 network: Remove unused files 2018-09-10 10:38:44 +02:00
Sebastian Huber
d9296d246c Move <poll.h> to set of default header files
The <poll.h> is a POSIX header file and just includes <sys/poll.h> which
contains the real content.
2018-09-10 10:38:44 +02:00
Sebastian Huber
ea0a680ac6 score: Debug aid for _Chain_Extract_unprotected()
Ensure that a chain node is not off chain while doing the chain extract.
2018-09-10 10:38:44 +02:00
Sebastian Huber
2d1c3dff12 nfsclient: Fix unused variable warning 2018-09-07 07:34:09 +02:00
Sebastian Huber
0e907232e0 sptests/spconfig01: New test
Close #3435.
2018-09-06 07:12:38 +02:00