2021-03-30 02:32:30

by Dillon Min

[permalink] [raw]
Subject: [PATCH v7 0/6] ARM: STM32: add art-pi(stm32h750xbh6) board support

From: dillon min <[email protected]>

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 v7:
- remove changes in
Documentation/devicetree/bindings/pinctrl/st,stm32-pinctrl.yaml
Hi Rob Herring
as you has already ack this patch, please ignore it. thanks
history link:
https://lore.kernel.org/lkml/[email protected]/
https://lore.kernel.org/lkml/[email protected]/
- remove "[PATCH v6 8/9] pinctrl: stm32: Add STM32H750 MCU pinctrl support"
remove "[PATCH v6 5/9] ARM: dts: stm32: add stm32h750-pinctrl.dtsi"
- reference to stm32h743-pinctrl.dtsi in stm32h750i-art-pi.dts
v6 link:
https://lore.kernel.org/lkml/[email protected]/

changes in v6:
- add gpiox{gpio-ranges, ngpios} in stm32h7-pinctrl.dtsi
- add status="disabled" in stm32h743.dtsi

changes in v5:
- accroding to rob's suggestion, replace false with 'type: object'
of 'additionalProperties'.
- add Tested-by: Valentin Caron <[email protected]>

changes in v4:
- use unevaluatedProperties: false to fix dtbs_check warrnings instead of
add 'bluetooth' in st,stm32-uart.yaml

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

*** BLURB HERE ***

dillon min (6):
Documentation: arm: stm32: Add stm32h750 value line doc
dt-bindings: arm: stm32: Add compatible strings for ART-PI board
ARM: dts: stm32: introduce stm32h7-pinctrl.dtsi to support stm32h750
ARM: dts: stm32: add support for art-pi board based on stm32h750xbh6
ARM: stm32: Add a new SOC - STM32H750
dt-bindings: serial: stm32: Use 'type: object' instead of false for
'additionalProperties'

Documentation/arm/index.rst | 1 +
Documentation/arm/stm32/stm32h750-overview.rst | 34 ++
.../devicetree/bindings/arm/stm32/stm32.yaml | 4 +
.../devicetree/bindings/serial/st,stm32-uart.yaml | 3 +-
arch/arm/boot/dts/Makefile | 1 +
arch/arm/boot/dts/stm32h7-pinctrl.dtsi | 341 +++++++++++++++++++++
arch/arm/boot/dts/stm32h743-pinctrl.dtsi | 307 +------------------
arch/arm/boot/dts/stm32h743.dtsi | 164 +++++++++-
arch/arm/boot/dts/stm32h750.dtsi | 6 +
arch/arm/boot/dts/stm32h750i-art-pi.dts | 229 ++++++++++++++
arch/arm/mach-stm32/board-dt.c | 1 +
11 files changed, 787 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.dtsi
create mode 100644 arch/arm/boot/dts/stm32h750i-art-pi.dts

--
2.7.4


2021-03-30 02:33:24

by Dillon Min

[permalink] [raw]
Subject: [PATCH v7 5/6] ARM: stm32: Add a new SOC - STM32H750

From: dillon min <[email protected]>

The STM32H750 is a Cortex-M7 MCU running at 480MHz
and containing 128KBytes internal flash, 1MiB SRAM.

Signed-off-by: dillon min <[email protected]>
---
v7: no changes

arch/arm/mach-stm32/board-dt.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-stm32/board-dt.c b/arch/arm/mach-stm32/board-dt.c
index 011d57b488c2..a766310d8dca 100644
--- a/arch/arm/mach-stm32/board-dt.c
+++ b/arch/arm/mach-stm32/board-dt.c
@@ -17,6 +17,7 @@ static const char *const stm32_compat[] __initconst = {
"st,stm32f746",
"st,stm32f769",
"st,stm32h743",
+ "st,stm32h750",
"st,stm32mp157",
NULL
};
--
2.7.4