Linux Audio

Check our new training course

Loading...
Note: File does not exist in v6.2.
   1// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
   2/*
   3 * Copyright (C) STMicroelectronics 2017 - All Rights Reserved
   4 * Author: Ludovic Barre <ludovic.barre@st.com> for STMicroelectronics.
   5 */
   6#include <dt-bindings/interrupt-controller/arm-gic.h>
   7#include <dt-bindings/clock/stm32mp1-clks.h>
   8#include <dt-bindings/reset/stm32mp1-resets.h>
   9
  10/ {
  11	#address-cells = <1>;
  12	#size-cells = <1>;
  13
  14	cpus {
  15		#address-cells = <1>;
  16		#size-cells = <0>;
  17
  18		cpu0: cpu@0 {
  19			compatible = "arm,cortex-a7";
  20			device_type = "cpu";
  21			reg = <0>;
  22		};
  23
  24		cpu1: cpu@1 {
  25			compatible = "arm,cortex-a7";
  26			device_type = "cpu";
  27			reg = <1>;
  28		};
  29	};
  30
  31	psci {
  32		compatible = "arm,psci";
  33		method = "smc";
  34		cpu_off = <0x84000002>;
  35		cpu_on = <0x84000003>;
  36	};
  37
  38	intc: interrupt-controller@a0021000 {
  39		compatible = "arm,cortex-a7-gic";
  40		#interrupt-cells = <3>;
  41		interrupt-controller;
  42		reg = <0xa0021000 0x1000>,
  43		      <0xa0022000 0x2000>;
  44	};
  45
  46	timer {
  47		compatible = "arm,armv7-timer";
  48		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
  49			     <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
  50			     <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
  51			     <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
  52		interrupt-parent = <&intc>;
  53	};
  54
  55	clocks {
  56		clk_hse: clk-hse {
  57			#clock-cells = <0>;
  58			compatible = "fixed-clock";
  59			clock-frequency = <24000000>;
  60		};
  61
  62		clk_hsi: clk-hsi {
  63			#clock-cells = <0>;
  64			compatible = "fixed-clock";
  65			clock-frequency = <64000000>;
  66		};
  67
  68		clk_lse: clk-lse {
  69			#clock-cells = <0>;
  70			compatible = "fixed-clock";
  71			clock-frequency = <32768>;
  72		};
  73
  74		clk_lsi: clk-lsi {
  75			#clock-cells = <0>;
  76			compatible = "fixed-clock";
  77			clock-frequency = <32000>;
  78		};
  79
  80		clk_csi: clk-csi {
  81			#clock-cells = <0>;
  82			compatible = "fixed-clock";
  83			clock-frequency = <4000000>;
  84		};
  85	};
  86
  87	thermal-zones {
  88		cpu_thermal: cpu-thermal {
  89			polling-delay-passive = <0>;
  90			polling-delay = <0>;
  91			thermal-sensors = <&dts>;
  92
  93			trips {
  94				cpu_alert1: cpu-alert1 {
  95					temperature = <85000>;
  96					hysteresis = <0>;
  97					type = "passive";
  98				};
  99
 100				cpu-crit {
 101					temperature = <120000>;
 102					hysteresis = <0>;
 103					type = "critical";
 104				};
 105			};
 106
 107			cooling-maps {
 108			};
 109		};
 110	};
 111
 112	booster: regulator-booster {
 113		compatible = "st,stm32mp1-booster";
 114		st,syscfg = <&syscfg>;
 115		status = "disabled";
 116	};
 117
 118	soc {
 119		compatible = "simple-bus";
 120		#address-cells = <1>;
 121		#size-cells = <1>;
 122		interrupt-parent = <&intc>;
 123		ranges;
 124
 125		timers2: timer@40000000 {
 126			#address-cells = <1>;
 127			#size-cells = <0>;
 128			compatible = "st,stm32-timers";
 129			reg = <0x40000000 0x400>;
 130			clocks = <&rcc TIM2_K>;
 131			clock-names = "int";
 132			dmas = <&dmamux1 18 0x400 0x1>,
 133			       <&dmamux1 19 0x400 0x1>,
 134			       <&dmamux1 20 0x400 0x1>,
 135			       <&dmamux1 21 0x400 0x1>,
 136			       <&dmamux1 22 0x400 0x1>;
 137			dma-names = "ch1", "ch2", "ch3", "ch4", "up";
 138			status = "disabled";
 139
 140			pwm {
 141				compatible = "st,stm32-pwm";
 142				#pwm-cells = <3>;
 143				status = "disabled";
 144			};
 145
 146			timer@1 {
 147				compatible = "st,stm32h7-timer-trigger";
 148				reg = <1>;
 149				status = "disabled";
 150			};
 151		};
 152
 153		timers3: timer@40001000 {
 154			#address-cells = <1>;
 155			#size-cells = <0>;
 156			compatible = "st,stm32-timers";
 157			reg = <0x40001000 0x400>;
 158			clocks = <&rcc TIM3_K>;
 159			clock-names = "int";
 160			dmas = <&dmamux1 23 0x400 0x1>,
 161			       <&dmamux1 24 0x400 0x1>,
 162			       <&dmamux1 25 0x400 0x1>,
 163			       <&dmamux1 26 0x400 0x1>,
 164			       <&dmamux1 27 0x400 0x1>,
 165			       <&dmamux1 28 0x400 0x1>;
 166			dma-names = "ch1", "ch2", "ch3", "ch4", "up", "trig";
 167			status = "disabled";
 168
 169			pwm {
 170				compatible = "st,stm32-pwm";
 171				#pwm-cells = <3>;
 172				status = "disabled";
 173			};
 174
 175			timer@2 {
 176				compatible = "st,stm32h7-timer-trigger";
 177				reg = <2>;
 178				status = "disabled";
 179			};
 180		};
 181
 182		timers4: timer@40002000 {
 183			#address-cells = <1>;
 184			#size-cells = <0>;
 185			compatible = "st,stm32-timers";
 186			reg = <0x40002000 0x400>;
 187			clocks = <&rcc TIM4_K>;
 188			clock-names = "int";
 189			dmas = <&dmamux1 29 0x400 0x1>,
 190			       <&dmamux1 30 0x400 0x1>,
 191			       <&dmamux1 31 0x400 0x1>,
 192			       <&dmamux1 32 0x400 0x1>;
 193			dma-names = "ch1", "ch2", "ch3", "ch4";
 194			status = "disabled";
 195
 196			pwm {
 197				compatible = "st,stm32-pwm";
 198				#pwm-cells = <3>;
 199				status = "disabled";
 200			};
 201
 202			timer@3 {
 203				compatible = "st,stm32h7-timer-trigger";
 204				reg = <3>;
 205				status = "disabled";
 206			};
 207		};
 208
 209		timers5: timer@40003000 {
 210			#address-cells = <1>;
 211			#size-cells = <0>;
 212			compatible = "st,stm32-timers";
 213			reg = <0x40003000 0x400>;
 214			clocks = <&rcc TIM5_K>;
 215			clock-names = "int";
 216			dmas = <&dmamux1 55 0x400 0x1>,
 217			       <&dmamux1 56 0x400 0x1>,
 218			       <&dmamux1 57 0x400 0x1>,
 219			       <&dmamux1 58 0x400 0x1>,
 220			       <&dmamux1 59 0x400 0x1>,
 221			       <&dmamux1 60 0x400 0x1>;
 222			dma-names = "ch1", "ch2", "ch3", "ch4", "up", "trig";
 223			status = "disabled";
 224
 225			pwm {
 226				compatible = "st,stm32-pwm";
 227				#pwm-cells = <3>;
 228				status = "disabled";
 229			};
 230
 231			timer@4 {
 232				compatible = "st,stm32h7-timer-trigger";
 233				reg = <4>;
 234				status = "disabled";
 235			};
 236		};
 237
 238		timers6: timer@40004000 {
 239			#address-cells = <1>;
 240			#size-cells = <0>;
 241			compatible = "st,stm32-timers";
 242			reg = <0x40004000 0x400>;
 243			clocks = <&rcc TIM6_K>;
 244			clock-names = "int";
 245			dmas = <&dmamux1 69 0x400 0x1>;
 246			dma-names = "up";
 247			status = "disabled";
 248
 249			timer@5 {
 250				compatible = "st,stm32h7-timer-trigger";
 251				reg = <5>;
 252				status = "disabled";
 253			};
 254		};
 255
 256		timers7: timer@40005000 {
 257			#address-cells = <1>;
 258			#size-cells = <0>;
 259			compatible = "st,stm32-timers";
 260			reg = <0x40005000 0x400>;
 261			clocks = <&rcc TIM7_K>;
 262			clock-names = "int";
 263			dmas = <&dmamux1 70 0x400 0x1>;
 264			dma-names = "up";
 265			status = "disabled";
 266
 267			timer@6 {
 268				compatible = "st,stm32h7-timer-trigger";
 269				reg = <6>;
 270				status = "disabled";
 271			};
 272		};
 273
 274		timers12: timer@40006000 {
 275			#address-cells = <1>;
 276			#size-cells = <0>;
 277			compatible = "st,stm32-timers";
 278			reg = <0x40006000 0x400>;
 279			clocks = <&rcc TIM12_K>;
 280			clock-names = "int";
 281			status = "disabled";
 282
 283			pwm {
 284				compatible = "st,stm32-pwm";
 285				#pwm-cells = <3>;
 286				status = "disabled";
 287			};
 288
 289			timer@11 {
 290				compatible = "st,stm32h7-timer-trigger";
 291				reg = <11>;
 292				status = "disabled";
 293			};
 294		};
 295
 296		timers13: timer@40007000 {
 297			#address-cells = <1>;
 298			#size-cells = <0>;
 299			compatible = "st,stm32-timers";
 300			reg = <0x40007000 0x400>;
 301			clocks = <&rcc TIM13_K>;
 302			clock-names = "int";
 303			status = "disabled";
 304
 305			pwm {
 306				compatible = "st,stm32-pwm";
 307				#pwm-cells = <3>;
 308				status = "disabled";
 309			};
 310
 311			timer@12 {
 312				compatible = "st,stm32h7-timer-trigger";
 313				reg = <12>;
 314				status = "disabled";
 315			};
 316		};
 317
 318		timers14: timer@40008000 {
 319			#address-cells = <1>;
 320			#size-cells = <0>;
 321			compatible = "st,stm32-timers";
 322			reg = <0x40008000 0x400>;
 323			clocks = <&rcc TIM14_K>;
 324			clock-names = "int";
 325			status = "disabled";
 326
 327			pwm {
 328				compatible = "st,stm32-pwm";
 329				#pwm-cells = <3>;
 330				status = "disabled";
 331			};
 332
 333			timer@13 {
 334				compatible = "st,stm32h7-timer-trigger";
 335				reg = <13>;
 336				status = "disabled";
 337			};
 338		};
 339
 340		lptimer1: timer@40009000 {
 341			#address-cells = <1>;
 342			#size-cells = <0>;
 343			compatible = "st,stm32-lptimer";
 344			reg = <0x40009000 0x400>;
 345			clocks = <&rcc LPTIM1_K>;
 346			clock-names = "mux";
 347			status = "disabled";
 348
 349			pwm {
 350				compatible = "st,stm32-pwm-lp";
 351				#pwm-cells = <3>;
 352				status = "disabled";
 353			};
 354
 355			trigger@0 {
 356				compatible = "st,stm32-lptimer-trigger";
 357				reg = <0>;
 358				status = "disabled";
 359			};
 360
 361			counter {
 362				compatible = "st,stm32-lptimer-counter";
 363				status = "disabled";
 364			};
 365		};
 366
 367		spi2: spi@4000b000 {
 368			#address-cells = <1>;
 369			#size-cells = <0>;
 370			compatible = "st,stm32h7-spi";
 371			reg = <0x4000b000 0x400>;
 372			interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
 373			clocks = <&rcc SPI2_K>;
 374			resets = <&rcc SPI2_R>;
 375			dmas = <&dmamux1 39 0x400 0x05>,
 376			       <&dmamux1 40 0x400 0x05>;
 377			dma-names = "rx", "tx";
 378			status = "disabled";
 379		};
 380
 381		i2s2: audio-controller@4000b000 {
 382			compatible = "st,stm32h7-i2s";
 383			#sound-dai-cells = <0>;
 384			reg = <0x4000b000 0x400>;
 385			interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
 386			dmas = <&dmamux1 39 0x400 0x01>,
 387			       <&dmamux1 40 0x400 0x01>;
 388			dma-names = "rx", "tx";
 389			status = "disabled";
 390		};
 391
 392		spi3: spi@4000c000 {
 393			#address-cells = <1>;
 394			#size-cells = <0>;
 395			compatible = "st,stm32h7-spi";
 396			reg = <0x4000c000 0x400>;
 397			interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
 398			clocks = <&rcc SPI3_K>;
 399			resets = <&rcc SPI3_R>;
 400			dmas = <&dmamux1 61 0x400 0x05>,
 401			       <&dmamux1 62 0x400 0x05>;
 402			dma-names = "rx", "tx";
 403			status = "disabled";
 404		};
 405
 406		i2s3: audio-controller@4000c000 {
 407			compatible = "st,stm32h7-i2s";
 408			#sound-dai-cells = <0>;
 409			reg = <0x4000c000 0x400>;
 410			interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
 411			dmas = <&dmamux1 61 0x400 0x01>,
 412			       <&dmamux1 62 0x400 0x01>;
 413			dma-names = "rx", "tx";
 414			status = "disabled";
 415		};
 416
 417		spdifrx: audio-controller@4000d000 {
 418			compatible = "st,stm32h7-spdifrx";
 419			#sound-dai-cells = <0>;
 420			reg = <0x4000d000 0x400>;
 421			clocks = <&rcc SPDIF_K>;
 422			clock-names = "kclk";
 423			interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
 424			dmas = <&dmamux1 93 0x400 0x01>,
 425			       <&dmamux1 94 0x400 0x01>;
 426			dma-names = "rx", "rx-ctrl";
 427			status = "disabled";
 428		};
 429
 430		usart2: serial@4000e000 {
 431			compatible = "st,stm32h7-uart";
 432			reg = <0x4000e000 0x400>;
 433			interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
 434			clocks = <&rcc USART2_K>;
 435			status = "disabled";
 436		};
 437
 438		usart3: serial@4000f000 {
 439			compatible = "st,stm32h7-uart";
 440			reg = <0x4000f000 0x400>;
 441			interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
 442			clocks = <&rcc USART3_K>;
 443			status = "disabled";
 444		};
 445
 446		uart4: serial@40010000 {
 447			compatible = "st,stm32h7-uart";
 448			reg = <0x40010000 0x400>;
 449			interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
 450			clocks = <&rcc UART4_K>;
 451			status = "disabled";
 452		};
 453
 454		uart5: serial@40011000 {
 455			compatible = "st,stm32h7-uart";
 456			reg = <0x40011000 0x400>;
 457			interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
 458			clocks = <&rcc UART5_K>;
 459			status = "disabled";
 460		};
 461
 462		i2c1: i2c@40012000 {
 463			compatible = "st,stm32f7-i2c";
 464			reg = <0x40012000 0x400>;
 465			interrupt-names = "event", "error";
 466			interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>,
 467				     <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
 468			clocks = <&rcc I2C1_K>;
 469			resets = <&rcc I2C1_R>;
 470			#address-cells = <1>;
 471			#size-cells = <0>;
 472			status = "disabled";
 473		};
 474
 475		i2c2: i2c@40013000 {
 476			compatible = "st,stm32f7-i2c";
 477			reg = <0x40013000 0x400>;
 478			interrupt-names = "event", "error";
 479			interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>,
 480				     <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
 481			clocks = <&rcc I2C2_K>;
 482			resets = <&rcc I2C2_R>;
 483			#address-cells = <1>;
 484			#size-cells = <0>;
 485			status = "disabled";
 486		};
 487
 488		i2c3: i2c@40014000 {
 489			compatible = "st,stm32f7-i2c";
 490			reg = <0x40014000 0x400>;
 491			interrupt-names = "event", "error";
 492			interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>,
 493				     <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
 494			clocks = <&rcc I2C3_K>;
 495			resets = <&rcc I2C3_R>;
 496			#address-cells = <1>;
 497			#size-cells = <0>;
 498			status = "disabled";
 499		};
 500
 501		i2c5: i2c@40015000 {
 502			compatible = "st,stm32f7-i2c";
 503			reg = <0x40015000 0x400>;
 504			interrupt-names = "event", "error";
 505			interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>,
 506				     <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>;
 507			clocks = <&rcc I2C5_K>;
 508			resets = <&rcc I2C5_R>;
 509			#address-cells = <1>;
 510			#size-cells = <0>;
 511			status = "disabled";
 512		};
 513
 514		cec: cec@40016000 {
 515			compatible = "st,stm32-cec";
 516			reg = <0x40016000 0x400>;
 517			interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
 518			clocks = <&rcc CEC_K>, <&clk_lse>;
 519			clock-names = "cec", "hdmi-cec";
 520			status = "disabled";
 521		};
 522
 523		dac: dac@40017000 {
 524			compatible = "st,stm32h7-dac-core";
 525			reg = <0x40017000 0x400>;
 526			clocks = <&rcc DAC12>;
 527			clock-names = "pclk";
 528			#address-cells = <1>;
 529			#size-cells = <0>;
 530			status = "disabled";
 531
 532			dac1: dac@1 {
 533				compatible = "st,stm32-dac";
 534				#io-channels-cells = <1>;
 535				reg = <1>;
 536				status = "disabled";
 537			};
 538
 539			dac2: dac@2 {
 540				compatible = "st,stm32-dac";
 541				#io-channels-cells = <1>;
 542				reg = <2>;
 543				status = "disabled";
 544			};
 545		};
 546
 547		uart7: serial@40018000 {
 548			compatible = "st,stm32h7-uart";
 549			reg = <0x40018000 0x400>;
 550			interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
 551			clocks = <&rcc UART7_K>;
 552			status = "disabled";
 553		};
 554
 555		uart8: serial@40019000 {
 556			compatible = "st,stm32h7-uart";
 557			reg = <0x40019000 0x400>;
 558			interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
 559			clocks = <&rcc UART8_K>;
 560			status = "disabled";
 561		};
 562
 563		timers1: timer@44000000 {
 564			#address-cells = <1>;
 565			#size-cells = <0>;
 566			compatible = "st,stm32-timers";
 567			reg = <0x44000000 0x400>;
 568			clocks = <&rcc TIM1_K>;
 569			clock-names = "int";
 570			dmas = <&dmamux1 11 0x400 0x1>,
 571			       <&dmamux1 12 0x400 0x1>,
 572			       <&dmamux1 13 0x400 0x1>,
 573			       <&dmamux1 14 0x400 0x1>,
 574			       <&dmamux1 15 0x400 0x1>,
 575			       <&dmamux1 16 0x400 0x1>,
 576			       <&dmamux1 17 0x400 0x1>;
 577			dma-names = "ch1", "ch2", "ch3", "ch4",
 578				    "up", "trig", "com";
 579			status = "disabled";
 580
 581			pwm {
 582				compatible = "st,stm32-pwm";
 583				#pwm-cells = <3>;
 584				status = "disabled";
 585			};
 586
 587			timer@0 {
 588				compatible = "st,stm32h7-timer-trigger";
 589				reg = <0>;
 590				status = "disabled";
 591			};
 592		};
 593
 594		timers8: timer@44001000 {
 595			#address-cells = <1>;
 596			#size-cells = <0>;
 597			compatible = "st,stm32-timers";
 598			reg = <0x44001000 0x400>;
 599			clocks = <&rcc TIM8_K>;
 600			clock-names = "int";
 601			dmas = <&dmamux1 47 0x400 0x1>,
 602			       <&dmamux1 48 0x400 0x1>,
 603			       <&dmamux1 49 0x400 0x1>,
 604			       <&dmamux1 50 0x400 0x1>,
 605			       <&dmamux1 51 0x400 0x1>,
 606			       <&dmamux1 52 0x400 0x1>,
 607			       <&dmamux1 53 0x400 0x1>;
 608			dma-names = "ch1", "ch2", "ch3", "ch4",
 609				    "up", "trig", "com";
 610			status = "disabled";
 611
 612			pwm {
 613				compatible = "st,stm32-pwm";
 614				#pwm-cells = <3>;
 615				status = "disabled";
 616			};
 617
 618			timer@7 {
 619				compatible = "st,stm32h7-timer-trigger";
 620				reg = <7>;
 621				status = "disabled";
 622			};
 623		};
 624
 625		usart6: serial@44003000 {
 626			compatible = "st,stm32h7-uart";
 627			reg = <0x44003000 0x400>;
 628			interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>;
 629			clocks = <&rcc USART6_K>;
 630			status = "disabled";
 631		};
 632
 633		spi1: spi@44004000 {
 634			#address-cells = <1>;
 635			#size-cells = <0>;
 636			compatible = "st,stm32h7-spi";
 637			reg = <0x44004000 0x400>;
 638			interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
 639			clocks = <&rcc SPI1_K>;
 640			resets = <&rcc SPI1_R>;
 641			dmas = <&dmamux1 37 0x400 0x05>,
 642			       <&dmamux1 38 0x400 0x05>;
 643			dma-names = "rx", "tx";
 644			status = "disabled";
 645		};
 646
 647		i2s1: audio-controller@44004000 {
 648			compatible = "st,stm32h7-i2s";
 649			#sound-dai-cells = <0>;
 650			reg = <0x44004000 0x400>;
 651			interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
 652			dmas = <&dmamux1 37 0x400 0x01>,
 653			       <&dmamux1 38 0x400 0x01>;
 654			dma-names = "rx", "tx";
 655			status = "disabled";
 656		};
 657
 658		spi4: spi@44005000 {
 659			#address-cells = <1>;
 660			#size-cells = <0>;
 661			compatible = "st,stm32h7-spi";
 662			reg = <0x44005000 0x400>;
 663			interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>;
 664			clocks = <&rcc SPI4_K>;
 665			resets = <&rcc SPI4_R>;
 666			dmas = <&dmamux1 83 0x400 0x05>,
 667			       <&dmamux1 84 0x400 0x05>;
 668			dma-names = "rx", "tx";
 669			status = "disabled";
 670		};
 671
 672		timers15: timer@44006000 {
 673			#address-cells = <1>;
 674			#size-cells = <0>;
 675			compatible = "st,stm32-timers";
 676			reg = <0x44006000 0x400>;
 677			clocks = <&rcc TIM15_K>;
 678			clock-names = "int";
 679			dmas = <&dmamux1 105 0x400 0x1>,
 680			       <&dmamux1 106 0x400 0x1>,
 681			       <&dmamux1 107 0x400 0x1>,
 682			       <&dmamux1 108 0x400 0x1>;
 683			dma-names = "ch1", "up", "trig", "com";
 684			status = "disabled";
 685
 686			pwm {
 687				compatible = "st,stm32-pwm";
 688				#pwm-cells = <3>;
 689				status = "disabled";
 690			};
 691
 692			timer@14 {
 693				compatible = "st,stm32h7-timer-trigger";
 694				reg = <14>;
 695				status = "disabled";
 696			};
 697		};
 698
 699		timers16: timer@44007000 {
 700			#address-cells = <1>;
 701			#size-cells = <0>;
 702			compatible = "st,stm32-timers";
 703			reg = <0x44007000 0x400>;
 704			clocks = <&rcc TIM16_K>;
 705			clock-names = "int";
 706			dmas = <&dmamux1 109 0x400 0x1>,
 707			       <&dmamux1 110 0x400 0x1>;
 708			dma-names = "ch1", "up";
 709			status = "disabled";
 710
 711			pwm {
 712				compatible = "st,stm32-pwm";
 713				#pwm-cells = <3>;
 714				status = "disabled";
 715			};
 716			timer@15 {
 717				compatible = "st,stm32h7-timer-trigger";
 718				reg = <15>;
 719				status = "disabled";
 720			};
 721		};
 722
 723		timers17: timer@44008000 {
 724			#address-cells = <1>;
 725			#size-cells = <0>;
 726			compatible = "st,stm32-timers";
 727			reg = <0x44008000 0x400>;
 728			clocks = <&rcc TIM17_K>;
 729			clock-names = "int";
 730			dmas = <&dmamux1 111 0x400 0x1>,
 731			       <&dmamux1 112 0x400 0x1>;
 732			dma-names = "ch1", "up";
 733			status = "disabled";
 734
 735			pwm {
 736				compatible = "st,stm32-pwm";
 737				#pwm-cells = <3>;
 738				status = "disabled";
 739			};
 740
 741			timer@16 {
 742				compatible = "st,stm32h7-timer-trigger";
 743				reg = <16>;
 744				status = "disabled";
 745			};
 746		};
 747
 748		spi5: spi@44009000 {
 749			#address-cells = <1>;
 750			#size-cells = <0>;
 751			compatible = "st,stm32h7-spi";
 752			reg = <0x44009000 0x400>;
 753			interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
 754			clocks = <&rcc SPI5_K>;
 755			resets = <&rcc SPI5_R>;
 756			dmas = <&dmamux1 85 0x400 0x05>,
 757			       <&dmamux1 86 0x400 0x05>;
 758			dma-names = "rx", "tx";
 759			status = "disabled";
 760		};
 761
 762		sai1: sai@4400a000 {
 763			compatible = "st,stm32h7-sai";
 764			#address-cells = <1>;
 765			#size-cells = <1>;
 766			ranges = <0 0x4400a000 0x400>;
 767			reg = <0x4400a000 0x4>, <0x4400a3f0 0x10>;
 768			interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>;
 769			resets = <&rcc SAI1_R>;
 770			status = "disabled";
 771
 772			sai1a: audio-controller@4400a004 {
 773				#sound-dai-cells = <0>;
 774
 775				compatible = "st,stm32-sai-sub-a";
 776				reg = <0x4 0x1c>;
 777				clocks = <&rcc SAI1_K>;
 778				clock-names = "sai_ck";
 779				dmas = <&dmamux1 87 0x400 0x01>;
 780				status = "disabled";
 781			};
 782
 783			sai1b: audio-controller@4400a024 {
 784				#sound-dai-cells = <0>;
 785				compatible = "st,stm32-sai-sub-b";
 786				reg = <0x24 0x1c>;
 787				clocks = <&rcc SAI1_K>;
 788				clock-names = "sai_ck";
 789				dmas = <&dmamux1 88 0x400 0x01>;
 790				status = "disabled";
 791			};
 792		};
 793
 794		sai2: sai@4400b000 {
 795			compatible = "st,stm32h7-sai";
 796			#address-cells = <1>;
 797			#size-cells = <1>;
 798			ranges = <0 0x4400b000 0x400>;
 799			reg = <0x4400b000 0x4>, <0x4400b3f0 0x10>;
 800			interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>;
 801			resets = <&rcc SAI2_R>;
 802			status = "disabled";
 803
 804			sai2a: audio-controller@4400b004 {
 805				#sound-dai-cells = <0>;
 806				compatible = "st,stm32-sai-sub-a";
 807				reg = <0x4 0x1c>;
 808				clocks = <&rcc SAI2_K>;
 809				clock-names = "sai_ck";
 810				dmas = <&dmamux1 89 0x400 0x01>;
 811				status = "disabled";
 812			};
 813
 814			sai2b: audio-controller@4400b024 {
 815				#sound-dai-cells = <0>;
 816				compatible = "st,stm32-sai-sub-b";
 817				reg = <0x24 0x1c>;
 818				clocks = <&rcc SAI2_K>;
 819				clock-names = "sai_ck";
 820				dmas = <&dmamux1 90 0x400 0x01>;
 821				status = "disabled";
 822			};
 823		};
 824
 825		sai3: sai@4400c000 {
 826			compatible = "st,stm32h7-sai";
 827			#address-cells = <1>;
 828			#size-cells = <1>;
 829			ranges = <0 0x4400c000 0x400>;
 830			reg = <0x4400c000 0x4>, <0x4400c3f0 0x10>;
 831			interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
 832			resets = <&rcc SAI3_R>;
 833			status = "disabled";
 834
 835			sai3a: audio-controller@4400c004 {
 836				#sound-dai-cells = <0>;
 837				compatible = "st,stm32-sai-sub-a";
 838				reg = <0x04 0x1c>;
 839				clocks = <&rcc SAI3_K>;
 840				clock-names = "sai_ck";
 841				dmas = <&dmamux1 113 0x400 0x01>;
 842				status = "disabled";
 843			};
 844
 845			sai3b: audio-controller@4400c024 {
 846				#sound-dai-cells = <0>;
 847				compatible = "st,stm32-sai-sub-b";
 848				reg = <0x24 0x1c>;
 849				clocks = <&rcc SAI3_K>;
 850				clock-names = "sai_ck";
 851				dmas = <&dmamux1 114 0x400 0x01>;
 852				status = "disabled";
 853			};
 854		};
 855
 856		dfsdm: dfsdm@4400d000 {
 857			compatible = "st,stm32mp1-dfsdm";
 858			reg = <0x4400d000 0x800>;
 859			clocks = <&rcc DFSDM_K>;
 860			clock-names = "dfsdm";
 861			#address-cells = <1>;
 862			#size-cells = <0>;
 863			status = "disabled";
 864
 865			dfsdm0: filter@0 {
 866				compatible = "st,stm32-dfsdm-adc";
 867				#io-channel-cells = <1>;
 868				reg = <0>;
 869				interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
 870				dmas = <&dmamux1 101 0x400 0x01>;
 871				dma-names = "rx";
 872				status = "disabled";
 873			};
 874
 875			dfsdm1: filter@1 {
 876				compatible = "st,stm32-dfsdm-adc";
 877				#io-channel-cells = <1>;
 878				reg = <1>;
 879				interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
 880				dmas = <&dmamux1 102 0x400 0x01>;
 881				dma-names = "rx";
 882				status = "disabled";
 883			};
 884
 885			dfsdm2: filter@2 {
 886				compatible = "st,stm32-dfsdm-adc";
 887				#io-channel-cells = <1>;
 888				reg = <2>;
 889				interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>;
 890				dmas = <&dmamux1 103 0x400 0x01>;
 891				dma-names = "rx";
 892				status = "disabled";
 893			};
 894
 895			dfsdm3: filter@3 {
 896				compatible = "st,stm32-dfsdm-adc";
 897				#io-channel-cells = <1>;
 898				reg = <3>;
 899				interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>;
 900				dmas = <&dmamux1 104 0x400 0x01>;
 901				dma-names = "rx";
 902				status = "disabled";
 903			};
 904
 905			dfsdm4: filter@4 {
 906				compatible = "st,stm32-dfsdm-adc";
 907				#io-channel-cells = <1>;
 908				reg = <4>;
 909				interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>;
 910				dmas = <&dmamux1 91 0x400 0x01>;
 911				dma-names = "rx";
 912				status = "disabled";
 913			};
 914
 915			dfsdm5: filter@5 {
 916				compatible = "st,stm32-dfsdm-adc";
 917				#io-channel-cells = <1>;
 918				reg = <5>;
 919				interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>;
 920				dmas = <&dmamux1 92 0x400 0x01>;
 921				dma-names = "rx";
 922				status = "disabled";
 923			};
 924		};
 925
 926		m_can1: can@4400e000 {
 927			compatible = "bosch,m_can";
 928			reg = <0x4400e000 0x400>, <0x44011000 0x1400>;
 929			reg-names = "m_can", "message_ram";
 930			interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>,
 931				     <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
 932			interrupt-names = "int0", "int1";
 933			clocks = <&rcc CK_HSE>, <&rcc FDCAN_K>;
 934			clock-names = "hclk", "cclk";
 935			bosch,mram-cfg = <0x0 0 0 32 0 0 2 2>;
 936			status = "disabled";
 937		};
 938
 939		m_can2: can@4400f000 {
 940			compatible = "bosch,m_can";
 941			reg = <0x4400f000 0x400>, <0x44011000 0x2800>;
 942			reg-names = "m_can", "message_ram";
 943			interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>,
 944				     <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>;
 945			interrupt-names = "int0", "int1";
 946			clocks = <&rcc CK_HSE>, <&rcc FDCAN_K>;
 947			clock-names = "hclk", "cclk";
 948			bosch,mram-cfg = <0x1400 0 0 32 0 0 2 2>;
 949			status = "disabled";
 950		};
 951
 952		dma1: dma@48000000 {
 953			compatible = "st,stm32-dma";
 954			reg = <0x48000000 0x400>;
 955			interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
 956				     <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
 957				     <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>,
 958				     <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>,
 959				     <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>,
 960				     <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>,
 961				     <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>,
 962				     <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
 963			clocks = <&rcc DMA1>;
 964			#dma-cells = <4>;
 965			st,mem2mem;
 966			dma-requests = <8>;
 967		};
 968
 969		dma2: dma@48001000 {
 970			compatible = "st,stm32-dma";
 971			reg = <0x48001000 0x400>;
 972			interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>,
 973				     <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>,
 974				     <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>,
 975				     <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>,
 976				     <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>,
 977				     <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>,
 978				     <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>,
 979				     <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
 980			clocks = <&rcc DMA2>;
 981			#dma-cells = <4>;
 982			st,mem2mem;
 983			dma-requests = <8>;
 984		};
 985
 986		dmamux1: dma-router@48002000 {
 987			compatible = "st,stm32h7-dmamux";
 988			reg = <0x48002000 0x1c>;
 989			#dma-cells = <3>;
 990			dma-requests = <128>;
 991			dma-masters = <&dma1 &dma2>;
 992			dma-channels = <16>;
 993			clocks = <&rcc DMAMUX>;
 994		};
 995
 996		adc: adc@48003000 {
 997			compatible = "st,stm32mp1-adc-core";
 998			reg = <0x48003000 0x400>;
 999			interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>,
1000				     <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>;
1001			clocks = <&rcc ADC12>, <&rcc ADC12_K>;
1002			clock-names = "bus", "adc";
1003			interrupt-controller;
1004			st,syscfg = <&syscfg>;
1005			#interrupt-cells = <1>;
1006			#address-cells = <1>;
1007			#size-cells = <0>;
1008			status = "disabled";
1009
1010			adc1: adc@0 {
1011				compatible = "st,stm32mp1-adc";
1012				#io-channel-cells = <1>;
1013				reg = <0x0>;
1014				interrupt-parent = <&adc>;
1015				interrupts = <0>;
1016				dmas = <&dmamux1 9 0x400 0x01>;
1017				dma-names = "rx";
1018				status = "disabled";
1019			};
1020
1021			adc2: adc@100 {
1022				compatible = "st,stm32mp1-adc";
1023				#io-channel-cells = <1>;
1024				reg = <0x100>;
1025				interrupt-parent = <&adc>;
1026				interrupts = <1>;
1027				dmas = <&dmamux1 10 0x400 0x01>;
1028				dma-names = "rx";
1029				status = "disabled";
1030			};
1031		};
1032
1033		usbotg_hs: usb-otg@49000000 {
1034			compatible = "snps,dwc2";
1035			reg = <0x49000000 0x10000>;
1036			clocks = <&rcc USBO_K>;
1037			clock-names = "otg";
1038			resets = <&rcc USBO_R>;
1039			reset-names = "dwc2";
1040			interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
1041			g-rx-fifo-size = <256>;
1042			g-np-tx-fifo-size = <32>;
1043			g-tx-fifo-size = <128 128 64 64 64 64 32 32>;
1044			dr_mode = "otg";
1045			status = "disabled";
1046		};
1047
1048		ipcc: mailbox@4c001000 {
1049			compatible = "st,stm32mp1-ipcc";
1050			#mbox-cells = <1>;
1051			reg = <0x4c001000 0x400>;
1052			st,proc-id = <0>;
1053			interrupts-extended =
1054				<&intc GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>,
1055				<&intc GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>,
1056				<&exti 61 1>;
1057			interrupt-names = "rx", "tx", "wakeup";
1058			clocks = <&rcc IPCC>;
1059			wakeup-source;
1060			status = "disabled";
1061		};
1062
1063		dcmi: dcmi@4c006000 {
1064			compatible = "st,stm32-dcmi";
1065			reg = <0x4c006000 0x400>;
1066			interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>;
1067			resets = <&rcc CAMITF_R>;
1068			clocks = <&rcc DCMI>;
1069			clock-names = "mclk";
1070			dmas = <&dmamux1 75 0x400 0x0d>;
1071			dma-names = "tx";
1072			status = "disabled";
1073		};
1074
1075		rcc: rcc@50000000 {
1076			compatible = "st,stm32mp1-rcc", "syscon";
1077			reg = <0x50000000 0x1000>;
1078			#clock-cells = <1>;
1079			#reset-cells = <1>;
1080		};
1081
1082		exti: interrupt-controller@5000d000 {
1083			compatible = "st,stm32mp1-exti", "syscon";
1084			interrupt-controller;
1085			#interrupt-cells = <2>;
1086			reg = <0x5000d000 0x400>;
1087		};
1088
1089		syscfg: syscon@50020000 {
1090			compatible = "st,stm32mp157-syscfg", "syscon";
1091			reg = <0x50020000 0x400>;
1092			clocks = <&rcc SYSCFG>;
1093		};
1094
1095		lptimer2: timer@50021000 {
1096			#address-cells = <1>;
1097			#size-cells = <0>;
1098			compatible = "st,stm32-lptimer";
1099			reg = <0x50021000 0x400>;
1100			clocks = <&rcc LPTIM2_K>;
1101			clock-names = "mux";
1102			status = "disabled";
1103
1104			pwm {
1105				compatible = "st,stm32-pwm-lp";
1106				#pwm-cells = <3>;
1107				status = "disabled";
1108			};
1109
1110			trigger@1 {
1111				compatible = "st,stm32-lptimer-trigger";
1112				reg = <1>;
1113				status = "disabled";
1114			};
1115
1116			counter {
1117				compatible = "st,stm32-lptimer-counter";
1118				status = "disabled";
1119			};
1120		};
1121
1122		lptimer3: timer@50022000 {
1123			#address-cells = <1>;
1124			#size-cells = <0>;
1125			compatible = "st,stm32-lptimer";
1126			reg = <0x50022000 0x400>;
1127			clocks = <&rcc LPTIM3_K>;
1128			clock-names = "mux";
1129			status = "disabled";
1130
1131			pwm {
1132				compatible = "st,stm32-pwm-lp";
1133				#pwm-cells = <3>;
1134				status = "disabled";
1135			};
1136
1137			trigger@2 {
1138				compatible = "st,stm32-lptimer-trigger";
1139				reg = <2>;
1140				status = "disabled";
1141			};
1142		};
1143
1144		lptimer4: timer@50023000 {
1145			compatible = "st,stm32-lptimer";
1146			reg = <0x50023000 0x400>;
1147			clocks = <&rcc LPTIM4_K>;
1148			clock-names = "mux";
1149			status = "disabled";
1150
1151			pwm {
1152				compatible = "st,stm32-pwm-lp";
1153				#pwm-cells = <3>;
1154				status = "disabled";
1155			};
1156		};
1157
1158		lptimer5: timer@50024000 {
1159			compatible = "st,stm32-lptimer";
1160			reg = <0x50024000 0x400>;
1161			clocks = <&rcc LPTIM5_K>;
1162			clock-names = "mux";
1163			status = "disabled";
1164
1165			pwm {
1166				compatible = "st,stm32-pwm-lp";
1167				#pwm-cells = <3>;
1168				status = "disabled";
1169			};
1170		};
1171
1172		vrefbuf: vrefbuf@50025000 {
1173			compatible = "st,stm32-vrefbuf";
1174			reg = <0x50025000 0x8>;
1175			regulator-min-microvolt = <1500000>;
1176			regulator-max-microvolt = <2500000>;
1177			clocks = <&rcc VREF>;
1178			status = "disabled";
1179		};
1180
1181		sai4: sai@50027000 {
1182			compatible = "st,stm32h7-sai";
1183			#address-cells = <1>;
1184			#size-cells = <1>;
1185			ranges = <0 0x50027000 0x400>;
1186			reg = <0x50027000 0x4>, <0x500273f0 0x10>;
1187			interrupts = <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>;
1188			resets = <&rcc SAI4_R>;
1189			status = "disabled";
1190
1191			sai4a: audio-controller@50027004 {
1192				#sound-dai-cells = <0>;
1193				compatible = "st,stm32-sai-sub-a";
1194				reg = <0x04 0x1c>;
1195				clocks = <&rcc SAI4_K>;
1196				clock-names = "sai_ck";
1197				dmas = <&dmamux1 99 0x400 0x01>;
1198				status = "disabled";
1199			};
1200
1201			sai4b: audio-controller@50027024 {
1202				#sound-dai-cells = <0>;
1203				compatible = "st,stm32-sai-sub-b";
1204				reg = <0x24 0x1c>;
1205				clocks = <&rcc SAI4_K>;
1206				clock-names = "sai_ck";
1207				dmas = <&dmamux1 100 0x400 0x01>;
1208				status = "disabled";
1209			};
1210		};
1211
1212		dts: thermal@50028000 {
1213			compatible = "st,stm32-thermal";
1214			reg = <0x50028000 0x100>;
1215			interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>;
1216			clocks = <&rcc TMPSENS>;
1217			clock-names = "pclk";
1218			#thermal-sensor-cells = <0>;
1219			status = "disabled";
1220		};
1221
1222		cryp1: cryp@54001000 {
1223			compatible = "st,stm32mp1-cryp";
1224			reg = <0x54001000 0x400>;
1225			interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
1226			clocks = <&rcc CRYP1>;
1227			resets = <&rcc CRYP1_R>;
1228			status = "disabled";
1229		};
1230
1231		hash1: hash@54002000 {
1232			compatible = "st,stm32f756-hash";
1233			reg = <0x54002000 0x400>;
1234			interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
1235			clocks = <&rcc HASH1>;
1236			resets = <&rcc HASH1_R>;
1237			dmas = <&mdma1 31 0x10 0x1000A02 0x0 0x0>;
1238			dma-names = "in";
1239			dma-maxburst = <2>;
1240			status = "disabled";
1241		};
1242
1243		rng1: rng@54003000 {
1244			compatible = "st,stm32-rng";
1245			reg = <0x54003000 0x400>;
1246			clocks = <&rcc RNG1_K>;
1247			resets = <&rcc RNG1_R>;
1248			status = "disabled";
1249		};
1250
1251		mdma1: dma@58000000 {
1252			compatible = "st,stm32h7-mdma";
1253			reg = <0x58000000 0x1000>;
1254			interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>;
1255			clocks = <&rcc MDMA>;
1256			#dma-cells = <5>;
1257			dma-channels = <32>;
1258			dma-requests = <48>;
1259		};
1260
1261		fmc: nand-controller@58002000 {
1262			compatible = "st,stm32mp15-fmc2";
1263			reg = <0x58002000 0x1000>,
1264			      <0x80000000 0x1000>,
1265			      <0x88010000 0x1000>,
1266			      <0x88020000 0x1000>,
1267			      <0x81000000 0x1000>,
1268			      <0x89010000 0x1000>,
1269			      <0x89020000 0x1000>;
1270			interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
1271			dmas = <&mdma1 20 0x10 0x12000a02 0x0 0x0>,
1272			       <&mdma1 20 0x10 0x12000a08 0x0 0x0>,
1273			       <&mdma1 21 0x10 0x12000a0a 0x0 0x0>;
1274			dma-names = "tx", "rx", "ecc";
1275			clocks = <&rcc FMC_K>;
1276			resets = <&rcc FMC_R>;
1277			status = "disabled";
1278		};
1279
1280		qspi: spi@58003000 {
1281			compatible = "st,stm32f469-qspi";
1282			reg = <0x58003000 0x1000>, <0x70000000 0x10000000>;
1283			reg-names = "qspi", "qspi_mm";
1284			interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>;
1285			dmas = <&mdma1 22 0x10 0x100002 0x0 0x0>,
1286			       <&mdma1 22 0x10 0x100008 0x0 0x0>;
1287			dma-names = "tx", "rx";
1288			clocks = <&rcc QSPI_K>;
1289			resets = <&rcc QSPI_R>;
1290			status = "disabled";
1291		};
1292
1293		sdmmc1: sdmmc@58005000 {
1294			compatible = "arm,pl18x", "arm,primecell";
1295			arm,primecell-periphid = <0x10153180>;
1296			reg = <0x58005000 0x1000>;
1297			interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
1298			interrupt-names	= "cmd_irq";
1299			clocks = <&rcc SDMMC1_K>;
1300			clock-names = "apb_pclk";
1301			resets = <&rcc SDMMC1_R>;
1302			cap-sd-highspeed;
1303			cap-mmc-highspeed;
1304			max-frequency = <120000000>;
1305		};
1306
1307		crc1: crc@58009000 {
1308			compatible = "st,stm32f7-crc";
1309			reg = <0x58009000 0x400>;
1310			clocks = <&rcc CRC1>;
1311			status = "disabled";
1312		};
1313
1314		stmmac_axi_config_0: stmmac-axi-config {
1315			snps,wr_osr_lmt = <0x7>;
1316			snps,rd_osr_lmt = <0x7>;
1317			snps,blen = <0 0 0 0 16 8 4>;
1318		};
1319
1320		ethernet0: ethernet@5800a000 {
1321			compatible = "st,stm32mp1-dwmac", "snps,dwmac-4.20a";
1322			reg = <0x5800a000 0x2000>;
1323			reg-names = "stmmaceth";
1324			interrupts-extended = <&intc GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>;
1325			interrupt-names = "macirq";
1326			clock-names = "stmmaceth",
1327				      "mac-clk-tx",
1328				      "mac-clk-rx",
1329				      "ethstp",
1330				      "syscfg-clk";
1331			clocks = <&rcc ETHMAC>,
1332				 <&rcc ETHTX>,
1333				 <&rcc ETHRX>,
1334				 <&rcc ETHSTP>,
1335				 <&rcc SYSCFG>;
1336			st,syscon = <&syscfg 0x4>;
1337			snps,mixed-burst;
1338			snps,pbl = <2>;
1339			snps,axi-config = <&stmmac_axi_config_0>;
1340			snps,tso;
1341			status = "disabled";
1342		};
1343
1344		usbh_ohci: usbh-ohci@5800c000 {
1345			compatible = "generic-ohci";
1346			reg = <0x5800c000 0x1000>;
1347			clocks = <&rcc USBH>;
1348			resets = <&rcc USBH_R>;
1349			interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
1350			status = "disabled";
1351		};
1352
1353		usbh_ehci: usbh-ehci@5800d000 {
1354			compatible = "generic-ehci";
1355			reg = <0x5800d000 0x1000>;
1356			clocks = <&rcc USBH>;
1357			resets = <&rcc USBH_R>;
1358			interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
1359			companion = <&usbh_ohci>;
1360			status = "disabled";
1361		};
1362
1363		gpu: gpu@59000000 {
1364			compatible = "vivante,gc";
1365			reg = <0x59000000 0x800>;
1366			interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
1367			clocks = <&rcc GPU>, <&rcc GPU_K>;
1368			clock-names = "bus" ,"core";
1369			resets = <&rcc GPU_R>;
1370			status = "disabled";
1371		};
1372
1373		dsi: dsi@5a000000 {
1374			compatible = "st,stm32-dsi";
1375			reg = <0x5a000000 0x800>;
1376			clocks = <&rcc DSI_K>, <&clk_hse>, <&rcc DSI_PX>;
1377			clock-names = "pclk", "ref", "px_clk";
1378			resets = <&rcc DSI_R>;
1379			reset-names = "apb";
1380			status = "disabled";
1381		};
1382
1383		ltdc: display-controller@5a001000 {
1384			compatible = "st,stm32-ltdc";
1385			reg = <0x5a001000 0x400>;
1386			interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>,
1387				     <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>;
1388			clocks = <&rcc LTDC_PX>;
1389			clock-names = "lcd";
1390			resets = <&rcc LTDC_R>;
1391			status = "disabled";
1392		};
1393
1394		iwdg2: watchdog@5a002000 {
1395			compatible = "st,stm32mp1-iwdg";
1396			reg = <0x5a002000 0x400>;
1397			clocks = <&rcc IWDG2>, <&rcc CK_LSI>;
1398			clock-names = "pclk", "lsi";
1399			status = "disabled";
1400		};
1401
1402		usbphyc: usbphyc@5a006000 {
1403			#address-cells = <1>;
1404			#size-cells = <0>;
1405			compatible = "st,stm32mp1-usbphyc";
1406			reg = <0x5a006000 0x1000>;
1407			clocks = <&rcc USBPHY_K>;
1408			resets = <&rcc USBPHY_R>;
1409			status = "disabled";
1410
1411			usbphyc_port0: usb-phy@0 {
1412				#phy-cells = <0>;
1413				reg = <0>;
1414			};
1415
1416			usbphyc_port1: usb-phy@1 {
1417				#phy-cells = <1>;
1418				reg = <1>;
1419			};
1420		};
1421
1422		usart1: serial@5c000000 {
1423			compatible = "st,stm32h7-uart";
1424			reg = <0x5c000000 0x400>;
1425			interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
1426			clocks = <&rcc USART1_K>;
1427			status = "disabled";
1428		};
1429
1430		spi6: spi@5c001000 {
1431			#address-cells = <1>;
1432			#size-cells = <0>;
1433			compatible = "st,stm32h7-spi";
1434			reg = <0x5c001000 0x400>;
1435			interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
1436			clocks = <&rcc SPI6_K>;
1437			resets = <&rcc SPI6_R>;
1438			dmas = <&mdma1 34 0x0 0x40008 0x0 0x0>,
1439			       <&mdma1 35 0x0 0x40002 0x0 0x0>;
1440			dma-names = "rx", "tx";
1441			status = "disabled";
1442		};
1443
1444		i2c4: i2c@5c002000 {
1445			compatible = "st,stm32f7-i2c";
1446			reg = <0x5c002000 0x400>;
1447			interrupt-names = "event", "error";
1448			interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>,
1449				     <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
1450			clocks = <&rcc I2C4_K>;
1451			resets = <&rcc I2C4_R>;
1452			#address-cells = <1>;
1453			#size-cells = <0>;
1454			status = "disabled";
1455		};
1456
1457		rtc: rtc@5c004000 {
1458			compatible = "st,stm32mp1-rtc";
1459			reg = <0x5c004000 0x400>;
1460			clocks = <&rcc RTCAPB>, <&rcc RTC>;
1461			clock-names = "pclk", "rtc_ck";
1462			interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
1463			status = "disabled";
1464		};
1465
1466		bsec: nvmem@5c005000 {
1467			compatible = "st,stm32mp15-bsec";
1468			reg = <0x5c005000 0x400>;
1469			#address-cells = <1>;
1470			#size-cells = <1>;
1471			ts_cal1: calib@5c {
1472				reg = <0x5c 0x2>;
1473			};
1474			ts_cal2: calib@5e {
1475				reg = <0x5e 0x2>;
1476			};
1477		};
1478
1479		i2c6: i2c@5c009000 {
1480			compatible = "st,stm32f7-i2c";
1481			reg = <0x5c009000 0x400>;
1482			interrupt-names = "event", "error";
1483			interrupts = <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>,
1484				     <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>;
1485			clocks = <&rcc I2C6_K>;
1486			resets = <&rcc I2C6_R>;
1487			#address-cells = <1>;
1488			#size-cells = <0>;
1489			status = "disabled";
1490		};
1491	};
1492
1493	mlahb {
1494		compatible = "simple-bus";
1495		#address-cells = <1>;
1496		#size-cells = <1>;
1497		dma-ranges = <0x00000000 0x38000000 0x10000>,
1498			     <0x10000000 0x10000000 0x60000>,
1499			     <0x30000000 0x30000000 0x60000>;
1500
1501		m4_rproc: m4@10000000 {
1502			compatible = "st,stm32mp1-m4";
1503			reg = <0x10000000 0x40000>,
1504			      <0x30000000 0x40000>,
1505			      <0x38000000 0x10000>;
1506			resets = <&rcc MCU_R>;
1507			st,syscfg-holdboot = <&rcc 0x10C 0x1>;
1508			st,syscfg-tz = <&rcc 0x000 0x1>;
1509			status = "disabled";
1510		};
1511	};
1512};