This is an automated email from the ASF dual-hosted git repository.
xiaoxiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git
The following commit(s) were added to refs/heads/master by this push:
new 0623300b49 boards/stm32h7: rework boards to not use
CONFIG_STM32H7_USE_LEGACY_PINMAP=y
0623300b49 is described below
commit 0623300b4919181fb4d48633d38cbc6286a8a948
Author: raiden00pl <[email protected]>
AuthorDate: Thu May 11 10:42:06 2023 +0200
boards/stm32h7: rework boards to not use CONFIG_STM32H7_USE_LEGACY_PINMAP=y
In reference to PR #8992
---
boards/arm/stm32h7/nucleo-h743zi/include/board.h | 6 +-
.../stm32h7/nucleo-h743zi2/configs/jumbo/defconfig | 1 +
.../nucleo-h743zi2/configs/netnsh/defconfig | 1 +
.../stm32h7/nucleo-h743zi2/configs/nsh/defconfig | 1 +
.../stm32h7/nucleo-h743zi2/configs/pysim/defconfig | 1 +
.../nucleo-h743zi2/configs/socketcan/defconfig | 1 +
boards/arm/stm32h7/nucleo-h743zi2/include/board.h | 90 ++++++++++++--------
.../stm32h7/stm32h747i-disco/configs/nsh/defconfig | 1 +
.../arm/stm32h7/stm32h747i-disco/include/board.h | 96 ++++++++++++++++------
9 files changed, 133 insertions(+), 65 deletions(-)
diff --git a/boards/arm/stm32h7/nucleo-h743zi/include/board.h
b/boards/arm/stm32h7/nucleo-h743zi/include/board.h
index 96c26a3ef9..6b8d91588b 100644
--- a/boards/arm/stm32h7/nucleo-h743zi/include/board.h
+++ b/boards/arm/stm32h7/nucleo-h743zi/include/board.h
@@ -371,9 +371,6 @@
#define GPIO_USART6_RX (GPIO_USART6_RX_2 | GPIO_SPEED_100MHz) /* PG9 */
#define GPIO_USART6_TX (GPIO_USART6_TX_2 | GPIO_SPEED_100MHz) /* PG14 */
-#define DMAMAP_USART6_RX DMAMAP_DMA12_USART6RX_1
-#define DMAMAP_USART6_TX DMAMAP_DMA12_USART6TX_0
-
/* I2C1 Use Nucleo I2C1 pins */
#define GPIO_I2C1_SCL (GPIO_I2C1_SCL_2 | GPIO_SPEED_50MHz) /* PB8 - D15 */
@@ -413,6 +410,9 @@
#define DMAMAP_SPI3_RX DMAMAP_DMA12_SPI3RX_0 /* DMA1 */
#define DMAMAP_SPI3_TX DMAMAP_DMA12_SPI3TX_0 /* DMA1 */
+#define DMAMAP_USART6_RX DMAMAP_DMA12_USART6RX_1
+#define DMAMAP_USART6_TX DMAMAP_DMA12_USART6TX_0
+
/****************************************************************************
* Public Data
****************************************************************************/
diff --git a/boards/arm/stm32h7/nucleo-h743zi2/configs/jumbo/defconfig
b/boards/arm/stm32h7/nucleo-h743zi2/configs/jumbo/defconfig
index ee6835a64d..a36685203c 100644
--- a/boards/arm/stm32h7/nucleo-h743zi2/configs/jumbo/defconfig
+++ b/boards/arm/stm32h7/nucleo-h743zi2/configs/jumbo/defconfig
@@ -7,6 +7,7 @@
#
# CONFIG_NSH_DISABLE_DATE is not set
# CONFIG_STANDARD_SERIAL is not set
+# CONFIG_STM32H7_USE_LEGACY_PINMAP is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD="nucleo-h743zi2"
CONFIG_ARCH_BOARD_NUCLEO_H743ZI2=y
diff --git a/boards/arm/stm32h7/nucleo-h743zi2/configs/netnsh/defconfig
b/boards/arm/stm32h7/nucleo-h743zi2/configs/netnsh/defconfig
index 92f9f34dd5..09d4781a5a 100644
--- a/boards/arm/stm32h7/nucleo-h743zi2/configs/netnsh/defconfig
+++ b/boards/arm/stm32h7/nucleo-h743zi2/configs/netnsh/defconfig
@@ -6,6 +6,7 @@
# modifications.
#
# CONFIG_STANDARD_SERIAL is not set
+# CONFIG_STM32H7_USE_LEGACY_PINMAP is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD="nucleo-h743zi2"
CONFIG_ARCH_BOARD_NUCLEO_H743ZI2=y
diff --git a/boards/arm/stm32h7/nucleo-h743zi2/configs/nsh/defconfig
b/boards/arm/stm32h7/nucleo-h743zi2/configs/nsh/defconfig
index 40e6743b06..334fad2dc2 100644
--- a/boards/arm/stm32h7/nucleo-h743zi2/configs/nsh/defconfig
+++ b/boards/arm/stm32h7/nucleo-h743zi2/configs/nsh/defconfig
@@ -8,6 +8,7 @@
# CONFIG_NSH_DISABLE_IFCONFIG is not set
# CONFIG_NSH_DISABLE_PS is not set
# CONFIG_STANDARD_SERIAL is not set
+# CONFIG_STM32H7_USE_LEGACY_PINMAP is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD="nucleo-h743zi2"
CONFIG_ARCH_BOARD_NUCLEO_H743ZI2=y
diff --git a/boards/arm/stm32h7/nucleo-h743zi2/configs/pysim/defconfig
b/boards/arm/stm32h7/nucleo-h743zi2/configs/pysim/defconfig
index f4f0f961dd..b1c9cb8516 100644
--- a/boards/arm/stm32h7/nucleo-h743zi2/configs/pysim/defconfig
+++ b/boards/arm/stm32h7/nucleo-h743zi2/configs/pysim/defconfig
@@ -6,6 +6,7 @@
# modifications.
#
# CONFIG_STANDARD_SERIAL is not set
+# CONFIG_STM32H7_USE_LEGACY_PINMAP is not set
CONFIG_ADC=y
CONFIG_ANALOG=y
CONFIG_ARCH="arm"
diff --git a/boards/arm/stm32h7/nucleo-h743zi2/configs/socketcan/defconfig
b/boards/arm/stm32h7/nucleo-h743zi2/configs/socketcan/defconfig
index 798bc06cea..4417237cb8 100644
--- a/boards/arm/stm32h7/nucleo-h743zi2/configs/socketcan/defconfig
+++ b/boards/arm/stm32h7/nucleo-h743zi2/configs/socketcan/defconfig
@@ -8,6 +8,7 @@
# CONFIG_NET_ETHERNET is not set
# CONFIG_NET_IPv4 is not set
# CONFIG_STANDARD_SERIAL is not set
+# CONFIG_STM32H7_USE_LEGACY_PINMAP is not set
CONFIG_ALLOW_GPL_COMPONENTS=y
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD="nucleo-h743zi2"
diff --git a/boards/arm/stm32h7/nucleo-h743zi2/include/board.h
b/boards/arm/stm32h7/nucleo-h743zi2/include/board.h
index 268b603688..d5c40cebd1 100644
--- a/boards/arm/stm32h7/nucleo-h743zi2/include/board.h
+++ b/boards/arm/stm32h7/nucleo-h743zi2/include/board.h
@@ -283,12 +283,6 @@
#define STM32_SDMMC_CLKCR_EDGE STM32_SDMMC_CLKCR_NEGEDGE
-/* Ethernet definitions *****************************************************/
-
-#define GPIO_ETH_RMII_TXD0 GPIO_ETH_RMII_TXD0_2 /* PG13 */
-#define GPIO_ETH_RMII_TXD1 GPIO_ETH_RMII_TXD1_1 /* PB 13 */
-#define GPIO_ETH_RMII_TX_EN GPIO_ETH_RMII_TX_EN_2
-
/* LED definitions **********************************************************/
/* The Nucleo-144 board has numerous LEDs but only three, LD1 a Green LED,
@@ -355,66 +349,92 @@
/* Alternate function pin selections ****************************************/
+/* ADC */
+
+#define GPIO_ADC12_INP5 GPIO_ADC12_INP5_0 /* PB1 */
+#define GPIO_ADC123_INP10 GPIO_ADC123_INP10_0 /* PC0 */
+#define GPIO_ADC123_INP12 GPIO_ADC123_INP12_0 /* PC2 */
+#define GPIO_ADC12_INP13 GPIO_ADC12_INP13_0 /* PC3 */
+#define GPIO_ADC12_INP15 GPIO_ADC12_INP15_0 /* PA3 */
+
/* USART3 (Nucleo Virtual Console) */
-#define GPIO_USART3_RX GPIO_USART3_RX_3 /* PD9 */
-#define GPIO_USART3_TX GPIO_USART3_TX_3 /* PD8 */
+#define GPIO_USART3_RX (GPIO_USART3_RX_3|GPIO_SPEED_100MHz) /* PD9 */
+#define GPIO_USART3_TX (GPIO_USART3_TX_3|GPIO_SPEED_100MHz) /* PD8 */
/* USART6 (Arduino Serial Shield) */
-#define GPIO_USART6_RX GPIO_USART6_RX_2 /* PG9 */
-#define GPIO_USART6_TX GPIO_USART6_TX_2 /* PG14 */
+#define GPIO_USART6_RX (GPIO_USART6_RX_2|GPIO_SPEED_100MHz) /* PG9 */
+#define GPIO_USART6_TX (GPIO_USART6_TX_2|GPIO_SPEED_100MHz) /* PG14 */
/* I2C1 Use Nucleo I2C1 pins */
-#define GPIO_I2C1_SCL GPIO_I2C1_SCL_2 /* PB8 - D15 */
-#define GPIO_I2C1_SDA GPIO_I2C1_SDA_2 /* PB9 - D14 */
+#define GPIO_I2C1_SCL (GPIO_I2C1_SCL_2|GPIO_SPEED_50MHz) /* PB8 - D15
*/
+#define GPIO_I2C1_SDA (GPIO_I2C1_SDA_2|GPIO_SPEED_50MHz) /* PB9 - D14
*/
/* I2C2 Use Nucleo I2C2 pins */
-#define GPIO_I2C2_SCL GPIO_I2C2_SCL_2 /* PF1 - D69 */
-#define GPIO_I2C2_SDA GPIO_I2C2_SDA_2 /* PF0 - D68 */
-#define GPIO_I2C2_SMBA GPIO_I2C2_SMBA_2 /* PF2 - D70 */
+#define GPIO_I2C2_SCL (GPIO_I2C2_SCL_2|GPIO_SPEED_50MHz) /* PF1 - D69
*/
+#define GPIO_I2C2_SDA (GPIO_I2C2_SDA_2|GPIO_SPEED_50MHz) /* PF0 - D68
*/
+#define GPIO_I2C2_SMBA (GPIO_I2C2_SMBA_2|GPIO_SPEED_50MHz) /* PF2 - D70
*/
/* SPI3 */
-#define GPIO_SPI3_MISO GPIO_SPI3_MISO_1 /* PB4 */
-#define GPIO_SPI3_MOSI GPIO_SPI3_MOSI_4 /* PB5 */
-#define GPIO_SPI3_SCK GPIO_SPI3_SCK_1 /* PB3 */
-#define GPIO_SPI3_NSS GPIO_SPI3_NSS_2 /* PA4 */
+#define GPIO_SPI3_MISO (GPIO_SPI3_MISO_1|GPIO_SPEED_50MHz) /* PB4 */
+#define GPIO_SPI3_MOSI (GPIO_SPI3_MOSI_4|GPIO_SPEED_50MHz) /* PB5 */
+#define GPIO_SPI3_SCK (GPIO_SPI3_SCK_1|GPIO_SPEED_50MHz) /* PB3 */
+#define GPIO_SPI3_NSS (GPIO_SPI3_NSS_2|GPIO_SPEED_50MHz) /* PA4 */
/* TIM1 */
-#define GPIO_TIM1_CH1OUT GPIO_TIM1_CH1OUT_2 /* PE9 - D6 */
-#define GPIO_TIM1_CH1NOUT GPIO_TIM1_CH1NOUT_3 /* PE8 - D42 */
-#define GPIO_TIM1_CH2OUT GPIO_TIM1_CH2OUT_2 /* PE11 - D5 */
-#define GPIO_TIM1_CH2NOUT GPIO_TIM1_CH2NOUT_3 /* PE10 - D40 */
+#define GPIO_TIM1_CH1OUT (GPIO_TIM1_CH1OUT_2|GPIO_SPEED_50MHz) /* PE9 - D6
*/
+#define GPIO_TIM1_CH1NOUT (GPIO_TIM1_CH1NOUT_3|GPIO_SPEED_50MHz) /* PE8 - D42
*/
+#define GPIO_TIM1_CH2OUT (GPIO_TIM1_CH2OUT_2|GPIO_SPEED_50MHz) /* PE11 - D5
*/
+#define GPIO_TIM1_CH2NOUT (GPIO_TIM1_CH2NOUT_3|GPIO_SPEED_50MHz) /* PE10 - D40
*/
-#define GPIO_TIM1_CH1IN GPIO_TIM1_CH1IN_2 /* PE9 */
-#define GPIO_TIM1_CH2IN GPIO_TIM1_CH2IN_2 /* PE11 */
+#define GPIO_TIM1_CH1IN (GPIO_TIM1_CH1IN_2|GPIO_SPEED_50MHz) /* PE9 */
+#define GPIO_TIM1_CH2IN (GPIO_TIM1_CH2IN_2|GPIO_SPEED_50MHz) /* PE11 */
/* TIM3 */
-#define GPIO_TIM3_CH1OUT GPIO_TIM3_CH1OUT_2 /* PB4 */
-#define GPIO_TIM3_CH2OUT GPIO_TIM3_CH2OUT_2 /* PB5 */
+#define GPIO_TIM3_CH1OUT (GPIO_TIM3_CH1OUT_2|GPIO_SPEED_50MHz) /* PB4 */
+#define GPIO_TIM3_CH2OUT (GPIO_TIM3_CH2OUT_2|GPIO_SPEED_50MHz) /* PB5 */
-#define GPIO_TIM3_CH1IN GPIO_TIM3_CH1IN_2 /* PA4 */
-#define GPIO_TIM3_CH2IN GPIO_TIM3_CH2IN_2 /* PB5 */
+#define GPIO_TIM3_CH1IN (GPIO_TIM3_CH1IN_2|GPIO_SPEED_50MHz) /* PA4 */
+#define GPIO_TIM3_CH2IN (GPIO_TIM3_CH2IN_2|GPIO_SPEED_50MHz) /* PB5 */
/* TIM4 */
-#define GPIO_TIM4_CH1IN GPIO_TIM4_CH1IN_2 /* PD12 */
-#define GPIO_TIM4_CH2IN GPIO_TIM4_CH2IN_2 /* PD13 */
+#define GPIO_TIM4_CH1IN (GPIO_TIM4_CH1IN_2|GPIO_SPEED_50MHz) /* PD12 */
+#define GPIO_TIM4_CH2IN (GPIO_TIM4_CH2IN_2|GPIO_SPEED_50MHz) /* PD13 */
/* FDCAN1 */
-#define GPIO_CAN1_RX GPIO_CAN1_RX_3 /* PD0 */
-#define GPIO_CAN1_TX GPIO_CAN1_TX_3 /* PD1 */
+#define GPIO_CAN1_RX (GPIO_CAN1_RX_3|GPIO_SPEED_50MHz) /* PD0 */
+#define GPIO_CAN1_TX (GPIO_CAN1_TX_3|GPIO_SPEED_50MHz) /* PD1 */
/* FDCAN2 */
-#define GPIO_CAN2_RX GPIO_CAN2_RX_2 /* PB5 - D11 */
-#define GPIO_CAN2_TX GPIO_CAN2_TX_2 /* PB6 - D1 */
+#define GPIO_CAN2_RX (GPIO_CAN2_RX_2|GPIO_SPEED_50MHz) /* PB5 - D11
*/
+#define GPIO_CAN2_TX (GPIO_CAN2_TX_2|GPIO_SPEED_50MHz) /* PB6 - D1 */
+
+/* OTG */
+
+#define GPIO_OTGFS_DM (GPIO_OTGFS_DM_0|GPIO_SPEED_100MHz) /* PA11 */
+#define GPIO_OTGFS_DP (GPIO_OTGFS_DP_0|GPIO_SPEED_100MHz) /* PA12 */
+#define GPIO_OTGFS_ID (GPIO_OTGFS_ID_0|GPIO_SPEED_100MHz) /* PA10 */
+
+/* Ethernet */
+
+#define GPIO_ETH_MDC (GPIO_ETH_MDC_0|GPIO_SPEED_100MHz)
+#define GPIO_ETH_MDIO (GPIO_ETH_MDIO_0|GPIO_SPEED_100MHz)
+#define GPIO_ETH_RMII_CRS_DV (GPIO_ETH_RMII_CRS_DV_0|GPIO_SPEED_100MHz)
+#define GPIO_ETH_RMII_REF_CLK (GPIO_ETH_RMII_REF_CLK_0|GPIO_SPEED_100MHz)
+#define GPIO_ETH_RMII_RXD0 (GPIO_ETH_RMII_RXD0_0|GPIO_SPEED_100MHz)
+#define GPIO_ETH_RMII_RXD1 (GPIO_ETH_RMII_RXD1_0|GPIO_SPEED_100MHz)
+#define GPIO_ETH_RMII_TXD0 (GPIO_ETH_RMII_TXD0_2|GPIO_SPEED_100MHz)
+#define GPIO_ETH_RMII_TXD1 (GPIO_ETH_RMII_TXD1_1|GPIO_SPEED_100MHz)
+#define GPIO_ETH_RMII_TX_EN (GPIO_ETH_RMII_TX_EN_2|GPIO_SPEED_100MHz)
/* DMA **********************************************************************/
diff --git a/boards/arm/stm32h7/stm32h747i-disco/configs/nsh/defconfig
b/boards/arm/stm32h7/stm32h747i-disco/configs/nsh/defconfig
index 5df2397415..5d470b8cf2 100644
--- a/boards/arm/stm32h7/stm32h747i-disco/configs/nsh/defconfig
+++ b/boards/arm/stm32h7/stm32h747i-disco/configs/nsh/defconfig
@@ -8,6 +8,7 @@
# CONFIG_NSH_DISABLE_IFCONFIG is not set
# CONFIG_NSH_DISABLE_PS is not set
# CONFIG_STANDARD_SERIAL is not set
+# CONFIG_STM32H7_USE_LEGACY_PINMAP is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD="stm32h747i-disco"
CONFIG_ARCH_BOARD_STM32H747I_DISCO=y
diff --git a/boards/arm/stm32h7/stm32h747i-disco/include/board.h
b/boards/arm/stm32h7/stm32h747i-disco/include/board.h
index e5be7b52c5..f591aa4a96 100644
--- a/boards/arm/stm32h7/stm32h747i-disco/include/board.h
+++ b/boards/arm/stm32h7/stm32h747i-disco/include/board.h
@@ -307,25 +307,6 @@
FMC_SDCMR_MRD_CAS_LATENCY_2 |\
FMC_SDCMR_MRD_WRITEBURST_MODE_SINGLE)
-#define BOARD_FMC_GPIO_CONFIGS \
- GPIO_FMC_A0, GPIO_FMC_A1, GPIO_FMC_A2, GPIO_FMC_A3, \
- GPIO_FMC_A4, GPIO_FMC_A5, GPIO_FMC_A6, GPIO_FMC_A7, \
- GPIO_FMC_A8, GPIO_FMC_A9, GPIO_FMC_A10, GPIO_FMC_A11, \
- GPIO_FMC_A12, \
- GPIO_FMC_D0, GPIO_FMC_D1, GPIO_FMC_D2, GPIO_FMC_D3, \
- GPIO_FMC_D4, GPIO_FMC_D5, GPIO_FMC_D6, GPIO_FMC_D7, \
- GPIO_FMC_D8, GPIO_FMC_D9, GPIO_FMC_D10, GPIO_FMC_D11, \
- GPIO_FMC_D12, GPIO_FMC_D13, GPIO_FMC_D14, GPIO_FMC_D15, \
- GPIO_FMC_D16, GPIO_FMC_D17, GPIO_FMC_D18, GPIO_FMC_D19, \
- GPIO_FMC_D20, GPIO_FMC_D21, GPIO_FMC_D22, GPIO_FMC_D23, \
- GPIO_FMC_D24, GPIO_FMC_D25, GPIO_FMC_D26, GPIO_FMC_D27, \
- GPIO_FMC_D28, GPIO_FMC_D29, GPIO_FMC_D30, GPIO_FMC_D31, \
- GPIO_FMC_NBL0, GPIO_FMC_NBL1, GPIO_FMC_NBL2, GPIO_FMC_NBL3, \
- GPIO_FMC_BA0, GPIO_FMC_BA1, \
- GPIO_FMC_SDNCAS, GPIO_FMC_SDNRAS, \
- GPIO_FMC_SDNWE_3, GPIO_FMC_SDNE1_2, GPIO_FMC_SDCKE1_2, \
- GPIO_FMC_SDCLK
-
/* LED definitions **********************************************************/
/* The board has 4 user LEDs.
@@ -390,17 +371,78 @@
/* USART1 ( Console) */
-#define GPIO_USART1_RX GPIO_USART1_RX_2 /* PA10 */
-#define GPIO_USART1_TX GPIO_USART1_TX_2 /* PA9 */
+#define GPIO_USART1_RX (GPIO_USART1_RX_2|GPIO_SPEED_100MHz) /* PA10 */
+#define GPIO_USART1_TX (GPIO_USART1_TX_2|GPIO_SPEED_100MHz) /* PA9 */
/* UART4 ( PMOD/STMOD ) */
-#define GPIO_UART4_CTS GPIO_UART4_CTS_2 /* PB15 */
-#define GPIO_UART4_RTS GPIO_UART4_RTS_2 /* PB14 */
-#define GPIO_UART4_RX GPIO_UART4_RX_1 /* PA11 */
-#define GPIO_UART4_TX GPIO_UART4_TX_1 /* PA12 */
-#define GPIO_UART4_SHUTD (GPIO_OUTPUT | GPIO_PUSHPULL | GPIO_SPEED_50MHz |
GPIO_OUTPUT_CLEAR | \
- GPIO_PORTJ | GPIO_PIN13)
+#define GPIO_UART4_CTS GPIO_UART4_CTS_2 /* PB15 */
+#define GPIO_UART4_RTS GPIO_UART4_RTS_2 /* PB14 */
+#define GPIO_UART4_RX (GPIO_UART4_RX_1|GPIO_SPEED_100MHz) /* PA11 */
+#define GPIO_UART4_TX (GPIO_UART4_TX_1|GPIO_SPEED_100MHz) /* PA12 */
+#define GPIO_UART4_SHUTD (GPIO_OUTPUT | GPIO_PUSHPULL | GPIO_SPEED_50MHz | \
+ GPIO_OUTPUT_CLEAR | GPIO_PORTJ | GPIO_PIN13)
+
+/* FMC pins */
+
+#define BOARD_FMC_GPIO_CONFIGS \
+ (GPIO_FMC_A0|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_A1|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_A2|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_A3|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_A4|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_A5|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_A6|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_A7|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_A8|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_A9|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_A10|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_A11|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_A12|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D0|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D1|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D2|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D3|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D4|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D5|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D6|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D7|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D8|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D9|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D10|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D11|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D12|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D13|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D14|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D15|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D16|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D17|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D18|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D19|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D20|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D21|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D22|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D23|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D24|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D25|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D26|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D27|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D28|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D29|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D30|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_D31|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_NBL0|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_NBL1|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_NBL2|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_NBL3|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_BA0|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_BA1|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_SDNCAS|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_SDNRAS|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_SDNWE_3|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_SDNE1_2|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_SDCKE1_2|GPIO_SPEED_100MHz), \
+ (GPIO_FMC_SDCLK|GPIO_SPEED_100MHz)
/****************************************************************************
* Public Data