Commit Graph

1062 Commits

Author SHA1 Message Date
Thorsten Spätling
106b2013bb dts: adding flexible memory controller (fmc) to H56x, H533
As requested in

https://github.com/zephyrproject-rtos/zephyr/issues/77888

I'm adding the DT basics for the flexible memory controller.

Signed-off-by: Thorsten Spätling <thorsten.spaetling@vierling.de>
2024-09-18 15:29:49 +02:00
Fabrice DJIATSA
eab0e37e68 dts: arm: st: add digi-temp node in dtsi file
add digital temperature node in board.dtsi file

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2024-09-17 17:44:39 +01:00
Joakim Andersson
a624fe0f3d boards: Add MCO support for the stm32c0xx family
Add MCO support for the stm32c0xx family.

Signed-off-by: Joakim Andersson <joerchan@gmail.com>
2024-09-16 20:19:57 +02:00
Joakim Andersson
3b9c34d085 dts: st: Add MCO node to STM32 boards
Add MCO device nodes to the STM32 boards.
The set of supported boards are chosen to replace what is currently
supported in Kconfig.

Signed-off-by: Joakim Andersson <joerchan@gmail.com>
2024-09-16 20:19:57 +02:00
Joakim Andersson
efe72a3c7a dt-bindings: clock: Add clock sources for stm32f1x/10x for MCO
Add clock sources that can be output by the MCO on the stm32f1x and
stm32f10 connectivity line devices.

Signed-off-by: Joakim Andersson <joerchan@gmail.com>
2024-09-16 20:19:57 +02:00
Fabrice DJIATSA
e33e997c7d dts: arm: st: u0: add dac node in dtsi file
all stm32u0 boards have only one and same
dac peripheral.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2024-09-16 20:19:01 +02:00
Bas van Loon
77779f321d dts: stm32h7: Add missing ITCM memory to stm32h743.dtsi.
The ITCM is available on all STM32H75x/74x couple to the M7 core.

Signed-off-by: Bas van Loon <bas@arch-embedded.com>
2024-09-13 13:43:24 +02:00
Mathieu Choplain
6aaa2f8be0 dts: arm: st: wb0: add DTSI for STM32WB0 series
Adds Device Tree include files for all MCUs in the STM32WB0 series.
These DTSI files only contain the supported peripherals for now.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2024-09-12 10:03:37 +02:00
Fabrice DJIATSA
a9ccef672a dts: arm: st: u0: add i2c nodes in dtsi files
we have four i2C peripherals .
- three shared between stm32u031/73/83
- One between stm32u073/83

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2024-09-11 13:59:54 -04:00
Jeppe Odgaard
40cae2d281 dts: arm: st: stm32h5: fix spi 1-3 clocks
The STM32 SPI driver, `spi_ll_stm32.c`, reads the clock frequency via
`clock_control_get_rate()`. The first `clocks` index is used as subsystem
argument if there is no second index, but this is not the source clock for
SPI 1, 2, and 3.
This causes the prescaler value calculation to be incorrect, resulting in a
frequency potentially above the `spi-max-frequency` value.

Add clock source for SPI instances 1, 2 and 3, that matches the default
clock configuration register reset value, which resolves the issue.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2024-09-05 16:57:32 -04:00
Fabrice DJIATSA
52cb8c07d1 dts: arm: st: h7: remove unnecessary inclusions
since stm32h7.dtsi is already include in st/h7/stm32h743.dtsi
we don't need to include here again.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2024-09-05 12:50:26 -05:00
Fabrice DJIATSA
af7a690743 dts: arm: st: u0: add stm32u073 dtsi files
provide support for the STM32U073 series


Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2024-09-05 12:25:43 +01:00
Tomi Fontanilles
17545c17a5 dts: arm: st: h7: fix flash on M4 board targets
The flash controller is nowadays supported on the M4 core.
Add the bank2-flash-size property to the board definitions as required
by the STM32 H7 flash driver.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2024-09-04 19:10:19 -04:00
Michael R Rosen
cba339a6f4 dts: arm: st: correct npgios for all stm32 gpio controllers
For almost all STM32 GPIO controllers, the number of supported GPIO
pins managed by a single controller is 16 (with some exceptions for
fewer). However, the default for ngpios in the device tree bindings
for gpio-controllers is 32; leading to inaccuracies in handling GPIO
for these controllers, such as presenting too many GPIOs in the GPIO
shell. This patch redefines the default for ngpios for "st,stm32-gpio"
compatible devices to 16 and adds the correct ngpios for the few
exceptions Zephyr current supports.

