All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3  00/15] Add support to STMicroelectronics STM32 family
@ 2015-03-12 21:55 ` Maxime Coquelin
  0 siblings, 0 replies; 136+ messages in thread
From: Maxime Coquelin @ 2015-03-12 21:55 UTC (permalink / raw)
  To: u.kleine-koenig, afaerber, geert, Rob Herring, Philipp Zabel,
	Linus Walleij, Arnd Bergmann, stefan, pmeerw, pebolle
  Cc: Jonathan Corbet, Pawel Moll, Mark Rutland, Ian Campbell,
	Kumar Gala, Russell King, Daniel Lezcano, Thomas Gleixner,
	Greg Kroah-Hartman, Jiri Slaby, Andrew Morton, David S. Miller,
	Mauro Carvalho Chehab, Joe Perches, Antti Palosaari, Tejun Heo,
	Will Deacon, Nikolay Borisov, Rusty Russell, Kees Cook,
	Michal Marek, linux-doc, linux-arm-kernel, linux-kernel

From: Maxime Coquelin <mcoquelin.stm32@gmail.com>

This third round tries to address most of the comments made on previous series.

It contains few less patches, as the reset_controller_of_init() patch has been
removed, now that the bootlaoder handles the reset of the timers.

The pinctrl driver has also been removed after Linus review.
It will be reworked to use the generic pinconf bindings, and may contain
changes for other machines (Mediatek), to add support for pinmux property
handling directly in pinconf-generic.

STM32 MCUs are Cortex-M CPU, used in various applications (consumer
electronics, industrial applications, hobbyists...).
Datasheets, user and programming manuals are publicly available on
STMicroelectronics website.

With this series applied, the STM32F419 Discovery can boot succesfully.


Changes since v2:
-----------------
 - Remove pinctrl driver from the series. 
 - Remove reset_controller_of_init(), and reset the timers in the bootloader
 - Add HW flow contrl property for serial driver
 - Lots of changes in the DTS file, as per Andreas recommendations
 - Some Kconfig clean-ups
 - Adapt the config to be compatible with Andreas' bootwrapper, except UART port.
 - Various fixes in documentation

Changes since v1:
-----------------
 - Move bindings documentation in their own patches (Andreas)
 - Rename ARM System timer to armv7m-systick (Rob)
 - Add clock-frequency property handling in armv7m-systick (Rob)
 - Re-factor the reset controllers into a single controller (Philipp)
 - Add kerneldoc to reset_controller_of_init (Philipp)
 - Add named constants in include/dt-bindings/reset/ (Philipp)
 - Make pinctrl driver to depend on ARCH_STM32 or COMPILE_TEST (Geert)
 - Introduce CPUV7M_NUM_IRQ config flag to indicate the number of interrupts
supported by the MCU, in order to limit memory waste in vectors' table (Uwe)


Maxime Coquelin (15):
  scripts: link-vmlinux: Don't pass page offset to kallsyms if XIP
    Kernel
  ARM: ARMv7-M: Enlarge vector table up to 256 entries
  dt-bindings: Document the ARM System timer bindings
  clocksource: Add ARM System timer driver
  dt-bindings: Document the STM32 reset bindings
  drivers: reset: Add STM32 reset driver
  dt-bindings: Document the STM32 timer bindings
  clockevent: Add STM32 Timer driver
  dt-bindings: Document the STM32 USART bindings
  serial: stm32-usart: Add STM32 USART Driver
  ARM: Add STM32 family machine
  ARM: dts: Add ARM System timer as clockevent in armv7m
  ARM: dts: Introduce STM32F429 MCU
  ARM: configs: Add STM32 defconfig
  MAINTAINERS: Add entry for STM32 MCUs

 Documentation/arm/stm32/overview.txt               |  32 +
 Documentation/arm/stm32/stm32f429-overview.txt     |  22 +
 .../devicetree/bindings/arm/armv7m_systick.txt     |  26 +
 .../devicetree/bindings/reset/st,stm32-rcc.txt     | 102 +++
 .../devicetree/bindings/serial/st,stm32-usart.txt  |  32 +
 .../devicetree/bindings/timer/st,stm32-timer.txt   |  22 +
 MAINTAINERS                                        |   8 +
 arch/arm/Kconfig                                   |  18 +
 arch/arm/Makefile                                  |   1 +
 arch/arm/boot/dts/Makefile                         |   1 +
 arch/arm/boot/dts/armv7-m.dtsi                     |   6 +
 arch/arm/boot/dts/stm32f429-disco.dts              |  71 +++
 arch/arm/boot/dts/stm32f429.dtsi                   | 226 +++++++
 arch/arm/configs/stm32_defconfig                   |  71 +++
 arch/arm/kernel/entry-v7m.S                        |  13 +-
 arch/arm/mach-stm32/Makefile                       |   1 +
 arch/arm/mach-stm32/Makefile.boot                  |   3 +
 arch/arm/mach-stm32/board-dt.c                     |  19 +
 arch/arm/mm/Kconfig                                |  15 +
 drivers/clocksource/Kconfig                        |  15 +
 drivers/clocksource/Makefile                       |   2 +
 drivers/clocksource/armv7m_systick.c               |  78 +++
 drivers/clocksource/timer-stm32.c                  | 184 ++++++
 drivers/reset/Makefile                             |   1 +
 drivers/reset/reset-stm32.c                        | 125 ++++
 drivers/tty/serial/Kconfig                         |  17 +
 drivers/tty/serial/Makefile                        |   1 +
 drivers/tty/serial/stm32-usart.c                   | 695 +++++++++++++++++++++
 include/uapi/linux/serial_core.h                   |   3 +
 scripts/link-vmlinux.sh                            |   2 +-
 30 files changed, 1807 insertions(+), 5 deletions(-)
 create mode 100644 Documentation/arm/stm32/overview.txt
 create mode 100644 Documentation/arm/stm32/stm32f429-overview.txt
 create mode 100644 Documentation/devicetree/bindings/arm/armv7m_systick.txt
 create mode 100644 Documentation/devicetree/bindings/reset/st,stm32-rcc.txt
 create mode 100644 Documentation/devicetree/bindings/serial/st,stm32-usart.txt
 create mode 100644 Documentation/devicetree/bindings/timer/st,stm32-timer.txt
 create mode 100644 arch/arm/boot/dts/stm32f429-disco.dts
 create mode 100644 arch/arm/boot/dts/stm32f429.dtsi
 create mode 100644 arch/arm/configs/stm32_defconfig
 create mode 100644 arch/arm/mach-stm32/Makefile
 create mode 100644 arch/arm/mach-stm32/Makefile.boot
 create mode 100644 arch/arm/mach-stm32/board-dt.c
 create mode 100644 drivers/clocksource/armv7m_systick.c
 create mode 100644 drivers/clocksource/timer-stm32.c
 create mode 100644 drivers/reset/reset-stm32.c
 create mode 100644 drivers/tty/serial/stm32-usart.c

-- 
1.9.1

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

end of thread, other threads:[~2015-03-27 12:34 UTC | newest]

Thread overview: 136+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-03-12 21:55 [PATCH v3 00/15] Add support to STMicroelectronics STM32 family Maxime Coquelin
2015-03-12 21:55 ` Maxime Coquelin
2015-03-12 21:55 ` Maxime Coquelin
2015-03-12 21:55 ` [PATCH v3 02/15] ARM: ARMv7-M: Enlarge vector table up to 256 entries Maxime Coquelin
2015-03-12 21:55   ` Maxime Coquelin
2015-03-12 21:55   ` Maxime Coquelin
2015-03-12 21:55   ` Maxime Coquelin
2015-03-12 21:55 ` [PATCH v3 03/15] dt-bindings: Document the ARM System timer bindings Maxime Coquelin
2015-03-12 21:55   ` Maxime Coquelin
2015-03-12 21:55   ` Maxime Coquelin
2015-03-12 21:55 ` [PATCH v3 04/15] clocksource: Add ARM System timer driver Maxime Coquelin
2015-03-12 21:55   ` Maxime Coquelin
2015-03-12 21:55   ` Maxime Coquelin
2015-03-26  9:50   ` Daniel Lezcano
2015-03-26  9:50     ` Daniel Lezcano
2015-03-26  9:50     ` Daniel Lezcano
2015-03-26 20:19     ` Maxime Coquelin
2015-03-26 20:19       ` Maxime Coquelin
2015-03-26 20:19       ` Maxime Coquelin
2015-03-27  8:36       ` Daniel Lezcano
2015-03-27  8:36         ` Daniel Lezcano
2015-03-27  8:36         ` Daniel Lezcano
2015-03-27 12:33         ` Maxime Coquelin
2015-03-27 12:33           ` Maxime Coquelin
2015-03-27 12:33           ` Maxime Coquelin
2015-03-12 21:55 ` [PATCH v3 05/15] dt-bindings: Document the STM32 reset bindings Maxime Coquelin
2015-03-12 21:55   ` Maxime Coquelin
2015-03-12 21:55   ` Maxime Coquelin
2015-03-13  0:09   ` Chanwoo Choi
2015-03-13  0:09     ` Chanwoo Choi
2015-03-13  0:09     ` Chanwoo Choi
2015-03-17 16:57     ` Maxime Coquelin
2015-03-17 16:57       ` Maxime Coquelin
2015-03-17 16:57       ` Maxime Coquelin
2015-03-13  8:50   ` Philipp Zabel
2015-03-13  8:50     ` Philipp Zabel
2015-03-13  8:50     ` Philipp Zabel
     [not found]     ` <1426236654.3083.19.camel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2015-03-17 17:13       ` Maxime Coquelin
2015-03-17 17:13         ` Maxime Coquelin
2015-03-17 17:13         ` Maxime Coquelin
2015-03-12 21:55 ` [PATCH v3 06/15] drivers: reset: Add STM32 reset driver Maxime Coquelin
2015-03-12 21:55   ` Maxime Coquelin
2015-03-12 21:55   ` Maxime Coquelin
2015-03-13  0:11   ` Chanwoo Choi
2015-03-13  0:11     ` Chanwoo Choi
2015-03-13  0:11     ` Chanwoo Choi
2015-03-13  8:54   ` Philipp Zabel
2015-03-13  8:54     ` Philipp Zabel
2015-03-13  8:54     ` Philipp Zabel
2015-03-17 17:23     ` Maxime Coquelin
2015-03-17 17:23       ` Maxime Coquelin
2015-03-17 17:23       ` Maxime Coquelin
2015-03-12 21:55 ` [PATCH v3 07/15] dt-bindings: Document the STM32 timer bindings Maxime Coquelin
2015-03-12 21:55   ` Maxime Coquelin
2015-03-12 21:55   ` Maxime Coquelin
2015-03-12 21:55 ` [PATCH v3 08/15] clockevent: Add STM32 Timer driver Maxime Coquelin
2015-03-12 21:55   ` Maxime Coquelin
2015-03-12 21:55   ` Maxime Coquelin
2015-03-12 21:55 ` [PATCH v3 09/15] dt-bindings: Document the STM32 USART bindings Maxime Coquelin
2015-03-12 21:55   ` Maxime Coquelin
2015-03-12 21:55   ` Maxime Coquelin
     [not found] ` <1426197361-19290-1-git-send-email-maxime.coquelin-qxv4g6HH51o@public.gmane.org>
2015-03-12 21:55   ` [PATCH v3 01/15] scripts: link-vmlinux: Don't pass page offset to kallsyms if XIP Kernel Maxime Coquelin
2015-03-12 21:55     ` Maxime Coquelin
2015-03-12 21:55     ` Maxime Coquelin
2015-03-12 21:55   ` [PATCH v3 10/15] serial: stm32-usart: Add STM32 USART Driver Maxime Coquelin
2015-03-12 21:55     ` Maxime Coquelin
2015-03-12 21:55     ` Maxime Coquelin
2015-03-13  9:41     ` Paul Bolle
2015-03-13  9:41       ` Paul Bolle
2015-03-13  9:41       ` Paul Bolle
2015-03-17 17:39       ` Maxime Coquelin
2015-03-17 17:39         ` Maxime Coquelin
2015-03-17 17:39         ` Maxime Coquelin
2015-03-13 14:19     ` Andy Shevchenko
2015-03-13 14:19       ` Andy Shevchenko
2015-03-13 14:19       ` Andy Shevchenko
2015-03-17 17:32       ` Maxime Coquelin
2015-03-17 17:32         ` Maxime Coquelin
2015-03-17 17:32         ` Maxime Coquelin
     [not found]         ` <CALszF6BWuUYRh+3rWnSQLApkAHA5dQXw=6x6D_evRtb+5B_ukA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-03-17 17:56           ` Andy Shevchenko
2015-03-17 17:56             ` Andy Shevchenko
2015-03-17 17:56             ` Andy Shevchenko
2015-03-19 13:55             ` Maxime Coquelin
2015-03-19 13:55               ` Maxime Coquelin
2015-03-19 13:55               ` Maxime Coquelin
     [not found]               ` <CALszF6A5Zu7i0hxSLTS-nfOAXmd0__jLjB=fHxK93Ex5Vbi9LA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-03-19 14:58                 ` Peter Hurley
