Commit Graph

69 Commits

Author SHA1 Message Date
Sebastian Huber
df8d7bd76f score: Use processor mask in _SMP_Multicast_action
Processor_mask is the internal data type to deal with processor sets.
2019-04-12 09:44:48 +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
f9219db2a9 rtems: Add rtems_scheduler_get_processor_maximum()
Add rtems_scheduler_get_processor_maximum() as a replacement for
rtems_get_processor_count(). The rtems_get_processor_count() is a bit
orphaned. Adopt it by the Scheduler Manager. The count is also
misleading, since the processor set may have gaps and the actual count
of online processors may be less than the value returned by
rtems_get_processor_count().

Update #3732.
2019-04-09 08:06:46 +02:00
Joel Sherrill
90232bcf45 z85c30.c: Do not process 0 baud and return an error (CID 1399713) 2019-03-14 08:21:43 -05:00
Sebastian Huber
20d472d3d7 Add rtems_board_support_package() 2019-03-14 13:13:27 +01:00
Sebastian Huber
828276b081 bsps: Adjust shared Doxygen groups
Update #3706.
2019-03-08 07:42:54 +01:00
Sebastian Huber
212663bede bsps: Adjust architecture Doxygen groups
- Use CamelCase as it is not used in our C code.  Enables simple search and
   replace.

 - Prefix with "RTEMS" to aid deployment and integration.  It aids
   searching and sorting.

Update #3706.
2019-03-04 07:51:38 +01:00
Sebastian Huber
feea03b625 Remove explicit file names from @file
This makes the @file documentation independent of the actual file name.

Update #3707.
2019-02-28 11:47:33 +01:00
Sebastian Huber
4e686261d8 bsps/irq: Fix interrupt server init (SMP) 2019-02-07 11:13:59 +01:00
Jiri Gaisler
c1dcd6af56 grlib: make memory coherency cpu-independent
Update #3678.
2019-01-22 12:50:09 +01:00
Jiri Gaisler
9b2b389e8d grlib: use cpu-independent routines for uncached access
Update #3678.
2019-01-22 12:50:08 +01:00
Jiri Gaisler
5981c8ca9f grlib: use rtems_interrupt_handler_install()
Update #3678.
2019-01-22 12:49:58 +01:00
Jiri Gaisler
411c29735d grlib: make apbuart driver independent of bsp
Update #3678.
2019-01-22 12:48:19 +01:00
Sebastian Huber
7eb606d393 grlib: Move source files
Update #3678.
2019-01-22 12:46:33 +01:00
Sebastian Huber
b0c2d48235 bsps: Add CPU_CACHE_SUPPORT_PROVIDES_DISABLE_DATA
Update #3667.
2018-12-21 10:32:39 +01:00
Sebastian Huber
5e0ab023cb bsps: Update cache manager documentation
Update #3667.
2018-12-21 10:32:37 +01:00
Sebastian Huber
a6f70e1a09 bsps: Remove superfluous comments in cacheimpl.h
Remove superfluous blank lines.

Update #3667.
2018-12-21 10:32:34 +01:00
Sebastian Huber
0a1f5df98e Simplify _CPU_Counter_difference()
In order to simplify the use of CPU counter values it is beneficial to
have monotonic increasing values within the range of the CPU counter
ticks data type, e.g. 32-bit unsigned integer.  This eases the use of
CPU counter timestamps in external tools which do not know the details
of the CPU counter hardware.  The CPU counter is the fastest way to get
a time on an RTEMS system.

Such a CPU counter may be also used as the timecounter.  Use it on SPARC
for this purpose to simplify the clock drivers.

Update #3456.
2018-12-07 14:22:01 +01:00
Sebastian Huber
5bf0c1a4fa bsps/sparc: Fix SMP build
Update #3622.
2018-11-28 14:52:55 +01:00
Sebastian Huber
0a75a4aa65 Remove rtems_cache_*_processor_set() functions
The following rtems_cache_*_processor_set() cache manager API functions
are exotic, complex, very hard to use correctly, not used in the RTEMS
code base, and apparently unused by applications.

Close #3622.
2018-11-26 14:09:43 +01:00
Sebastian Huber
9a029cec02 bsps/irq: Use rtems_malloc() 2018-11-12 13:26:22 +01:00
Sebastian Huber
028853637f bsps: Include missing header files
Update #3598.
2018-11-09 09:42:31 +01:00
Sebastian Huber
efdb4a767a bsp/beatnik: Fix warnings 2018-11-09 09:42:31 +01:00
Sebastian Huber
143c8d0d94 serial/ns16550: Fix precision clock synthesizer
The precision clock synthesizer support broke the driver on the QorIQ
P1020.  On this device the Alternate Function Register is accessed with
DLAB == 1 instead of the FIFO Control Register (FCR).  Restructure the
code to account for this.
2018-10-17 09:58:14 +02:00
Sebastian Huber
f004b2b8dc Use rtems_task_exit()
Update #3530.
Update #3533.
2018-10-02 10:22:15 +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
fad3f79b88 bsps: BSP_INTERRUPT_STACK_AT_WORK_AREA_BEGIN
Remove the BSP_INTERRUPT_STACK_AT_WORK_AREA_BEGIN hack.  The interrupt
stacks are now allocated by the linker.

