diff --git a/targets/TARGET_NXP/TARGET_MCUXpresso_MCUS/TARGET_MIMXRT1050/device/TOOLCHAIN_GCC_ARM/MIMXRT1052xxxxx.ld b/targets/TARGET_NXP/TARGET_MCUXpresso_MCUS/TARGET_MIMXRT1050/device/TOOLCHAIN_GCC_ARM/MIMXRT1052xxxxx.ld index f9444af..3525154 100644 --- a/targets/TARGET_NXP/TARGET_MCUXpresso_MCUS/TARGET_MIMXRT1050/device/TOOLCHAIN_GCC_ARM/MIMXRT1052xxxxx.ld +++ b/targets/TARGET_NXP/TARGET_MCUXpresso_MCUS/TARGET_MIMXRT1050/device/TOOLCHAIN_GCC_ARM/MIMXRT1052xxxxx.ld @@ -240,14 +240,14 @@ *(NonCacheable.init) . = ALIGN(8); __noncachedata_init_end__ = .; /* create a global symbol at initialized ncache data end */ - } > m_data AT> m_text + } > m_dtcm AT> m_text . = __noncachedata_init_end__; .ncache : { *(NonCacheable) . = ALIGN(8); __noncachedata_end__ = .; /* define a global symbol at ncache data end */ - } > m_data + } > m_dtcm __TEXT_CSF_ROM = __NDATA_ROM + (__noncachedata_init_end__ - __noncachedata_start__); diff --git a/targets/TARGET_NXP/TARGET_MCUXpresso_MCUS/TARGET_MIMXRT1050/mbed_overrides.c b/targets/TARGET_NXP/TARGET_MCUXpresso_MCUS/TARGET_MIMXRT1050/mbed_overrides.c index 1e27ce2..5f9e66a 100644 --- a/targets/TARGET_NXP/TARGET_MCUXpresso_MCUS/TARGET_MIMXRT1050/mbed_overrides.c +++ b/targets/TARGET_NXP/TARGET_MCUXpresso_MCUS/TARGET_MIMXRT1050/mbed_overrides.c @@ -97,9 +97,11 @@ MPU->RBAR = ARM_MPU_RBAR(4, 0x00000000U); MPU->RASR = ARM_MPU_RASR(0, ARM_MPU_AP_FULL, 0, 0, 1, 1, 0, ARM_MPU_REGION_SIZE_128KB); - /* Region 5 setting: Memory with Normal type, not shareable, outer/inner write back */ + /* Region 5 setting: Memory with Normal type, not shareable, not cacheable */ + /* DTCM is set to non-cacheable so that we can use it for things like Ethernet and + * USB DMA buffers which will not work if they are cached. */ MPU->RBAR = ARM_MPU_RBAR(5, 0x20000000U); - MPU->RASR = ARM_MPU_RASR(0, ARM_MPU_AP_FULL, 0, 0, 1, 1, 0, ARM_MPU_REGION_SIZE_128KB); + MPU->RASR = ARM_MPU_RASR(0, ARM_MPU_AP_FULL, 0, 0, 0, 0, 0, ARM_MPU_REGION_SIZE_128KB); /* Region 6 setting: Memory with Normal type, not shareable, outer/inner write back */ MPU->RBAR = ARM_MPU_RBAR(6, 0x20200000U); @@ -118,12 +120,6 @@ MPU->RASR = ARM_MPU_RASR(0, ARM_MPU_AP_FULL, 1, 0, 1, 1, 0, ARM_MPU_REGION_SIZE_32MB); #endif - /* Region 8 setting, set last 2MB of SDRAM can't be accessed by cache, glocal variables which are not expected to be - * accessed by cache can be put here */ - /* Memory with Normal type, not shareable, non-cacheable */ - MPU->RBAR = ARM_MPU_RBAR(8, 0x81E00000U); - MPU->RASR = ARM_MPU_RASR(0, ARM_MPU_AP_FULL, 1, 0, 0, 0, 0, ARM_MPU_REGION_SIZE_2MB); - /* Enable MPU */ ARM_MPU_Enable(MPU_CTRL_PRIVDEFENA_Msk); diff --git a/targets/TARGET_NXP/TARGET_MCUXpresso_MCUS/middleware/TARGET_USB/device/usb_device_ehci.c b/targets/TARGET_NXP/TARGET_MCUXpresso_MCUS/middleware/TARGET_USB/device/usb_device_ehci.c index 733c97c..f541782 100644 --- a/targets/TARGET_NXP/TARGET_MCUXpresso_MCUS/middleware/TARGET_USB/device/usb_device_ehci.c +++ b/targets/TARGET_NXP/TARGET_MCUXpresso_MCUS/middleware/TARGET_USB/device/usb_device_ehci.c @@ -1188,7 +1188,7 @@ usb_device_ehci_state_struct_t *ehciState; uint32_t ehci_base[] = USBHS_BASE_ADDRS; uint8_t intanceIndex; - + #if (defined(USB_DEVICE_CONFIG_CHARGER_DETECT) && (USB_DEVICE_CONFIG_CHARGER_DETECT > 0U)) && \ ((defined(FSL_FEATURE_SOC_USBHSDCD_COUNT) && (FSL_FEATURE_SOC_USBHSDCD_COUNT > 0U)) || \ (defined(FSL_FEATURE_SOC_USB_ANALOG_COUNT) && (FSL_FEATURE_SOC_USB_ANALOG_COUNT > 0U)))