Signed-off-by: Michael R Rosen <mrrosen@alumni.cmu.edu>
2024-09-03 10:44:06 +02:00
Fabrice DJIATSA
195e85c4cb dts: arm: st: add stm32u031 dtsi files
provide support for the STM32U031 serie

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2024-09-02 11:53:47 +02:00
Thomas Stranger
0e09d8903d dts: arm: st: stm32h5: add backup sram to all socs
This commit moves the backup sram definition to the
series base dtsi file, the size is overwritten for socs
which have a bigger bkpsram.

The backup SRAM is available on all stm32h5 mcus.
stm32h503/523/533 have 2k
stm32h562/563/573 have 4k

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2024-09-02 11:52:03 +02:00
Fabrice DJIATSA
ca22f93b53 dts: arm: st: h7: include h743.dtsi in h750.dtsi
since h750 and h743 have the same irq wkup priority,
we can add wkup interrupt in h743.dsti and simply
include the file in h750.dtsi.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2024-08-28 13:59:31 -04:00
IBEN EL HADJ MESSAOUD Marwa
1e5b2eb235 dts: arm: st: add stm32u0 support
Provide support for the familly STM32U0 and ST32U083

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2024-08-26 11:28:04 -04:00
Fabrice DJIATSA
9e4c554487 dts: arm: st: remove clock node from parent node soc
Since the clock node is not a child node of the soc node,
but from the root node.
This removes the warning log at compilation.


Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2024-08-26 11:05:00 -04:00
Fabrice DJIATSA
07cdebaf8e dts: arm: st: add reset control for display peripheral
add reset control registers information (on RCC_BUS_RSTR LTDCRST bit)
for display peripheral reset.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2024-08-20 14:50:57 -04:00
Mike Banducci
5a8e60b12e soc: stm32: Add support for the stm32h755
Add support for the stm32h755 which is a close relative of
the stm32h745 with additional cryptography and hashing
peripherals.

Signed-off-by: Mike Banducci <michael.banducci@sandc.com>
2024-08-19 10:01:39 -04:00
Miguel Gazquez
c04352aa98 boards: stm32l562e-dk: add st7789v screen controller
This commit add the description of the fmc in the SoC stm32l5, and the
description of the screen controller st7789v in the board stm32l562e-dk.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2024-08-17 08:56:04 -04:00
Francois Ramu
e3f9293fc2 dts: arm: stm32u59x serie with OTG HS instance
Add the USB OTG HS node for the stm32U59x/5Ax/5Fx/5Gx devices

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2024-08-01 12:36:58 +02:00
Francois Ramu
ed08755dde dts: arm: stm32 mcu disable the iwdg node in the dtsi
Disable the iwdg node of the stm32f0 and stm32wb devices
in their .dtsi file, like other devices

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2024-08-01 09:11:01 +01:00
Saravanan Sekar
2a457d8d04 dts: arm: st: add reset control for crypto peripheral
add reset control registers information for crypto peripheral reset.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
2024-07-28 07:31:25 +03:00
Jordan Yates
07870934e3 everywhere: replace double words
Treewide search and replace on a range of double word combinations:
    * `the the`
    * `to to`
    * `if if`
    * `that that`
    * `on on`
    * `is is`
    * `from from`

Signed-off-by: Jordan Yates <jordan@embeint.com>
2024-06-22 05:40:22 -04:00
Adam Berlinger
19b39406eb soc: st: Add support for STOP3 on STM32U5
LPTIM is not available in STOP3 mode, so RTC needs to be used instead.
This code usese similar approach as STM32WBAx for suspend to ram.
The STOP3 is disabled by default in device tree.

Signed-off-by: Adam Berlinger <adam.berlinger@st.com>
2024-06-15 04:44:26 -04:00
Francois Ramu
4ade2a88e4 dts: arm: stm32h7 add wdg and adc, rng node to stm32h7R/h7S devices
Add the IWDG and WWDG watchdog peripherals
the ADC1 & 2 peripherals with sensor for die temperature and voltage
the RNG entropy generator

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2024-06-14 11:13:54 +02:00
Thorsten Spätling
486d109e7e dts: stm32h5: Add backup sram DT node to STM32H56xx
I also added an overlay file for the nucleo_h563zi board to the
samples/boards/stm32/backup_sram example.

