Commit 3b170e16 authored by Alexandre Torgue's avatar Alexandre Torgue
Browse files

arm64: dts: st: introduce stm32mp25 pinctrl files



Three packages exist for stm32mp25 dies. As ball-out is different between
them, this patch covers those differences by introducing dedicated pinctrl
dtsi files. Each dtsi pinctrl package file describes the package ball-out
through gpio-ranges.

Available packages are:

STM32MP25xAI: 18*18/FCBGA 172 ios
STM32MP25xAK: 14*14/FCBGA 144 ios
STM32MP25xAL: 10*10/TFBGA 144 ios

It includes also the common file used for pin groups definition.

Signed-off-by: default avatarAlexandre Torgue <alexandre.torgue@foss.st.com>
parent 5d30d03a
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
// SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-3-Clause)
/*
 * Copyright (C) STMicroelectronics 2023 - All Rights Reserved
 * Author: Alexandre Torgue <alexandre.torgue@foss.st.com> for STMicroelectronics.
 */
#include <dt-bindings/pinctrl/stm32-pinfunc.h>
+83 −0
Original line number Diff line number Diff line
// SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-3-Clause)
/*
 * Copyright (C) STMicroelectronics 2023 - All Rights Reserved
 * Author: Alexandre Torgue <alexandre.torgue@foss.st.com> for STMicroelectronics.
 */

&pinctrl {
	st,package = <STM32MP_PKG_AI>;

	gpioa: gpio@44240000 {
		status = "okay";
		ngpios = <16>;
		gpio-ranges = <&pinctrl 0 0 16>;
	};

	gpiob: gpio@44250000 {
		status = "okay";
		ngpios = <16>;
		gpio-ranges = <&pinctrl 0 16 16>;
	};

	gpioc: gpio@44260000 {
		status = "okay";
		ngpios = <14>;
		gpio-ranges = <&pinctrl 0 32 14>;
	};

	gpiod: gpio@44270000 {
		status = "okay";
		ngpios = <16>;
		gpio-ranges = <&pinctrl 0 48 16>;
	};

	gpioe: gpio@44280000 {
		status = "okay";
		ngpios = <16>;
		gpio-ranges = <&pinctrl 0 64 16>;
	};

	gpiof: gpio@44290000 {
		status = "okay";
		ngpios = <16>;
		gpio-ranges = <&pinctrl 0 80 16>;
	};

	gpiog: gpio@442a0000 {
		status = "okay";
		ngpios = <16>;
		gpio-ranges = <&pinctrl 0 96 16>;
	};

	gpioh: gpio@442b0000 {
		status = "okay";
		ngpios = <12>;
		gpio-ranges = <&pinctrl 2 114 12>;
	};

	gpioi: gpio@442c0000 {
		status = "okay";
		ngpios = <16>;
		gpio-ranges = <&pinctrl 0 128 16>;
	};

	gpioj: gpio@442d0000 {
		status = "okay";
		ngpios = <16>;
		gpio-ranges = <&pinctrl 0 144 16>;
	};

	gpiok: gpio@442e0000 {
		status = "okay";
		ngpios = <8>;
		gpio-ranges = <&pinctrl 0 160 8>;
	};
};

&pinctrl_z {
	gpioz: gpio@46200000 {
		status = "okay";
		ngpios = <10>;
		gpio-ranges = <&pinctrl_z 0 400 10>;
	};
};
+71 −0
Original line number Diff line number Diff line
// SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-3-Clause)
/*
 * Copyright (C) STMicroelectronics 2023 - All Rights Reserved
 * Author: Alexandre Torgue <alexandre.torgue@foss.st.com> for STMicroelectronics.
 */

&pinctrl {
	st,package = <STM32MP_PKG_AK>;

	gpioa: gpio@44240000 {
		status = "okay";
		ngpios = <16>;
		gpio-ranges = <&pinctrl 0 0 16>;
	};

	gpiob: gpio@44250000 {
		status = "okay";
		ngpios = <16>;
		gpio-ranges = <&pinctrl 0 16 16>;
	};

	gpioc: gpio@44260000 {
		status = "okay";
		ngpios = <14>;
		gpio-ranges = <&pinctrl 0 32 14>;
	};

	gpiod: gpio@44270000 {
		status = "okay";
		ngpios = <16>;
		gpio-ranges = <&pinctrl 0 48 16>;
	};

	gpioe: gpio@44280000 {
		status = "okay";
		ngpios = <16>;
		gpio-ranges = <&pinctrl 0 64 16>;
	};

	gpiof: gpio@44290000 {
		status = "okay";
		ngpios = <16>;
		gpio-ranges = <&pinctrl 0 80 16>;
	};

	gpiog: gpio@442a0000 {
		status = "okay";
		ngpios = <16>;
		gpio-ranges = <&pinctrl 0 96 16>;
	};

	gpioh: gpio@442b0000 {
		status = "okay";
		ngpios = <12>;
		gpio-ranges = <&pinctrl 2 114 12>;
	};

	gpioi: gpio@442c0000 {
		status = "okay";
		ngpios = <12>;
		gpio-ranges = <&pinctrl 0 128 12>;
	};
};

&pinctrl_z {
	gpioz: gpio@46200000 {
		status = "okay";
		ngpios = <10>;
		gpio-ranges = <&pinctrl_z 0 400 10>;
	};
};
+71 −0
Original line number Diff line number Diff line
// SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-3-Clause)
/*
 * Copyright (C) STMicroelectronics 2023 - All Rights Reserved
 * Author: Alexandre Torgue <alexandre.torgue@foss.st.com> for STMicroelectronics.
 */

&pinctrl {
	st,package = <STM32MP_PKG_AL>;

	gpioa: gpio@44240000 {
		status = "okay";
		ngpios = <16>;
		gpio-ranges = <&pinctrl 0 0 16>;
	};

	gpiob: gpio@44250000 {
		status = "okay";
		ngpios = <16>;
		gpio-ranges = <&pinctrl 0 16 16>;
	};

	gpioc: gpio@44260000 {
		status = "okay";
		ngpios = <14>;
		gpio-ranges = <&pinctrl 0 32 14>;
	};

	gpiod: gpio@44270000 {
		status = "okay";
		ngpios = <16>;
		gpio-ranges = <&pinctrl 0 48 16>;
	};

	gpioe: gpio@44280000 {
		status = "okay";
		ngpios = <16>;
		gpio-ranges = <&pinctrl 0 64 16>;
	};

	gpiof: gpio@44290000 {
		status = "okay";
		ngpios = <16>;
		gpio-ranges = <&pinctrl 0 80 16>;
	};

	gpiog: gpio@442a0000 {
		status = "okay";
		ngpios = <16>;
		gpio-ranges = <&pinctrl 0 96 16>;
	};

	gpioh: gpio@442b0000 {
		status = "okay";
		ngpios = <12>;
		gpio-ranges = <&pinctrl 2 114 12>;
	};

	gpioi: gpio@442c0000 {
		status = "okay";
		ngpios = <12>;
		gpio-ranges = <&pinctrl 0 128 12>;
	};
};

&pinctrl_z {
	gpioz: gpio@46200000 {
		status = "okay";
		ngpios = <10>;
		gpio-ranges = <&pinctrl_z 0 400 10>;
	};
};