summaryrefslogtreecommitdiffstats
path: root/spec/rtems/intr/if/is-pending.yml
blob: 71d0259dca8bd66f8f5a70d38b8776ca7a9be890 (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
58
59
60
61
62
63
64
65
66
67
68
69
70
SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
brief: |
  Checks if the interrupt is pending.
copyrights:
- Copyright (C) 2021 embedded brains GmbH (http://www.embedded-brains.de)
definition:
  default:
    attributes: null
    body: null
    params:
    - ${vector-number:/name} ${.:/params[0]/name}
    - bool *${.:/params[1]/name}
    return: ${../../status/if/code:/name}
  variants: []
description: |
  The directive checks if the interrupt associated with the interrupt vector
  specified by ${.:/params[0]/name} was pending for the processor executing the
  directive call at some time point during the call.
enabled-by: true
index-entries: []
interface-type: function
links:
- role: interface-placement
  uid: header
- role: interface-ingroup
  uid: group
- 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/directive-no-preempt
name: rtems_interrupt_is_pending
notes: |
  Interrupts may be made pending by calling the ${raise:/name} or
  ${raise-on:/name} directives or due to external signals or messages.  The
  pending state may be cleared by ${clear:/name}.
params:
- description: |
    is the interrupt vector number.
  dir: null
  name: vector
- description: |
    is the pointer to a ``bool`` object.  When the directive call is
    successful, the pending status of the interrupt associated with the
    interrupt vector specified by ${.:/params[0]/name} will be stored in this
    object.  When the interrupt was pending for the processor executing the
    directive call at some time point during the call, the object value will be
    set to ${/c/if/true:/name}, otherwise to ${/c/if/false:/name}.
  dir: out
  name: pending
return:
  return: null
  return-values:
  - description: |
      The requested operation was successful.
    value: ${../../status/if/successful:/name}
  - description: |
      The ${.:/params[1]/name} parameter was ${/c/if/null:/name}.
    value: ${../../status/if/invalid-address:/name}
  - description: |
      There was no interrupt vector associated with the number specified by
      ${.:/params[0]/name}.
    value: ${../../status/if/invalid-id:/name}
  - description: |
      The request to get the pending status has not been satisfied.
    value: ${../../status/if/unsatisfied:/name}
type: interface