/*
 * Copyright (c) 2019 Linaro Limited
 * Copyright (c) 2019 Centaur Analytics, Inc
 * Copyright (c) 2020 Teslabs Engineering S.L.
 *
 * SPDX-License-Identifier: Apache-2.0
 */

#include <arm/armv7-m.dtsi>
#include <zephyr/dt-bindings/clock/stm32h7_clock.h>
#include <zephyr/dt-bindings/gpio/gpio.h>
#include <zephyr/dt-bindings/i2c/i2c.h>
#include <zephyr/dt-bindings/pwm/pwm.h>
#include <zephyr/dt-bindings/pwm/stm32_pwm.h>
#include <zephyr/dt-bindings/adc/adc.h>
#include <zephyr/dt-bindings/memory-controller/stm32-fmc-sdram.h>
#include <freq.h>

/ {
	chosen {
		zephyr,entropy = &rng;
		zephyr,flash-controller = &flash;
	};

	cpus {
		#address-cells = <1>;
		#size-cells = <0>;

		cpu0: cpu@0 {
			device_type = "cpu";
			compatible = "arm,cortex-m7";
			reg = <0>;
			#address-cells = <1>;
			#size-cells = <1>;

			mpu: mpu@e000ed90 {
				compatible = "arm,armv7m-mpu";
				reg = <0xe000ed90 0x40>;
				arm,num-mpu-regions = <16>;
			};
		};
	};

	clocks {
		#address-cells = <1>;
		#size-cells = <0>;

		clk_hse: clk-hse {
			#clock-cells = <0>;
			compatible = "st,stm32-hse-clock";
			status = "disabled";
		};

		clk_hsi: clk-hsi {
			#clock-cells = <0>;
			compatible = "st,stm32h7-hsi-clock";
			clock-frequency = <DT_FREQ_M(64)>;
			status = "disabled";
		};

		clk_csi: clk-csi {
			#clock-cells = <0>;
			compatible = "fixed-clock";
			clock-frequency = <DT_FREQ_M(4)>;
			status = "disabled";
		};

		clk_lse: clk-lse {
			#clock-cells = <0>;
			compatible = "st,stm32-lse-clock";
			clock-frequency = <32768>;
			driving-capability = <0>;
			status = "disabled";
		};

		clk_lsi: clk-lsi {
			#clock-cells = <0>;
			compatible = "fixed-clock";
			clock-frequency = <DT_FREQ_K(32)>;
			status = "disabled";
		};

		pll: pll@0 {
			#clock-cells = <0>;
			compatible = "st,stm32h7-pll-clock";
			reg = <0>;
			status = "disabled";
		};

		pll2: pll@1 {
			#clock-cells = <0>;
			compatible = "st,stm32h7-pll-clock";
			reg = <1>;
			status = "disabled";
		};

		pll3: pll@2 {
			#clock-cells = <0>;
			compatible = "st,stm32h7-pll-clock";
			reg = <2>;
			status = "disabled";
		};

		perck: perck {
			#clock-cells = <0>;
			compatible = "st,stm32-clock-mux";
			status = "disabled";
		};
	};

	soc {
		flash: flash-controller@52002000 {
			compatible = "st,stm32h7-flash-controller";
			reg = <0x52002000 0x400>;
			interrupts = <4 0>;
			clocks = <&rcc STM32_CLOCK_BUS_AHB3 0x00000100>;

			#address-cells = <1>;
			#size-cells = <1>;
		};

		rcc: rcc@58024400 {
			compatible = "st,stm32h7-rcc";
			#clock-cells = <2>;
			reg = <0x58024400 0x400>;
		};

		exti: interrupt-controller@58000000 {
			compatible = "st,stm32-exti";
			interrupt-controller;
			#interrupt-cells = <1>;
			reg = <0x58000000 0x400>;
		};

		pinctrl: pin-controller@58020000 {
			compatible = "st,stm32-pinctrl";
			#address-cells = <1>;
			#size-cells = <1>;
			reg = <0x58020000 0x2400>;

			gpioa: gpio@58020000 {
				compatible = "st,stm32-gpio";
				gpio-controller;
				#gpio-cells = <2>;
				reg = <0x58020000 0x400>;
				clocks = <&rcc STM32_CLOCK_BUS_AHB4 0x00000001>;
			};

			gpiob: gpio@58020400 {
				compatible = "st,stm32-gpio";
				gpio-controller;
				#gpio-cells = <2>;
				reg = <0x58020400 0x400>;
				clocks = <&rcc STM32_CLOCK_BUS_AHB4 0x00000002>;
			};

			gpioc: gpio@58020800 {
				compatible = "st,stm32-gpio";
				gpio-controller;
				#gpio-cells = <2>;
				reg = <0x58020800 0x400>;
				clocks = <&rcc STM32_CLOCK_BUS_AHB4 0x00000004>;
			};

			gpiod: gpio@58020C00 {
				compatible = "st,stm32-gpio";
				gpio-controller;
				#gpio-cells = <2>;
				reg = <0x58020C00 0x400>;
				clocks = <&rcc STM32_CLOCK_BUS_AHB4 0x00000008>;
			};

			gpioe: gpio@58021000 {
				compatible = "st,stm32-gpio";
				gpio-controller;
				#gpio-cells = <2>;
				reg = <0x58021000 0x400>;
				clocks = <&rcc STM32_CLOCK_BUS_AHB4 0x00000010>;
			};

			gpiof: gpio@58021400 {
				compatible = "st,stm32-gpio";
				gpio-controller;
				#gpio-cells = <2>;
				reg = <0x58021400 0x400>;
				clocks = <&rcc STM32_CLOCK_BUS_AHB4 0x00000020>;
			};

			gpiog: gpio@58021800 {
				compatible = "st,stm32-gpio";
				gpio-controller;
				#gpio-cells = <2>;
				reg = <0x58021800 0x400>;
				clocks = <&rcc STM32_CLOCK_BUS_AHB4 0x00000040>;
			};

			gpioh: gpio@58021C00 {
				compatible = "st,stm32-gpio";
				gpio-controller;
				#gpio-cells = <2>;
				reg = <0x58021C00 0x400>;
				clocks = <&rcc STM32_CLOCK_BUS_AHB4 0x00000080>;
			};

			gpioi: gpio@58022000 {
				compatible = "st,stm32-gpio";
				gpio-controller;
				#gpio-cells = <2>;
				reg = <0x58022000 0x400>;
				clocks = <&rcc STM32_CLOCK_BUS_AHB4 0x00000100>;
			};

			gpioj: gpio@58022400 {
				compatible = "st,stm32-gpio";
				gpio-controller;
				#gpio-cells = <2>;
				reg = <0x58022400 0x400>;
				clocks = <&rcc STM32_CLOCK_BUS_AHB4 0x00000200>;
			};

			gpiok: gpio@58022800 {
				compatible = "st,stm32-gpio";
				gpio-controller;
				#gpio-cells = <2>;
				reg = <0x58022800 0x400>;
				clocks = <&rcc STM32_CLOCK_BUS_AHB4 0x00000400>;
			};
		};

		iwdg: iwdg1: watchdog@58004800 {
			compatible = "st,stm32-watchdog";
			reg = <0x58004800 0x400>;
			status = "disabled";
		};

		wwdg: wwdg1: watchdog@50003000 {
			compatible = "st,stm32-window-watchdog";
			reg = <0x50003000 0x1000>;
			clocks = <&rcc STM32_CLOCK_BUS_APB3 0x00000040>;
			interrupts = <0 7>;
			status = "disabled";
		};

		usart1: serial@40011000 {
			compatible = "st,stm32-usart", "st,stm32-uart";
			reg = <0x40011000 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB2 0x00000010>;
			interrupts = <37 0>;
			status = "disabled";
		};
		usart2: serial@40004400 {
			compatible = "st,stm32-usart", "st,stm32-uart";
			reg = <0x40004400 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB1 0x00020000>;
			interrupts = <38 0>;
			status = "disabled";
		};
		usart3: serial@40004800 {
			compatible = "st,stm32-usart", "st,stm32-uart";
			reg = <0x40004800 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB1 0x00040000>;
			interrupts = <39 0>;
			status = "disabled";
		};
		uart4: serial@40004c00 {
			compatible ="st,stm32-uart";
			reg = <0x40004c00 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB1 0x00080000>;
			interrupts = <52 0>;
			status = "disabled";
		};
		uart5: serial@40005000 {
			compatible = "st,stm32-uart";
			reg = <0x40005000 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB1 0x00100000>;
			interrupts = <53 0>;
			status = "disabled";
		};
		usart6: serial@40011400 {
			compatible = "st,stm32-usart", "st,stm32-uart";
			reg = <0x40011400 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB2 0x00000020>;
			interrupts = <71 0>;
			status = "disabled";
		};
		uart7: serial@40007800 {
			compatible = "st,stm32-uart";
			reg = <0x40007800 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB1 0x40000000>;
			interrupts = <82 0>;
			status = "disabled";
		};
		uart8: serial@40007c00 {
			compatible = "st,stm32-uart";
			reg = <0x40007c00 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB1 0x80000000>;
			interrupts = <83 0>;
			status = "disabled";
		};

		lpuart1: serial@58000c00 {
			compatible = "st,stm32-lpuart", "st,stm32-uart";
			reg = <0x58000c00 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB4 0x00000008>;
			interrupts = <142 0>;
			status = "disabled";
		};

		rtc: rtc@58004000 {
			compatible = "st,stm32-rtc";
			reg = <0x58004000 0x400>;
			interrupts = <41 0>;
			clocks = <&rcc STM32_CLOCK_BUS_APB4 0x00010000>;
			prescaler = <32768>;
			status = "disabled";
		};

		i2c1: i2c@40005400 {
			compatible = "st,stm32-i2c-v2";
			clock-frequency = <I2C_BITRATE_STANDARD>;
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0x40005400 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB1 0x00200000>;
			interrupts = <31 0>, <32 0>;
			interrupt-names = "event", "error";
			status = "disabled";
		};

		i2c2: i2c@40005800 {
			compatible = "st,stm32-i2c-v2";
			clock-frequency = <I2C_BITRATE_STANDARD>;
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0x40005800 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB1 0x00400000>;
			interrupts = <33 0>, <34 0>;
			interrupt-names = "event", "error";
			status = "disabled";
		};

		i2c3: i2c@40005c00 {
			compatible = "st,stm32-i2c-v2";
			clock-frequency = <I2C_BITRATE_STANDARD>;
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0x40005c00 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB1 0x00800000>;
			interrupts = <72 0>, <73 0>;
			interrupt-names = "event", "error";
			status = "disabled";
		};

		i2c4: i2c@58001c00 {
			compatible = "st,stm32-i2c-v2";
			clock-frequency = <I2C_BITRATE_STANDARD>;
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0x58001c00 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB4 0x00000080>;
			interrupts = <95 0>, <96 0>;
			interrupt-names = "event", "error";
			status = "disabled";
		};

		spi1: spi@40013000 {
			compatible = "st,stm32h7-spi", "st,stm32-spi-fifo", "st,stm32-spi";
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0x40013000 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB2 0x00001000>,
				<&rcc STM32_SRC_PLL1_Q SPI123_SEL(0)>;
			interrupts = <35 0>;
			status = "disabled";
		};

		spi2: spi@40003800 {
			compatible = "st,stm32h7-spi", "st,stm32-spi-fifo", "st,stm32-spi";
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0x40003800 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB1 0x00004000>,
				<&rcc STM32_SRC_PLL1_Q SPI123_SEL(0)>;
			interrupts = <36 0>;
			status = "disabled";
		};

		spi3: spi@40003c00 {
			compatible = "st,stm32h7-spi", "st,stm32-spi-fifo", "st,stm32-spi";
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0x40003c00 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB1 0x00008000>,
				<&rcc STM32_SRC_PLL1_Q SPI123_SEL(0)>;
			interrupts = <51 0>;
			status = "disabled";
		};

		spi4: spi@40013400 {
			compatible = "st,stm32h7-spi", "st,stm32-spi-fifo", "st,stm32-spi";
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0x40013400 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB2 0x00002000>;
			interrupts = <84 0>;
			status = "disabled";
		};

		spi5: spi@40015000 {
			compatible = "st,stm32h7-spi", "st,stm32-spi-fifo", "st,stm32-spi";
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0x40015000 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB2 0x00100000>;
			interrupts = <85 0>;
			status = "disabled";
		};

		spi6: spi@58001400 {
			compatible = "st,stm32h7-spi", "st,stm32-spi-fifo", "st,stm32-spi";
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0x58001400 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB4 0x00000020>;
			interrupts = <86 0>;
			status = "disabled";
		};

		can {
			compatible = "bosch,m_can-base";
			#address-cells = <1>;
			#size-cells = <1>;
			std-filter-elements = <28>;
			ext-filter-elements = <8>;
			rx-fifo0-elements = <3>;
			rx-fifo1-elements = <3>;
			rx-buffer-elements = <3>;
			tx-buffer-elements = <3>;

			can1: can@4000a000 {
				compatible = "st,stm32h7-fdcan";
				#address-cells = <1>;
				#size-cells = <0>;
				reg = <0x4000a000 0x400>, <0x4000ac00 0x350>;
				reg-names = "m_can", "message_ram";
				clocks = <&rcc STM32_CLOCK_BUS_APB1_2 0x00000100>;
				interrupts = <19 0>, <21 0>, <63 0>;
				interrupt-names = "LINE_0", "LINE_1", "CALIB";
				status = "disabled";
				sjw = <1>;
				sample-point = <875>;
				sjw-data = <1>;
				sample-point-data = <875>;
			};
		};

		timers1: timers@40010000 {
			compatible = "st,stm32-timers";
			reg = <0x40010000 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB2 0x00000001>;
			interrupts = <24 0>, <25 0>, <26 0>, <27 0>;
			interrupt-names = "brk", "up", "trgcom", "cc";
			st,prescaler = <0>;
			status = "disabled";

			pwm {
				compatible = "st,stm32-pwm";
				status = "disabled";
				#pwm-cells = <3>;
			};
		};

		timers2: timers@40000000 {
			compatible = "st,stm32-timers";
			reg = <0x40000000 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB1 0x00000001>;
			interrupts = <28 0>;
			interrupt-names = "global";
			st,prescaler = <0>;
			status = "disabled";

			pwm {
				compatible = "st,stm32-pwm";
				status = "disabled";
				#pwm-cells = <3>;
			};
		};

		timers3: timers@40000400 {
			compatible = "st,stm32-timers";
			reg = <0x40000400 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB1 0x00000002>;
			interrupts = <29 0>;
			interrupt-names = "global";
			st,prescaler = <0>;
			status = "disabled";

			pwm {
				compatible = "st,stm32-pwm";
				status = "disabled";
				#pwm-cells = <3>;
			};
		};

		timers4: timers@40000800 {
			compatible = "st,stm32-timers";
			reg = <0x40000800 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB1 0x00000004>;
			interrupts = <30 0>;
			interrupt-names = "global";
			st,prescaler = <0>;
			status = "disabled";

			pwm {
				compatible = "st,stm32-pwm";
				status = "disabled";
				#pwm-cells = <3>;
			};
		};

		timers5: timers@40000c00 {
			compatible = "st,stm32-timers";
			reg = <0x40000c00 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB1 0x00000008>;
			interrupts = <50 0>;
			interrupt-names = "global";
			st,prescaler = <0>;
			status = "disabled";

			pwm {
				compatible = "st,stm32-pwm";
				status = "disabled";
				#pwm-cells = <3>;
			};
		};

		timers6: timers@40001000 {
			compatible = "st,stm32-timers";
			reg = <0x40001000 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB1 0x00000010>;
			interrupts = <54 0>;
			interrupt-names = "global";
			st,prescaler = <0>;
			status = "disabled";
		};

		timers7: timers@40001400 {
			compatible = "st,stm32-timers";
			reg = <0x40001400 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB1 0x00000020>;
			interrupts = <55 0>;
			interrupt-names = "global";
			st,prescaler = <0>;
			status = "disabled";
		};

		timers8: timers@40010400 {
			compatible = "st,stm32-timers";
			reg = <0x40010400 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB2 0x00000002>;
			interrupts = <43 0>, <44 0>, <45 0>, <46 0>;
			interrupt-names = "brk", "up", "trgcom", "cc";
			st,prescaler = <0>;
			status = "disabled";

			pwm {
				compatible = "st,stm32-pwm";
				status = "disabled";
				#pwm-cells = <3>;
			};
		};

		timers12: timers@40001800 {
			compatible = "st,stm32-timers";
			reg = <0x40001800 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB1 0x00000040>;
			interrupts = <43 0>;
			interrupt-names = "global";
			st,prescaler = <0>;
			status = "disabled";

			pwm {
				compatible = "st,stm32-pwm";
				status = "disabled";
				#pwm-cells = <3>;
			};
		};

		timers13: timers@40001c00 {
			compatible = "st,stm32-timers";
			reg = <0x40001c00 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB1 0x00000080>;
			interrupts = <44 0>;
			interrupt-names = "global";
			st,prescaler = <0>;
			status = "disabled";

			pwm {
				compatible = "st,stm32-pwm";
				status = "disabled";
				#pwm-cells = <3>;
			};
		};

		timers14: timers@40002000 {
			compatible = "st,stm32-timers";
			reg = <0x40002000 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB1 0x00000100>;
			interrupts = <45 0>;
			interrupt-names = "global";
			st,prescaler = <0>;
			status = "disabled";

			pwm {
				compatible = "st,stm32-pwm";
				status = "disabled";
				#pwm-cells = <3>;
			};
		};

		timers15: timers@40014000 {
			compatible = "st,stm32-timers";
			reg = <0x40014000 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB2 0x00010000>;
			interrupts = <116 0>;
			interrupt-names = "global";
			st,prescaler = <0>;
			status = "disabled";

			pwm {
				compatible = "st,stm32-pwm";
				status = "disabled";
				#pwm-cells = <3>;
			};
		};

		timers16: timers@40014400 {
			compatible = "st,stm32-timers";
			reg = <0x40014400 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB2 0x00020000>;
			interrupts = <117 0>;
			interrupt-names = "global";
			st,prescaler = <0>;
			status = "disabled";

			pwm {
				compatible = "st,stm32-pwm";
				status = "disabled";
				#pwm-cells = <3>;
			};
		};

		timers17: timers@40014800 {
			compatible = "st,stm32-timers";
			reg = <0x40014800 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB2 0x00040000>;
			interrupts = <118 0>;
			interrupt-names = "global";
			st,prescaler = <0>;
			status = "disabled";

			pwm {
				compatible = "st,stm32-pwm";
				status = "disabled";
				#pwm-cells = <3>;
			};
		};

		lptim1: timers@40002400 {
			compatible = "st,stm32-lptim";
			clocks = <&rcc STM32_CLOCK_BUS_APB1 0x00000200>;
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0x40002400 0x400>;
			interrupts = <93 1>;
			interrupt-names = "wakeup";
			status = "disabled";
		};

		adc1: adc@40022000 {
			compatible = "st,stm32-adc";
			reg = <0x40022000 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_AHB1 0x00000020>;
			interrupts = <18 0>;
			status = "disabled";
			#io-channel-cells = <1>;
			has-temp-channel;
			has-vref-channel;
		};

		adc2: adc@40022100 {
			compatible = "st,stm32-adc";
			reg = <0x40022100 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_AHB1 0x00000020>;
			interrupts = <18 0>;
			status = "disabled";
			#io-channel-cells = <1>;
		};

		/* dual mode: adc1 and adc2 coupled */
		adc1_2: adc@40022300 {
			compatible = "st,stm32-adc";
			reg = <0x40022300 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_AHB1 0x00000020>;
			interrupts = <18 0>;
			status = "disabled";
			#io-channel-cells = <1>;
		};

		adc3: adc@58026000 {
			compatible = "st,stm32-adc";
			reg = <0x58026000 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_AHB4 0x01000000>;
			interrupts = <127 0>;
			status = "disabled";
			vref-mv = <3300>;
			#io-channel-cells = <1>;
			has-temp-channel;
			has-vref-channel;
		};

		dac1: dac@40007400 {
			compatible = "st,stm32-dac";
			reg = <0x40007400 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_APB1 0x20000000>;
			status = "disabled";
			#io-channel-cells = <1>;
		};

		dma1: dma@40020000 {
			compatible = "st,stm32-dma-v1";
			#dma-cells = <4>;
			reg = <0x40020000 0x400>;
			interrupts = <11 0>, <12 0>, <13 0>, <14 0>, <15 0>, <16 0>,
						 <17 0>, <47 0>;
			clocks = <&rcc STM32_CLOCK_BUS_AHB1 0x00000001>;
			st,mem2mem;
			dma-offset = <0>;
			dma-requests = <8>;
			status = "disabled";
		};

		dma2: dma@40020400 {
			compatible = "st,stm32-dma-v1";
			#dma-cells = <4>;
			reg = <0x40020400 0x400>;
			interrupts = <56 0>, <57 0>, <58 0>, <59 0>, <60 0>, <68 0>,
						<69 0>, <70 0>;
			clocks = <&rcc STM32_CLOCK_BUS_AHB1 0x00000002>;
			st,mem2mem;
			dma-offset = <8>;
			dma-requests = <8>;
			status = "disabled";
		};

		dmamux1: dmamux@40020800 {
			compatible = "st,stm32-dmamux";
			#dma-cells = <3>;
			reg = <0x40020800 0x400>;
			interrupts = <102 0>;
			/* dmamux1 has no dedicated clock, so we enable dma1 clock */
			clocks = <&rcc STM32_CLOCK_BUS_AHB1 0x00000001>;
			dma-channels = <16>;
			dma-generators = <8>;
			status = "disabled";
			/*
			 * dma-requests is different among h7 socs,
			 * so we set in specific dtsi files
			 */
		};

		rng: rng@48021800 {
			compatible = "st,stm32-rng";
			reg = <0x48021800 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_AHB2 0x00000040>;
			interrupts = <80 0>;
			status = "disabled";
		};

		sdmmc1: sdmmc@52007000 {
			compatible = "st,stm32-sdmmc";
			reg = <0x52007000 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_AHB3 0x00010000>;
			interrupts = <49 0>;
			status = "disabled";
		};

		sdmmc2: sdmmc@48022400 {
			compatible = "st,stm32-sdmmc";
			reg = <0x48022400 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_AHB2 0x00000100>;
			interrupts = <124 0>;
			status = "disabled";
		};

		mac: ethernet@40028000 {
			compatible = "st,stm32-ethernet";
			reg = <0x40028000 0x8000>;
			interrupts = <61 0>;
			clock-names = "stmmaceth", "mac-clk-tx", "mac-clk-rx";
			clocks = <&rcc STM32_CLOCK_BUS_AHB1 0x00008000>,
				 <&rcc STM32_CLOCK_BUS_AHB1 0x00010000>,
				 <&rcc STM32_CLOCK_BUS_AHB1 0x00020000>;
			status = "disabled";
		};

		fmc: memory-controller@52004000 {
			compatible = "st,stm32h7-fmc";
			reg = <0x52004000 0x400>;
			clocks = <&rcc STM32_CLOCK_BUS_AHB3 0x00001000>;
			status = "disabled";

			sdram: sdram {
				compatible = "st,stm32-fmc-sdram";
				#address-cells = <1>;
				#size-cells = <0>;
				status = "disabled";
			};
		};

		backup_sram: memory@38800000 {
			compatible = "zephyr,memory-region", "st,stm32-backup-sram";
			reg = <0x38800000 DT_SIZE_K(4)>;
			clocks = <&rcc STM32_CLOCK_BUS_AHB4 0x10000000>;
			zephyr,memory-region = "BACKUP_SRAM";
			status = "disabled";
		};

		quadspi: quadspi@52005000 {
			compatible = "st,stm32-qspi";
			#address-cells = <0x1>;
			#size-cells = <0x0>;
			reg = <0x52005000 0x34>;
			interrupts = <92 0>;
			clocks = <&rcc STM32_CLOCK_BUS_AHB3 0x00004000>;
			status = "disabled";
		};
	};

	die_temp: dietemp {
		compatible = "st,stm32-temp-cal";
		ts-cal1-addr = <0x1FF1E820>;
		ts-cal2-addr = <0x1FF1E840>;
		ts-cal1-temp = <30>;
		ts-cal2-temp = <110>;
		ts-cal-vrefanalog = <3300>;
		ts-cal-resolution = <16>;
		io-channels = <&adc3 18>;
		status = "disabled";
	};
};

&nvic {
	arm,num-irq-priority-bits = <4>;
};
