imxrt: Extend FlexIO support to 117x

This commit is contained in:
Peter van der Perk 2023-12-14 09:51:37 +01:00 committed by Xiang Xiao
parent 68a6f1090c
commit 7730201689
2 changed files with 76 additions and 2 deletions

View File

@ -178,6 +178,7 @@ config ARCH_FAMILY_IMXRT106x
select ARMV7M_HAVE_DTCM select ARMV7M_HAVE_DTCM
select IMXRT_HIGHSPEED_GPIO select IMXRT_HIGHSPEED_GPIO
select IMXRT_HAVE_FLEXSPI2 select IMXRT_HAVE_FLEXSPI2
select IMXRT_HAVE_FLEXIO3
config IMXRT_HAVE_OTA_PARTITION config IMXRT_HAVE_OTA_PARTITION
bool bool
@ -284,6 +285,10 @@ config IMXRT_FLEXSPI
bool bool
default n default n
config IMXRT_HAVE_FLEXIO3
bool
default n
config IMXRT_HAVE_FLEXSPI2 config IMXRT_HAVE_FLEXSPI2
bool bool
default n default n
@ -360,7 +365,7 @@ config IMXRT_FLEXIO1
default n default n
select IMXRT_FLEXIO select IMXRT_FLEXIO
if IMXRT_FLEXIO1 if (IMXRT_FLEXIO1 && !IMXRT_CLOCKCONFIG_VER2)
choice choice
prompt "FLEXIO1 Clock Source" prompt "FLEXIO1 Clock Source"
@ -417,7 +422,7 @@ config IMXRT_FLEXIO2
default n default n
select IMXRT_FLEXIO select IMXRT_FLEXIO
if IMXRT_FLEXIO2 || IMXRT_FLEXIO3 if (IMXRT_FLEXIO2 || IMXRT_FLEXIO3) && !IMXRT_CLOCKCONFIG_VER2
choice choice
prompt "FLEXIO2 Clock Source" prompt "FLEXIO2 Clock Source"
@ -471,6 +476,7 @@ config IMXRT_FLEXIO3
bool "FLEXIO3" bool "FLEXIO3"
default n default n
select IMXRT_FLEXIO select IMXRT_FLEXIO
depends on IMXRT_HAVE_FLEXIO3
---help--- ---help---
FLEXIO3 uses the FLEXIO2 clock settings. FLEXIO3 uses the FLEXIO2 clock settings.

View File

