diff --git a/include/arch/arm/cortex_m/mpu/nxp_mpu.h b/include/arch/arm/cortex_m/mpu/nxp_mpu.h index 99206ef2d72..ed1c18bef1c 100644 --- a/include/arch/arm/cortex_m/mpu/nxp_mpu.h +++ b/include/arch/arm/cortex_m/mpu/nxp_mpu.h @@ -34,6 +34,15 @@ #define BM2_SM_SHIFT 15 #define BM3_SM_SHIFT 21 +#define BM4_WE_SHIFT 24 +#define BM4_RE_SHIFT 25 + +#ifdef CONFIG_USB_KINETIS +#define BM4_PERMISSIONS ((1 << BM4_RE_SHIFT) | (1 << BM4_WE_SHIFT)) +#else +#define BM4_PERMISSIONS 0 +#endif + /* Read Attribute */ #define MPU_REGION_READ ((UM_READ << BM0_UM_SHIFT) | \ (UM_READ << BM1_UM_SHIFT) | \ @@ -83,13 +92,15 @@ /* Some helper defines for common regions */ #if defined(CONFIG_MPU_ALLOW_FLASH_WRITE) #define REGION_RAM_ATTR ((MPU_REGION_SU_RWX) | \ - ((UM_READ | UM_WRITE | UM_EXEC) << BM3_UM_SHIFT)) + ((UM_READ | UM_WRITE | UM_EXEC) << BM3_UM_SHIFT) | \ + (BM4_PERMISSIONS)) #define REGION_FLASH_ATTR (MPU_REGION_SU_RWX) #else #define REGION_RAM_ATTR ((MPU_REGION_SU_RW) | \ - ((UM_READ | UM_WRITE) << BM3_UM_SHIFT)) + ((UM_READ | UM_WRITE) << BM3_UM_SHIFT) | \ + (BM4_PERMISSIONS)) #define REGION_FLASH_ATTR (MPU_REGION_READ | \ MPU_REGION_EXEC | \