2015-03-19 14:58                   ` Peter Hurley
2015-03-19 14:58                   ` Peter Hurley
     [not found]                   ` <550AE41C.8070803-WaGBZJeGNqdsbIuE7sb01tBPR1lH4CV8@public.gmane.org>
2015-03-19 17:35                     ` Maxime Coquelin
2015-03-19 17:35                       ` Maxime Coquelin
2015-03-19 17:35                       ` Maxime Coquelin
2015-03-24 17:21                       ` Maxime Coquelin
2015-03-24 17:21                         ` Maxime Coquelin
2015-03-24 17:21                         ` Maxime Coquelin
     [not found]                         ` <CALszF6Dg7t9+F9NG+xREPQeaAj7T6D1GuGabkr8EvOAAdtg7yA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-03-24 17:44                           ` Peter Hurley
2015-03-24 17:44                             ` Peter Hurley
2015-03-24 17:44                             ` Peter Hurley
     [not found]     ` <1426197361-19290-11-git-send-email-maxime.coquelin-qxv4g6HH51o@public.gmane.org>
2015-03-24 18:23       ` Peter Hurley
2015-03-24 18:23         ` Peter Hurley
2015-03-24 18:23         ` Peter Hurley
     [not found]         ` <5511ABAA.2010303-WaGBZJeGNqdsbIuE7sb01tBPR1lH4CV8@public.gmane.org>
