Skip to content

Commit

Permalink
mimxrt: Add a machine.freq(x) method.
Browse files Browse the repository at this point in the history
For i.MX RT 101x, 102x, 105x, 106x:
Just for three selected frequencies base_freq/1, /2 and /4.

For i.MX RT 117x:
Any frequency between 156 MHZ and 996 MHz.

At /4 the power consumption is like 30% decreased for teensy boards and
way less for other boards, since bus & peripherals still run at full
speed.

Signed-off-by: robert-hh <robert@hammelrath.com>
  • Loading branch information
robert-hh committed Aug 22, 2023
1 parent a18d62e commit 3892ccc
Show file tree
Hide file tree
Showing 15 changed files with 2,009 additions and 4 deletions.
6 changes: 5 additions & 1 deletion ports/mimxrt/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -122,8 +122,8 @@ endif

# NXP SDK sources
SRC_HAL_IMX_C += \
$(MCU_DIR)/drivers/fsl_clock.c \
$(MCU_DIR)/drivers/fsl_common.c \
$(MCU_DIR)/drivers/fsl_dcdc.c \
$(MCU_DIR)/drivers/fsl_dmamux.c \
$(MCU_DIR)/drivers/fsl_edma.c \
$(MCU_DIR)/drivers/fsl_flexram.c \
Expand Down Expand Up @@ -165,6 +165,9 @@ endif
ifeq ($(MCU_SERIES), MIMXRT1176)
INC += -I$(TOP)/$(MCU_DIR)/drivers/cm7

SRC_C += \
hal/fsl_clock_MIMXRT1176.c

SRC_HAL_IMX_C += \
$(MCU_DIR)/drivers/cm7/fsl_cache.c \
$(MCU_DIR)/drivers/fsl_dcdc.c \
Expand All @@ -177,6 +180,7 @@ else
SRC_HAL_IMX_C += \
$(MCU_DIR)/drivers/fsl_adc.c \
$(MCU_DIR)/drivers/fsl_cache.c \
$(MCU_DIR)/drivers/fsl_clock.c \
$(MCU_DIR)/drivers/fsl_trng.c
endif

Expand Down
1 change: 1 addition & 0 deletions ports/mimxrt/boards/ADAFRUIT_METRO_M7/mpconfigboard.mk
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
MCU_SERIES = MIMXRT1011
MCU_VARIANT = MIMXRT1011DAE5A
CFLAGS += -DMIMXRT101x_SERIES

MICROPY_FLOAT_IMPL = single
MICROPY_PY_MACHINE_SDCARD = 0
Expand Down
1 change: 1 addition & 0 deletions ports/mimxrt/boards/MIMXRT1010_EVK/mpconfigboard.mk
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
MCU_SERIES = MIMXRT1011
MCU_VARIANT = MIMXRT1011DAE5A
CFLAGS += -DMIMXRT101x_SERIES

MICROPY_FLOAT_IMPL = single
MICROPY_PY_MACHINE_SDCARD = 0
Expand Down
1 change: 1 addition & 0 deletions ports/mimxrt/boards/MIMXRT1015_EVK/mpconfigboard.mk
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
MCU_SERIES = MIMXRT1015
MCU_VARIANT = MIMXRT1015DAF5A
CFLAGS += -DMIMXRT101x_SERIES

MICROPY_FLOAT_IMPL = single
MICROPY_PY_MACHINE_SDCARD = 0
Expand Down
1 change: 1 addition & 0 deletions ports/mimxrt/boards/MIMXRT1020_EVK/mpconfigboard.mk
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
MCU_SERIES = MIMXRT1021
MCU_VARIANT = MIMXRT1021DAG5A
CFLAGS += -DMIMXRT102x_SERIES

MICROPY_FLOAT_IMPL = double
MICROPY_PY_MACHINE_SDCARD = 1
Expand Down
1 change: 1 addition & 0 deletions ports/mimxrt/boards/MIMXRT1050_EVK/mpconfigboard.mk
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
MCU_SERIES = MIMXRT1052
MCU_VARIANT = MIMXRT1052DVL6B
CFLAGS += -DMIMXRT105x_SERIES

MICROPY_FLOAT_IMPL = double
MICROPY_PY_MACHINE_SDCARD = 1
Expand Down
1 change: 1 addition & 0 deletions ports/mimxrt/boards/MIMXRT1060_EVK/mpconfigboard.mk
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
MCU_SERIES = MIMXRT1062
MCU_VARIANT = MIMXRT1062DVJ6A
CFLAGS += -DMIMXRT106x_SERIES

MICROPY_FLOAT_IMPL = double
MICROPY_PY_MACHINE_SDCARD = 1
Expand Down
1 change: 1 addition & 0 deletions ports/mimxrt/boards/MIMXRT1064_EVK/mpconfigboard.mk
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
MCU_SERIES = MIMXRT1064
MCU_VARIANT = MIMXRT1064DVL6A
CFLAGS += -DMIMXRT106x_SERIES

MICROPY_FLOAT_IMPL = double
MICROPY_PY_MACHINE_SDCARD = 1
Expand Down
1 change: 1 addition & 0 deletions ports/mimxrt/boards/OLIMEX_RT1010/mpconfigboard.mk
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
MCU_SERIES = MIMXRT1011
MCU_VARIANT = MIMXRT1011DAE5A
CFLAGS += -DMIMXRT101x_SERIES

MICROPY_FLOAT_IMPL = single
MICROPY_PY_MACHINE_SDCARD ?= 0
Expand Down
1 change: 1 addition & 0 deletions ports/mimxrt/boards/SEEED_ARCH_MIX/mpconfigboard.mk
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
MCU_SERIES = MIMXRT1052
MCU_VARIANT = MIMXRT1052DVL6B
CFLAGS += -DMIMXRT105x_SERIES

MICROPY_FLOAT_IMPL = double
MICROPY_PY_MACHINE_SDCARD = 1
Expand Down
1 change: 1 addition & 0 deletions ports/mimxrt/boards/TEENSY40/mpconfigboard.mk
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
MCU_SERIES = MIMXRT1062
MCU_VARIANT = MIMXRT1062DVJ6A
CFLAGS += -DMIMXRT106x_SERIES

MICROPY_FLOAT_IMPL = double
MICROPY_PY_MACHINE_SDCARD = 1
Expand Down
1 change: 1 addition & 0 deletions ports/mimxrt/boards/TEENSY41/mpconfigboard.mk
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
MCU_SERIES = MIMXRT1062
MCU_VARIANT = MIMXRT1062DVJ6A
CFLAGS += -DMIMXRT106x_SERIES

MICROPY_FLOAT_IMPL = double
MICROPY_PY_MACHINE_SDCARD = 1
Expand Down
Loading

0 comments on commit 3892ccc

Please sign in to comment.