1*791651e3SPatrice Chotard/* 2*791651e3SPatrice Chotard * Copyright (C) 2017, STMicroelectronics - All Rights Reserved 3*791651e3SPatrice Chotard * Author(s): Patrice Chotard, <patrice.chotard@st.com> for STMicroelectronics. 4*791651e3SPatrice Chotard * 5*791651e3SPatrice Chotard * SPDX-License-Identifier: GPL-2.0+ 6*791651e3SPatrice Chotard */ 7*791651e3SPatrice Chotard 8*791651e3SPatrice Chotard#include <dt-bindings/memory/stm32-sdram.h> 9*791651e3SPatrice Chotard/{ 10*791651e3SPatrice Chotard clocks { 11*791651e3SPatrice Chotard u-boot,dm-pre-reloc; 12*791651e3SPatrice Chotard }; 13*791651e3SPatrice Chotard 14*791651e3SPatrice Chotard aliases { 15*791651e3SPatrice Chotard /* Aliases for gpios so as to use sequence */ 16*791651e3SPatrice Chotard gpio0 = &gpioa; 17*791651e3SPatrice Chotard gpio1 = &gpiob; 18*791651e3SPatrice Chotard gpio2 = &gpioc; 19*791651e3SPatrice Chotard gpio3 = &gpiod; 20*791651e3SPatrice Chotard gpio4 = &gpioe; 21*791651e3SPatrice Chotard gpio5 = &gpiof; 22*791651e3SPatrice Chotard gpio6 = &gpiog; 23*791651e3SPatrice Chotard gpio7 = &gpioh; 24*791651e3SPatrice Chotard gpio8 = &gpioi; 25*791651e3SPatrice Chotard gpio9 = &gpioj; 26*791651e3SPatrice Chotard gpio10 = &gpiok; 27*791651e3SPatrice Chotard }; 28*791651e3SPatrice Chotard 29*791651e3SPatrice Chotard soc { 30*791651e3SPatrice Chotard u-boot,dm-pre-reloc; 31*791651e3SPatrice Chotard pin-controller { 32*791651e3SPatrice Chotard u-boot,dm-pre-reloc; 33*791651e3SPatrice Chotard }; 34*791651e3SPatrice Chotard 35*791651e3SPatrice Chotard fmc: fmc@A0000000 { 36*791651e3SPatrice Chotard compatible = "st,stm32-fmc"; 37*791651e3SPatrice Chotard reg = <0xA0000000 0x1000>; 38*791651e3SPatrice Chotard clocks = <&rcc 0 STM32F4_AHB3_CLOCK(FMC)>; 39*791651e3SPatrice Chotard pinctrl-0 = <&fmc_pins>; 40*791651e3SPatrice Chotard pinctrl-names = "default"; 41*791651e3SPatrice Chotard u-boot,dm-pre-reloc; 42*791651e3SPatrice Chotard 43*791651e3SPatrice Chotard /* 44*791651e3SPatrice Chotard * Memory configuration from sdram datasheet 45*791651e3SPatrice Chotard * IS42S16400J 46*791651e3SPatrice Chotard */ 47*791651e3SPatrice Chotard bank1: bank@1 { 48*791651e3SPatrice Chotard st,sdram-control = /bits/ 8 <NO_COL_8 49*791651e3SPatrice Chotard NO_ROW_12 50*791651e3SPatrice Chotard MWIDTH_16 51*791651e3SPatrice Chotard BANKS_4 52*791651e3SPatrice Chotard CAS_3 53*791651e3SPatrice Chotard SDCLK_2 54*791651e3SPatrice Chotard RD_BURST_EN 55*791651e3SPatrice Chotard RD_PIPE_DL_0>; 56*791651e3SPatrice Chotard st,sdram-timing = /bits/ 8 <TMRD_3 57*791651e3SPatrice Chotard TXSR_7 58*791651e3SPatrice Chotard TRAS_4 59*791651e3SPatrice Chotard TRC_6 60*791651e3SPatrice Chotard TWR_2 61*791651e3SPatrice Chotard TRP_2 TRCD_2>; 62*791651e3SPatrice Chotard st,sdram-refcount = < 1386 >; 63*791651e3SPatrice Chotard }; 64*791651e3SPatrice Chotard }; 65*791651e3SPatrice Chotard }; 66*791651e3SPatrice Chotard}; 67*791651e3SPatrice Chotard 68*791651e3SPatrice Chotard&clk_hse { 69*791651e3SPatrice Chotard u-boot,dm-pre-reloc; 70*791651e3SPatrice Chotard}; 71*791651e3SPatrice Chotard 72*791651e3SPatrice Chotard&clk_lse { 73*791651e3SPatrice Chotard u-boot,dm-pre-reloc; 74*791651e3SPatrice Chotard}; 75*791651e3SPatrice Chotard 76*791651e3SPatrice Chotard&clk_i2s_ckin { 77*791651e3SPatrice Chotard u-boot,dm-pre-reloc; 78*791651e3SPatrice Chotard}; 79*791651e3SPatrice Chotard 80*791651e3SPatrice Chotard&pwrcfg { 81*791651e3SPatrice Chotard u-boot,dm-pre-reloc; 82*791651e3SPatrice Chotard}; 83*791651e3SPatrice Chotard 84*791651e3SPatrice Chotard&rcc { 85*791651e3SPatrice Chotard u-boot,dm-pre-reloc; 86*791651e3SPatrice Chotard}; 87*791651e3SPatrice Chotard 88*791651e3SPatrice Chotard&gpioa { 89*791651e3SPatrice Chotard compatible = "st,stm32-gpio"; 90*791651e3SPatrice Chotard u-boot,dm-pre-reloc; 91*791651e3SPatrice Chotard}; 92*791651e3SPatrice Chotard 93*791651e3SPatrice Chotard&gpiob { 94*791651e3SPatrice Chotard compatible = "st,stm32-gpio"; 95*791651e3SPatrice Chotard u-boot,dm-pre-reloc; 96*791651e3SPatrice Chotard}; 97*791651e3SPatrice Chotard 98*791651e3SPatrice Chotard&gpioc { 99*791651e3SPatrice Chotard compatible = "st,stm32-gpio"; 100*791651e3SPatrice Chotard u-boot,dm-pre-reloc; 101*791651e3SPatrice Chotard}; 102*791651e3SPatrice Chotard 103*791651e3SPatrice Chotard&gpiod { 104*791651e3SPatrice Chotard compatible = "st,stm32-gpio"; 105*791651e3SPatrice Chotard u-boot,dm-pre-reloc; 106*791651e3SPatrice Chotard}; 107*791651e3SPatrice Chotard 108*791651e3SPatrice Chotard&gpioe { 109*791651e3SPatrice Chotard compatible = "st,stm32-gpio"; 110*791651e3SPatrice Chotard u-boot,dm-pre-reloc; 111*791651e3SPatrice Chotard}; 112*791651e3SPatrice Chotard 113*791651e3SPatrice Chotard&gpiof { 114*791651e3SPatrice Chotard compatible = "st,stm32-gpio"; 115*791651e3SPatrice Chotard u-boot,dm-pre-reloc; 116*791651e3SPatrice Chotard}; 117*791651e3SPatrice Chotard 118*791651e3SPatrice Chotard&gpiog { 119*791651e3SPatrice Chotard compatible = "st,stm32-gpio"; 120*791651e3SPatrice Chotard u-boot,dm-pre-reloc; 121*791651e3SPatrice Chotard}; 122*791651e3SPatrice Chotard 123*791651e3SPatrice Chotard&gpioh { 124*791651e3SPatrice Chotard compatible = "st,stm32-gpio"; 125*791651e3SPatrice Chotard u-boot,dm-pre-reloc; 126*791651e3SPatrice Chotard}; 127*791651e3SPatrice Chotard 128*791651e3SPatrice Chotard&gpioi { 129*791651e3SPatrice Chotard compatible = "st,stm32-gpio"; 130*791651e3SPatrice Chotard u-boot,dm-pre-reloc; 131*791651e3SPatrice Chotard}; 132*791651e3SPatrice Chotard 133*791651e3SPatrice Chotard&gpioj { 134*791651e3SPatrice Chotard compatible = "st,stm32-gpio"; 135*791651e3SPatrice Chotard u-boot,dm-pre-reloc; 136*791651e3SPatrice Chotard}; 137*791651e3SPatrice Chotard 138*791651e3SPatrice Chotard&gpiok { 139*791651e3SPatrice Chotard compatible = "st,stm32-gpio"; 140*791651e3SPatrice Chotard u-boot,dm-pre-reloc; 141*791651e3SPatrice Chotard}; 142*791651e3SPatrice Chotard 143*791651e3SPatrice Chotard&pinctrl { 144*791651e3SPatrice Chotard usart1_pins_a: usart1@0 { 145*791651e3SPatrice Chotard u-boot,dm-pre-reloc; 146*791651e3SPatrice Chotard pins1 { 147*791651e3SPatrice Chotard u-boot,dm-pre-reloc; 148*791651e3SPatrice Chotard }; 149*791651e3SPatrice Chotard pins2 { 150*791651e3SPatrice Chotard u-boot,dm-pre-reloc; 151*791651e3SPatrice Chotard }; 152*791651e3SPatrice Chotard }; 153*791651e3SPatrice Chotard 154*791651e3SPatrice Chotard fmc_pins: fmc@0 { 155*791651e3SPatrice Chotard u-boot,dm-pre-reloc; 156*791651e3SPatrice Chotard pins 157*791651e3SPatrice Chotard { 158*791651e3SPatrice Chotard pinmux = <STM32_PINMUX('D',10, AF12)>, /* D15 */ 159*791651e3SPatrice Chotard <STM32_PINMUX('D', 9, AF12)>, /* D14 */ 160*791651e3SPatrice Chotard <STM32_PINMUX('D', 8, AF12)>, /* D13 */ 161*791651e3SPatrice Chotard <STM32_PINMUX('E',15, AF12)>, /* D12 */ 162*791651e3SPatrice Chotard <STM32_PINMUX('E',14, AF12)>, /* D11 */ 163*791651e3SPatrice Chotard <STM32_PINMUX('E',13, AF12)>, /* D10 */ 164*791651e3SPatrice Chotard <STM32_PINMUX('E',12, AF12)>, /* D09 */ 165*791651e3SPatrice Chotard <STM32_PINMUX('E',11, AF12)>, /* D08 */ 166*791651e3SPatrice Chotard <STM32_PINMUX('E',10, AF12)>, /* D07 */ 167*791651e3SPatrice Chotard <STM32_PINMUX('E', 9, AF12)>, /* D06 */ 168*791651e3SPatrice Chotard <STM32_PINMUX('E', 8, AF12)>, /* D05 */ 169*791651e3SPatrice Chotard <STM32_PINMUX('E', 7, AF12)>, /* D04 */ 170*791651e3SPatrice Chotard <STM32_PINMUX('D', 1, AF12)>, /* D03 */ 171*791651e3SPatrice Chotard <STM32_PINMUX('D', 0, AF12)>, /* D02 */ 172*791651e3SPatrice Chotard <STM32_PINMUX('D',15, AF12)>, /* D01 */ 173*791651e3SPatrice Chotard <STM32_PINMUX('D',14, AF12)>, /* D00 */ 174*791651e3SPatrice Chotard 175*791651e3SPatrice Chotard <STM32_PINMUX('E', 0, AF12)>, /* NBL0 */ 176*791651e3SPatrice Chotard <STM32_PINMUX('E', 1, AF12)>, /* NBL1 */ 177*791651e3SPatrice Chotard 178*791651e3SPatrice Chotard <STM32_PINMUX('G', 5, AF12)>, /* BA1 */ 179*791651e3SPatrice Chotard <STM32_PINMUX('G', 4, AF12)>, /* BA0 */ 180*791651e3SPatrice Chotard 181*791651e3SPatrice Chotard <STM32_PINMUX('G', 1, AF12)>, /* A11 */ 182*791651e3SPatrice Chotard <STM32_PINMUX('G', 0, AF12)>, /* A10 */ 183*791651e3SPatrice Chotard <STM32_PINMUX('F',15, AF12)>, /* A09 */ 184*791651e3SPatrice Chotard <STM32_PINMUX('F',14, AF12)>, /* A08 */ 185*791651e3SPatrice Chotard <STM32_PINMUX('F',13, AF12)>, /* A07 */ 186*791651e3SPatrice Chotard <STM32_PINMUX('F',12, AF12)>, /* A06 */ 187*791651e3SPatrice Chotard <STM32_PINMUX('F', 5, AF12)>, /* A05 */ 188*791651e3SPatrice Chotard <STM32_PINMUX('F', 4, AF12)>, /* A04 */ 189*791651e3SPatrice Chotard <STM32_PINMUX('F', 3, AF12)>, /* A03 */ 190*791651e3SPatrice Chotard <STM32_PINMUX('F', 2, AF12)>, /* A02 */ 191*791651e3SPatrice Chotard <STM32_PINMUX('F', 1, AF12)>, /* A01 */ 192*791651e3SPatrice Chotard <STM32_PINMUX('F', 0, AF12)>, /* A00 */ 193*791651e3SPatrice Chotard 194*791651e3SPatrice Chotard <STM32_PINMUX('B', 6, AF12)>, /* SDNE1 */ 195*791651e3SPatrice Chotard <STM32_PINMUX('C', 0, AF12)>, /* SDNWE */ 196*791651e3SPatrice Chotard <STM32_PINMUX('F',11, AF12)>, /* SDNRAS */ 197*791651e3SPatrice Chotard <STM32_PINMUX('G',15, AF12)>, /* SDNCAS */ 198*791651e3SPatrice Chotard <STM32_PINMUX('B', 5, AF12)>, /* SDCKE1 */ 199*791651e3SPatrice Chotard <STM32_PINMUX('G', 8, AF12)>; /* SDCLK */ 200*791651e3SPatrice Chotard slew-rate = <2>; 201*791651e3SPatrice Chotard u-boot,dm-pre-reloc; 202*791651e3SPatrice Chotard }; 203*791651e3SPatrice Chotard }; 204*791651e3SPatrice Chotard}; 205