[PATCH rtems 10/12] bsps/imxrt: Make chip start code chip specific

Christian Mauderer christian.mauderer at embedded-brains.de
Thu May 4 15:00:51 UTC 2023


Some parts of the startup code don't apply for all chips. Make that part
chip specific.
---
 bsps/arm/imxrt/start/bspstart.c      | 4 ++++
 bsps/arm/imxrt/start/bspstarthooks.c | 2 ++
 2 files changed, 6 insertions(+)

diff --git a/bsps/arm/imxrt/start/bspstart.c b/bsps/arm/imxrt/start/bspstart.c
index 445af04563..6d873f4afd 100644
--- a/bsps/arm/imxrt/start/bspstart.c
+++ b/bsps/arm/imxrt/start/bspstart.c
@@ -47,6 +47,7 @@ uint32_t imxrt_systick_frequency(void)
 
 static void imxrt_disable_wait_mode(void)
 {
+#if IMXRT_IS_MIMXRT10xx
   /*
    * Prevent processor from entering WAIT or SLEEP mode when a WFI is executed.
    * This would switch off the normal interrupt controller and activate an
@@ -58,6 +59,9 @@ static void imxrt_disable_wait_mode(void)
    * every WFI.
    */
   CLOCK_SetMode(kCLOCK_ModeRun);
+#else
+  #error Disabling wait mode not implemented for this chip.
+#endif
 }
 
 void bsp_start(void)
diff --git a/bsps/arm/imxrt/start/bspstarthooks.c b/bsps/arm/imxrt/start/bspstarthooks.c
index a84f2a427f..5bd847b1cf 100644
--- a/bsps/arm/imxrt/start/bspstarthooks.c
+++ b/bsps/arm/imxrt/start/bspstarthooks.c
@@ -58,9 +58,11 @@ BSP_START_TEXT_SECTION void bsp_start_hook_1(void)
   BOARD_BootClockRUN();
   BOARD_InitDEBUG_UARTPins();
 
+#if IMXRT_IS_MIMXRT10xx
   /* Reduce frequency for I2C */
   CLOCK_SetDiv(kCLOCK_Lpi2cDiv, 5);
 
   /* Enable EDMA clock. We initialize the EDMA so we need the clock. */
   CLOCK_EnableClock(kCLOCK_Dma);
+#endif
 }
-- 
2.35.3



More information about the devel mailing list