8#ifndef NEXUS_ARCH_MPU_H
9#define NEXUS_ARCH_MPU_H
Reviewed CPU mechanisms and allocation-free result types.
nx_arch_result_t
Result of a validated local CPU mechanism operation.
nx_arch_result_t nx_arch_mpu_v8_program(uint32_t index, const nx_arch_mpu_v8_region_t *region)
Program one disabled-MPU Armv8-M region in this world.
nx_arch_result_t nx_arch_mpu_v8_attribute_set(uint32_t index, uint32_t attribute)
Update one Armv8-M MAIR byte without changing its neighbors.
nx_arch_result_t nx_arch_mpu_v8_encode(const nx_arch_mpu_v8_region_t *region, nx_arch_mpu_v8_encoding_t *encoding)
Encode an exact Armv8-M region without accessing hardware.
nx_arch_result_t nx_arch_mpu_v7_encode(const nx_arch_mpu_v7_region_t *region, nx_arch_mpu_v7_encoding_t *encoding)
Encode an exact Armv7-M region without accessing hardware.
nx_arch_result_t nx_arch_mpu_v7_program(uint32_t index, const nx_arch_mpu_v7_region_t *region)
Program one disabled-MPU Armv7-M region in this world.
Armv7-M words targeting the caller-selected RNR, not RBAR.VALID.
Armv7-M region fields, without an implicit memory policy.
uint32_t subregion_disable
Armv8-M words retaining its separate MAIR indirection.
Armv8-M fields; limit is the exact inclusive final byte.