devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 00/11] ARM: vf610m4: Add Vybrid Cortex-M4 support
@ 2015-04-03 19:44 Stefan Agner
       [not found] ` <1428090292-21693-1-git-send-email-stefan-XLVq0VzYD2Y@public.gmane.org>
                   ` (5 more replies)
  0 siblings, 6 replies; 23+ messages in thread
From: Stefan Agner @ 2015-04-03 19:44 UTC (permalink / raw)
  To: shawn.guo-QSEj5FYQhm4dnm+yROfE0A, kernel-bIcnvbaLZ9MEGnE8C9+IrQ,
	linux-lFZ/pmaqli7XmaaqVzeoHQ,
	u.kleine-koenig-bIcnvbaLZ9MEGnE8C9+IrQ,
	jason-NLaQJdtUoK4Be96aLqz0jA, olof-nZhT3qVonbNeoWH0uzbU5w,
	arnd-r2nGTMty4D4, daniel.lezcano-QSEj5FYQhm4dnm+yROfE0A,
	tglx-hfZtesqFncYOwBW4kG4KsQ, mark.rutland-5wv7dgnIgG8,
	pawel.moll-5wv7dgnIgG8, robh+dt-DgEjT+Ai2ygdnm+yROfE0A,
	ijc+devicetree-KcIKpvwj1kUDXYZnReoRVg,
	galak-sgV2jX0FEOL9JmXXK+q4OQ, marc.zyngier-5wv7dgnIgG8,
	mcoquelin.stm32-Re5JQEeQqe8AvxtiuMwx3w
  Cc: devicetree-u79uwXL29TY76Z2rM5mHXA,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA, Stefan Agner

The fourth version has one small fix in the MSCM IR driver and
one dependency fix.

Like version 3 of the patchset, it does not contain the interrupt
router driver anymore (MSCM IR). The driver has been merged
inbetween:
https://lkml.org/lkml/2015/3/8/6

This patchset extends the NVIC driver to support irq domain
hierarchy and the MSCM IR driver to support NVIC as a parent irq
controller.

I'm happy with the outcome of the MSCM driver, the irq domain
hierarchy support has proven to work with GIC and NVIC as
intendet.

Since v2, this patchset also doesn't add any ARCH or SOC anymore.
Instead, it allows to select ARCH_MULTIPLATFORM in the !MMU case
and add ARCH_MULTI_V7M as a new CPU choice. This change is based
on patches found in Arnd's git tree, however, it tries to allow
MULTIPLATFORM with !MMU in a way which should not allow to make
other selections than before (except ARCH_MULTI_V7M of course).
This makes ARCH_MXC and SOC_VF610 available for the !MMU CPU V7M.
With a small change, SOC_VF610 is now selectable when the CPU
ARCH_MULTI_V7M is selected, and hence allows to build a kernel
for the Cortex-M4 CPU too.

The patchset has proven to be working on the Cortex-M4 of the
Vybrid SoC using a Colibri VF61 module.

Changes since v3:
- Added dependency IRQ_DOMAIN_HIERARCHY for ARM_NVIC
- Fix MSCM IR disable function check
- Remove "ARM: imx: depend MXC debug board on 3DS machines",
  the patch has been merged

Changes since v2:
- Update MSCM patches to merged version of MSCM interrupt router
- Use the GPLv2/X11 dual license in the new device tree files
- Drop SD controller in device tree (initramfs works now and is
  probably more appropriate for most cases)
