All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCHv4 1/4] of: document common interrupt controller details
@ 2012-01-02 15:14 Jamie Iles
  2012-01-02 15:14 ` [PATCHv4 2/4] gpio: add a driver for the Synopsys DesignWare APB GPIO block Jamie Iles
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Jamie Iles @ 2012-01-02 15:14 UTC (permalink / raw)
  To: linux-kernel
  Cc: devicetree-discuss, grant.likely, linus.walleij, robherring2,
	broonie, Jamie Iles, Rob Herring

It's common for interrupt controllers to need to encode interrupt
trigger types and the Linux specific types seem common.  Document these
in a centralized place so that they don't get reinvented each time a new
controller is added.

Suggested-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: Grant Likely <grant.likely@secretlab.ca>
Cc: Rob Herring <rob.herring@calxeda.com>
Signed-off-by: Jamie Iles <jamie@jamieiles.com>
---
 Documentation/devicetree/bindings/arm/gic.txt    |    8 ++------
 Documentation/devicetree/bindings/interrupts.txt |   17 +++++++++++++++++
 2 files changed, 19 insertions(+), 6 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/interrupts.txt

diff --git a/Documentation/devicetree/bindings/arm/gic.txt b/Documentation/devicetree/bindings/arm/gic.txt
index 9b4b82a..d13f7ce 100644
--- a/Documentation/devicetree/bindings/arm/gic.txt
+++ b/Documentation/devicetree/bindings/arm/gic.txt
@@ -24,12 +24,8 @@ Main node required properties:
   SPI interrupts are in the range [0-987].  PPI interrupts are in the
   range [0-15].
 
-  The 3rd cell is the flags, encoded as follows:
-	bits[3:0] trigger type and level flags.
-		1 = low-to-high edge triggered
-		2 = high-to-low edge triggered
-		4 = active high level-sensitive
-		8 = active low level-sensitive
+  The 3rd cell is the flags, encoded as the trigger masks from
+  Documentation/devicetree/bindings/interrupts.txt and:
 	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.
diff --git a/Documentation/devicetree/bindings/interrupts.txt b/Documentation/devicetree/bindings/interrupts.txt
new file mode 100644
index 0000000..1545941
--- /dev/null
+++ b/Documentation/devicetree/bindings/interrupts.txt
@@ -0,0 +1,17 @@
+Common Interrupt Binding Details
+
+For controllers that need to encode trigger types and senses, where possible
+it is encouraged to use the following encoding (a direct mapping of the
+IRQF_TRIGGER_* constants in include/linux/interrupt.h):
+
+	bits[3:0] trigger type and level flags.
+		1 = low-to-high edge triggered
+		2 = high-to-low edge triggered
+		4 = active high level-sensitive
+		8 = active low level-sensitive
+
+For example, an interrupt may be encoded as (with #interrupt-cells = <2>):
+
+	interrupts = <4 0x3>;
+
+to have interrupt 4 raise an interrupt on both edges of the input.
-- 
1.7.5.4

^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2012-01-05  1:22 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-01-02 15:14 [PATCHv4 1/4] of: document common interrupt controller details Jamie Iles
2012-01-02 15:14 ` [PATCHv4 2/4] gpio: add a driver for the Synopsys DesignWare APB GPIO block Jamie Iles
     [not found]   ` <1325517248-32032-2-git-send-email-jamie-wmLquQDDieKakBO8gow8eQ@public.gmane.org>
2012-01-05  1:22     ` Jamie Iles
2012-01-05  1:22       ` Jamie Iles
2012-01-02 15:14 ` [PATCHv4 3/4] gpio: dwapb: add support for GPIO interrupts Jamie Iles
2012-01-02 15:14 ` [PATCHv4 4/4] ARM: picoxcell: use new Synopsys Designware GPIO binding Jamie Iles

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.