mpu_pal.h File Reference
#include "status.h"
#include "mpu_pal_mapping.h"

Go to the source code of this file.

Data Structures

struct  mpu_error_info_t
 MPU detail error access info Implements : mpu_error_info_t_Class. More...
 
struct  mpu_master_access_permission_t
 MPU master access permission. Implements : mpu_master_access_permission_t_Class. More...
 
struct  mpu_region_config_t
 MPU region configuration structure. Implements : mpu_region_config_t_Class. More...
 

Enumerations

enum  mpu_error_access_type_t { MPU_ERROR_TYPE_READ = 0U, MPU_ERROR_TYPE_WRITE = 1U }
 MPU access error Implements : mpu_error_access_type_t_Class. More...
 
enum  mpu_error_attributes_t { MPU_ERROR_USER_MODE_INSTRUCTION_ACCESS = 0U, MPU_ERROR_USER_MODE_DATA_ACCESS = 1U, MPU_ERROR_SUPERVISOR_MODE_INSTRUCTION_ACCESS = 2U, MPU_ERROR_SUPERVISOR_MODE_DATA_ACCESS = 3U }
 MPU access error attributes Implements : mpu_error_attributes_t_Class. More...
 

Functions

MPU PAL API
status_t MPU_Init (const mpu_instance_t *const instance, uint8_t regionCnt, const mpu_region_config_t *configPtr)
 Initializes memory protection unit by allocating regions and granting access rights for masters. More...
 
status_t MPU_Deinit (const mpu_instance_t *const instance)
 De-initializes memory protection unit by reseting all regions and masters to default and disable module. More...
 
status_t MPU_GetDefautRegionConfig (const mpu_instance_t *const instance, mpu_master_access_permission_t *masterAccRight, mpu_region_config_t *regionConfig)
 Gets default region configuration. Grants all access rights for masters; disable PID and cache; unlock region descriptor. More...
 
status_t MPU_UpdateRegion (const mpu_instance_t *const instance, uint8_t regionNum, const mpu_region_config_t *configPtr)
 Updates region configuration. More...
 
status_t MPU_EnableRegion (const mpu_instance_t *const instance, uint8_t regionNum, bool enable)
 Enables or disables an exist region configuration. More...
 
bool MPU_GetError (const mpu_instance_t *const instance, uint8_t channel, mpu_error_info_t *errPtr)
 Checks and gets the access error detail information then clear error flag if the error caused by a master. More...