- Disable GPIO nodes since the A5 is using them
- Drop CONFIG_ prefixes in Kconfig changes for MXC_DEBUG_BOARD
- Drop vector table resizing in favor of Maxime Coquelin's patch
  (https://lkml.org/lkml/2015/2/20/399)
- Remove !MMU dependency for ARCH_EFM32 since its part of
  ARCH_MULTI_V7M
- Rebased on v4.0-rc1

Changes since v1:
- Remove MSCM driver
- Support irq domain hierarchy with NVIC irq controller
- Extend MSCM interrupt router with NVIC as parent in the irq
  domain hierarchy 
- Rebased on v3.19-rc1 with MSCM driver
- NVIC: Register only the amount of IRQ's which vectors are
  available for

Changes since RFC:
- Unified addruart calls for MMU/!MMU
- Add MSCM support along with routable IRQ support in NVIC
- Rebased on Shawns for-next tree which made some changes
  obsolete (mainly the Vybrid SoC device tree files in for-next
  are already prepared for Cortex-M4 support)
- Removed SRC_GPR3 hack, this is now part of a mini boot-loader:
  https://github.com/falstaff84/vf610m4bootldr

Arnd Bergmann (1):
  ARM: efm32: move into multiplatform

Stefan Agner (10):
  genirq: generic chip: support hierarchy domain
  irqchip: nvic: support hierarchy irq domain
  irqchip: vf610-mscm: support NVIC parent
  ARM: ARMv7M: define size of vector table for Vybrid
  clocksource: add dependencies for Vybrid pit clocksource
  ARM: unify MMU/!MMU addruart calls
  ARM: allow MULTIPLATFORM with !MMU
  ARM: vf610: enable Cortex-M4 on Vybrid SoC
  ARM: dts: add support for Vybrid running on Cortex-M4
  ARM: vf610m4: add defconfig for Linux on Vybrids Cortex-M4

 Documentation/devicetree/bindings/arm/fsl.txt |  3 +
 arch/arm/Kconfig                              | 54 +++++++--------
 arch/arm/boot/dts/Makefile                    |  1 +
 arch/arm/boot/dts/vf610m4-colibri.dts         | 98 +++++++++++++++++++++++++++
 arch/arm/boot/dts/vf610m4.dtsi                | 50 ++++++++++++++
 arch/arm/configs/efm32_defconfig              |  2 +
 arch/arm/configs/vf610m4_defconfig            | 43 ++++++++++++
 arch/arm/include/debug/efm32.S                |  2 +-
 arch/arm/kernel/debug.S                       |  2 +-
 arch/arm/mach-imx/Kconfig                     | 36 ++++++----
 arch/arm/mach-imx/Makefile.boot               |  0
 arch/arm/mach-imx/mach-vf610.c                |  1 +
 arch/arm/mm/Kconfig                           |  1 +
 drivers/clocksource/Kconfig                   |  2 +
 drivers/irqchip/Kconfig                       |  1 +
 drivers/irqchip/irq-nvic.c                    | 28 +++++++-
 drivers/irqchip/irq-vf610-mscm-ir.c           | 32 +++++++--
 kernel/irq/generic-chip.c                     |  5 +-
 18 files changed, 306 insertions(+), 55 deletions(-)
 create mode 100644 arch/arm/boot/dts/vf610m4-colibri.dts
 create mode 100644 arch/arm/boot/dts/vf610m4.dtsi
 create mode 100644 arch/arm/configs/vf610m4_defconfig
 create mode 100644 arch/arm/mach-imx/Makefile.boot

-- 
2.3.5

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

end of thread, other threads:[~2015-04-06 10:13 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-04-03 19:44 [PATCH v4 00/11] ARM: vf610m4: Add Vybrid Cortex-M4 support Stefan Agner
     [not found] ` <1428090292-21693-1-git-send-email-stefan-XLVq0VzYD2Y@public.gmane.org>
2015-04-03 19:44   ` [PATCH v4 01/11] genirq: generic chip: support hierarchy domain Stefan Agner
2015-04-03 19:44   ` [PATCH v4 02/11] irqchip: nvic: support hierarchy irq domain Stefan Agner
2015-04-03 19:44   ` [PATCH v4 03/11] irqchip: vf610-mscm: support NVIC parent Stefan Agner
2015-04-03 19:44   ` [PATCH v4 04/11] ARM: ARMv7M: define size of vector table for Vybrid Stefan Agner
2015-04-03 19:44   ` [PATCH v4 07/11] ARM: allow MULTIPLATFORM with !MMU Stefan Agner
2015-04-03 20:09     ` Russell King - ARM Linux
2015-04-03 23:56       ` Stefan Agner
     [not found]         ` <1f84d767d3bb8a8c470a26064cba454e-XLVq0VzYD2Y@public.gmane.org>
2015-04-05 16:10           ` Russell King - ARM Linux
2015-04-05 22:19             ` Stefan Agner
     [not found]               ` <24394c50bcd8000c21aca0360fd20b6f-XLVq0VzYD2Y@public.gmane.org>
2015-04-05 22:44                 ` Russell King - ARM Linux
2015-04-05 23:50                   ` Stefan Agner
2015-04-06  8:15                     ` Russell King - ARM Linux
2015-04-06  8:38                       ` Stefan Agner
2015-04-06  8:54                         ` Russell King - ARM Linux
2015-04-06  9:33                           ` Stefan Agner
2015-04-06 10:13                             ` Russell King - ARM Linux
2015-04-03 19:44   ` [PATCH v4 09/11] ARM: vf610: enable Cortex-M4 on Vybrid SoC Stefan Agner
2015-04-03 19:44 ` [PATCH v4 05/11] clocksource: add dependencies for Vybrid pit clocksource Stefan Agner
2015-04-03 19:44 ` [PATCH v4 06/11] ARM: unify MMU/!MMU addruart calls Stefan Agner
2015-04-03 19:44 ` [PATCH v4 08/11] ARM: efm32: move into multiplatform Stefan Agner
2015-04-03 19:44 ` [PATCH v4 10/11] ARM: dts: add support for Vybrid running on Cortex-M4 Stefan Agner
2015-04-03 19:44 ` [PATCH v4 11/11] ARM: vf610m4: add defconfig for Linux on Vybrids Cortex-M4 Stefan Agner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).