[PATCH 0/8] Add STM32F469 pinctrl and fix issues in STM32 pinctrl
Alexandre TORGUE
alexandre.torgue at st.com
Fri Jan 27 08:15:13 PST 2017
This series adds support of a dedicated driver for STM32F469 MCU pinctroller.
This add generates some changes inside STM32 pinctrl driver and inside STM32
device tree.
Changes in STM32 pinctrl driver:
-------------------------------
- Add STM32F469 driver.
- Change STM32 pinctrl core in order to use "gpio-ranges" devicetree definitions.
Indeed, on STM32F469 there an hole in BANK J. We need to declare a gpio-ranges
in gpioj controller node to handle this hole.
Changes in STM32 device tree:
----------------------------
I propose a new architecture (a new file split) for pinmux definition:
- Create a common stm32f4-pinctrl.dtsi for pinmuxing definitions
which are common between STM32F429 and STM32F469 MCU.
- Create dedicated stm32fxxx-pinctrl.dtsi file for each MCU
(stm32f429-pinctrl.dtsi and stm32f469-pinctrl.dtsi) each one will
include stm32f4-pinctrl.dtsi. All differences (pinmuxing or GPIO
bank holes) will be put inside the dedicated files.
This series fix a locking issue when a gpio is used as IRQ.
Regards
Alex
Alexandre TORGUE (8):
pinctrl: stm32: fix bad location of gpiochip_lock_as_irq
pinctrl: stm32: use gpio-ranges to declare bank range
Documentation: dt: Add bindings for STM32 pinctrl
includes: dt-bindings: Rename STM32F429 pinctrl DT bindings
pinctrl: stm32: Add STM32F469 MCU support
Documentation: dt: Add new compatible to STM32 pinctrl driver bindings
ARM: Kconfig: Introduce MACH_STM32F469 flag
ARM: dts: stm32: create dedicated files for pinctrl definitions
.../bindings/pinctrl/st,stm32-pinctrl.txt | 57 +-
arch/arm/Kconfig | 5 +
arch/arm/boot/dts/stm32429i-eval.dts | 1 +
arch/arm/boot/dts/stm32f4-pinctrl.dtsi | 196 +++
arch/arm/boot/dts/stm32f429-disco.dts | 1 +
arch/arm/boot/dts/stm32f429-pinctrl.dtsi | 106 ++
arch/arm/boot/dts/stm32f429.dtsi | 153 --
arch/arm/boot/dts/stm32f469-disco.dts | 1 +
arch/arm/boot/dts/stm32f469-pinctrl.dtsi | 107 ++
drivers/pinctrl/stm32/Kconfig | 6 +
drivers/pinctrl/stm32/Makefile | 1 +
drivers/pinctrl/stm32/pinctrl-stm32.c | 129 +-
drivers/pinctrl/stm32/pinctrl-stm32f469.c | 1574 ++++++++++++++++++++
include/dt-bindings/pinctrl/stm32f4-pinfunc.h | 1302 ++++++++++++++++
include/dt-bindings/pinctrl/stm32f429-pinfunc.h | 1239 ---------------
15 files changed, 3414 insertions(+), 1464 deletions(-)
create mode 100644 arch/arm/boot/dts/stm32f4-pinctrl.dtsi
create mode 100644 arch/arm/boot/dts/stm32f429-pinctrl.dtsi
create mode 100644 arch/arm/boot/dts/stm32f469-pinctrl.dtsi
create mode 100644 drivers/pinctrl/stm32/pinctrl-stm32f469.c
create mode 100644 include/dt-bindings/pinctrl/stm32f4-pinfunc.h
delete mode 100644 include/dt-bindings/pinctrl/stm32f429-pinfunc.h
--
1.9.1
More information about the linux-arm-kernel
mailing list