Update #3459.
2018-09-03 07:03:09 +02:00
Sebastian Huber
f7cecc3308 libchip/ata: Use rtems_blkdev_create()
Update #3358.
2018-08-07 07:17:18 +02:00
Sebastian Huber
32ccc016d8 bsps: Fix the generic IRQ support
The genmcf548x partly uses is own implementation of the interrupt
extension API for libbsd support.

This patch is a part of the BSP source reorganization.

Update #3285.
2018-08-03 14:14:19 +02:00
Sebastian Huber
a7cd4b737c serial/ns16550: Precision clock synthesizer
Set the FIFO control register while DLAB == 1 in the line control
register.  At least on the QorIQ T4240 the driver still works with the
re-ordered FIFO control register access.
2018-08-01 11:13:58 +02:00
Sebastian Huber
8a78b784c4 serial/ns16550: Use standard register names
Use the standard register names for the divisor latches.  This makes it
easier to compare the code with other driver implementations.
2018-08-01 10:08:59 +02:00
Sebastian Huber
7ee5931393 Remove Clock_driver_support_shutdown_hardware()
The aim of this clock driver hook was to stop clock tick interrupts at
some late point in the exit() procedure.

The use of atexit() pulls in malloc() which pulls in errno. It is
incompatible with the intention of the
CONFIGURE_DISABLE_NEWLIB_REENTRANCY configuration option.

The exit() function must be called from thread context, so accompanied
clock tick interrupts should cause no harm.  On the contrary, someone
may assume a normal operating system operation, e.g. working timeouts.

Remove the Clock_driver_support_shutdown_hardware() clock driver hook.

Close #3436.
2018-06-27 08:58:16 +02:00
Sebastian Huber
65f868cac6 Add _CPU_Counter_frequency()
Add rtems_counter_frequency() API function.  Use it to initialize the
counter value converter via the new system initialization step
(RTEMS_SYSINIT_CPU_COUNTER).  This decouples the counter implementation
and the counter converter.  It avoids an unnecessary pull in of the
64-bit integer division from libgcc.

Update #3456.
2018-06-15 13:02:44 +02:00
Sebastian Huber
dea4bbe374 bsps: Avoid malloc() in generic IRQ support
Use rtems_heap_allocate_aligned_with_boundary() instead of malloc() to
avoid a dependency on errno.
2018-06-05 07:08:40 +02:00
Sebastian Huber
c4d35fb6c8 libchip: Use rtems_blkdev_create()
Update #3358.
2018-05-18 10:44:18 +02:00
Sebastian Huber
d7d66d7d45 bsps: Move console drivers to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-20 13:08:32 +02:00
Sebastian Huber
7632906fc2 bsps: Move clock drivers to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-20 09:57:01 +02:00
Sebastian Huber
5c5b021f51 bsps: Move bspsmpgetcurrentprocessor.c to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-20 09:49:38 +02:00
Sebastian Huber
2584f5b2b5 bsps: Move bspsmp.c to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-20 09:49:38 +02:00
Sebastian Huber
bc010a8d48 bsps: Move setvec.c to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-20 09:49:38 +02:00
Sebastian Huber
a4429391b6 bsps: Move sbrk.c to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-20 09:49:38 +02:00
Sebastian Huber
7806d9c020 bsps: Move shared CPU counter support to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-20 09:49:37 +02:00
Sebastian Huber
79b9fe67ee bsps: Move getentropy-cpucounter.c to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-20 09:49:37 +02:00
Sebastian Huber
ef7845482a bsps: Move gpio.c to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-20 09:49:37 +02:00
Sebastian Huber
d6fb37aa9f bsps: Move shared btimer support to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-20 09:49:37 +02:00
Sebastian Huber
9ec8cfc59c bsps: Move pci_find_device.c to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-20 09:49:36 +02:00
Sebastian Huber
f9239014db bsps: Move pci_bus_count.c to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-20 09:49:36 +02:00
Sebastian Huber
0510cd506b bsps: Move doxygen.h files to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-20 09:49:36 +02:00
Sebastian Huber
c4ccf26cb7 bsps: Convert all bsp_predriver_hook()
Use RTEMS_SYSINIT_ITEM() instead.

Update #2408.
2018-04-20 09:49:36 +02:00
Sebastian Huber
5a06b187fb bsps: Move bspgetworkarea.c to bsps
This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-20 09:49:35 +02:00