summaryrefslogtreecommitdiff
path: root/arm9/lib/NitroSDK/src/OS_protectionRegion.c
blob: 4b8d8297ad394cd4c23700747e422744b2409078 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include "function_target.h"
#include "OS_protectionRegion.h"

ARM_FUNC asm void OS_SetDPermissionsForProtectionRegion(register u32 setMask, register u32 flags)
{
    mrc p15, 0x0, r2, c5, c0, 0x2 //Extended Access Permission Data Protection Region
    bic r2, r2, r0
    orr r2, r2, r1
    mcr p15, 0x0, r2, c5, c0, 0x2 //Extended Access Permission Data Protection Region
    bx lr
}

ARM_FUNC asm void OS_SetProtectionRegion1(u32 param)
{
    mcr p15, 0x0, r0, c6, c1, 0x0 //Protection Unit Data Region 1
    bx lr
}

ARM_FUNC asm void OS_SetProtectionRegion2(u32 param)
{
    mcr p15, 0x0, r0, c6, c2, 0x0 //Protection Unit Data Region 2
    bx lr
}