summaryrefslogtreecommitdiffstats
path: root/spec/rtems/intr/if/server-request-submit.yml
blob: 1a32b7320d714eb520b0cc5db603b6df6d174079 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
brief: |
  Submits the interrupt server request to be serviced by the interrupt server.
copyrights:
- Copyright (C) 2017, 2021 embedded brains GmbH & Co. KG
definition:
  default:
    attributes: null
    body: |
      ${server-entry-submit:/name}( &${.:/params[0]/name}->entry );
    params:
    - ${server-request:/name} *${.:/params[0]/name}
    return: void
  variants: []
description: |
  The directive appends the interrupt server entry of the request to the
  pending entries of the interrupt server.  The interrupt server is notified
  that a new entry is pending.  Once the interrupt server is scheduled it
  services the actions of all pending entries.
enabled-by: true
index-entries: []
interface-type: function
links:
- role: interface-placement
  uid: header
- role: interface-ingroup
  uid: group
- role: constraint
  uid: /constraint/directive-not-pre-qualified
- role: constraint
  uid: /constraint/directive-ctx-isr
- role: constraint
  uid: /constraint/directive-ctx-devinit
- role: constraint
  uid: /constraint/directive-ctx-task
- role: constraint
  uid: /constraint/unblock-may-preempt
- role: constraint
  uid: ../constraint/server-request-initialized
- role: constraint
  uid: ../constraint/server-request-not-while-set-vector
name: rtems_interrupt_server_request_submit
notes: |
  This directive may be used to do a two-step interrupt processing.  The first
  step is done from within interrupt context by a call to this directive.  The
  second step is then done from within the context of the interrupt server.

  No error checking is performed by the directive.

  A submitted request may be destroyed by ${server-request-destroy:/name}.
params:
- description: |
    is the interrupt server request to submit.
  dir: inout
  name: request
return: null
type: interface