linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/14] Add support to STMicroelectronics STM32 family
@ 2015-02-12 17:45 Maxime Coquelin
  2015-02-12 17:45 ` [PATCH 01/14] scripts: link-vmlinux: Don't pass page offset to kallsyms if XIP Kernel Maxime Coquelin
                   ` (14 more replies)
  0 siblings, 15 replies; 49+ messages in thread
From: Maxime Coquelin @ 2015-02-12 17:45 UTC (permalink / raw)
  To: Jonathan Corbet, Maxime Coquelin, Rob Herring, Pawel Moll,
	Mark Rutland, Ian Campbell, Kumar Gala, Philipp Zabel,
	Russell King, Daniel Lezcano, Thomas Gleixner, Linus Walleij,
	Greg Kroah-Hartman, Jiri Slaby, Arnd Bergmann, 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, devicetree, linux-gpio,
	linux-serial, linux-arch, linux-api

This patchset adds basic support for STMicroelectronics STM32 series MCUs.

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.

Once this series accepted, next steps will be to add DMA support, as USART,
I2C and SPI IPs don't have any FIFO. Then will come the clock driver, as today
the bootloader has to be patched to enable the needed clocks.

Maxime Coquelin (14):
  scripts: link-vmlinux: Don't pass page offset to kallsyms if XIP
    Kernel
  ARM: ARMv7M: Enlarge vector table to 256 entries
  clocksource: Add ARM System timer driver
  reset: Add reset_controller_of_init() function
  ARM: call reset_controller_of_init from default time_init handler
  drivers: reset: Add STM32 reset driver
  clockevent: Add STM32 Timer driver
  pinctrl: Add pinctrl driver for STM32 MCUs
  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/system_timer.txt       |  15 +
 .../devicetree/bindings/pinctrl/pinctrl-stm32.txt  |  99 +++
 .../devicetree/bindings/reset/st,stm32-reset.txt   |  19 +
 .../devicetree/bindings/serial/st,stm32-usart.txt  |  18 +
 .../devicetree/bindings/timer/st,stm32-timer.txt   |  19 +
 MAINTAINERS                                        |   7 +
 arch/arm/Kconfig                                   |  22 +
 arch/arm/Makefile                                  |   1 +
 arch/arm/boot/dts/Makefile                         |   1 +
 arch/arm/boot/dts/armv7-m.dtsi                     |   7 +
 arch/arm/boot/dts/stm32f429-disco.dts              |  41 ++
 arch/arm/boot/dts/stm32f429.dtsi                   | 279 ++++++++
 arch/arm/configs/stm32_defconfig                   |  72 ++
 arch/arm/kernel/entry-v7m.S                        |   8 +-
 arch/arm/kernel/time.c                             |   4 +
 arch/arm/mach-stm32/Makefile                       |   1 +
 arch/arm/mach-stm32/Makefile.boot                  |   0
 arch/arm/mach-stm32/board-dt.c                     |  19 +
 drivers/clocksource/Kconfig                        |  16 +
 drivers/clocksource/Makefile                       |   2 +
 drivers/clocksource/arm_system_timer.c             |  74 ++
 drivers/clocksource/timer-stm32.c                  | 187 +++++
 drivers/pinctrl/Kconfig                            |   9 +
 drivers/pinctrl/Makefile                           |   1 +
 drivers/pinctrl/pinctrl-stm32.c                    | 779 +++++++++++++++++++++
 drivers/reset/Makefile                             |   1 +
 drivers/reset/core.c                               |  20 +
 drivers/reset/reset-stm32.c                        | 124 ++++
 drivers/tty/serial/Kconfig                         |  17 +
 drivers/tty/serial/Makefile                        |   1 +
 drivers/tty/serial/stm32-usart.c                   | 695 ++++++++++++++++++
 include/asm-generic/vmlinux.lds.h                  |   4 +-
 include/dt-bindings/pinctrl/pinctrl-stm32.h        |  43 ++
 include/linux/reset-controller.h                   |   6 +
 include/uapi/linux/serial_core.h                   |   3 +
 scripts/link-vmlinux.sh                            |   2 +-
 38 files changed, 2664 insertions(+), 6 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/system_timer.txt
 create mode 100644 Documentation/devicetree/bindings/pinctrl/pinctrl-stm32.txt
 create mode 100644 Documentation/devicetree/bindings/reset/st,stm32-reset.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/arm_system_timer.c
 create mode 100644 drivers/clocksource/timer-stm32.c
 create mode 100644 drivers/pinctrl/pinctrl-stm32.c
 create mode 100644 drivers/reset/reset-stm32.c
 create mode 100644 drivers/tty/serial/stm32-usart.c
 create mode 100644 include/dt-bindings/pinctrl/pinctrl-stm32.h