Signed-off-by: Thorsten Spätling <thorsten.spaetling@vierling.de>
2024-06-12 14:30:45 +03:00
Johan Hedberg
501e7158a8 Bluetooth: drivers: Convert STM32 IPM driver to new API
Convert the ipm_stm32wb.c HCI driver to the new HCI driver API.

Signed-off-by: Johan Hedberg <johan.hedberg@gmail.com>
2024-06-11 19:42:49 -04:00
Johan Hedberg
b7b606bdaf Bluetooth: drivers: Convert ST STM32WBA driver to new API
Convert the hci_stm32wba.c driver to the new HCI API. Unlike in most cases,
the devicetree node is already enabled on the SoC level (rather than board
level). This is in order to mirror how the Kconfig option was originally
enabled, i.e. on the SoC level.

Signed-off-by: Johan Hedberg <johan.hedberg@gmail.com>
2024-06-11 19:42:49 -04:00
Aurelien Jarno
2bff395b87 dts: arm: st: g0: add stm32-bbram node
On STM32G0, the backup memory is defined as part of the TAMP peripheral.
Use the same workaround as on STM32WL to add the node as part of the
RTC.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2024-06-10 15:16:59 -05:00
Francois Ramu
332eb17995 dts: arm: stm32h7 introduce stm32h7R/h7S devices
Add the new stm32h7rs serie with stm32H7R3, stm32H7R7,
stm32H7S3, stm32H7S7 devices from STMicroelectronics

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2024-06-06 00:41:43 -07:00
Jeppe Odgaard
1635ad5a4d dts: boards: stm32h562: add timers 15, 16 and 17
Add the remaining timer nodes for stm32h562.

Tested with a Logic Analyzer and `samples/drivers/led_pwm` with added
`nucleo_h563zi.overlay`:

```

&timers15 {
	status = "okay";
	st,prescaler = <1000>;

	pwm15: pwm {
		status = "okay";
		pinctrl-0 = <&tim15_ch2_pa3 /* CN10.34 */>;
		pinctrl-names = "default";
	};
};

&timers16 {
	status = "okay";
	st,prescaler = <1000>;

	pwm16: pwm {
		status = "okay";
		pinctrl-0 = <&tim16_ch1n_pb6 /* CN10.14 */>;
		pinctrl-names = "default";
	};
};

&timers17 {
	st,prescaler = <1000>;
	status = "okay";

	pwm17: pwm {
		status = "okay";
		pinctrl-0 = <&tim17_ch1n_pb7 /* CN10.16 */>;
		pinctrl-names = "default";
	};
};

&pwmleds {
	status = "okay";

	pwm_led_1: green_led_1 {
		pwms = <&pwm15 2 PWM_MSEC(20) PWM_POLARITY_NORMAL>;
		label = "green led";
	};

	pwm_led_2: red_led_1 {
		pwms = <&pwm16 1 PWM_MSEC(20)
		        (PWM_POLARITY_NORMAL | STM32_PWM_COMPLEMENTARY)>;
		label = "red led";
	};

	pwm_led_3: blue_led_1 {
		pwms = <&pwm17 1 PWM_MSEC(20)
		        (PWM_POLARITY_NORMAL | STM32_PWM_COMPLEMENTARY)>;
		label = "blue led";
	};
};
```

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2024-06-06 00:40:59 -07:00
IBEN EL HADJ MESSAOUD Marwa
198cee44d5 dts: arm: st: h5: Add node gpiof
Add the node gpiof to the stm32h5 dtsi file.

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2024-06-05 17:36:43 -05:00
IBEN EL HADJ MESSAOUD Marwa
eb49f1ba31 dts: arm: st: add stm32h533Xe support
Provide support for STM32H533XE family support

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2024-06-05 17:36:43 -05:00
Abderrahmane Jarmouni
ede21b54d0 dts: arm: st: add pwr peripheral & wake-up pins nodes
Add devicetree node of stm32 PWR peripheral that controlls wake-up pins.
The new node includes child nodes for wake-up pins configuration.
We only add these nodes for STM32 SoC series that support Poweroff.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-06-05 17:35:55 -05:00
Aurelien Jarno
fe8c100252 dts: arm: st: h723/h7a3: add digi_dietemp node into DTSI file
Add a digi_dietemp node for the STM32 Digital Temperature Sensor into
stm32h723.dtsi (used as a base for H723, H725, H730 and H735) and
stm32h7a3.dtsi (used as a base for H7A3, H7B0 and H7B3).

