From: Maxime Coquelin <mcoquelin.stm32@gmail.com>
To: u.kleine-koenig@pengutronix.de, afaerber@suse.de,
geert@linux-m68k.org, Rob Herring <robh+dt@kernel.org>,
Philipp Zabel <p.zabel@pengutronix.de>,
Linus Walleij <linus.walleij@linaro.org>,
Arnd Bergmann <arnd@arndb.de>,
stefan@agner.ch, pmeerw@pmeerw.net, pebolle@tiscali.nl,
peter@hurleysoftware.com, andy.shevchenko@gmail.com,
cw00.choi@samsung.com, Russell King <linux@arm.linux.org.uk>,
Daniel Lezcano <daniel.lezcano@linaro.org>,
joe@perches.com,
Vladimir Zapolskiy <vladimir_zapolskiy@mentor.com>,
lee.jones@linaro.org,
Daniel Thompson <daniel.thompson@linaro.org>
Cc: Jonathan Corbet <corbet@lwn.net>, Pawel Moll <pawel.moll@arm.com>,
Mark Rutland <mark.rutland@arm.com>,
Ian Campbell <ijc+devicetree@hellion.org.uk>,
Kumar Gala <galak@codeaurora.org>,
Thomas Gleixner <tglx@linutronix.de>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Jiri Slaby <jslaby@suse.cz>,
Andrew Morton <akpm@linux-foundation.org>,
"David S. Miller" <davem@davemloft.net>,
Mauro Carvalho Chehab <mchehab@osg.samsung.com>,
Antti Palosaari <crope@iki.fi>, Tejun Heo <tj@kernel.org>,
Will Deacon <will.deacon@arm.com>,
Nikolay Borisov <Nikolay.Borisov@arm.com>,
Rusty Russell <rusty@rustcorp.com.au>,
Kees Cook <keescook@chromium.org>, Michal Marek <mmarek@suse.cz>,
linux-doc@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, devicetree@vger.kernel.org,
linux-gpio@vger.kernel.org, linux-serial@vger.kernel.org,
linux-arch@vger.kerne
Subject: [PATCH v8 00/16] Add support to STMicroelectronics STM32 family
Date: Sat, 9 May 2015 09:53:42 +0200 [thread overview]
Message-ID: <1431158038-3813-1-git-send-email-mcoquelin.stm32@gmail.com> (raw)
Main change in this eighth round is the introduction of a new DT bindings
include file for RCC IP drivers. It is for now only used by reset driver,
but goal is to use it also for the clock driver later.
Other changes are bug fix in termios callback of serial driver (uninitialized
variables), and NO_HZ enablement in stm32_defconfig.
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 STM32F429 Discovery can boot succesfully.
Note: Patch 2/16 has already been applied by Russell (8340/1).
Changes since v7:
-----------------
- Add DT-bindings header file for RCC IP (Daniel)
- Fix uninitialized variables in serial driver
- Enable CONFIG_NO_HZ in stm32_defconfig
Changes since v6:
-----------------
- serial: Fix locking in case of sysrq (Vladimir)
- Rebase on top of v4.1-rc1
- Apply Acked-by and Reviewed-by
- Clean-up stm32_defconfig
Changes since v5:
-----------------
- Change st,hw-flow-ctrl property to auto-flow-control (Rob)
- Constify stm32_uart_ops (Joe)
- Propagate request_irq error in USART driver (Andy)
- Applies Acked-by and Reviewed-by (Rob, Peter)
Changes since v4:
-----------------
- Cosmetic changes in USART driver (Andy)
- Apply Acks on reset driver & bindings (Philipp & Rob)
Changes since v3:
-----------------
- Fix and simplify error path in ARMv7-M Systick driver (Daniel)
- Improve reset bindings documentation (Philipp)
- Fix trailing lines anf typos in reset driver & doc (Philipp & Chanwoo)
- Fix MODULE_LICENCE in USART driver (Paul)
- Refactor USART baudrate calculation (Peter & Andy)
- Fix error path in USART init (Peter & Russell)
- Fix HW flow control in USART driver (Peter)
- Fix serial port type number to unused one (Peter)
- Applies Chanwoo's Tested-by on the series
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 (16):
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/drivers: Add ARM System timer driver
dt-bindings: mfd: Add STM32F4 RCC numeric constants into DT include
file
dt-bindings: Document the STM32 reset bindings
drivers: reset: Add STM32 reset driver
dt-bindings: Document the STM32 timer bindings
clockevents/drivers: 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 clocksource 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 | 50 ++
.../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 | 227 +++++++
arch/arm/configs/stm32_defconfig | 70 ++
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 | 79 +++
drivers/clocksource/timer-stm32.c | 184 +++++
drivers/reset/Makefile | 1 +
drivers/reset/reset-stm32.c | 124 ++++
drivers/tty/serial/Kconfig | 17 +
drivers/tty/serial/Makefile | 1 +
drivers/tty/serial/stm32-usart.c | 739 +++++++++++++++++++++
include/dt-bindings/mfd/stm32f4-rcc.h | 92 +++
include/uapi/linux/serial_core.h | 3 +
scripts/link-vmlinux.sh | 2 +-
31 files changed, 1891 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
create mode 100644 include/dt-bindings/mfd/stm32f4-rcc.h
--
1.9.1
next reply other threads:[~2015-05-09 7:53 UTC|newest]
Thread overview: 85+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-05-09 7:53 Maxime Coquelin [this message]
2015-05-09 7:53 ` [PATCH v8 01/16] scripts: link-vmlinux: Don't pass page offset to kallsyms if XIP Kernel Maxime Coquelin
2015-05-18 11:47 ` Maxime Coquelin
2015-05-20 23:04 ` Andreas Färber
[not found] ` <555D12F8.4000403-l3A5Bk7waGM@public.gmane.org>
2015-05-21 5:40 ` Michal Marek
2015-05-21 7:42 ` Maxime Coquelin
2015-05-22 20:20 ` Andreas Färber
2015-05-09 7:53 ` [PATCH v8 02/16] ARM: ARMv7-M: Enlarge vector table up to 256 entries Maxime Coquelin
2015-05-09 7:53 ` [PATCH v8 03/16] dt-bindings: Document the ARM System timer bindings Maxime Coquelin
2015-05-09 7:53 ` [PATCH v8 04/16] clocksource/drivers: Add ARM System timer driver Maxime Coquelin
2015-05-18 11:55 ` Maxime Coquelin
[not found] ` <CALszF6BiKwDKejfpVgs6ojTxC4LSRfLSEaszXTGVy7xfbHLHZg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-05-18 12:49 ` Daniel Lezcano
2015-05-18 12:57 ` Maxime Coquelin
2015-05-09 7:53 ` [PATCH v8 05/16] dt-bindings: mfd: Add STM32F4 RCC numeric constants into DT include file Maxime Coquelin
[not found] ` <1431158038-3813-1-git-send-email-mcoquelin.stm32-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-05-09 7:53 ` [PATCH v8 06/16] dt-bindings: Document the STM32 reset bindings Maxime Coquelin
2015-05-09 7:53 ` [PATCH v8 15/16] ARM: configs: Add STM32 defconfig Maxime Coquelin
[not found] ` <1431158038-3813-16-git-send-email-mcoquelin.stm32-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-05-15 20:03 ` Arnd Bergmann
2015-05-09 7:53 ` [PATCH v8 07/16] drivers: reset: Add STM32 reset driver Maxime Coquelin
[not found] ` <1431158038-3813-8-git-send-email-mcoquelin.stm32-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-05-20 23:45 ` Andreas Färber
2015-05-21 7:46 ` Maxime Coquelin
2015-05-21 17:58 ` Andreas Färber
2015-05-21 19:57 ` Maxime Coquelin
2015-05-21 22:01 ` Andreas Färber
2015-05-22 14:04 ` Maxime Coquelin
2015-05-09 7:53 ` [PATCH v8 08/16] dt-bindings: Document the STM32 timer bindings Maxime Coquelin
2015-05-09 7:53 ` [PATCH v8 09/16] clockevents/drivers: Add STM32 Timer driver Maxime Coquelin
2015-05-18 12:59 ` Maxime Coquelin
2015-05-18 13:10 ` Daniel Lezcano
2015-05-18 14:03 ` Maxime Coquelin
2015-05-19 8:16 ` Daniel Lezcano
2015-05-19 8:55 ` Maxime Coquelin
[not found] ` <CALszF6CwGuKqgbX6gVrya1-_YOgvtrgC7pVqKTNjCRif_o532A-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-05-19 9:06 ` Daniel Lezcano
2015-05-19 9:44 ` Maxime Coquelin
2015-05-19 9:59 ` Daniel Lezcano
[not found] ` <555B098A.8030202-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2015-05-19 10:02 ` Maxime Coquelin
[not found] ` <CALszF6AJ3Zf598wYeUx=iNWHHKT24xUyfagB=+4GocwZ-Fd-0g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-05-19 10:55 ` Arnd Bergmann
2015-05-19 13:42 ` Maxime Coquelin
2015-05-19 13:49 ` Daniel Lezcano
2015-05-19 14:05 ` Arnd Bergmann
2015-05-19 14:41 ` Maxime Coquelin
2015-05-19 14:50 ` Russell King - ARM Linux
2015-05-19 15:34 ` Maxime Coquelin
[not found] ` <CALszF6A-De6dvcRNoa9ruL+y6Wt_rc7bi-O-VxHWkFF9NSt5_g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-05-19 15:03 ` Daniel Lezcano
2015-05-19 12:56 ` Thomas Gleixner
2015-05-19 13:00 ` Russell King - ARM Linux
[not found] ` <20150519130028.GF2067-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2015-05-19 13:17 ` Maxime Coquelin
2015-05-09 7:53 ` [PATCH v8 10/16] dt-bindings: Document the STM32 USART bindings Maxime Coquelin
2015-05-09 7:53 ` [PATCH v8 11/16] serial: stm32-usart: Add STM32 USART Driver Maxime Coquelin
2015-05-09 10:07 ` Andy Shevchenko
2015-05-18 13:05 ` Maxime Coquelin
2015-05-09 7:53 ` [PATCH v8 12/16] ARM: Add STM32 family machine Maxime Coquelin
[not found] ` <1431158038-3813-13-git-send-email-mcoquelin.stm32-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-05-15 19:57 ` Arnd Bergmann
2015-05-09 7:53 ` [PATCH v8 13/16] ARM: dts: Add ARM System timer as clocksource in armv7m Maxime Coquelin
2015-05-15 19:59 ` Arnd Bergmann
2015-05-09 7:53 ` [PATCH v8 14/16] ARM: dts: Introduce STM32F429 MCU Maxime Coquelin
2015-05-12 21:21 ` Arnd Bergmann
2015-05-13 11:45 ` Maxime Coquelin
[not found] ` <CALszF6CS8Q9DWX+ERtu=k=Bzr1-25N3oZQyWyxDZBF3an4nFKQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-05-13 12:58 ` Daniel Thompson
2015-05-13 13:27 ` Arnd Bergmann
2015-05-13 15:20 ` Daniel Thompson
2015-05-13 15:28 ` Arnd Bergmann
2015-05-13 16:29 ` Maxime Coquelin
[not found] ` <CALszF6DHazhN6+hGShyrmqtMrPod0hdb8mHAwK-GWfRxXzy7wQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-05-13 16:37 ` Arnd Bergmann
2015-05-13 16:54 ` Maxime Coquelin
[not found] ` <CALszF6CaO_yuNiSDuDV+4d2NRe_+32j=zcSE1HPhB1UH59cW9w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-05-13 19:11 ` Arnd Bergmann
2015-05-20 16:17 ` Maxime Coquelin
2015-05-21 18:51 ` Maxime Ripard
2015-05-22 9:06 ` Philipp Zabel
2015-05-22 9:18 ` Maxime Ripard
2015-05-22 10:07 ` Philipp Zabel
2015-05-22 12:32 ` Maxime Coquelin
2015-05-22 12:43 ` Daniel Thompson
2015-05-22 13:09 ` Andreas Färber
2015-05-22 13:57 ` Maxime Coquelin
2015-05-22 14:06 ` Andreas Färber
2015-05-22 14:14 ` Daniel Thompson
2015-05-23 8:18 ` Maxime Ripard
2015-05-22 9:41 ` Maxime Coquelin
2015-05-13 19:29 ` Daniel Thompson
[not found] ` <5553A608.9080402-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2015-05-13 19:37 ` Arnd Bergmann
2015-05-14 16:34 ` Maxime Coquelin
2015-05-14 19:38 ` Daniel Thompson
2015-05-18 12:21 ` Maxime Coquelin
2015-05-09 7:53 ` [PATCH v8 16/16] MAINTAINERS: Add entry for STM32 MCUs Maxime Coquelin
2015-05-15 19:58 ` Arnd Bergmann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1431158038-3813-1-git-send-email-mcoquelin.stm32@gmail.com \
--to=mcoquelin.stm32@gmail.com \
--cc=Nikolay.Borisov@arm.com \
--cc=afaerber@suse.de \
--cc=akpm@linux-foundation.org \
--cc=andy.shevchenko@gmail.com \
--cc=arnd@arndb.de \
--cc=corbet@lwn.net \
--cc=crope@iki.fi \
--cc=cw00.choi@samsung.com \
--cc=daniel.lezcano@linaro.org \
--cc=daniel.thompson@linaro.org \
--cc=davem@davemloft.net \
--cc=devicetree@vger.kernel.org \
--cc=galak@codeaurora.org \
--cc=geert@linux-m68k.org \
--cc=gregkh@linuxfoundation.org \
--cc=ijc+devicetree@hellion.org.uk \
--cc=joe@perches.com \
--cc=jslaby@suse.cz \
--cc=keescook@chromium.org \
--cc=lee.jones@linaro.org \
--cc=linus.walleij@linaro.org \
--cc=linux-arch@vger.kerne \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-gpio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-serial@vger.kernel.org \
--cc=linux@arm.linux.org.uk \
--cc=mark.rutland@arm.com \
--cc=mchehab@osg.samsung.com \
--cc=mmarek@suse.cz \
--cc=p.zabel@pengutronix.de \
--cc=pawel.moll@arm.com \
--cc=pebolle@tiscali.nl \
--cc=peter@hurleysoftware.com \
--cc=pmeerw@pmeerw.net \
--cc=robh+dt@kernel.org \
--cc=rusty@rustcorp.com.au \
--cc=stefan@agner.ch \
--cc=tglx@linutronix.de \
--cc=tj@kernel.org \
--cc=u.kleine-koenig@pengutronix.de \
--cc=vladimir_zapolskiy@mentor.com \
--cc=will.deacon@arm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).