| Commit message (Collapse) | Author | Files | Lines |
|
|
|
Update #4862.
|
|
The embedded brains GmbH & Co. KG is the legal successor of embedded
brains GmbH.
|
|
The shared BSP interrupt controller support code actually implements
parts of the Interrupt Manager.
Update #3706.
|
|
Update #4769.
|
|
The name handler table was a bit misleading after the last rework.
Rename it to distach table. Update the documentation accordingly.
Update #4769.
|
|
Do not return a status code in bsp_interrupt_facility_initialize() since this
leads to unreachable code in bsp_interrupt_initialize(). Use RTEMS_DEBUG
assertions in bsp_interrupt_facility_initialize() if necessary.
|
|
Add rtems_interrupt_entry_remove(). Split up irq-generic.c into several files.
In particular, place all functions which use dynamic memory into their own
file.
Add optional macros to let the BSP customize the vector installation after
installing the first entry and the vector removal before removing the last
entry:
* bsp_interrupt_vector_install()
* bsp_interrupt_vector_remove()
Use these new customization options in the m68k/genmcf548x BSP so re-use the
generic interrupt controller support.
Update #3269.
|
|
This function is only used by one BSP.
Update #3269.
|
|
Return RTEMS_INCORRECT_STATE instead of RTEMS_INTERNAL_ERROR in case the
interrupt support is not initialized. This is similar to
rtems_timer_server_fire_after() for example.
Update #3269.
|
|
Update #3269.
|
|
Update #3269.
|
|
Update #3269.
|
|
Replace it with BSP_INTERRUPT_VECTOR_COUNT.
Update #3269.
|
|
Remove the support for BSP_INTERRUPT_NO_HEAP_USAGE. This was only used
by one BSP and provides no real benefit.
Update #3269.
|
|
Change license to BSD-2-Clause according to file history and
re-licensing agreement.
Update #3053.
|
|
|
|
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.
|
|
Use rtems_heap_allocate_aligned_with_boundary() instead of malloc() to
avoid a dependency on errno.
|
|
This patch is a part of the BSP source reorganization.
Update #3285.
|
|
Update #3082.
|
|
Update #3071.
|
|
Close #3071.
|
|
Change bsp_interrupt_vector_enable() and bsp_interrupt_vector_disable()
to not return a status code. Add bsp_interrupt_assert() and use it to
validate the vector number in the vector enable/disable implementations.
|
|
Closes #3014.
|
|
|
|
|
|
|
|
A new option RTEMS_INTERRUPT_REPLACE is introduced that permits updating
the first interrupt handler for the registered interrupt vector and
matching argument. If no match is found, the install function fails
with RTEMS_UNSATISFIED.
The Interrupt Manager Extension offers interrupt handlers with an
argument pointer. It is impossible to update two words (handler and
argument) atomically on most architectures. In order to avoid an SMP
lock in bsp_interrupt_handler_dispatch() which would degrade the
interrupt response time an alternative must be provided that makes it
possible to tear-down interrupt sources without an SMP lock.
Add RTEMS_INTERRUPT_REPLACE option to Interrupt Manager Extension. This
enables a clean tear-down of interrupt sources on SMP configurations.
Instead of an interrupt handler removal a replacement handler can be
installed to silence an interrupt source. This can be used in contexts
that allow no sophisticated synchronization (e.g. in atexit() or fatal
handlers).
|
|
|
|
The vector number of spurious interrupts was wrong after the interrupt
handler removal on SMP configurations.
|
|
Merge RTEMS_FATAL_SOURCE_BSP_GENERIC and RTEMS_FATAL_SOURCE_BSP_SPECIFIC
into new fatal source RTEMS_FATAL_SOURCE_BSP. This makes it easier to
figure out the code position given a fatal source and code.
|
|
|
|
Add bsp_generic_fatal().
|
|
|
|
Since the allocator mutex allows nesting now we can use it for the
generic IRQ support (recursive obtain in a potential malloc()). This
simplifies the code and reduces memory usage.
|
|
|
|
|
|
|
|
* include/irq-config.h, include/irq-generic.h, include/irq-info.h,
src/irq-generic.c, src/irq-info.c, src/irq-legacy.c, src/irq-shell.c:
Format, cleanup and documentation.
* src/irq-server.c: New file.
* include/bootcard.h, include/stackalloc.h, src/stackalloc.c,
bsplibc.c: Update for heap API changes. Documentation.
|
|
* src/irq-generic.c: Priority inheritance on simple binary semaphores
makes no sense and has recently been added as an error condition.
|
|
* include/irq-generic.h, src/irq-generic.c: Documentation.
|
|
|
|
* include/irq-info.h, src/irq-info.c, src/irq-shell.c: New files.
* include/irq-generic.h, src/irq-generic.c: Improved interrupt handler
dispatch function.
|
|
* src/irq-generic.c: Fixed integer conversion warnings.
|
|
* include/bootcard.h, bootcard.c, bsplibc.c: Changed parameter types of
bsp_libc_init() to match RTEMS_Malloc_Initialize().
* bsppost.c, bsppredriverhook.c: Include bootcard.h.
* src/irq-generic.c: Fixed warnings.
|
|
|
|
(shared handler and handler with a handle).
|