Age | Commit message (Collapse) | Author |
|
Add a workaround for Cortex-A9 Errata 845369: A short loop including a DMB
instruction might cause a denial of service on another which executes a CP15
broadcast operation.
Close #4115.
|
|
Add a workaround for Cortex-A9 Errata 845369: Under Very Rare Timing
Circumstances Transition into Streaming Mode Might Create Data Corruption.
Update #4115.
|
|
|
|
|
|
|
|
This breaks out AArch32-specific code so that the shared GICv3 code can
be reused by other architectures.
|
|
This breaks AArch32-specific portions of the ARM GPT driver into their
own file so that the generic code can be moved for reuse by other
architectures.
|
|
This UART driver is now needed for BSPs other than ARM.
|
|
Due to the static allocation of operating system resources the .bss section
needs more space than the .work section.
Close #4117.
|
|
|
|
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.
|
|
Update #3818.
|
|
Closes #4055
Closes #4056
|
|
|
|
The external UART over SPI device SC16IS752 uses the interrupt server
for interrupt processing. The interrupt server is also heavily used by
libbsd. The interrupt processing for the SC16IS752 is time critical and
doesn't work if network traffic is processed at the same priority.
With #4033 custom interrupt servers are available. Change
atsam_sc16is752_spi_create() to support user-defined interrupt servers.
Introduced atsam_sc16is752_spi_config to cut down the argument count of
this function.
Close #4039.
|
|
|
|
The chip select lines of the iMX SPI module doesn't work well for a
generic API like the one RTEMS uses. The existing solution only worked
in some special cases and had odd bugs when trying transfers of
different sizes (like deselecting between each byte for lengths that are
not dividable by 4).
With this patch the same approach like on FreeBSD or Linux is used:
Treat the CS lines as GPIOs.
Update 3869
|
|
Update 3869
|
|
|
|
Updates #2962
|
|
Updates #2962
|
|
_CPU_Counter_frequency() can be called by the rtems_counter
initialization before arm_gt_clock_initialize() initializes the value
used in _CPU_Counter_frequency().
Closes #3961.
|
|
Some imx chips or boards don't use the same frequency for ECSPI and IPG.
Update #3869
|
|
1) _Memory_Initialize makes pointer from integer
without a cast.
2) printf format error, expects %u but %lu provided.
|
|
Updates #3938.
|
|
Updates #3938.
|
|
Updates #3938.
|
|
Updates #3938.
|
|
Updates #3938.
|
|
Update #3938.
|
|
Fixes #3903
|
|
Statically initialize the ARMv7-M vector table to allow a placement in
ROM with read-only MPU settings.
Change licence to BSD-2-Clause in some files.
|
|
Closes #3611.
|
|
|
|
|
|
|
|
|
|
At least on GICv1 the interrupts 0 up to including 31 are so called
Peripheral Private Interrupts (PPIs). We have to initialize the
priority of the PPIs on secondary processors.
|
|
This patch adds driver for Mini UART present in Raspberry Pi 3
and above, this UART is currently used as the primary UART in
these models.
The Mini UART is similar to ns16550, this driver is built
upon libchip/ns16550.
|
|
Place idle and MPCI stacks into extra linker sections. This can be
optionally used by applications to control the placement of the stacks.
Update #3835.
|
|
This avoids to pull in via printk() the Termios support which pulls in
the file system support. This fixes a spconfig02 test failure.
|
|
Update #3869.
|
|
Update #3869.
|
|
This uses the tx-threshold to reduce gaps in SPI transmissions.
Update #3869.
|
|
Update #3869.
|
|
The new area is used by the i.MX 6UltraLite for example.
Update #3869.
|
|
Update #3869.
|
|
Update #3869.
|
|
Use RTEMS_SYSINIT_ORDER_LAST_BUT_5 instead of RTEMS_SYSINIT_ORDER_LAST
to allow applications and support functions to place system
initialization handlers behind the standard handlers.
Update #3838.
|
|
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.
|