Re: [PATCH v6 0/3] irqchip: vf610-mscm: add MSCM interrupt router driver
On Mon, Mar 09, 2015 at 12:43:56AM +0100, Stefan Agner wrote: > On 2015-03-08 06:31, Jason Cooper wrote: > > On Sun, Mar 01, 2015 at 11:41:26PM +0100, Stefan Agner wrote: > > ... > >> Stefan Agner (3): > >> irqchip: vf610-mscm-ir: add support for MSCM interrupt router > >> irqchip: vf610-mscm: dt-bindings: add MSCM bindings > >> ARM: dts: vf610: add Miscellaneous System Control Module (MSCM) > >> > >> .../arm/freescale/fsl,vf610-mscm-cpucfg.txt| 14 ++ > >> .../bindings/arm/freescale/fsl,vf610-mscm-ir.txt | 33 > >> arch/arm/boot/dts/vf500.dtsi | 137 + > >> arch/arm/boot/dts/vfxxx.dtsi | 49 + > >> arch/arm/mach-imx/Kconfig | 1 + > >> drivers/irqchip/Makefile | 1 + > >> drivers/irqchip/irq-vf610-mscm-ir.c| 212 > >> + > >> 7 files changed, 314 insertions(+), 133 deletions(-) > >> create mode 100644 > >> Documentation/devicetree/bindings/arm/freescale/fsl,vf610-mscm-cpucfg.txt > >> create mode 100644 > >> Documentation/devicetree/bindings/arm/freescale/fsl,vf610-mscm-ir.txt > >> create mode 100644 drivers/irqchip/irq-vf610-mscm-ir.c > > > > Applied patches 1 and 2 to irqchip/vybrid. Please let me know if you need > > to > > base other work off of this. > > Thx. Some patches in the patchset to run Linux on the Cortex-M4 of > Vybrid is based on this driver. I will post a rebased version of that > probably tomorrow. What I meant, is: will you be submitting patches which have build or runtime dependencies on this branch? If so, I'll make sure to leave irqchip/vybrid up after I pull it into irqchip/core so that patches going into other trees and can depend on it. It's no extra work on my part, I just need to know not to clean it up ;-) thx, Jason. -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v6 0/3] irqchip: vf610-mscm: add MSCM interrupt router driver
On 2015-03-08 06:31, Jason Cooper wrote: > On Sun, Mar 01, 2015 at 11:41:26PM +0100, Stefan Agner wrote: > ... >> Stefan Agner (3): >> irqchip: vf610-mscm-ir: add support for MSCM interrupt router >> irqchip: vf610-mscm: dt-bindings: add MSCM bindings >> ARM: dts: vf610: add Miscellaneous System Control Module (MSCM) >> >> .../arm/freescale/fsl,vf610-mscm-cpucfg.txt| 14 ++ >> .../bindings/arm/freescale/fsl,vf610-mscm-ir.txt | 33 >> arch/arm/boot/dts/vf500.dtsi | 137 + >> arch/arm/boot/dts/vfxxx.dtsi | 49 + >> arch/arm/mach-imx/Kconfig | 1 + >> drivers/irqchip/Makefile | 1 + >> drivers/irqchip/irq-vf610-mscm-ir.c| 212 >> + >> 7 files changed, 314 insertions(+), 133 deletions(-) >> create mode 100644 >> Documentation/devicetree/bindings/arm/freescale/fsl,vf610-mscm-cpucfg.txt >> create mode 100644 >> Documentation/devicetree/bindings/arm/freescale/fsl,vf610-mscm-ir.txt >> create mode 100644 drivers/irqchip/irq-vf610-mscm-ir.c > > Applied patches 1 and 2 to irqchip/vybrid. Please let me know if you need to > base other work off of this. Thx. Some patches in the patchset to run Linux on the Cortex-M4 of Vybrid is based on this driver. I will post a rebased version of that probably tomorrow. -- Stefan -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v6 0/3] irqchip: vf610-mscm: add MSCM interrupt router driver
On Sun, Mar 01, 2015 at 11:41:26PM +0100, Stefan Agner wrote: ... > Stefan Agner (3): > irqchip: vf610-mscm-ir: add support for MSCM interrupt router > irqchip: vf610-mscm: dt-bindings: add MSCM bindings > ARM: dts: vf610: add Miscellaneous System Control Module (MSCM) > > .../arm/freescale/fsl,vf610-mscm-cpucfg.txt| 14 ++ > .../bindings/arm/freescale/fsl,vf610-mscm-ir.txt | 33 > arch/arm/boot/dts/vf500.dtsi | 137 + > arch/arm/boot/dts/vfxxx.dtsi | 49 + > arch/arm/mach-imx/Kconfig | 1 + > drivers/irqchip/Makefile | 1 + > drivers/irqchip/irq-vf610-mscm-ir.c| 212 > + > 7 files changed, 314 insertions(+), 133 deletions(-) > create mode 100644 > Documentation/devicetree/bindings/arm/freescale/fsl,vf610-mscm-cpucfg.txt > create mode 100644 > Documentation/devicetree/bindings/arm/freescale/fsl,vf610-mscm-ir.txt > create mode 100644 drivers/irqchip/irq-vf610-mscm-ir.c Applied patches 1 and 2 to irqchip/vybrid. Please let me know if you need to base other work off of this. thx, Jason. -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH v6 0/3] irqchip: vf610-mscm: add MSCM interrupt router driver
So far the MSCM interrupt router was initialized by the boot loader and configured all interrupts for the Cortex-A5 CPU. There are two use cases where a proper driver is necessary: - To run Linux on the Cortex-M4. When the kernel is running on the non-preconfigured CPU, the interrupt router need to be configured properly. - To support deeper sleep modes: LPSTOP clears the interrupt router configuration, hence a driver needs to restore the configuration on resume. Due to the concernes of using "syscon" for the interrupt router this 4th version uses device tree bindings which split the MSCM module into sub-modules. In detail, the registers inside the MSCM module are grouped: - 0x40001000-0x4000105C: Processor information e.g. CPU ID - 0x40001800-0x40001820: CPU2CPU directed interrupt registers - 0x40001880-0x4000195E: The interrupt router registers - 0x40001C00-0x40001DDC: ACTZS TrustZone registers This version of the patchset defines bindings for the first submodule and combines the second and third submodule into one block. However, the driver currently does not support the CPU2CPU interrupts. The fourth submodule is completely left out for now. Due to this and the better documentation the patchset grew by ~40 lines. I think this bindings honer the quite individual functionality inside the MSCM better. Still looking for an ack by device tree folks... Changes since v5 - Remove seperate Kconfig symbol since this driver is presumably only used on Vybrid - Warn only if IRQ is already in use by another CPU (avoids spurious warnings on older boot loaders) - Rebased on v4.0-rc1 Changes since v4 - Fix config selection in SOC_VF610 (VF610_MSCM => VF610_MSCM_IR) Changes since v3 - Splitted MSCM bindings: MSCM CPU configuration and interrupt router - Use syscon to access the CPU configuration registers - Renamed the driver (irq-vf610-mscm => irq-vf610-mscm-ir) - Extended general and property description of the bindings - Rebased on v3.19-rc6 Changes since v2 - Use two cell layout for MSCM interrupt router - Move peripheral interrupt properties to base device tree vfxxx.dtsi - Use generic two cell xlate (irq_domain_xlate_twocell) - Add syscon to compatible string - Remove some line breaks for better readability Changes since v1 (part of Vybrid Cortex-M4 support) - Rewrite with irqdomain hierarchy - Implemented as proper irqchip and move to driver/irqchip/ - Doesn't work on Cortex-M4 anymore (NVIC as parent is not yet implemented) Stefan Agner (3): irqchip: vf610-mscm-ir: add support for MSCM interrupt router irqchip: vf610-mscm: dt-bindings: add MSCM bindings ARM: dts: vf610: add Miscellaneous System Control Module (MSCM) .../arm/freescale/fsl,vf610-mscm-cpucfg.txt| 14 ++ .../bindings/arm/freescale/fsl,vf610-mscm-ir.txt | 33 arch/arm/boot/dts/vf500.dtsi | 137 + arch/arm/boot/dts/vfxxx.dtsi | 49 + arch/arm/mach-imx/Kconfig | 1 + drivers/irqchip/Makefile | 1 + drivers/irqchip/irq-vf610-mscm-ir.c| 212 + 7 files changed, 314 insertions(+), 133 deletions(-) create mode 100644 Documentation/devicetree/bindings/arm/freescale/fsl,vf610-mscm-cpucfg.txt create mode 100644 Documentation/devicetree/bindings/arm/freescale/fsl,vf610-mscm-ir.txt create mode 100644 drivers/irqchip/irq-vf610-mscm-ir.c -- 2.3.0 -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html