I am currently working on the Cortex-M7 core of the i.MX8MP platform and am trying to place all the code and data sections into TCM (ITCM and DTCM) to ensure optimal performance. However, I have not been successful in modifying the linker script accordingly, as the existing memory configuration and placement logic are a bit unclear to me.
Could you kindly provide a working linker script or an example configuration that correctly places all code and data segments into the TCM regions for the Cortex-M7 on this platform?
This would greatly help me proceed with development and ensure the application runs from the fastest available memory.
Thank you in advance for your support.
Hi,
Please refer the linker file in sdk exmaple: https://github.com/nxp-mcuxpresso/mcux-sdk-examples/blob/MCUX_2.16.100/evkmimx8mp/multicore_examples...
Best Regards,
Zhiming
Hi @adithya369
Please use below setting about pad configuration.
The test code should like this:
Best Regards,
Zhiming
Hi,
Please use IOMUXC_SW_PAD_CTL_PAD_FSEL
#define IOMUXC_SW_PAD_CTL_PAD_FSEL_MASK (0x18U)
#define IOMUXC_SW_PAD_CTL_PAD_FSEL_SHIFT (3U)
/*! FSEL - Slew Rate Field
* 0b0x..Select slow slew rate (SR=1)
* 0b1x..Select fast slew rate (SR=0)
*/
#define IOMUXC_SW_PAD_CTL_PAD_FSEL(x) (((uint32_t)(((uint32_t)(x)) << IOMUXC_SW_PAD_CTL_PAD_FSEL_SHIFT)) & IOMUXC_SW_PAD_CTL_PAD_FSEL_MASK)
Best Regards,
Zhiming