The sensor is not available on other H7 SoCs.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2024-06-04 16:37:19 +02:00
Sean Nyekjaer
ede866440d dts: arm: st: mp1: fix exti interrupt numbering
Align interrupt numbering with RM0436 for STM32MP157.
This will allow EXTI interrupt for line 6, 7, 8, 9, 10 and 11.

Fixes: ff231fa20a ("dts: stm32: Populate new properties for exti nodes")
Signed-off-by: Sean Nyekjaer <sean@geanix.com>
2024-06-03 03:01:31 -07:00
Jeppe Odgaard
3c9d9a1260 dts: boards: stm32h562: Add usart6 node
Add the remaining usart node for stm32h562.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2024-05-31 03:08:40 -07:00
Franck Thebault
69dc875243 dts: arm: st: h5: add I2S nodes
Addition of I2S nodes

Signed-off-by: Franck Thebault <franck.thebault@st.com>
Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2024-05-28 12:51:00 +02:00
Celina Sophie Kalus
bbbb2865c3 dts: stm32h7_dualcore: Add MBOX driver
Adding the new STM32 hardware semaphore driver into the device tree.

Signed-off-by: Celina Sophie Kalus <hello@celinakalus.de>
2024-05-24 07:52:06 -04:00
Armin Brauns
0023986bb2 boards/stm32f769i_disco: add accessible memory region for QSPI flash
By default, the QSPI region is marked as EXTMEM and inaccessible
(see #57467), mark the first 64MB as IO on stm32f769i_disco.

Signed-off-by: Armin Brauns <armin.brauns@embedded-solutions.at>
2024-05-16 15:52:01 +02:00
Francois Ramu
6de81b2b7d dts: arm: st: stm32h5 serie has xspi node
Define the xspi node instead of ospi. Note that RCC CCIPR4 register
keeps the OCTOSP1 for clock domain selection.
Change the header file to xspi for the stm32 devices with xspi
peripheral. Keep the flash_controller/ospi.h for bindings compatibilty.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2024-05-15 10:56:04 +02:00
Armin Brauns
74cc85c526 dts: stm32f7: add clock definition for OTG_HS peripheral
This peripheral is also run off the 48MHz clock, just like OTG_FS.

Signed-off-by: Armin Brauns <armin.brauns@embedded-solutions.at>
2024-05-14 17:04:49 +02:00
Aurelien Jarno
3d4c5e2dc8 dts/arm/st: wl: change cpu0 compatible to arm,cortex-m4
The STM32WL SoC has a Cortex M4 CPU without FPU. Change the cpu0
compatible string accordingly.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2024-05-14 09:38:16 +02:00
Abderrahmane Jarmouni
ac00136dfd dts: arm: st: stm32-rtc: add alrm-exti-line property
Add alrm-exti-line to STM32 RTC node of concerned series.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-05-13 09:45:17 +02:00
Abderrahmane Jarmouni
0c4548c13b dts: arm: st: stm32-rtc: add alarms-count property
Add alarms-count to STM32 RTC node of all series except F1X.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-05-13 09:45:17 +02:00
Angelo Dureghello
a7c720b7d4 dts: arm: st: add mdio node for h5 and h7
Add mdio node for h5 and h7 series.

Since MDIO registers are part of the same ETH hw IP, keeping mdio
node just as a child of mac/eth, cannot see as appropriate to assign
an adddress to it.

Signed-off-by: Angelo Dureghello <adureghello@baylibre.com>
2024-05-07 09:41:46 +02:00
Louis Feller
0c6baa5854 dts: stm32wba: Fix RNG base address
Set RNG address to its non-secure alias.
See RM0493 STM32WBA5 Reference manual for details.
Using the secure alias (0x5..)instead of the non-secure alias (0x4..)
for this peripheral results in a SecureFault during kernel init if
TrustZone is activated, Zephyr is running as NSPE and RNG is
enabled.

Signed-off-by: Louis Feller <louis.feller@st.com>
2024-05-06 17:32:25 +01:00