2015-03-26 15:46           ` Russell King - ARM Linux
2015-03-26 15:46             ` Russell King - ARM Linux
2015-03-26 15:46             ` Russell King - ARM Linux
2015-03-26 22:05             ` Maxime Coquelin
2015-03-26 22:05               ` Maxime Coquelin
2015-03-26 22:05               ` Maxime Coquelin
2015-03-26 22:03         ` Maxime Coquelin
2015-03-26 22:03           ` Maxime Coquelin
2015-03-26 22:03           ` Maxime Coquelin
2015-03-27 11:32           ` Peter Hurley
2015-03-27 11:32             ` Peter Hurley
2015-03-27 11:32             ` Peter Hurley
2015-03-27 12:30             ` Maxime Coquelin
2015-03-27 12:30               ` Maxime Coquelin
2015-03-27 12:30               ` Maxime Coquelin
2015-03-12 21:55 ` [PATCH v3 11/15] ARM: Add STM32 family machine Maxime Coquelin
2015-03-12 21:55   ` Maxime Coquelin
2015-03-12 21:55   ` Maxime Coquelin
2015-03-12 21:55 ` [PATCH v3 12/15] ARM: dts: Add ARM System timer as clockevent in armv7m Maxime Coquelin
2015-03-12 21:55   ` Maxime Coquelin
2015-03-12 21:55   ` Maxime Coquelin
2015-03-12 21:55 ` [PATCH v3 13/15] ARM: dts: Introduce STM32F429 MCU Maxime Coquelin
2015-03-12 21:55   ` Maxime Coquelin
2015-03-12 21:55   ` Maxime Coquelin
2015-03-12 21:56 ` [PATCH v3 14/15] ARM: configs: Add STM32 defconfig Maxime Coquelin
2015-03-12 21:56   ` Maxime Coquelin
2015-03-12 21:56   ` Maxime Coquelin
2015-03-12 21:56 ` [PATCH v3 15/15] MAINTAINERS: Add entry for STM32 MCUs Maxime Coquelin
2015-03-12 21:56   ` Maxime Coquelin
2015-03-12 21:56   ` Maxime Coquelin
2015-03-12 23:45 ` [PATCH v3 00/15] Add support to STMicroelectronics STM32 family Chanwoo Choi
2015-03-12 23:45   ` Chanwoo Choi
2015-03-12 23:45   ` Chanwoo Choi
2015-03-18 23:35 ` Chanwoo Choi
2015-03-18 23:35   ` Chanwoo Choi
2015-03-18 23:35   ` Chanwoo Choi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.