[PATCH v3 0/9] ARM: STM32: add art-pi(stm32h750xbh6) board support

From: dillon . minfei
Date: Mon Mar 15 2021 - 05:45:28 EST


From: dillon min <dillon.minfei@xxxxxxxxx>

This patchset intend to add art-pi board support, this board developed
by rt-thread(https://www.rt-thread.org/).

Board resources:

8MiB QSPI flash
16MiB SPI flash
32MiB SDRAM
AP6212 wifi,bt,fm comb

sw context:
- as stm32h750 just has 128k bytes internal flash, so running a fw on
internal flash to download u-boot/kernel to qspi flash, boot
u-boot/kernel from qspi flash. this fw is based on rt-thread.
- kernel can be xip on qspi flash or load to sdram
- root filesystem is jffs2(created by buildroot), stored on spi flash

to support the boad, add following changes.
- fix r0-r3, r12 register restore failed after svc call,
- add dts binding
- update yaml doc

changes in v3:
- fix dtbs_check warrning: (8002cbd78fd5 and 4bc21d3dd678)
>> arch/arm/boot/dts/stm32h743i-eval.dt.yaml: soc: pin-controller: {'type':
'object'} is not allowed for {'#address-cells': [[1]], '#size-cells':
[[1]], 'ranges': [[0,

arch/arm/boot/dts/stm32h743i-eval.dt.yaml: soc: 'i2c@40005C00',
'i2c@58001C00' do not match any of the regexes: '@(0|[1-9a-f][0-9a-f]*)$',
'^[^@]+$', 'pinctrl-[0-9]+'

>> arch/arm/boot/dts/stm32h750i-art-pi.dt.yaml: serial@40004800: 'bluetooth'
does not match any of the regexes: 'pinctrl-[0-9]+'

changes in v2:
- reorganize the pinctrl device tree about
stm32h7-pinctrl/stm32h743/750-pinctrl
stm32h7-pinctrl.dtsi --> stm32h743-pinctrl.dtsi --> stm32h743i-disco.dts
| |-> stm32h743i-eval.dts
|-> stm32h750-pinctrl.dtsi --> stm32h750i-art-pi.dts
same to the stm32f7/f4's pinctrl style
- fix author name/copyright mistake
- add compatible string st,stm32h750-pinctrl to pinctl-stm32h743.c as they
have same pin alternate functions, update Kconfig description
- make item in stm32h750i-art-pi.dts sort by letter

dillon min (9):
Documentation: arm: stm32: Add stm32h750 value line doc
dt-bindings: arm: stm32: Add compatible strings for ART-PI board
dt-bindings: pinctrl: stm32: Add stm32h750 pinctrl
ARM: dts: stm32: introduce stm32h7-pinctrl.dtsi to support stm32h750
ARM: dts: stm32: add stm32h750-pinctrl.dtsi
ARM: dts: stm32: add support for art-pi board based on stm32h750xbh6
ARM: stm32: Add a new SOC - STM32H750
pinctrl: stm32: Add STM32H750 MCU pinctrl support
dt-bindings: serial: stm32: add phandle 'bluetooth' to fix dtbs_check
warrning

Documentation/arm/index.rst | 1 +
Documentation/arm/stm32/stm32h750-overview.rst | 33 +++
.../devicetree/bindings/arm/stm32/stm32.yaml | 4 +
.../bindings/pinctrl/st,stm32-pinctrl.yaml | 1 +
.../devicetree/bindings/serial/st,stm32-uart.yaml | 5 +
arch/arm/boot/dts/Makefile | 1 +
arch/arm/boot/dts/stm32h7-pinctrl.dtsi | 273 ++++++++++++++++++
arch/arm/boot/dts/stm32h743-pinctrl.dtsi | 307 +--------------------
arch/arm/boot/dts/stm32h743.dtsi | 153 +++++++++-
arch/arm/boot/dts/stm32h750-pinctrl.dtsi | 11 +
arch/arm/boot/dts/stm32h750.dtsi | 5 +
arch/arm/boot/dts/stm32h750i-art-pi.dts | 228 +++++++++++++++
arch/arm/mach-stm32/board-dt.c | 1 +
drivers/pinctrl/stm32/Kconfig | 2 +-
drivers/pinctrl/stm32/pinctrl-stm32h743.c | 3 +
15 files changed, 724 insertions(+), 304 deletions(-)
create mode 100644 Documentation/arm/stm32/stm32h750-overview.rst
create mode 100644 arch/arm/boot/dts/stm32h7-pinctrl.dtsi
create mode 100644 arch/arm/boot/dts/stm32h750-pinctrl.dtsi
create mode 100644 arch/arm/boot/dts/stm32h750.dtsi
create mode 100644 arch/arm/boot/dts/stm32h750i-art-pi.dts

--
1.9.1