Message ID | 20250607093730.2249536-8-dario.binacchi@amarulasolutions.com |
---|---|
State | New |
Headers | show |
Series |
|
Related | show |
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@amarulasolutions.com> > Link: https://lore.kernel.org/r/20250427074404.3278732-9-dario.binacchi@amarulasolutions.com > Signed-off-by: Alexandre Torgue <alexandre.torgue@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@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@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 = <ðernet_rmii>; > + pinctrl-names = "default"; > + phy-mode = "rmii"; > + phy-handle = <&phy0>; > + > + mdio0 { > + #address-cells = <1>; > + #size-cells = <0>; > + compatible = "snps,dwmac-mdio"; > + phy0: ethernet-phy@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@foss.st.com> Thanks Patrice To unsubscribe from this group and stop receiving emails from it, send an email to linux-amarula+unsubscribe@amarulasolutions.com.
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@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@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 = <ðernet_rmii>; + pinctrl-names = "default"; + phy-mode = "rmii"; + phy-handle = <&phy0>; + + mdio0 { + #address-cells = <1>; + #size-cells = <0>; + compatible = "snps,dwmac-mdio"; + phy0: ethernet-phy@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"; +};