diff options
| author | Kevin Cernekee <cernekee@gmail.com> | 2014-12-25 12:49:04 -0500 |
|---|---|---|
| committer | Ralf Baechle <ralf@linux-mips.org> | 2015-04-01 11:21:37 -0400 |
| commit | ca40f1b23df70c6f31b14a5743a6f3b60e862ce1 (patch) | |
| tree | 46d27490a1391cd890a4600fd49cf7bb6ffeee4b /Documentation/devicetree/bindings/interrupt-controller | |
| parent | 5b5468cf1fe9d16e568b45685b31dd4c72588778 (diff) | |
IRQCHIP: bcm7120-l2: Split STB-specific logic into its own function
The BCM7xxx instances of this block (listed in the register manual as
simply "IRQ0") all have the following items in common:
- brcm,int-map-mask: for routing different bits in the L2 to different
parent IRQs
- brcm,int-fwd-mask: for hardwiring certain IRQs to bypass the L2 and
use dedicated L1 lines
- one enable/status pair (32 bits only)
Much of the driver code can be shared with BCM3380-style controllers, but
in order to do this cleanly, let's split out the BCM7xxx-specific logic
first.
Signed-off-by: Kevin Cernekee <cernekee@gmail.com>
Cc: f.fainelli@gmail.com
Cc: jaedon.shin@gmail.com
Cc: abrestic@chromium.org
Cc: tglx@linutronix.de
Cc: jason@lakedaemon.net
Cc: jogo@openwrt.org
Cc: arnd@arndb.de
Cc: computersforpeace@gmail.com
Cc: linux-mips@linux-mips.org
Cc: devicetree@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/8842/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'Documentation/devicetree/bindings/interrupt-controller')
| -rw-r--r-- | Documentation/devicetree/bindings/interrupt-controller/brcm,bcm7120-l2-intc.txt | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/Documentation/devicetree/bindings/interrupt-controller/brcm,bcm7120-l2-intc.txt b/Documentation/devicetree/bindings/interrupt-controller/brcm,bcm7120-l2-intc.txt index bae1f2187226..44a9bb15dd56 100644 --- a/Documentation/devicetree/bindings/interrupt-controller/brcm,bcm7120-l2-intc.txt +++ b/Documentation/devicetree/bindings/interrupt-controller/brcm,bcm7120-l2-intc.txt | |||
| @@ -13,8 +13,7 @@ Such an interrupt controller has the following hardware design: | |||
| 13 | or if they will output an interrupt signal at this 2nd level interrupt | 13 | or if they will output an interrupt signal at this 2nd level interrupt |
| 14 | controller, in particular for UARTs | 14 | controller, in particular for UARTs |
| 15 | 15 | ||
| 16 | - typically has one 32-bit enable word and one 32-bit status word, but on | 16 | - has one 32-bit enable word and one 32-bit status word |
| 17 | some hardware may have more than one enable/status pair | ||
| 18 | 17 | ||
| 19 | - no atomic set/clear operations | 18 | - no atomic set/clear operations |
| 20 | 19 | ||
| @@ -53,9 +52,7 @@ The typical hardware layout for this controller is represented below: | |||
| 53 | Required properties: | 52 | Required properties: |
| 54 | 53 | ||
| 55 | - compatible: should be "brcm,bcm7120-l2-intc" | 54 | - compatible: should be "brcm,bcm7120-l2-intc" |
| 56 | - reg: specifies the base physical address and size of the registers; | 55 | - reg: specifies the base physical address and size of the registers |
| 57 | multiple pairs may be specified, with the first pair handling IRQ offsets | ||
| 58 | 0..31 and the second pair handling 32..63 | ||
| 59 | - interrupt-controller: identifies the node as an interrupt controller | 56 | - interrupt-controller: identifies the node as an interrupt controller |
| 60 | - #interrupt-cells: specifies the number of cells needed to encode an interrupt | 57 | - #interrupt-cells: specifies the number of cells needed to encode an interrupt |
| 61 | source, should be 1. | 58 | source, should be 1. |
| @@ -66,10 +63,7 @@ Required properties: | |||
| 66 | - brcm,int-map-mask: 32-bits bit mask describing how many and which interrupts | 63 | - brcm,int-map-mask: 32-bits bit mask describing how many and which interrupts |
| 67 | are wired to this 2nd level interrupt controller, and how they match their | 64 | are wired to this 2nd level interrupt controller, and how they match their |
| 68 | respective interrupt parents. Should match exactly the number of interrupts | 65 | respective interrupt parents. Should match exactly the number of interrupts |
| 69 | specified in the 'interrupts' property, multiplied by the number of | 66 | specified in the 'interrupts' property. |
| 70 | enable/status register pairs implemented by this controller. For | ||
| 71 | multiple parent IRQs with multiple enable/status words, this looks like: | ||
| 72 | <irq0_w0 irq0_w1 irq1_w0 irq1_w1 ...> | ||
| 73 | 67 | ||
| 74 | Optional properties: | 68 | Optional properties: |
| 75 | 69 | ||