@ -197,6 +197,74 @@
#define GPIO_FLEXCAN3_TX_2 (GPIO_PERIPH | GPIO_ALT1 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_LPSR_08_INDEX)) #define GPIO_FLEXCAN3_TX_2 (GPIO_PERIPH | GPIO_ALT1 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_LPSR_08_INDEX))
#define GPIO_FLEXCAN3_TX_3 (GPIO_PERIPH | GPIO_ALT6 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_LPSR_06_INDEX)) #define GPIO_FLEXCAN3_TX_3 (GPIO_PERIPH | GPIO_ALT6 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_LPSR_06_INDEX))
/* Flexible I/O (FlexIO) */
#define GPIO_FLEXIO1_FLEXIO00_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_00_INDEX))
#define GPIO_FLEXIO1_FLEXIO01_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_01_INDEX))
#define GPIO_FLEXIO1_FLEXIO02_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_02_INDEX))
#define GPIO_FLEXIO1_FLEXIO03_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_03_INDEX))
#define GPIO_FLEXIO1_FLEXIO04_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_04_INDEX))
#define GPIO_FLEXIO1_FLEXIO05_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_05_INDEX))
#define GPIO_FLEXIO1_FLEXIO06_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_06_INDEX))
#define GPIO_FLEXIO1_FLEXIO07_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_07_INDEX))
#define GPIO_FLEXIO1_FLEXIO08_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_08_INDEX))
#define GPIO_FLEXIO1_FLEXIO09_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_09_INDEX))
#define GPIO_FLEXIO1_FLEXIO10_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_10_INDEX))
#define GPIO_FLEXIO1_FLEXIO11_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_11_INDEX))
#define GPIO_FLEXIO1_FLEXIO12_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_12_INDEX))
#define GPIO_FLEXIO1_FLEXIO13_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_13_INDEX))
#define GPIO_FLEXIO1_FLEXIO14_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_14_INDEX))
#define GPIO_FLEXIO1_FLEXIO15_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_15_INDEX))
#define GPIO_FLEXIO1_FLEXIO16_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_16_INDEX))
#define GPIO_FLEXIO1_FLEXIO17_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_17_INDEX))
#define GPIO_FLEXIO1_FLEXIO18_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_18_INDEX))
#define GPIO_FLEXIO1_FLEXIO19_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_19_INDEX))
#define GPIO_FLEXIO1_FLEXIO20_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_20_INDEX))
#define GPIO_FLEXIO1_FLEXIO21_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_21_INDEX))
#define GPIO_FLEXIO1_FLEXIO22_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_22_INDEX))
#define GPIO_FLEXIO1_FLEXIO23_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_23_INDEX))
#define GPIO_FLEXIO1_FLEXIO24_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_24_INDEX))
#define GPIO_FLEXIO1_FLEXIO25_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_25_INDEX))
#define GPIO_FLEXIO1_FLEXIO26_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_26_INDEX))
#define GPIO_FLEXIO1_FLEXIO27_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_27_INDEX))
#define GPIO_FLEXIO1_FLEXIO28_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_28_INDEX))
#define GPIO_FLEXIO1_FLEXIO29_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_29_INDEX))
#define GPIO_FLEXIO1_FLEXIO30_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_30_INDEX))
#define GPIO_FLEXIO1_FLEXIO31_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_31_INDEX))
#define GPIO_FLEXIO2_FLEXIO00_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_00_INDEX))
#define GPIO_FLEXIO2_FLEXIO01_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_01_INDEX))
#define GPIO_FLEXIO2_FLEXIO02_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_02_INDEX))
#define GPIO_FLEXIO2_FLEXIO03_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_03_INDEX))
#define GPIO_FLEXIO2_FLEXIO04_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_04_INDEX))
#define GPIO_FLEXIO2_FLEXIO05_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_05_INDEX))
#define GPIO_FLEXIO2_FLEXIO06_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_06_INDEX))
#define GPIO_FLEXIO2_FLEXIO07_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_07_INDEX))
#define GPIO_FLEXIO2_FLEXIO08_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_08_INDEX))
#define GPIO_FLEXIO2_FLEXIO09_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_09_INDEX))
#define GPIO_FLEXIO2_FLEXIO10_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_10_INDEX))
#define GPIO_FLEXIO2_FLEXIO11_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_11_INDEX))
#define GPIO_FLEXIO2_FLEXIO12_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_12_INDEX))
#define GPIO_FLEXIO2_FLEXIO13_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_13_INDEX))
#define GPIO_FLEXIO2_FLEXIO14_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_14_INDEX))
#define GPIO_FLEXIO2_FLEXIO15_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_15_INDEX))
#define GPIO_FLEXIO2_FLEXIO16_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_16_INDEX))
#define GPIO_FLEXIO2_FLEXIO17_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_17_INDEX))
#define GPIO_FLEXIO2_FLEXIO18_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_18_INDEX))
#define GPIO_FLEXIO2_FLEXIO19_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_19_INDEX))
#define GPIO_FLEXIO2_FLEXIO20_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_20_INDEX))
#define GPIO_FLEXIO2_FLEXIO21_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_21_INDEX))
#define GPIO_FLEXIO2_FLEXIO22_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_22_INDEX))
#define GPIO_FLEXIO2_FLEXIO23_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_23_INDEX))
#define GPIO_FLEXIO2_FLEXIO24_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_24_INDEX))
#define GPIO_FLEXIO2_FLEXIO25_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_25_INDEX))
#define GPIO_FLEXIO2_FLEXIO26_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_26_INDEX))
#define GPIO_FLEXIO2_FLEXIO27_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_27_INDEX))
#define GPIO_FLEXIO2_FLEXIO28_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_28_INDEX))
#define GPIO_FLEXIO2_FLEXIO29_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_29_INDEX))
#define GPIO_FLEXIO2_FLEXIO30_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_30_INDEX))
#define GPIO_FLEXIO2_FLEXIO31_1 (GPIO_PERIPH | GPIO_ALT8 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_AD_31_INDEX))
/* Enhanced Flex Pulse Width Modulator (eFlexPWM) */ /* Enhanced Flex Pulse Width Modulator (eFlexPWM) */
#define GPIO_FLEXPWM1_PWM0_A_1 (GPIO_PERIPH | GPIO_ALT1 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_23_INDEX)) #define GPIO_FLEXPWM1_PWM0_A_1 (GPIO_PERIPH | GPIO_ALT1 | GPIO_PADMUX(IMXRT_PADMUX_GPIO_EMC_B1_23_INDEX))