Skip to content

Commit a9f4c40

Browse files
committed
boards: arm: stm32f746g_disco: add support for fmc
Update board device tree with FMC node Update board documentation - FMC pinout Signed-off-by: Jonathan Gonzaga <[email protected]>
1 parent 8d7a4f7 commit a9f4c40

File tree

3 files changed

+56
-0
lines changed

3 files changed

+56
-0
lines changed

boards/arm/stm32f746g_disco/doc/index.rst

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,8 @@ The Zephyr stm32f746g_disco board configuration supports the following hardware
116116
+-----------+------------+-------------------------------------+
117117
| QSPI NOR | on-chip | off-chip flash |
118118
+-----------+------------+-------------------------------------+
119+
| FMC | on-chip | memc (SDRAM) |
120+
+-----------+------------+-------------------------------------+
119121

120122
Other hardware features are not yet supported on Zephyr porting.
121123

@@ -147,6 +149,13 @@ configured as follows
147149
- LD1 : PI1
148150
- USB DM : PA11
149151
- USB DP : PA12
152+
- FMC SDRAM :
153+
- D0-D15 : PD14/PD15/PD0/PD1/PE7/PE8/PE9/PE10/PE11/PE12/PE13/PE14/PE15/PD8/PD9/PD10
154+
- A0-A11 : PF0/PF1/PF2/PF3/PF4/PF5/PF12/PF13/PF14/PF15/PG0/PG1
155+
- A14/A15 : PG4/PG5
156+
- SDNRAS/SDNCAS : PF11/PG15
157+
- NBL0/NBL1 : PE0/PE1
158+
- SDCLK/SDNWE/SDCKE0/SDNE0 : PG8/PH5/PC3/PH3
150159

151160
System Clock
152161
============

boards/arm/stm32f746g_disco/stm32f746g_disco.dts

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,13 @@
3838
};
3939
};
4040

41+
sdram1: sdram@c0000000 {
42+
compatible = "zephyr,memory-region", "mmio-sram";
43+
device_type = "memory";
44+
reg = <0xc0000000 DT_SIZE_M(16)>;
45+
zephyr,memory-region = "SDRAM1";
46+
};
47+
4148
aliases {
4249
led0 = &green_led_1;
4350
sw0 = &user_button;
@@ -185,3 +192,42 @@ zephyr_udc0: &usbotg_fs {
185192
};
186193
};
187194
};
195+
196+
&fmc {
197+
pinctrl-0 = <&fmc_nbl0_pe0 &fmc_nbl1_pe1
198+
&fmc_sdclk_pg8 &fmc_sdnwe_ph5 &fmc_sdcke0_pc3
199+
&fmc_sdne0_ph3 &fmc_sdnras_pf11 &fmc_sdncas_pg15
200+
201+
&fmc_a0_pf0 &fmc_a1_pf1 &fmc_a2_pf2 &fmc_a3_pf3 &fmc_a4_pf4
202+
&fmc_a5_pf5 &fmc_a6_pf12 &fmc_a7_pf13 &fmc_a8_pf14
203+
&fmc_a9_pf15 &fmc_a10_pg0 &fmc_a11_pg1
204+
&fmc_a14_pg4 &fmc_a15_pg5
205+
206+
&fmc_d0_pd14 &fmc_d1_pd15
207+
&fmc_d2_pd0 &fmc_d3_pd1 &fmc_d4_pe7 &fmc_d5_pe8 &fmc_d6_pe9
208+
&fmc_d7_pe10 &fmc_d8_pe11 &fmc_d9_pe12 &fmc_d10_pe13
209+
&fmc_d11_pe14 &fmc_d12_pe15 &fmc_d13_pd8 &fmc_d14_pd9
210+
&fmc_d15_pd10>;
211+
pinctrl-names = "default";
212+
status = "okay";
213+
214+
sdram {
215+
status = "okay";
216+
power-up-delay = <100>;
217+
num-auto-refresh = <8>;
218+
mode-register = <0x220>;
219+
refresh-rate = <0x603>;
220+
bank@0 {
221+
reg = <0>;
222+
st,sdram-control = <STM32_FMC_SDRAM_NC_8
223+
STM32_FMC_SDRAM_NR_12
224+
STM32_FMC_SDRAM_MWID_16
225+
STM32_FMC_SDRAM_NB_4
226+
STM32_FMC_SDRAM_CAS_2
227+
STM32_FMC_SDRAM_SDCLK_PERIOD_2
228+
STM32_FMC_SDRAM_RBURST_ENABLE
229+
STM32_FMC_SDRAM_RPIPE_0>;
230+
st,sdram-timing = <2 7 4 7 2 2 2>;
231+
};
232+
};
233+
};

boards/arm/stm32f746g_disco/stm32f746g_disco.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,3 +19,4 @@ supported:
1919
- sdhc
2020
- usb_device
2121
- kscan:touch
22+
- memc

0 commit comments

Comments
 (0)