diff options
| author | Maxime Méré <maxime.mere@foss.st.com> | 2024-04-16 11:04:29 +0200 |
|---|---|---|
| committer | Yann Gautier <yann.gautier@st.com> | 2026-02-05 13:28:53 +0100 |
| commit | ad47dc744859b92fa57babd68ae686e43529f09a (patch) | |
| tree | 32b7b6fdaedb613dc7e193cb44ad459db7b5b840 /fdts | |
| parent | 8621405684f45f14000019a1958f5f7c66ef9526 (diff) | |
| download | arm-trusted-firmware-ad47dc744859b92fa57babd68ae686e43529f09a.tar.gz arm-trusted-firmware-ad47dc744859b92fa57babd68ae686e43529f09a.zip | |
feat(fdts): introduce STM32MP21 pinctrl files
Four packages exist for STM32MP21 dies. As ball-out is different between
them, this patch cover those differences by introducing dedicated
pinctrl dtsi files. Each dtsi pinctrl package file describes the package
ball-out through gpio-ranges.
Available packages are:
STM32MP21xxAL: 10*10 VFBGA361 / 123 GPIOs
STM32MP21xxAM: 14*14 VFBGA289 / 123 GPIOs
STM32MP21xxAN: 11*11 VFBGA273 / 123 GPIOs
STM32MP21xxAO: 8*8 VFBGA225 / 98 GPIOs
Change-Id: Ia2105f5f81fdd93784f7690137484e45a3078d1f
Signed-off-by: Maxime Méré <maxime.mere@foss.st.com>
Diffstat (limited to 'fdts')
| -rw-r--r-- | fdts/stm32mp21xxal-pinctrl.dtsi | 79 | ||||
| -rw-r--r-- | fdts/stm32mp21xxam-pinctrl.dtsi | 79 | ||||
| -rw-r--r-- | fdts/stm32mp21xxan-pinctrl.dtsi | 79 | ||||
| -rw-r--r-- | fdts/stm32mp21xxao-pinctrl.dtsi | 70 |
4 files changed, 307 insertions, 0 deletions
diff --git a/fdts/stm32mp21xxal-pinctrl.dtsi b/fdts/stm32mp21xxal-pinctrl.dtsi new file mode 100644 index 000000000..0be54f3de --- /dev/null +++ b/fdts/stm32mp21xxal-pinctrl.dtsi @@ -0,0 +1,79 @@ +// SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) +/* + * Copyright (c) 2026, STMicroelectronics - All Rights Reserved + * Author: Alexandre Torgue <alexandre.torgue@foss.st.com> for STMicroelectronics. + */ + +&pinctrl { + /omit-if-no-ref/ + gpioa: gpio@44240000 { + status = "okay"; + ngpios = <16>; + gpio-ranges = <&pinctrl 0 0 16>; + }; + + /omit-if-no-ref/ + gpiob: gpio@44250000 { + status = "okay"; + ngpios = <13>; + gpio-ranges = <&pinctrl 1 17 3>, <&pinctrl 5 21 3>, <&pinctrl 9 25 7>; + }; + + /omit-if-no-ref/ + gpioc: gpio@44260000 { + status = "okay"; + ngpios = <14>; + gpio-ranges = <&pinctrl 0 32 14>; + }; + + /omit-if-no-ref/ + gpiod: gpio@44270000 { + status = "okay"; + ngpios = <16>; + gpio-ranges = <&pinctrl 0 48 16>; + }; + + /omit-if-no-ref/ + gpioe: gpio@44280000 { + status = "okay"; + ngpios = <16>; + gpio-ranges = <&pinctrl 0 64 16>; + }; + + /omit-if-no-ref/ + gpiof: gpio@44290000 { + status = "okay"; + ngpios = <15>; + gpio-ranges = <&pinctrl 0 80 14>, <&pinctrl 15 95 1>; + }; + + /omit-if-no-ref/ + gpiog: gpio@442a0000 { + status = "okay"; + ngpios = <15>; + gpio-ranges = <&pinctrl 0 96 6>, <&pinctrl 7 103 9>; + }; + + /omit-if-no-ref/ + gpioh: gpio@442b0000 { + status = "okay"; + ngpios = <9>; + gpio-ranges = <&pinctrl 4 116 2>, <&pinctrl 7 119 7>; + }; + + /omit-if-no-ref/ + gpioi: gpio@442c0000 { + status = "okay"; + ngpios = <6>; + gpio-ranges = <&pinctrl 0 128 2>, <&pinctrl 4 132 3>, <&pinctrl 8 136 1>; + }; +}; + +&pinctrl_z { + /omit-if-no-ref/ + gpioz: gpio@46200000 { + status = "okay"; + ngpios = <3>; + gpio-ranges = <&pinctrl_z 0 400 2>, <&pinctrl_z 3 403 1>; + }; +}; diff --git a/fdts/stm32mp21xxam-pinctrl.dtsi b/fdts/stm32mp21xxam-pinctrl.dtsi new file mode 100644 index 000000000..0be54f3de --- /dev/null +++ b/fdts/stm32mp21xxam-pinctrl.dtsi @@ -0,0 +1,79 @@ +// SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) +/* + * Copyright (c) 2026, STMicroelectronics - All Rights Reserved + * Author: Alexandre Torgue <alexandre.torgue@foss.st.com> for STMicroelectronics. + */ + +&pinctrl { + /omit-if-no-ref/ + gpioa: gpio@44240000 { + status = "okay"; + ngpios = <16>; + gpio-ranges = <&pinctrl 0 0 16>; + }; + + /omit-if-no-ref/ + gpiob: gpio@44250000 { + status = "okay"; + ngpios = <13>; + gpio-ranges = <&pinctrl 1 17 3>, <&pinctrl 5 21 3>, <&pinctrl 9 25 7>; + }; + + /omit-if-no-ref/ + gpioc: gpio@44260000 { + status = "okay"; + ngpios = <14>; + gpio-ranges = <&pinctrl 0 32 14>; + }; + + /omit-if-no-ref/ + gpiod: gpio@44270000 { + status = "okay"; + ngpios = <16>; + gpio-ranges = <&pinctrl 0 48 16>; + }; + + /omit-if-no-ref/ + gpioe: gpio@44280000 { + status = "okay"; + ngpios = <16>; + gpio-ranges = <&pinctrl 0 64 16>; + }; + + /omit-if-no-ref/ + gpiof: gpio@44290000 { + status = "okay"; + ngpios = <15>; + gpio-ranges = <&pinctrl 0 80 14>, <&pinctrl 15 95 1>; + }; + + /omit-if-no-ref/ + gpiog: gpio@442a0000 { + status = "okay"; + ngpios = <15>; + gpio-ranges = <&pinctrl 0 96 6>, <&pinctrl 7 103 9>; + }; + + /omit-if-no-ref/ + gpioh: gpio@442b0000 { + status = "okay"; + ngpios = <9>; + gpio-ranges = <&pinctrl 4 116 2>, <&pinctrl 7 119 7>; + }; + + /omit-if-no-ref/ + gpioi: gpio@442c0000 { + status = "okay"; + ngpios = <6>; + gpio-ranges = <&pinctrl 0 128 2>, <&pinctrl 4 132 3>, <&pinctrl 8 136 1>; + }; +}; + +&pinctrl_z { + /omit-if-no-ref/ + gpioz: gpio@46200000 { + status = "okay"; + ngpios = <3>; + gpio-ranges = <&pinctrl_z 0 400 2>, <&pinctrl_z 3 403 1>; + }; +}; diff --git a/fdts/stm32mp21xxan-pinctrl.dtsi b/fdts/stm32mp21xxan-pinctrl.dtsi new file mode 100644 index 000000000..0be54f3de --- /dev/null +++ b/fdts/stm32mp21xxan-pinctrl.dtsi @@ -0,0 +1,79 @@ +// SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) +/* + * Copyright (c) 2026, STMicroelectronics - All Rights Reserved + * Author: Alexandre Torgue <alexandre.torgue@foss.st.com> for STMicroelectronics. + */ + +&pinctrl { + /omit-if-no-ref/ + gpioa: gpio@44240000 { + status = "okay"; + ngpios = <16>; + gpio-ranges = <&pinctrl 0 0 16>; + }; + + /omit-if-no-ref/ + gpiob: gpio@44250000 { + status = "okay"; + ngpios = <13>; + gpio-ranges = <&pinctrl 1 17 3>, <&pinctrl 5 21 3>, <&pinctrl 9 25 7>; + }; + + /omit-if-no-ref/ + gpioc: gpio@44260000 { + status = "okay"; + ngpios = <14>; + gpio-ranges = <&pinctrl 0 32 14>; + }; + + /omit-if-no-ref/ + gpiod: gpio@44270000 { + status = "okay"; + ngpios = <16>; + gpio-ranges = <&pinctrl 0 48 16>; + }; + + /omit-if-no-ref/ + gpioe: gpio@44280000 { + status = "okay"; + ngpios = <16>; + gpio-ranges = <&pinctrl 0 64 16>; + }; + + /omit-if-no-ref/ + gpiof: gpio@44290000 { + status = "okay"; + ngpios = <15>; + gpio-ranges = <&pinctrl 0 80 14>, <&pinctrl 15 95 1>; + }; + + /omit-if-no-ref/ + gpiog: gpio@442a0000 { + status = "okay"; + ngpios = <15>; + gpio-ranges = <&pinctrl 0 96 6>, <&pinctrl 7 103 9>; + }; + + /omit-if-no-ref/ + gpioh: gpio@442b0000 { + status = "okay"; + ngpios = <9>; + gpio-ranges = <&pinctrl 4 116 2>, <&pinctrl 7 119 7>; + }; + + /omit-if-no-ref/ + gpioi: gpio@442c0000 { + status = "okay"; + ngpios = <6>; + gpio-ranges = <&pinctrl 0 128 2>, <&pinctrl 4 132 3>, <&pinctrl 8 136 1>; + }; +}; + +&pinctrl_z { + /omit-if-no-ref/ + gpioz: gpio@46200000 { + status = "okay"; + ngpios = <3>; + gpio-ranges = <&pinctrl_z 0 400 2>, <&pinctrl_z 3 403 1>; + }; +}; diff --git a/fdts/stm32mp21xxao-pinctrl.dtsi b/fdts/stm32mp21xxao-pinctrl.dtsi new file mode 100644 index 000000000..f9311bcfd --- /dev/null +++ b/fdts/stm32mp21xxao-pinctrl.dtsi @@ -0,0 +1,70 @@ +// SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) +/* + * Copyright (c) 2026, STMicroelectronics - All Rights Reserved + * Author: Alexandre Torgue <alexandre.torgue@foss.st.com> for STMicroelectronics. + */ + +&pinctrl { + /omit-if-no-ref/ + gpioa: gpio@44240000 { + status = "okay"; + ngpios = <15>; + gpio-ranges = <&pinctrl 0 0 12>, <&pinctrl 13 13 3>; + }; + + /omit-if-no-ref/ + gpiob: gpio@44250000 { + status = "okay"; + ngpios = <5>; + gpio-ranges = <&pinctrl 11 27 5>; + }; + + /omit-if-no-ref/ + gpioc: gpio@44260000 { + status = "okay"; + ngpios = <14>; + gpio-ranges = <&pinctrl 0 32 14>; + }; + + /omit-if-no-ref/ + gpiod: gpio@44270000 { + status = "okay"; + ngpios = <16>; + gpio-ranges = <&pinctrl 0 48 16>; + }; + + /omit-if-no-ref/ + gpioe: gpio@44280000 { + status = "okay"; + ngpios = <14>; + gpio-ranges = <&pinctrl 0 64 10>, <&pinctrl 11 75 3>, <&pinctrl 15 79 1>; + }; + + /omit-if-no-ref/ + gpiof: gpio@44290000 { + status = "okay"; + ngpios = <15>; + gpio-ranges = <&pinctrl 0 80 14>, <&pinctrl 15 95 1>; + }; + + /omit-if-no-ref/ + gpiog: gpio@442a0000 { + status = "okay"; + ngpios = <9>; + gpio-ranges = <&pinctrl 0 96 6>, <&pinctrl 7 103 1>, <&pinctrl 11 107 2>; + }; + + /omit-if-no-ref/ + gpioh: gpio@442b0000 { + status = "okay"; + ngpios = <7>; + gpio-ranges = <&pinctrl 4 116 2>, <&pinctrl 9 121 5>; + }; + + /omit-if-no-ref/ + gpioi: gpio@442c0000 { + status = "okay"; + ngpios = <3>; + gpio-ranges = <&pinctrl 0 128 2>, <&pinctrl 4 132 1>; + }; +}; |
