1*f126890aSEmmanuel Vadot/* 2*f126890aSEmmanuel Vadot * Copyright 2015 - Maxime Coquelin <mcoquelin.stm32@gmail.com> 3*f126890aSEmmanuel Vadot * 4*f126890aSEmmanuel Vadot * This file is dual-licensed: you can use it either under the terms 5*f126890aSEmmanuel Vadot * of the GPL or the X11 license, at your option. Note that this dual 6*f126890aSEmmanuel Vadot * licensing only applies to this file, and not this project as a 7*f126890aSEmmanuel Vadot * whole. 8*f126890aSEmmanuel Vadot * 9*f126890aSEmmanuel Vadot * a) This file is free software; you can redistribute it and/or 10*f126890aSEmmanuel Vadot * modify it under the terms of the GNU General Public License as 11*f126890aSEmmanuel Vadot * published by the Free Software Foundation; either version 2 of the 12*f126890aSEmmanuel Vadot * License, or (at your option) any later version. 13*f126890aSEmmanuel Vadot * 14*f126890aSEmmanuel Vadot * This file is distributed in the hope that it will be useful, 15*f126890aSEmmanuel Vadot * but WITHOUT ANY WARRANTY; without even the implied warranty of 16*f126890aSEmmanuel Vadot * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17*f126890aSEmmanuel Vadot * GNU General Public License for more details. 18*f126890aSEmmanuel Vadot * 19*f126890aSEmmanuel Vadot * Or, alternatively, 20*f126890aSEmmanuel Vadot * 21*f126890aSEmmanuel Vadot * b) Permission is hereby granted, free of charge, to any person 22*f126890aSEmmanuel Vadot * obtaining a copy of this software and associated documentation 23*f126890aSEmmanuel Vadot * files (the "Software"), to deal in the Software without 24*f126890aSEmmanuel Vadot * restriction, including without limitation the rights to use, 25*f126890aSEmmanuel Vadot * copy, modify, merge, publish, distribute, sublicense, and/or 26*f126890aSEmmanuel Vadot * sell copies of the Software, and to permit persons to whom the 27*f126890aSEmmanuel Vadot * Software is furnished to do so, subject to the following 28*f126890aSEmmanuel Vadot * conditions: 29*f126890aSEmmanuel Vadot * 30*f126890aSEmmanuel Vadot * The above copyright notice and this permission notice shall be 31*f126890aSEmmanuel Vadot * included in all copies or substantial portions of the Software. 32*f126890aSEmmanuel Vadot * 33*f126890aSEmmanuel Vadot * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 34*f126890aSEmmanuel Vadot * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 35*f126890aSEmmanuel Vadot * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 36*f126890aSEmmanuel Vadot * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 37*f126890aSEmmanuel Vadot * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 38*f126890aSEmmanuel Vadot * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 39*f126890aSEmmanuel Vadot * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 40*f126890aSEmmanuel Vadot * OTHER DEALINGS IN THE SOFTWARE. 41*f126890aSEmmanuel Vadot */ 42*f126890aSEmmanuel Vadot 43*f126890aSEmmanuel Vadot#include "../armv7-m.dtsi" 44*f126890aSEmmanuel Vadot#include <dt-bindings/clock/stm32fx-clock.h> 45*f126890aSEmmanuel Vadot#include <dt-bindings/mfd/stm32f7-rcc.h> 46*f126890aSEmmanuel Vadot 47*f126890aSEmmanuel Vadot/ { 48*f126890aSEmmanuel Vadot #address-cells = <1>; 49*f126890aSEmmanuel Vadot #size-cells = <1>; 50*f126890aSEmmanuel Vadot 51*f126890aSEmmanuel Vadot clocks { 52*f126890aSEmmanuel Vadot clk_hse: clk-hse { 53*f126890aSEmmanuel Vadot #clock-cells = <0>; 54*f126890aSEmmanuel Vadot compatible = "fixed-clock"; 55*f126890aSEmmanuel Vadot clock-frequency = <0>; 56*f126890aSEmmanuel Vadot }; 57*f126890aSEmmanuel Vadot 58*f126890aSEmmanuel Vadot clk-lse { 59*f126890aSEmmanuel Vadot #clock-cells = <0>; 60*f126890aSEmmanuel Vadot compatible = "fixed-clock"; 61*f126890aSEmmanuel Vadot clock-frequency = <32768>; 62*f126890aSEmmanuel Vadot }; 63*f126890aSEmmanuel Vadot 64*f126890aSEmmanuel Vadot clk-lsi { 65*f126890aSEmmanuel Vadot #clock-cells = <0>; 66*f126890aSEmmanuel Vadot compatible = "fixed-clock"; 67*f126890aSEmmanuel Vadot clock-frequency = <32000>; 68*f126890aSEmmanuel Vadot }; 69*f126890aSEmmanuel Vadot 70*f126890aSEmmanuel Vadot clk_i2s_ckin: clk-i2s-ckin { 71*f126890aSEmmanuel Vadot #clock-cells = <0>; 72*f126890aSEmmanuel Vadot compatible = "fixed-clock"; 73*f126890aSEmmanuel Vadot clock-frequency = <48000000>; 74*f126890aSEmmanuel Vadot }; 75*f126890aSEmmanuel Vadot }; 76*f126890aSEmmanuel Vadot 77*f126890aSEmmanuel Vadot soc { 78*f126890aSEmmanuel Vadot timers2: timers@40000000 { 79*f126890aSEmmanuel Vadot #address-cells = <1>; 80*f126890aSEmmanuel Vadot #size-cells = <0>; 81*f126890aSEmmanuel Vadot compatible = "st,stm32-timers"; 82*f126890aSEmmanuel Vadot reg = <0x40000000 0x400>; 83*f126890aSEmmanuel Vadot clocks = <&rcc 0 STM32F7_APB1_CLOCK(TIM2)>; 84*f126890aSEmmanuel Vadot clock-names = "int"; 85*f126890aSEmmanuel Vadot status = "disabled"; 86*f126890aSEmmanuel Vadot 87*f126890aSEmmanuel Vadot pwm { 88*f126890aSEmmanuel Vadot compatible = "st,stm32-pwm"; 89*f126890aSEmmanuel Vadot #pwm-cells = <3>; 90*f126890aSEmmanuel Vadot status = "disabled"; 91*f126890aSEmmanuel Vadot }; 92*f126890aSEmmanuel Vadot 93*f126890aSEmmanuel Vadot timer@1 { 94*f126890aSEmmanuel Vadot compatible = "st,stm32-timer-trigger"; 95*f126890aSEmmanuel Vadot reg = <1>; 96*f126890aSEmmanuel Vadot status = "disabled"; 97*f126890aSEmmanuel Vadot }; 98*f126890aSEmmanuel Vadot }; 99*f126890aSEmmanuel Vadot 100*f126890aSEmmanuel Vadot timers3: timers@40000400 { 101*f126890aSEmmanuel Vadot #address-cells = <1>; 102*f126890aSEmmanuel Vadot #size-cells = <0>; 103*f126890aSEmmanuel Vadot compatible = "st,stm32-timers"; 104*f126890aSEmmanuel Vadot reg = <0x40000400 0x400>; 105*f126890aSEmmanuel Vadot clocks = <&rcc 0 STM32F7_APB1_CLOCK(TIM3)>; 106*f126890aSEmmanuel Vadot clock-names = "int"; 107*f126890aSEmmanuel Vadot status = "disabled"; 108*f126890aSEmmanuel Vadot 109*f126890aSEmmanuel Vadot pwm { 110*f126890aSEmmanuel Vadot compatible = "st,stm32-pwm"; 111*f126890aSEmmanuel Vadot #pwm-cells = <3>; 112*f126890aSEmmanuel Vadot status = "disabled"; 113*f126890aSEmmanuel Vadot }; 114*f126890aSEmmanuel Vadot 115*f126890aSEmmanuel Vadot timer@2 { 116*f126890aSEmmanuel Vadot compatible = "st,stm32-timer-trigger"; 117*f126890aSEmmanuel Vadot reg = <2>; 118*f126890aSEmmanuel Vadot status = "disabled"; 119*f126890aSEmmanuel Vadot }; 120*f126890aSEmmanuel Vadot }; 121*f126890aSEmmanuel Vadot 122*f126890aSEmmanuel Vadot timers4: timers@40000800 { 123*f126890aSEmmanuel Vadot #address-cells = <1>; 124*f126890aSEmmanuel Vadot #size-cells = <0>; 125*f126890aSEmmanuel Vadot compatible = "st,stm32-timers"; 126*f126890aSEmmanuel Vadot reg = <0x40000800 0x400>; 127*f126890aSEmmanuel Vadot clocks = <&rcc 0 STM32F7_APB1_CLOCK(TIM4)>; 128*f126890aSEmmanuel Vadot clock-names = "int"; 129*f126890aSEmmanuel Vadot status = "disabled"; 130*f126890aSEmmanuel Vadot 131*f126890aSEmmanuel Vadot pwm { 132*f126890aSEmmanuel Vadot compatible = "st,stm32-pwm"; 133*f126890aSEmmanuel Vadot #pwm-cells = <3>; 134*f126890aSEmmanuel Vadot status = "disabled"; 135*f126890aSEmmanuel Vadot }; 136*f126890aSEmmanuel Vadot 137*f126890aSEmmanuel Vadot timer@3 { 138*f126890aSEmmanuel Vadot compatible = "st,stm32-timer-trigger"; 139*f126890aSEmmanuel Vadot reg = <3>; 140*f126890aSEmmanuel Vadot status = "disabled"; 141*f126890aSEmmanuel Vadot }; 142*f126890aSEmmanuel Vadot }; 143*f126890aSEmmanuel Vadot 144*f126890aSEmmanuel Vadot timers5: timers@40000c00 { 145*f126890aSEmmanuel Vadot #address-cells = <1>; 146*f126890aSEmmanuel Vadot #size-cells = <0>; 147*f126890aSEmmanuel Vadot compatible = "st,stm32-timers"; 148*f126890aSEmmanuel Vadot reg = <0x40000C00 0x400>; 149*f126890aSEmmanuel Vadot clocks = <&rcc 0 STM32F7_APB1_CLOCK(TIM5)>; 150*f126890aSEmmanuel Vadot clock-names = "int"; 151*f126890aSEmmanuel Vadot status = "disabled"; 152*f126890aSEmmanuel Vadot 153*f126890aSEmmanuel Vadot pwm { 154*f126890aSEmmanuel Vadot compatible = "st,stm32-pwm"; 155*f126890aSEmmanuel Vadot #pwm-cells = <3>; 156*f126890aSEmmanuel Vadot status = "disabled"; 157*f126890aSEmmanuel Vadot }; 158*f126890aSEmmanuel Vadot 159*f126890aSEmmanuel Vadot timer@4 { 160*f126890aSEmmanuel Vadot compatible = "st,stm32-timer-trigger"; 161*f126890aSEmmanuel Vadot reg = <4>; 162*f126890aSEmmanuel Vadot status = "disabled"; 163*f126890aSEmmanuel Vadot }; 164*f126890aSEmmanuel Vadot }; 165*f126890aSEmmanuel Vadot 166*f126890aSEmmanuel Vadot timers6: timers@40001000 { 167*f126890aSEmmanuel Vadot #address-cells = <1>; 168*f126890aSEmmanuel Vadot #size-cells = <0>; 169*f126890aSEmmanuel Vadot compatible = "st,stm32-timers"; 170*f126890aSEmmanuel Vadot reg = <0x40001000 0x400>; 171*f126890aSEmmanuel Vadot clocks = <&rcc 0 STM32F7_APB1_CLOCK(TIM6)>; 172*f126890aSEmmanuel Vadot clock-names = "int"; 173*f126890aSEmmanuel Vadot status = "disabled"; 174*f126890aSEmmanuel Vadot 175*f126890aSEmmanuel Vadot timer@5 { 176*f126890aSEmmanuel Vadot compatible = "st,stm32-timer-trigger"; 177*f126890aSEmmanuel Vadot reg = <5>; 178*f126890aSEmmanuel Vadot status = "disabled"; 179*f126890aSEmmanuel Vadot }; 180*f126890aSEmmanuel Vadot }; 181*f126890aSEmmanuel Vadot 182*f126890aSEmmanuel Vadot timers7: timers@40001400 { 183*f126890aSEmmanuel Vadot #address-cells = <1>; 184*f126890aSEmmanuel Vadot #size-cells = <0>; 185*f126890aSEmmanuel Vadot compatible = "st,stm32-timers"; 186*f126890aSEmmanuel Vadot reg = <0x40001400 0x400>; 187*f126890aSEmmanuel Vadot clocks = <&rcc 0 STM32F7_APB1_CLOCK(TIM7)>; 188*f126890aSEmmanuel Vadot clock-names = "int"; 189*f126890aSEmmanuel Vadot status = "disabled"; 190*f126890aSEmmanuel Vadot 191*f126890aSEmmanuel Vadot timer@6 { 192*f126890aSEmmanuel Vadot compatible = "st,stm32-timer-trigger"; 193*f126890aSEmmanuel Vadot reg = <6>; 194*f126890aSEmmanuel Vadot status = "disabled"; 195*f126890aSEmmanuel Vadot }; 196*f126890aSEmmanuel Vadot }; 197*f126890aSEmmanuel Vadot 198*f126890aSEmmanuel Vadot timers12: timers@40001800 { 199*f126890aSEmmanuel Vadot #address-cells = <1>; 200*f126890aSEmmanuel Vadot #size-cells = <0>; 201*f126890aSEmmanuel Vadot compatible = "st,stm32-timers"; 202*f126890aSEmmanuel Vadot reg = <0x40001800 0x400>; 203*f126890aSEmmanuel Vadot clocks = <&rcc 0 STM32F7_APB1_CLOCK(TIM12)>; 204*f126890aSEmmanuel Vadot clock-names = "int"; 205*f126890aSEmmanuel Vadot status = "disabled"; 206*f126890aSEmmanuel Vadot 207*f126890aSEmmanuel Vadot pwm { 208*f126890aSEmmanuel Vadot compatible = "st,stm32-pwm"; 209*f126890aSEmmanuel Vadot #pwm-cells = <3>; 210*f126890aSEmmanuel Vadot status = "disabled"; 211*f126890aSEmmanuel Vadot }; 212*f126890aSEmmanuel Vadot 213*f126890aSEmmanuel Vadot timer@11 { 214*f126890aSEmmanuel Vadot compatible = "st,stm32-timer-trigger"; 215*f126890aSEmmanuel Vadot reg = <11>; 216*f126890aSEmmanuel Vadot status = "disabled"; 217*f126890aSEmmanuel Vadot }; 218*f126890aSEmmanuel Vadot }; 219*f126890aSEmmanuel Vadot 220*f126890aSEmmanuel Vadot timers13: timers@40001c00 { 221*f126890aSEmmanuel Vadot compatible = "st,stm32-timers"; 222*f126890aSEmmanuel Vadot reg = <0x40001C00 0x400>; 223*f126890aSEmmanuel Vadot clocks = <&rcc 0 STM32F7_APB1_CLOCK(TIM13)>; 224*f126890aSEmmanuel Vadot clock-names = "int"; 225*f126890aSEmmanuel Vadot status = "disabled"; 226*f126890aSEmmanuel Vadot 227*f126890aSEmmanuel Vadot pwm { 228*f126890aSEmmanuel Vadot compatible = "st,stm32-pwm"; 229*f126890aSEmmanuel Vadot #pwm-cells = <3>; 230*f126890aSEmmanuel Vadot status = "disabled"; 231*f126890aSEmmanuel Vadot }; 232*f126890aSEmmanuel Vadot }; 233*f126890aSEmmanuel Vadot 234*f126890aSEmmanuel Vadot timers14: timers@40002000 { 235*f126890aSEmmanuel Vadot compatible = "st,stm32-timers"; 236*f126890aSEmmanuel Vadot reg = <0x40002000 0x400>; 237*f126890aSEmmanuel Vadot clocks = <&rcc 0 STM32F7_APB1_CLOCK(TIM14)>; 238*f126890aSEmmanuel Vadot clock-names = "int"; 239*f126890aSEmmanuel Vadot status = "disabled"; 240*f126890aSEmmanuel Vadot 241*f126890aSEmmanuel Vadot pwm { 242*f126890aSEmmanuel Vadot compatible = "st,stm32-pwm"; 243*f126890aSEmmanuel Vadot #pwm-cells = <3>; 244*f126890aSEmmanuel Vadot status = "disabled"; 245*f126890aSEmmanuel Vadot }; 246*f126890aSEmmanuel Vadot }; 247*f126890aSEmmanuel Vadot 248*f126890aSEmmanuel Vadot rtc: rtc@40002800 { 249*f126890aSEmmanuel Vadot compatible = "st,stm32-rtc"; 250*f126890aSEmmanuel Vadot reg = <0x40002800 0x400>; 251*f126890aSEmmanuel Vadot clocks = <&rcc 1 CLK_RTC>; 252*f126890aSEmmanuel Vadot assigned-clocks = <&rcc 1 CLK_RTC>; 253*f126890aSEmmanuel Vadot assigned-clock-parents = <&rcc 1 CLK_LSE>; 254*f126890aSEmmanuel Vadot interrupt-parent = <&exti>; 255*f126890aSEmmanuel Vadot interrupts = <17 1>; 256*f126890aSEmmanuel Vadot st,syscfg = <&pwrcfg 0x00 0x100>; 257*f126890aSEmmanuel Vadot status = "disabled"; 258*f126890aSEmmanuel Vadot }; 259*f126890aSEmmanuel Vadot 260*f126890aSEmmanuel Vadot usart2: serial@40004400 { 261*f126890aSEmmanuel Vadot compatible = "st,stm32f7-uart"; 262*f126890aSEmmanuel Vadot reg = <0x40004400 0x400>; 263*f126890aSEmmanuel Vadot interrupts = <38>; 264*f126890aSEmmanuel Vadot clocks = <&rcc 1 CLK_USART2>; 265*f126890aSEmmanuel Vadot status = "disabled"; 266*f126890aSEmmanuel Vadot }; 267*f126890aSEmmanuel Vadot 268*f126890aSEmmanuel Vadot usart3: serial@40004800 { 269*f126890aSEmmanuel Vadot compatible = "st,stm32f7-uart"; 270*f126890aSEmmanuel Vadot reg = <0x40004800 0x400>; 271*f126890aSEmmanuel Vadot interrupts = <39>; 272*f126890aSEmmanuel Vadot clocks = <&rcc 1 CLK_USART3>; 273*f126890aSEmmanuel Vadot status = "disabled"; 274*f126890aSEmmanuel Vadot }; 275*f126890aSEmmanuel Vadot 276*f126890aSEmmanuel Vadot usart4: serial@40004c00 { 277*f126890aSEmmanuel Vadot compatible = "st,stm32f7-uart"; 278*f126890aSEmmanuel Vadot reg = <0x40004c00 0x400>; 279*f126890aSEmmanuel Vadot interrupts = <52>; 280*f126890aSEmmanuel Vadot clocks = <&rcc 1 CLK_UART4>; 281*f126890aSEmmanuel Vadot status = "disabled"; 282*f126890aSEmmanuel Vadot }; 283*f126890aSEmmanuel Vadot 284*f126890aSEmmanuel Vadot usart5: serial@40005000 { 285*f126890aSEmmanuel Vadot compatible = "st,stm32f7-uart"; 286*f126890aSEmmanuel Vadot reg = <0x40005000 0x400>; 287*f126890aSEmmanuel Vadot interrupts = <53>; 288*f126890aSEmmanuel Vadot clocks = <&rcc 1 CLK_UART5>; 289*f126890aSEmmanuel Vadot status = "disabled"; 290*f126890aSEmmanuel Vadot }; 291*f126890aSEmmanuel Vadot 292*f126890aSEmmanuel Vadot i2c1: i2c@40005400 { 293*f126890aSEmmanuel Vadot compatible = "st,stm32f7-i2c"; 294*f126890aSEmmanuel Vadot reg = <0x40005400 0x400>; 295*f126890aSEmmanuel Vadot interrupts = <31>, 296*f126890aSEmmanuel Vadot <32>; 297*f126890aSEmmanuel Vadot resets = <&rcc STM32F7_APB1_RESET(I2C1)>; 298*f126890aSEmmanuel Vadot clocks = <&rcc 1 CLK_I2C1>; 299*f126890aSEmmanuel Vadot #address-cells = <1>; 300*f126890aSEmmanuel Vadot #size-cells = <0>; 301*f126890aSEmmanuel Vadot status = "disabled"; 302*f126890aSEmmanuel Vadot }; 303*f126890aSEmmanuel Vadot 304*f126890aSEmmanuel Vadot i2c2: i2c@40005800 { 305*f126890aSEmmanuel Vadot compatible = "st,stm32f7-i2c"; 306*f126890aSEmmanuel Vadot reg = <0x40005800 0x400>; 307*f126890aSEmmanuel Vadot interrupts = <33>, 308*f126890aSEmmanuel Vadot <34>; 309*f126890aSEmmanuel Vadot resets = <&rcc STM32F7_APB1_RESET(I2C2)>; 310*f126890aSEmmanuel Vadot clocks = <&rcc 1 CLK_I2C2>; 311*f126890aSEmmanuel Vadot #address-cells = <1>; 312*f126890aSEmmanuel Vadot #size-cells = <0>; 313*f126890aSEmmanuel Vadot status = "disabled"; 314*f126890aSEmmanuel Vadot }; 315*f126890aSEmmanuel Vadot 316*f126890aSEmmanuel Vadot i2c3: i2c@40005c00 { 317*f126890aSEmmanuel Vadot compatible = "st,stm32f7-i2c"; 318*f126890aSEmmanuel Vadot reg = <0x40005c00 0x400>; 319*f126890aSEmmanuel Vadot interrupts = <72>, 320*f126890aSEmmanuel Vadot <73>; 321*f126890aSEmmanuel Vadot resets = <&rcc STM32F7_APB1_RESET(I2C3)>; 322*f126890aSEmmanuel Vadot clocks = <&rcc 1 CLK_I2C3>; 323*f126890aSEmmanuel Vadot #address-cells = <1>; 324*f126890aSEmmanuel Vadot #size-cells = <0>; 325*f126890aSEmmanuel Vadot status = "disabled"; 326*f126890aSEmmanuel Vadot }; 327*f126890aSEmmanuel Vadot 328*f126890aSEmmanuel Vadot i2c4: i2c@40006000 { 329*f126890aSEmmanuel Vadot compatible = "st,stm32f7-i2c"; 330*f126890aSEmmanuel Vadot reg = <0x40006000 0x400>; 331*f126890aSEmmanuel Vadot interrupts = <95>, 332*f126890aSEmmanuel Vadot <96>; 333*f126890aSEmmanuel Vadot resets = <&rcc STM32F7_APB1_RESET(I2C4)>; 334*f126890aSEmmanuel Vadot clocks = <&rcc 1 CLK_I2C4>; 335*f126890aSEmmanuel Vadot #address-cells = <1>; 336*f126890aSEmmanuel Vadot #size-cells = <0>; 337*f126890aSEmmanuel Vadot status = "disabled"; 338*f126890aSEmmanuel Vadot }; 339*f126890aSEmmanuel Vadot 340*f126890aSEmmanuel Vadot cec: cec@40006c00 { 341*f126890aSEmmanuel Vadot compatible = "st,stm32-cec"; 342*f126890aSEmmanuel Vadot reg = <0x40006C00 0x400>; 343*f126890aSEmmanuel Vadot interrupts = <94>; 344*f126890aSEmmanuel Vadot clocks = <&rcc 0 STM32F7_APB1_CLOCK(CEC)>, <&rcc 1 CLK_HDMI_CEC>; 345*f126890aSEmmanuel Vadot clock-names = "cec", "hdmi-cec"; 346*f126890aSEmmanuel Vadot status = "disabled"; 347*f126890aSEmmanuel Vadot }; 348*f126890aSEmmanuel Vadot 349*f126890aSEmmanuel Vadot usart7: serial@40007800 { 350*f126890aSEmmanuel Vadot compatible = "st,stm32f7-uart"; 351*f126890aSEmmanuel Vadot reg = <0x40007800 0x400>; 352*f126890aSEmmanuel Vadot interrupts = <82>; 353*f126890aSEmmanuel Vadot clocks = <&rcc 1 CLK_UART7>; 354*f126890aSEmmanuel Vadot status = "disabled"; 355*f126890aSEmmanuel Vadot }; 356*f126890aSEmmanuel Vadot 357*f126890aSEmmanuel Vadot usart8: serial@40007c00 { 358*f126890aSEmmanuel Vadot compatible = "st,stm32f7-uart"; 359*f126890aSEmmanuel Vadot reg = <0x40007c00 0x400>; 360*f126890aSEmmanuel Vadot interrupts = <83>; 361*f126890aSEmmanuel Vadot clocks = <&rcc 1 CLK_UART8>; 362*f126890aSEmmanuel Vadot status = "disabled"; 363*f126890aSEmmanuel Vadot }; 364*f126890aSEmmanuel Vadot 365*f126890aSEmmanuel Vadot timers1: timers@40010000 { 366*f126890aSEmmanuel Vadot #address-cells = <1>; 367*f126890aSEmmanuel Vadot #size-cells = <0>; 368*f126890aSEmmanuel Vadot compatible = "st,stm32-timers"; 369*f126890aSEmmanuel Vadot reg = <0x40010000 0x400>; 370*f126890aSEmmanuel Vadot clocks = <&rcc 0 STM32F7_APB2_CLOCK(TIM1)>; 371*f126890aSEmmanuel Vadot clock-names = "int"; 372*f126890aSEmmanuel Vadot status = "disabled"; 373*f126890aSEmmanuel Vadot 374*f126890aSEmmanuel Vadot pwm { 375*f126890aSEmmanuel Vadot compatible = "st,stm32-pwm"; 376*f126890aSEmmanuel Vadot #pwm-cells = <3>; 377*f126890aSEmmanuel Vadot status = "disabled"; 378*f126890aSEmmanuel Vadot }; 379*f126890aSEmmanuel Vadot 380*f126890aSEmmanuel Vadot timer@0 { 381*f126890aSEmmanuel Vadot compatible = "st,stm32-timer-trigger"; 382*f126890aSEmmanuel Vadot reg = <0>; 383*f126890aSEmmanuel Vadot status = "disabled"; 384*f126890aSEmmanuel Vadot }; 385*f126890aSEmmanuel Vadot }; 386*f126890aSEmmanuel Vadot 387*f126890aSEmmanuel Vadot timers8: timers@40010400 { 388*f126890aSEmmanuel Vadot #address-cells = <1>; 389*f126890aSEmmanuel Vadot #size-cells = <0>; 390*f126890aSEmmanuel Vadot compatible = "st,stm32-timers"; 391*f126890aSEmmanuel Vadot reg = <0x40010400 0x400>; 392*f126890aSEmmanuel Vadot clocks = <&rcc 0 STM32F7_APB2_CLOCK(TIM8)>; 393*f126890aSEmmanuel Vadot clock-names = "int"; 394*f126890aSEmmanuel Vadot status = "disabled"; 395*f126890aSEmmanuel Vadot 396*f126890aSEmmanuel Vadot pwm { 397*f126890aSEmmanuel Vadot compatible = "st,stm32-pwm"; 398*f126890aSEmmanuel Vadot #pwm-cells = <3>; 399*f126890aSEmmanuel Vadot status = "disabled"; 400*f126890aSEmmanuel Vadot }; 401*f126890aSEmmanuel Vadot 402*f126890aSEmmanuel Vadot timer@7 { 403*f126890aSEmmanuel Vadot compatible = "st,stm32-timer-trigger"; 404*f126890aSEmmanuel Vadot reg = <7>; 405*f126890aSEmmanuel Vadot status = "disabled"; 406*f126890aSEmmanuel Vadot }; 407*f126890aSEmmanuel Vadot }; 408*f126890aSEmmanuel Vadot 409*f126890aSEmmanuel Vadot usart1: serial@40011000 { 410*f126890aSEmmanuel Vadot compatible = "st,stm32f7-uart"; 411*f126890aSEmmanuel Vadot reg = <0x40011000 0x400>; 412*f126890aSEmmanuel Vadot interrupts = <37>; 413*f126890aSEmmanuel Vadot clocks = <&rcc 1 CLK_USART1>; 414*f126890aSEmmanuel Vadot status = "disabled"; 415*f126890aSEmmanuel Vadot }; 416*f126890aSEmmanuel Vadot 417*f126890aSEmmanuel Vadot usart6: serial@40011400 { 418*f126890aSEmmanuel Vadot compatible = "st,stm32f7-uart"; 419*f126890aSEmmanuel Vadot reg = <0x40011400 0x400>; 420*f126890aSEmmanuel Vadot interrupts = <71>; 421*f126890aSEmmanuel Vadot clocks = <&rcc 1 CLK_USART6>; 422*f126890aSEmmanuel Vadot status = "disabled"; 423*f126890aSEmmanuel Vadot }; 424*f126890aSEmmanuel Vadot 425*f126890aSEmmanuel Vadot sdio2: mmc@40011c00 { 426*f126890aSEmmanuel Vadot compatible = "arm,pl180", "arm,primecell"; 427*f126890aSEmmanuel Vadot arm,primecell-periphid = <0x00880180>; 428*f126890aSEmmanuel Vadot reg = <0x40011c00 0x400>; 429*f126890aSEmmanuel Vadot clocks = <&rcc 0 STM32F7_APB2_CLOCK(SDMMC2)>; 430*f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 431*f126890aSEmmanuel Vadot interrupts = <103>; 432*f126890aSEmmanuel Vadot max-frequency = <48000000>; 433*f126890aSEmmanuel Vadot status = "disabled"; 434*f126890aSEmmanuel Vadot }; 435*f126890aSEmmanuel Vadot 436*f126890aSEmmanuel Vadot sdio1: mmc@40012c00 { 437*f126890aSEmmanuel Vadot compatible = "arm,pl180", "arm,primecell"; 438*f126890aSEmmanuel Vadot arm,primecell-periphid = <0x00880180>; 439*f126890aSEmmanuel Vadot reg = <0x40012c00 0x400>; 440*f126890aSEmmanuel Vadot clocks = <&rcc 0 STM32F7_APB2_CLOCK(SDMMC1)>; 441*f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 442*f126890aSEmmanuel Vadot interrupts = <49>; 443*f126890aSEmmanuel Vadot max-frequency = <48000000>; 444*f126890aSEmmanuel Vadot status = "disabled"; 445*f126890aSEmmanuel Vadot }; 446*f126890aSEmmanuel Vadot 447*f126890aSEmmanuel Vadot syscfg: syscon@40013800 { 448*f126890aSEmmanuel Vadot compatible = "st,stm32-syscfg", "syscon"; 449*f126890aSEmmanuel Vadot reg = <0x40013800 0x400>; 450*f126890aSEmmanuel Vadot }; 451*f126890aSEmmanuel Vadot 452*f126890aSEmmanuel Vadot exti: interrupt-controller@40013c00 { 453*f126890aSEmmanuel Vadot compatible = "st,stm32-exti"; 454*f126890aSEmmanuel Vadot interrupt-controller; 455*f126890aSEmmanuel Vadot #interrupt-cells = <2>; 456*f126890aSEmmanuel Vadot reg = <0x40013C00 0x400>; 457*f126890aSEmmanuel Vadot interrupts = <1>, <2>, <3>, <6>, <7>, <8>, <9>, <10>, <23>, <40>, <41>, <42>, <62>, <76>; 458*f126890aSEmmanuel Vadot }; 459*f126890aSEmmanuel Vadot 460*f126890aSEmmanuel Vadot timers9: timers@40014000 { 461*f126890aSEmmanuel Vadot #address-cells = <1>; 462*f126890aSEmmanuel Vadot #size-cells = <0>; 463*f126890aSEmmanuel Vadot compatible = "st,stm32-timers"; 464*f126890aSEmmanuel Vadot reg = <0x40014000 0x400>; 465*f126890aSEmmanuel Vadot clocks = <&rcc 0 STM32F7_APB2_CLOCK(TIM9)>; 466*f126890aSEmmanuel Vadot clock-names = "int"; 467*f126890aSEmmanuel Vadot status = "disabled"; 468*f126890aSEmmanuel Vadot 469*f126890aSEmmanuel Vadot pwm { 470*f126890aSEmmanuel Vadot compatible = "st,stm32-pwm"; 471*f126890aSEmmanuel Vadot #pwm-cells = <3>; 472*f126890aSEmmanuel Vadot status = "disabled"; 473*f126890aSEmmanuel Vadot }; 474*f126890aSEmmanuel Vadot 475*f126890aSEmmanuel Vadot timer@8 { 476*f126890aSEmmanuel Vadot compatible = "st,stm32-timer-trigger"; 477*f126890aSEmmanuel Vadot reg = <8>; 478*f126890aSEmmanuel Vadot status = "disabled"; 479*f126890aSEmmanuel Vadot }; 480*f126890aSEmmanuel Vadot }; 481*f126890aSEmmanuel Vadot 482*f126890aSEmmanuel Vadot timers10: timers@40014400 { 483*f126890aSEmmanuel Vadot compatible = "st,stm32-timers"; 484*f126890aSEmmanuel Vadot reg = <0x40014400 0x400>; 485*f126890aSEmmanuel Vadot clocks = <&rcc 0 STM32F7_APB2_CLOCK(TIM10)>; 486*f126890aSEmmanuel Vadot clock-names = "int"; 487*f126890aSEmmanuel Vadot status = "disabled"; 488*f126890aSEmmanuel Vadot 489*f126890aSEmmanuel Vadot pwm { 490*f126890aSEmmanuel Vadot compatible = "st,stm32-pwm"; 491*f126890aSEmmanuel Vadot #pwm-cells = <3>; 492*f126890aSEmmanuel Vadot status = "disabled"; 493*f126890aSEmmanuel Vadot }; 494*f126890aSEmmanuel Vadot }; 495*f126890aSEmmanuel Vadot 496*f126890aSEmmanuel Vadot timers11: timers@40014800 { 497*f126890aSEmmanuel Vadot compatible = "st,stm32-timers"; 498*f126890aSEmmanuel Vadot reg = <0x40014800 0x400>; 499*f126890aSEmmanuel Vadot clocks = <&rcc 0 STM32F7_APB2_CLOCK(TIM11)>; 500*f126890aSEmmanuel Vadot clock-names = "int"; 501*f126890aSEmmanuel Vadot status = "disabled"; 502*f126890aSEmmanuel Vadot 503*f126890aSEmmanuel Vadot pwm { 504*f126890aSEmmanuel Vadot compatible = "st,stm32-pwm"; 505*f126890aSEmmanuel Vadot #pwm-cells = <3>; 506*f126890aSEmmanuel Vadot status = "disabled"; 507*f126890aSEmmanuel Vadot }; 508*f126890aSEmmanuel Vadot }; 509*f126890aSEmmanuel Vadot 510*f126890aSEmmanuel Vadot pwrcfg: power-config@40007000 { 511*f126890aSEmmanuel Vadot compatible = "st,stm32-power-config", "syscon"; 512*f126890aSEmmanuel Vadot reg = <0x40007000 0x400>; 513*f126890aSEmmanuel Vadot }; 514*f126890aSEmmanuel Vadot 515*f126890aSEmmanuel Vadot crc: crc@40023000 { 516*f126890aSEmmanuel Vadot compatible = "st,stm32f7-crc"; 517*f126890aSEmmanuel Vadot reg = <0x40023000 0x400>; 518*f126890aSEmmanuel Vadot clocks = <&rcc 0 STM32F7_AHB1_CLOCK(CRC)>; 519*f126890aSEmmanuel Vadot status = "disabled"; 520*f126890aSEmmanuel Vadot }; 521*f126890aSEmmanuel Vadot 522*f126890aSEmmanuel Vadot rcc: rcc@40023800 { 523*f126890aSEmmanuel Vadot #reset-cells = <1>; 524*f126890aSEmmanuel Vadot #clock-cells = <2>; 525*f126890aSEmmanuel Vadot compatible = "st,stm32f746-rcc", "st,stm32-rcc"; 526*f126890aSEmmanuel Vadot reg = <0x40023800 0x400>; 527*f126890aSEmmanuel Vadot clocks = <&clk_hse>, <&clk_i2s_ckin>; 528*f126890aSEmmanuel Vadot st,syscfg = <&pwrcfg>; 529*f126890aSEmmanuel Vadot assigned-clocks = <&rcc 1 CLK_HSE_RTC>; 530*f126890aSEmmanuel Vadot assigned-clock-rates = <1000000>; 531*f126890aSEmmanuel Vadot }; 532*f126890aSEmmanuel Vadot 533*f126890aSEmmanuel Vadot dma1: dma-controller@40026000 { 534*f126890aSEmmanuel Vadot compatible = "st,stm32-dma"; 535*f126890aSEmmanuel Vadot reg = <0x40026000 0x400>; 536*f126890aSEmmanuel Vadot interrupts = <11>, 537*f126890aSEmmanuel Vadot <12>, 538*f126890aSEmmanuel Vadot <13>, 539*f126890aSEmmanuel Vadot <14>, 540*f126890aSEmmanuel Vadot <15>, 541*f126890aSEmmanuel Vadot <16>, 542*f126890aSEmmanuel Vadot <17>, 543*f126890aSEmmanuel Vadot <47>; 544*f126890aSEmmanuel Vadot clocks = <&rcc 0 STM32F7_AHB1_CLOCK(DMA1)>; 545*f126890aSEmmanuel Vadot #dma-cells = <4>; 546*f126890aSEmmanuel Vadot status = "disabled"; 547*f126890aSEmmanuel Vadot }; 548*f126890aSEmmanuel Vadot 549*f126890aSEmmanuel Vadot dma2: dma-controller@40026400 { 550*f126890aSEmmanuel Vadot compatible = "st,stm32-dma"; 551*f126890aSEmmanuel Vadot reg = <0x40026400 0x400>; 552*f126890aSEmmanuel Vadot interrupts = <56>, 553*f126890aSEmmanuel Vadot <57>, 554*f126890aSEmmanuel Vadot <58>, 555*f126890aSEmmanuel Vadot <59>, 556*f126890aSEmmanuel Vadot <60>, 557*f126890aSEmmanuel Vadot <68>, 558*f126890aSEmmanuel Vadot <69>, 559*f126890aSEmmanuel Vadot <70>; 560*f126890aSEmmanuel Vadot clocks = <&rcc 0 STM32F7_AHB1_CLOCK(DMA2)>; 561*f126890aSEmmanuel Vadot #dma-cells = <4>; 562*f126890aSEmmanuel Vadot st,mem2mem; 563*f126890aSEmmanuel Vadot status = "disabled"; 564*f126890aSEmmanuel Vadot }; 565*f126890aSEmmanuel Vadot 566*f126890aSEmmanuel Vadot usbotg_hs: usb@40040000 { 567*f126890aSEmmanuel Vadot compatible = "st,stm32f7-hsotg"; 568*f126890aSEmmanuel Vadot reg = <0x40040000 0x40000>; 569*f126890aSEmmanuel Vadot interrupts = <77>; 570*f126890aSEmmanuel Vadot clocks = <&rcc 0 STM32F7_AHB1_CLOCK(OTGHS)>; 571*f126890aSEmmanuel Vadot clock-names = "otg"; 572*f126890aSEmmanuel Vadot g-rx-fifo-size = <256>; 573*f126890aSEmmanuel Vadot g-np-tx-fifo-size = <32>; 574*f126890aSEmmanuel Vadot g-tx-fifo-size = <128 128 64 64 64 64 32 32>; 575*f126890aSEmmanuel Vadot status = "disabled"; 576*f126890aSEmmanuel Vadot }; 577*f126890aSEmmanuel Vadot 578*f126890aSEmmanuel Vadot usbotg_fs: usb@50000000 { 579*f126890aSEmmanuel Vadot compatible = "st,stm32f4x9-fsotg"; 580*f126890aSEmmanuel Vadot reg = <0x50000000 0x40000>; 581*f126890aSEmmanuel Vadot interrupts = <67>; 582*f126890aSEmmanuel Vadot clocks = <&rcc 0 STM32F7_AHB2_CLOCK(OTGFS)>; 583*f126890aSEmmanuel Vadot clock-names = "otg"; 584*f126890aSEmmanuel Vadot status = "disabled"; 585*f126890aSEmmanuel Vadot }; 586*f126890aSEmmanuel Vadot }; 587*f126890aSEmmanuel Vadot}; 588*f126890aSEmmanuel Vadot 589*f126890aSEmmanuel Vadot&systick { 590*f126890aSEmmanuel Vadot clocks = <&rcc 1 0>; 591*f126890aSEmmanuel Vadot status = "okay"; 592*f126890aSEmmanuel Vadot}; 593