-- 
1.9.1


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

end of thread, other threads:[~2015-03-09 17:01 UTC | newest]

Thread overview: 49+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-02-12 17:45 [PATCH 00/14] Add support to STMicroelectronics STM32 family Maxime Coquelin
2015-02-12 17:45 ` [PATCH 01/14] scripts: link-vmlinux: Don't pass page offset to kallsyms if XIP Kernel Maxime Coquelin
2015-02-12 17:45 ` [PATCH 02/14] ARM: ARMv7M: Enlarge vector table to 256 entries Maxime Coquelin
2015-02-12 20:34   ` Geert Uytterhoeven
2015-02-13  8:42     ` Maxime Coquelin
2015-02-13 10:00       ` Uwe Kleine-König
2015-02-15 14:34         ` Maxime Coquelin
2015-02-15 22:42       ` Rob Herring
2015-02-19 16:13         ` Maxime Coquelin
2015-02-19 16:35           ` Rob Herring
2015-02-12 17:45 ` [PATCH 03/14] clocksource: Add ARM System timer driver Maxime Coquelin
2015-02-15 22:31   ` Rob Herring
2015-02-16 12:08     ` Maxime Coquelin
2015-02-15 23:43   ` Andreas Färber
2015-02-16 12:21     ` Maxime Coquelin
2015-02-12 17:45 ` [PATCH 04/14] reset: Add reset_controller_of_init() function Maxime Coquelin
2015-02-13 11:49   ` Philipp Zabel
2015-02-13 16:00     ` Maxime Coquelin
2015-02-12 17:45 ` [PATCH 05/14] ARM: call reset_controller_of_init from default time_init handler Maxime Coquelin
2015-02-15 22:17   ` Rob Herring
2015-02-15 23:12     ` Russell King - ARM Linux
2015-02-16 15:48       ` Rob Herring
2015-02-16 12:02     ` Maxime Coquelin
2015-02-12 17:45 ` [PATCH 06/14] drivers: reset: Add STM32 reset driver Maxime Coquelin
2015-02-15 23:59   ` Andreas Färber
2015-02-16 12:25     ` Maxime Coquelin
2015-02-12 17:45 ` [PATCH 07/14] clockevent: Add STM32 Timer driver Maxime Coquelin
2015-03-06  8:57   ` Linus Walleij
2015-02-12 17:45 ` [PATCH 08/14] pinctrl: Add pinctrl driver for STM32 MCUs Maxime Coquelin
2015-02-12 20:37   ` Geert Uytterhoeven
2015-02-13  8:43     ` Maxime Coquelin
2015-02-12 17:45 ` [PATCH 09/14] serial: stm32-usart: Add STM32 USART Driver Maxime Coquelin
2015-02-12 17:46 ` [PATCH 10/14] ARM: Add STM32 family machine Maxime Coquelin
2015-02-12 17:46 ` [PATCH 11/14] ARM: dts: Add ARM System timer as clockevent in armv7m Maxime Coquelin
2015-02-12 17:46 ` [PATCH 12/14] ARM: dts: Introduce STM32F429 MCU Maxime Coquelin
2015-02-13 11:47   ` Philipp Zabel
2015-02-13 15:59     ` Maxime Coquelin
2015-02-13 16:25       ` Philipp Zabel
2015-02-13 16:41         ` Maxime Coquelin
2015-02-13 19:18           ` Philipp Zabel
2015-02-15 14:36             ` Maxime Coquelin
2015-02-12 17:46 ` [PATCH 13/14] ARM: configs: Add STM32 defconfig Maxime Coquelin
2015-02-12 17:46 ` [PATCH 14/14] MAINTAINERS: Add entry for STM32 MCUs Maxime Coquelin
2015-03-06  9:03   ` Linus Walleij
2015-03-06  9:55     ` Maxime Coquelin
2015-03-09 16:47       ` Linus Walleij
2015-03-09 17:01         ` Maxime Coquelin
2015-02-15 15:14 ` [PATCH 00/14] Add support to STMicroelectronics STM32 family Andreas Färber
2015-02-16 11:52   ` Maxime Coquelin

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).