sl_mpu.c File Reference

MPU API implementation.

Version
1.0.0

License

(C) Copyright 2018 Silicon Labs, www.silabs.com

This file is licensed under the Silabs License Agreement. See the file "Silabs_License_Agreement.txt" for details. Before using this software for any purpose, you must agree to the terms of that agreement.

Definition in file sl_mpu.c.

#include "em_device.h"
#include "em_common.h"
#include "em_core.h"
#include "sl_mpu.h"
#include <stdlib.h>
#include <math.h>

Macros

#define MPU_RAM_BACKGROUND_XN_REGION_NBR   0u
 
#define MPU_RAM_FUNCTION_REGION_NBR   1u
 
#define MPU_RBAR_VALUE   ARM_MPU_RBAR(0u, ARM_MPU_SH_OUTER, 0, 1, 1)
 
#define MPU_SUBREGION_NBR   8u
 
#define MPU_SUBREGION_USE_MIN_SIZE   256u
 
#define RAMFUNC_SECTION_BEGIN   (uint32_t) &__ram_func_section_start
 
#define RAMFUNC_SECTION_END   (uint32_t) &__ram_func_section_end
 
#define RAMFUNC_SECTION_SIZE   (RAMFUNC_SECTION_END - RAMFUNC_SECTION_BEGIN)
 

Functions

void MemManage_Handler (void)
 
__WEAK void mpu_fault_handler (void)
 
void sl_mpu_disable_execute (uint32_t address_begin, uint32_t address_end, uint32_t size)
 
void sl_mpu_disable_execute_from_ram (void)
 

Variables

uint32_t __ram_func_section_end
 
uint32_t __ram_func_section_start
 
static uint32_t region_nbr = 0
 

Function Documentation

__WEAK void mpu_fault_handler ( void  )

MemManage default exception handler. Reset target.

Definition at line 333 of file sl_mpu.c.

Referenced by MemManage_Handler().