Documentation/devicetree/bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.yaml

Source file repositories/reference/linux-study-clean/Documentation/devicetree/bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.yaml

File Facts

System
Linux kernel
Corpus path
Documentation/devicetree/bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.yaml
Extension
.yaml
Size
3424 bytes
Lines
163
Domain
Support Tooling And Documentation
Bucket
Documentation
Inferred role
Support Tooling And Documentation: configuration, schema, or hardware description
Status
atlas-only

Why This File Exists

Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.

Dependency Surface

Detected Declarations

Annotated Snippet

%YAML 1.2
---
$id: http://devicetree.org/schemas/interrupt-controller/brcm,bcm2835-armctrl-ic.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: BCM2835 ARMCTRL Interrupt Controller

maintainers:
  - Florian Fainelli <florian.fainelli@broadcom.com>
  - Raspberry Pi Kernel Maintenance <kernel-list@raspberrypi.com>

description: >
  The BCM2835 contains a custom top-level interrupt controller, which supports
  72 interrupt sources using a 2-level register scheme. The interrupt
  controller, or the HW block containing it, is referred to occasionally as
  "armctrl" in the SoC documentation, hence naming of this binding.

  The BCM2836 contains the same interrupt controller with the same interrupts,
  but the per-CPU interrupt controller is the root, and an interrupt there
  indicates that the ARMCTRL has an interrupt to handle.

  The interrupt sources are as follows:

  Bank 0:
    0: ARM_TIMER
    1: ARM_MAILBOX
    2: ARM_DOORBELL_0
    3: ARM_DOORBELL_1
    4: VPU0_HALTED
    5: VPU1_HALTED
    6: ILLEGAL_TYPE0
    7: ILLEGAL_TYPE1

  Bank 1:
    0: TIMER0
    1: TIMER1
    2: TIMER2
    3: TIMER3
    4: CODEC0
    5: CODEC1
    6: CODEC2
    7: VC_JPEG
    8: ISP
    9: VC_USB
    10: VC_3D
    11: TRANSPOSER
    12: MULTICORESYNC0
    13: MULTICORESYNC1
    14: MULTICORESYNC2
    15: MULTICORESYNC3
    16: DMA0
    17: DMA1
    18: VC_DMA2
    19: VC_DMA3
    20: DMA4
    21: DMA5
    22: DMA6
    23: DMA7
    24: DMA8
    25: DMA9
    26: DMA10
    27: DMA11-14 - shared interrupt for DMA 11 to 14
    28: DMAALL - triggers on all dma interrupts (including channel 15)
    29: AUX
    30: ARM
    31: VPUDMA

  Bank 2:
    0: HOSTPORT
    1: VIDEOSCALER

Annotation

Implementation Notes