@@ -33,6 +33,14 @@ Main node required properties:
2 = high-to-low edge triggered
4 = active high level-sensitive
8 = active low level-sensitive
+ bit[4] IRQ is inverted between source and sink.
+ Some devices have configurable IRQ output polarities. Software might
+ use flag bits[3:0] to determine how to configure such a device's IRQ
+ output polarity in order to match how the IRQ controller input is
+ configured. If the board or SoC inverts the signal between the
+ device's IRQ output and controller's IRQ output, software must be
+ aware of this fact, in order to program the IRQ output to the correct
+ (i.e. opposite) polarity. This flag provides that information.
bits[15:8] PPI interrupt cpu mask. Each bit corresponds to each of
the 8 possible cpus attached to the GIC. A bit set to '1' indicated
the interrupt is wired to that CPU. Only valid for PPI interrupts.
@@ -76,6 +76,14 @@ commonly used:
2 = high-to-low edge triggered
4 = active high level-sensitive
8 = active low level-sensitive
+ - bit[4] IRQ is inverted between source and sink
+ Some devices have configurable IRQ output polarities. Software might
+ use flag bits[3:0] to determine how to configure such a device's IRQ
+ output polarity in order to match how the IRQ controller input is
+ configured. If the board or SoC inverts the signal between the
+ device's IRQ output and controller's IRQ output, software must be
+ aware of this fact, in order to program the IRQ output to the correct
+ (i.e. opposite) polarity. This flag provides that information.
Example:
@@ -15,5 +15,6 @@
#define IRQ_TYPE_EDGE_BOTH (IRQ_TYPE_EDGE_FALLING | IRQ_TYPE_EDGE_RISING)
#define IRQ_TYPE_LEVEL_HIGH 4
#define IRQ_TYPE_LEVEL_LOW 8
+#define IRQ_SRC_DST_INVERTED 16
#endif