• Stefan Agner's avatar
    ARM: dts: vf610: add Miscellaneous System Control Module (MSCM) · c09d0f7c
    Stefan Agner authored
    Add the Miscellaneous System Control Module (MSCM) to the base
    device tree for Vybrid SoC's. This module contains registers
    to get information of the individual and current (accessing)
    CPU. In a second block, there is an interrupt router, which
    handles the routing of the interrupts between the two CPU cores
    on VF6xx variants of the SoC. However, also on single core
    variants the interrupt router needs to be configured in order
    to receive interrupts on the CPU's interrupt controller. Almost
    all peripheral interrupts are routed through the router, hence
    the MSCM module is the default interrupt parent for this SoC.
    
    In a earlier commit the interrupt nodes were moved out of the
    peripheral nodes and specified in the CPU specific vf500.dtsi
    device tree. This allowed to use the base device tree vfxxx.dtsi
    also for a Cortex-M4 specific device tree, which uses different
    interrupt nodes due to the NVIC interrupt controller. However,
    since the interrupt parent for peripherals is the MSCM module
    independently which CPU the device tree is used for, we can move
    the interrupt nodes into the base device tree vfxxx.dtsi again.
    Depending on which CPU this base device tree will be used with,
    the correct parent interrupt controller has to be assigned to
    the MSCM-IR node (GIC or NVIC). The driver takes care of the
    parent interrupt controller specific needs (interrupt-cells).
    Acked-by: default avatarMarc Zyngier <marc.zyngier@arm.com>
    Signed-off-by: default avatarStefan Agner <stefan@agner.ch>
    Signed-off-by: default avatarShawn Guo <shawn.guo@linaro.org>
    c09d0f7c
vf500.dtsi 1.14 KB