[PATCH 7/9] ARM: dts: stm32: support STM32h747i-disco board

Patrice CHOTARD patrice.chotard at foss.st.com
Mon Jun 9 09:57:11 CEST 2025



On 6/7/25 11:37, Dario Binacchi wrote:
> The board includes an STM32H747XI SoC with the following resources:
>  - 2 Mbytes Flash
>  - 1 Mbyte SRAM
>  - LCD-TFT controller
>  - MIPI-DSI interface
>  - FD-CAN
>  - USB 2.0 high-speed/full-speed
>  - Ethernet MAC
>  - camera interface
> 
> Detailed information can be found at:
> https://www.st.com/en/evaluation-tools/stm32h747i-disco.html
> 
> Signed-off-by: Dario Binacchi <dario.binacchi at amarulasolutions.com>
> Link: https://lore.kernel.org/r/20250427074404.3278732-9-dario.binacchi@amarulasolutions.com
> Signed-off-by: Alexandre Torgue <alexandre.torgue at foss.st.com>
> 
> [ backport upstream commit: 49ba8fc6eab63165639ffbb9f976222d39739cab ]
> 
> ---
> 
>  dts/upstream/src/arm/st/stm32h747i-disco.dts | 136 +++++++++++++++++++
>  1 file changed, 136 insertions(+)
>  create mode 100644 dts/upstream/src/arm/st/stm32h747i-disco.dts
> 
> diff --git a/dts/upstream/src/arm/st/stm32h747i-disco.dts b/dts/upstream/src/arm/st/stm32h747i-disco.dts
> new file mode 100644
> index 000000000000..99f0255dae8e
> --- /dev/null
> +++ b/dts/upstream/src/arm/st/stm32h747i-disco.dts
> @@ -0,0 +1,136 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * Copyright (C) 2025 Amarula Solutions, Dario Binacchi <dario.binacchi at amarulasolutions.com>
> + */
> +
> +/dts-v1/;
> +#include "stm32h743.dtsi"
> +#include "stm32h7-pinctrl.dtsi"
> +#include <dt-bindings/gpio/gpio.h>
> +#include <dt-bindings/input/input.h>
> +
> +/ {
> +	model = "STMicroelectronics STM32H747i-Discovery board";
> +	compatible = "st,stm32h747i-disco", "st,stm32h747";
> +
> +	chosen {
> +		bootargs = "root=/dev/ram";
> +		stdout-path = "serial0:115200n8";
> +	};
> +
> +	memory at d0000000 {
> +		device_type = "memory";
> +		reg = <0xd0000000 0x2000000>;
> +	};
> +
> +	aliases {
> +		serial0 = &usart1;
> +		serial1 = &uart8;
> +	};
> +
> +	v3v3: regulator-v3v3 {
> +		compatible = "regulator-fixed";
> +		regulator-name = "v3v3";
> +		regulator-min-microvolt = <3300000>;
> +		regulator-max-microvolt = <3300000>;
> +		regulator-always-on;
> +	};
> +
> +	leds {
> +		compatible = "gpio-leds";
> +		led-green {
> +			gpios = <&gpioi 12 GPIO_ACTIVE_LOW>;
> +			linux,default-trigger = "heartbeat";
> +		};
> +		led-orange {
> +			gpios = <&gpioi 13 GPIO_ACTIVE_LOW>;
> +		};
> +		led-red {
> +			gpios = <&gpioi 14 GPIO_ACTIVE_LOW>;
> +		};
> +		led-blue {
> +			gpios = <&gpioi 15 GPIO_ACTIVE_LOW>;
> +		};
> +	};
> +
> +	gpio-keys {
> +		compatible = "gpio-keys";
> +		autorepeat;
> +		button-0 {
> +			label = "User";
> +			linux,code = <KEY_WAKEUP>;
> +			gpios = <&gpioc 13 GPIO_ACTIVE_HIGH>;
> +		};
> +		button-1 {
> +			label = "JoySel";
> +			linux,code = <KEY_ENTER>;
> +			gpios = <&gpiok 2 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
> +		};
> +		button-2 {
> +			label = "JoyDown";
> +			linux,code = <KEY_DOWN>;
> +			gpios = <&gpiok 3 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
> +		};
> +		button-3 {
> +			label = "JoyUp";
> +			linux,code = <KEY_UP>;
> +			gpios = <&gpiok 6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
> +		};
> +		button-4 {
> +			label = "JoyLeft";
> +			linux,code = <KEY_LEFT>;
> +			gpios = <&gpiok 4 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
> +		};
> +		button-5 {
> +			label = "JoyRight";
> +			linux,code = <KEY_RIGHT>;
> +			gpios = <&gpiok 5 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
> +		};
> +	};
> +};
> +
> +&clk_hse {
> +	clock-frequency = <25000000>;
> +};
> +
> +&mac {
> +	status = "disabled";
> +	pinctrl-0 = <&ethernet_rmii>;
> +	pinctrl-names = "default";
> +	phy-mode = "rmii";
> +	phy-handle = <&phy0>;
> +
> +	mdio0 {
> +		#address-cells = <1>;
> +		#size-cells = <0>;
> +		compatible = "snps,dwmac-mdio";
> +		phy0: ethernet-phy at 0 {
> +			reg = <0>;
> +		};
> +	};
> +};
> +
> +&sdmmc1 {
> +	pinctrl-names = "default", "opendrain", "sleep";
> +	pinctrl-0 = <&sdmmc1_b4_pins_a>;
> +	pinctrl-1 = <&sdmmc1_b4_od_pins_a>;
> +	pinctrl-2 = <&sdmmc1_b4_sleep_pins_a>;
> +	cd-gpios = <&gpioi 8 GPIO_ACTIVE_LOW>;
> +	broken-cd;
> +	st,neg-edge;
> +	bus-width = <4>;
> +	vmmc-supply = <&v3v3>;
> +	status = "okay";
> +};
> +
> +&usart1 {
> +	pinctrl-0 = <&usart1_pins_b>;
> +	pinctrl-names = "default";
> +	status = "okay";
> +};
> +
> +&uart8 {
> +	pinctrl-0 = <&uart8_pins_a>;
> +	pinctrl-names = "default";
> +	status = "okay";
> +};
Reviewed-by: Patrice Chotard <patrice.chotard at foss.st.com>

Thanks
Patrice


More information about the U-Boot mailing list