summaryrefslogtreecommitdiffstats
path: root/c-user/interrupt/introduction.rst
diff options
context:
space:
mode:
Diffstat (limited to 'c-user/interrupt/introduction.rst')
-rw-r--r--c-user/interrupt/introduction.rst145
1 files changed, 138 insertions, 7 deletions
diff --git a/c-user/interrupt/introduction.rst b/c-user/interrupt/introduction.rst
index 3d5c71d..7987b54 100644
--- a/c-user/interrupt/introduction.rst
+++ b/c-user/interrupt/introduction.rst
@@ -1,6 +1,6 @@
.. SPDX-License-Identifier: CC-BY-SA-4.0
-.. Copyright (C) 2021 embedded brains GmbH (http://www.embedded-brains.de)
+.. Copyright (C) 2008, 2021 embedded brains GmbH (http://www.embedded-brains.de)
.. Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR)
.. This file is part of the RTEMS quality process and was automatically
@@ -33,8 +33,6 @@ Introduction
.. spec:/rtems/intr/if/local-disable
.. spec:/rtems/intr/if/local-enable
.. spec:/rtems/intr/if/is-in-progress
-.. spec:/rtems/intr/if/cause
-.. spec:/rtems/intr/if/clear
.. spec:/rtems/intr/if/lock-initialize
.. spec:/rtems/intr/if/lock-destroy
.. spec:/rtems/intr/if/lock-acquire
@@ -47,6 +45,42 @@ Introduction
.. spec:/rtems/intr/if/lock-initializer
.. spec:/rtems/intr/if/lock-member
.. spec:/rtems/intr/if/lock-reference
+.. spec:/rtems/intr/if/entry-initializer
+.. spec:/rtems/intr/if/entry-initialize
+.. spec:/rtems/intr/if/entry-install
+.. spec:/rtems/intr/if/entry-remove
+.. spec:/rtems/intr/if/handler-install
+.. spec:/rtems/intr/if/handler-remove
+.. spec:/rtems/intr/if/vector-is-enabled
+.. spec:/rtems/intr/if/vector-enable
+.. spec:/rtems/intr/if/vector-disable
+.. spec:/rtems/intr/if/is-pending
+.. spec:/rtems/intr/if/raise
+.. spec:/rtems/intr/if/raise-on
+.. spec:/rtems/intr/if/clear
+.. spec:/rtems/intr/if/get-affinity
+.. spec:/rtems/intr/if/set-affinity
+.. spec:/rtems/intr/if/get-attributes
+.. spec:/rtems/intr/if/handler-iterate
+.. spec:/rtems/intr/if/server-initialize
+.. spec:/rtems/intr/if/server-create
+.. spec:/rtems/intr/if/server-handler-install
+.. spec:/rtems/intr/if/server-handler-remove
+.. spec:/rtems/intr/if/server-set-affinity
+.. spec:/rtems/intr/if/server-delete
+.. spec:/rtems/intr/if/server-suspend
+.. spec:/rtems/intr/if/server-resume
+.. spec:/rtems/intr/if/server-move
+.. spec:/rtems/intr/if/server-handler-iterate
+.. spec:/rtems/intr/if/server-entry-initialize
+.. spec:/rtems/intr/if/server-action-prepend
+.. spec:/rtems/intr/if/server-entry-destroy
+.. spec:/rtems/intr/if/server-entry-submit
+.. spec:/rtems/intr/if/server-entry-move
+.. spec:/rtems/intr/if/server-request-initialize
+.. spec:/rtems/intr/if/server-request-set-vector
+.. spec:/rtems/intr/if/server-request-destroy
+.. spec:/rtems/intr/if/server-request-submit
Any real-time executive must provide a mechanism for quick response to
externally generated interrupts to satisfy the critical time constraints of the
@@ -76,10 +110,6 @@ from an ISR. The directives provided by the Interrupt Manager are:
* :ref:`InterfaceRtemsInterruptIsInProgress` - Checks if an ISR is in progress
on the current processor.
-* :ref:`InterfaceRtemsInterruptCause` - Causes the interrupt.
-
-* :ref:`InterfaceRtemsInterruptClear` - Clears the interrupt.
-
* :ref:`InterfaceRtemsInterruptLockInitialize` - Initializes the ISR lock.
* :ref:`InterfaceRtemsInterruptLockDestroy` - Destroys the ISR lock.
@@ -108,3 +138,104 @@ from an ISR. The directives provided by the Interrupt Manager are:
* :ref:`InterfaceRTEMSINTERRUPTLOCKREFERENCE` - Defines an ISR lock object
reference.
+
+* :ref:`InterfaceRTEMSINTERRUPTENTRYINITIALIZER` - Statically initializes an
+ interrupt entry object.
+
+* :ref:`InterfaceRtemsInterruptEntryInitialize` - Initializes the interrupt
+ entry.
+
+* :ref:`InterfaceRtemsInterruptEntryInstall` - Installs the interrupt entry at
+ the interrupt vector.
+
+* :ref:`InterfaceRtemsInterruptEntryRemove` - Removes the interrupt entry from
+ the interrupt vector.
+
+* :ref:`InterfaceRtemsInterruptHandlerInstall` - Installs the interrupt handler
+ routine and argument at the interrupt vector.
+
+* :ref:`InterfaceRtemsInterruptHandlerRemove` - Removes the interrupt handler
+ routine and argument from the interrupt vector.
+
+* :ref:`InterfaceRtemsInterruptVectorIsEnabled` - Checks if the interrupt
+ vector is enabled.
+
+* :ref:`InterfaceRtemsInterruptVectorEnable` - Enables the interrupt vector.
+
+* :ref:`InterfaceRtemsInterruptVectorDisable` - Disables the interrupt vector.
+
+* :ref:`InterfaceRtemsInterruptIsPending` - Checks if the interrupt is pending.
+
+* :ref:`InterfaceRtemsInterruptRaise` - Raises the interrupt vector.
+
+* :ref:`InterfaceRtemsInterruptRaiseOn` - Raises the interrupt vector on the
+ processor.
+
+* :ref:`InterfaceRtemsInterruptClear` - Clears the interrupt vector.
+
+* :ref:`InterfaceRtemsInterruptGetAffinity` - Gets the processor affinity set
+ of the interrupt vector.
+
+* :ref:`InterfaceRtemsInterruptSetAffinity` - Sets the processor affinity set
+ of the interrupt vector.
+
+* :ref:`InterfaceRtemsInterruptGetAttributes` - Gets the attributes of the
+ interrupt vector.
+
+* :ref:`InterfaceRtemsInterruptHandlerIterate` - Iterates over all interrupt
+ handler installed at the interrupt vector.
+
+* :ref:`InterfaceRtemsInterruptServerInitialize` - Initializes the interrupt
+ server tasks.
+
+* :ref:`InterfaceRtemsInterruptServerCreate` - Creates an interrupt server.
+
+* :ref:`InterfaceRtemsInterruptServerHandlerInstall` - Installs the interrupt
+ handler routine and argument at the interrupt vector on the interrupt server.
+
+* :ref:`InterfaceRtemsInterruptServerHandlerRemove` - Removes the interrupt
+ handler routine and argument from the interrupt vector and the interrupt
+ server.
+
+* :ref:`InterfaceRtemsInterruptServerSetAffinity` - Sets the processor affinity
+ of the interrupt server.
+
+* :ref:`InterfaceRtemsInterruptServerDelete` - Deletes the interrupt server.
+
+* :ref:`InterfaceRtemsInterruptServerSuspend` - Suspends the interrupt server.
+
+* :ref:`InterfaceRtemsInterruptServerResume` - Resumes the interrupt server.
+
+* :ref:`InterfaceRtemsInterruptServerMove` - Moves the interrupt handlers
+ installed at the interrupt vector and the source interrupt server to the
+ destination interrupt server.
+
+* :ref:`InterfaceRtemsInterruptServerHandlerIterate` - Iterates over all
+ interrupt handler installed at the interrupt vector and interrupt server.
+
+* :ref:`InterfaceRtemsInterruptServerEntryInitialize` - Initializes the
+ interrupt server entry.
+
+* :ref:`InterfaceRtemsInterruptServerActionPrepend` - Prepends the interrupt
+ server action to the list of actions of the interrupt server entry.
+
+* :ref:`InterfaceRtemsInterruptServerEntryDestroy` - Destroys the interrupt
+ server entry.
+
+* :ref:`InterfaceRtemsInterruptServerEntrySubmit` - Submits the interrupt
+ server entry to be serviced by the interrupt server.
+
+* :ref:`InterfaceRtemsInterruptServerEntryMove` - Moves the interrupt server
+ entry to the interrupt server.
+
+* :ref:`InterfaceRtemsInterruptServerRequestInitialize` - Initializes the
+ interrupt server request.
+
+* :ref:`InterfaceRtemsInterruptServerRequestSetVector` - Sets the interrupt
+ vector in the interrupt server request.
+
+* :ref:`InterfaceRtemsInterruptServerRequestDestroy` - Destroys the interrupt
+ server request.
+
+* :ref:`InterfaceRtemsInterruptServerRequestSubmit` - Submits the interrupt
+ server request to be serviced by the interrupt server.