CSR Bit Fields

RISC-V pmpcfg8 CSR Register

Address 0x3A8Privilege MachineAccess RW / XLENMachine physical memory protection CSRs

pmpcfg8 is a physical memory protection configuration CSR describing permissions, address matching, and lock bits for PMP regions.

Field Map

Understand pmpcfg8 By Bit Fields

48 key fields
7

pmp32cfg.L

RW

Lock bit for PMP entry 32.

pmp32cfg.L (bit 7) — Lock bit for PMP entry 32.

What This Field Controls

  • - Lock bit for PMP entry 32.

Common Values

pmp32cfg.L
0Unlocked

PMP entry 32 is not locked; this entry's configuration may be modified under WARL rules. M-mode accesses matching this entry succeed, and R/W/X permissions constrain only S/U effective-privilege accesses. Note that pmpaddr32 may still be locked by a later locked TOR entry.

1Locked

PMP entry 32 is locked; writes to pmp32cfg and pmpaddr32 are ignored until hart reset, and R/W/X permissions apply to all privilege modes. If A=TOR, pmpaddr31 is also locked.

Open Official Manual
6:5

pmp32cfg.reserved

RO

Reserved bits for PMP entry 32; writes follow WARL/reserved-bit rules.

pmp32cfg.reserved (bits 6:5) — Reserved bits for PMP entry 32; writes follow WARL/reserved-bit rules.

What This Field Controls

  • - Reserved bits for PMP entry 32; writes follow WARL/reserved-bit rules.

Common Values

This field is better understood together with surrounding context than as a fixed memorized enumeration.

Open Official Manual
4:3

pmp32cfg.A

RW

Address-matching mode for PMP entry 32.

pmp32cfg.A (bits 4:3) — Address-matching mode for PMP entry 32.

What This Field Controls

  • - Address-matching mode for PMP entry 32.

Common Values

pmp32cfg.A
0OFF

PMP entry 32 is disabled and matches no addresses.

1TOR

PMP entry 32 uses top-of-range matching; the upper bound comes from pmpaddr32, and the lower bound comes from pmpaddr31.

2NA4

PMP entry 32 matches a naturally aligned four-byte region; if the platform PMP grain does not support NA4, this encoding is not selectable.

3NAPOT

PMP entry 32 matches a naturally aligned power-of-two region of at least 8 bytes, with the size encoded in low-order bits of pmpaddr32.

Open Official Manual
2

pmp32cfg.X

RW

Execute permission for PMP entry 32.

pmp32cfg.X (bit 2) — Execute permission for PMP entry 32.

What This Field Controls

  • - Execute permission for PMP entry 32.

Common Values

pmp32cfg.X
0Execute denied

PMP entry 32 does not grant execute permission; matching S/U instruction fetches fail, while M-mode instruction fetches are constrained by this bit only when this entry is locked.

1Execute permitted

PMP entry 32 grants execute permission when this entry matches and other PMP, PMA, and privilege rules also allow the access.

Open Official Manual
1

pmp32cfg.W

RW

Write permission for PMP entry 32.

pmp32cfg.W (bit 1) — Write permission for PMP entry 32.

What This Field Controls

  • - Write permission for PMP entry 32.

Common Values

pmp32cfg.W
0Write denied

PMP entry 32 does not grant write permission; matching S/U store, AMO, and other write-class accesses fail, while M-mode writes are constrained by this bit only when this entry is locked.

1Write permitted (requires R=1)

PMP entry 32 grants write permission only when R=1; the R=0 and W=1 combination is officially reserved and is not a portable configuration.

Open Official Manual
0

pmp32cfg.R

RW

Read permission for PMP entry 32.

pmp32cfg.R (bit 0) — Read permission for PMP entry 32.

What This Field Controls

  • - Read permission for PMP entry 32.

Common Values

pmp32cfg.R
0Read denied

PMP entry 32 does not grant read permission; matching S/U read accesses fail, while M-mode reads are constrained by this bit only when this entry is locked.

1Read permitted

PMP entry 32 grants read permission when this entry matches and other PMP, PMA, and privilege rules also allow the access.

Open Official Manual
15

pmp33cfg.L

RW

Lock bit for PMP entry 33.

pmp33cfg.L (bit 15) — Lock bit for PMP entry 33.

What This Field Controls

  • - Lock bit for PMP entry 33.

Common Values

pmp33cfg.L
0Unlocked

PMP entry 33 is not locked; this entry's configuration may be modified under WARL rules. M-mode accesses matching this entry succeed, and R/W/X permissions constrain only S/U effective-privilege accesses. Note that pmpaddr33 may still be locked by a later locked TOR entry.

1Locked

PMP entry 33 is locked; writes to pmp33cfg and pmpaddr33 are ignored until hart reset, and R/W/X permissions apply to all privilege modes. If A=TOR, pmpaddr32 is also locked.

Open Official Manual
14:13

pmp33cfg.reserved

RO

Reserved bits for PMP entry 33; writes follow WARL/reserved-bit rules.

pmp33cfg.reserved (bits 14:13) — Reserved bits for PMP entry 33; writes follow WARL/reserved-bit rules.

What This Field Controls

  • - Reserved bits for PMP entry 33; writes follow WARL/reserved-bit rules.

Common Values

This field is better understood together with surrounding context than as a fixed memorized enumeration.

Open Official Manual
12:11

pmp33cfg.A

RW

Address-matching mode for PMP entry 33.

pmp33cfg.A (bits 12:11) — Address-matching mode for PMP entry 33.

What This Field Controls

  • - Address-matching mode for PMP entry 33.

Common Values

pmp33cfg.A
0OFF

PMP entry 33 is disabled and matches no addresses.

1TOR

PMP entry 33 uses top-of-range matching; the upper bound comes from pmpaddr33, and the lower bound comes from pmpaddr32.

2NA4

PMP entry 33 matches a naturally aligned four-byte region; if the platform PMP grain does not support NA4, this encoding is not selectable.

3NAPOT

PMP entry 33 matches a naturally aligned power-of-two region of at least 8 bytes, with the size encoded in low-order bits of pmpaddr33.

Open Official Manual
10

pmp33cfg.X

RW

Execute permission for PMP entry 33.

pmp33cfg.X (bit 10) — Execute permission for PMP entry 33.

What This Field Controls

  • - Execute permission for PMP entry 33.

Common Values

pmp33cfg.X
0Execute denied

PMP entry 33 does not grant execute permission; matching S/U instruction fetches fail, while M-mode instruction fetches are constrained by this bit only when this entry is locked.

1Execute permitted

PMP entry 33 grants execute permission when this entry matches and other PMP, PMA, and privilege rules also allow the access.

Open Official Manual
9

pmp33cfg.W

RW

Write permission for PMP entry 33.

pmp33cfg.W (bit 9) — Write permission for PMP entry 33.

What This Field Controls

  • - Write permission for PMP entry 33.

Common Values

pmp33cfg.W
0Write denied

PMP entry 33 does not grant write permission; matching S/U store, AMO, and other write-class accesses fail, while M-mode writes are constrained by this bit only when this entry is locked.

1Write permitted (requires R=1)

PMP entry 33 grants write permission only when R=1; the R=0 and W=1 combination is officially reserved and is not a portable configuration.

Open Official Manual
8

pmp33cfg.R

RW

Read permission for PMP entry 33.

pmp33cfg.R (bit 8) — Read permission for PMP entry 33.

What This Field Controls

  • - Read permission for PMP entry 33.

Common Values

pmp33cfg.R
0Read denied

PMP entry 33 does not grant read permission; matching S/U read accesses fail, while M-mode reads are constrained by this bit only when this entry is locked.

1Read permitted

PMP entry 33 grants read permission when this entry matches and other PMP, PMA, and privilege rules also allow the access.

Open Official Manual
23

pmp34cfg.L

RW

Lock bit for PMP entry 34.

pmp34cfg.L (bit 23) — Lock bit for PMP entry 34.

What This Field Controls

  • - Lock bit for PMP entry 34.

Common Values

pmp34cfg.L
0Unlocked

PMP entry 34 is not locked; this entry's configuration may be modified under WARL rules. M-mode accesses matching this entry succeed, and R/W/X permissions constrain only S/U effective-privilege accesses. Note that pmpaddr34 may still be locked by a later locked TOR entry.

1Locked

PMP entry 34 is locked; writes to pmp34cfg and pmpaddr34 are ignored until hart reset, and R/W/X permissions apply to all privilege modes. If A=TOR, pmpaddr33 is also locked.

Open Official Manual
22:21

pmp34cfg.reserved

RO

Reserved bits for PMP entry 34; writes follow WARL/reserved-bit rules.

pmp34cfg.reserved (bits 22:21) — Reserved bits for PMP entry 34; writes follow WARL/reserved-bit rules.

What This Field Controls

  • - Reserved bits for PMP entry 34; writes follow WARL/reserved-bit rules.

Common Values

This field is better understood together with surrounding context than as a fixed memorized enumeration.

Open Official Manual
20:19

pmp34cfg.A

RW

Address-matching mode for PMP entry 34.

pmp34cfg.A (bits 20:19) — Address-matching mode for PMP entry 34.

What This Field Controls

  • - Address-matching mode for PMP entry 34.

Common Values

pmp34cfg.A
0OFF

PMP entry 34 is disabled and matches no addresses.

1TOR

PMP entry 34 uses top-of-range matching; the upper bound comes from pmpaddr34, and the lower bound comes from pmpaddr33.

2NA4

PMP entry 34 matches a naturally aligned four-byte region; if the platform PMP grain does not support NA4, this encoding is not selectable.

3NAPOT

PMP entry 34 matches a naturally aligned power-of-two region of at least 8 bytes, with the size encoded in low-order bits of pmpaddr34.

Open Official Manual
18

pmp34cfg.X

RW

Execute permission for PMP entry 34.

pmp34cfg.X (bit 18) — Execute permission for PMP entry 34.

What This Field Controls

  • - Execute permission for PMP entry 34.

Common Values

pmp34cfg.X
0Execute denied

PMP entry 34 does not grant execute permission; matching S/U instruction fetches fail, while M-mode instruction fetches are constrained by this bit only when this entry is locked.

1Execute permitted

PMP entry 34 grants execute permission when this entry matches and other PMP, PMA, and privilege rules also allow the access.

Open Official Manual
17

pmp34cfg.W

RW

Write permission for PMP entry 34.

pmp34cfg.W (bit 17) — Write permission for PMP entry 34.

What This Field Controls

  • - Write permission for PMP entry 34.

Common Values

pmp34cfg.W
0Write denied

PMP entry 34 does not grant write permission; matching S/U store, AMO, and other write-class accesses fail, while M-mode writes are constrained by this bit only when this entry is locked.

1Write permitted (requires R=1)

PMP entry 34 grants write permission only when R=1; the R=0 and W=1 combination is officially reserved and is not a portable configuration.

Open Official Manual
16

pmp34cfg.R

RW

Read permission for PMP entry 34.

pmp34cfg.R (bit 16) — Read permission for PMP entry 34.

What This Field Controls

  • - Read permission for PMP entry 34.

Common Values

pmp34cfg.R
0Read denied

PMP entry 34 does not grant read permission; matching S/U read accesses fail, while M-mode reads are constrained by this bit only when this entry is locked.

1Read permitted

PMP entry 34 grants read permission when this entry matches and other PMP, PMA, and privilege rules also allow the access.

Open Official Manual
31

pmp35cfg.L

RW

Lock bit for PMP entry 35.

pmp35cfg.L (bit 31) — Lock bit for PMP entry 35.

What This Field Controls

  • - Lock bit for PMP entry 35.

Common Values

pmp35cfg.L
0Unlocked

PMP entry 35 is not locked; this entry's configuration may be modified under WARL rules. M-mode accesses matching this entry succeed, and R/W/X permissions constrain only S/U effective-privilege accesses. Note that pmpaddr35 may still be locked by a later locked TOR entry.

1Locked

PMP entry 35 is locked; writes to pmp35cfg and pmpaddr35 are ignored until hart reset, and R/W/X permissions apply to all privilege modes. If A=TOR, pmpaddr34 is also locked.

Open Official Manual
30:29

pmp35cfg.reserved

RO

Reserved bits for PMP entry 35; writes follow WARL/reserved-bit rules.

pmp35cfg.reserved (bits 30:29) — Reserved bits for PMP entry 35; writes follow WARL/reserved-bit rules.

What This Field Controls

  • - Reserved bits for PMP entry 35; writes follow WARL/reserved-bit rules.

Common Values

This field is better understood together with surrounding context than as a fixed memorized enumeration.

Open Official Manual
28:27

pmp35cfg.A

RW

Address-matching mode for PMP entry 35.

pmp35cfg.A (bits 28:27) — Address-matching mode for PMP entry 35.

What This Field Controls

  • - Address-matching mode for PMP entry 35.

Common Values

pmp35cfg.A
0OFF

PMP entry 35 is disabled and matches no addresses.

1TOR

PMP entry 35 uses top-of-range matching; the upper bound comes from pmpaddr35, and the lower bound comes from pmpaddr34.

2NA4

PMP entry 35 matches a naturally aligned four-byte region; if the platform PMP grain does not support NA4, this encoding is not selectable.

3NAPOT

PMP entry 35 matches a naturally aligned power-of-two region of at least 8 bytes, with the size encoded in low-order bits of pmpaddr35.

Open Official Manual
26

pmp35cfg.X

RW

Execute permission for PMP entry 35.

pmp35cfg.X (bit 26) — Execute permission for PMP entry 35.

What This Field Controls

  • - Execute permission for PMP entry 35.

Common Values

pmp35cfg.X
0Execute denied

PMP entry 35 does not grant execute permission; matching S/U instruction fetches fail, while M-mode instruction fetches are constrained by this bit only when this entry is locked.

1Execute permitted

PMP entry 35 grants execute permission when this entry matches and other PMP, PMA, and privilege rules also allow the access.

Open Official Manual
25

pmp35cfg.W

RW

Write permission for PMP entry 35.

pmp35cfg.W (bit 25) — Write permission for PMP entry 35.

What This Field Controls

  • - Write permission for PMP entry 35.

Common Values

pmp35cfg.W
0Write denied

PMP entry 35 does not grant write permission; matching S/U store, AMO, and other write-class accesses fail, while M-mode writes are constrained by this bit only when this entry is locked.

1Write permitted (requires R=1)

PMP entry 35 grants write permission only when R=1; the R=0 and W=1 combination is officially reserved and is not a portable configuration.

Open Official Manual
24

pmp35cfg.R

RW

Read permission for PMP entry 35.

pmp35cfg.R (bit 24) — Read permission for PMP entry 35.

What This Field Controls

  • - Read permission for PMP entry 35.

Common Values

pmp35cfg.R
0Read denied

PMP entry 35 does not grant read permission; matching S/U read accesses fail, while M-mode reads are constrained by this bit only when this entry is locked.

1Read permitted

PMP entry 35 grants read permission when this entry matches and other PMP, PMA, and privilege rules also allow the access.

Open Official Manual
39

pmp36cfg.L

RW

Lock bit for PMP entry 36.

pmp36cfg.L (bit 39) — Lock bit for PMP entry 36.

What This Field Controls

  • - Lock bit for PMP entry 36.

Common Values

pmp36cfg.L
0Unlocked

PMP entry 36 is not locked; this entry's configuration may be modified under WARL rules. M-mode accesses matching this entry succeed, and R/W/X permissions constrain only S/U effective-privilege accesses. Note that pmpaddr36 may still be locked by a later locked TOR entry.

1Locked

PMP entry 36 is locked; writes to pmp36cfg and pmpaddr36 are ignored until hart reset, and R/W/X permissions apply to all privilege modes. If A=TOR, pmpaddr35 is also locked.

Open Official Manual
38:37

pmp36cfg.reserved

RO

Reserved bits for PMP entry 36; writes follow WARL/reserved-bit rules.

pmp36cfg.reserved (bits 38:37) — Reserved bits for PMP entry 36; writes follow WARL/reserved-bit rules.

What This Field Controls

  • - Reserved bits for PMP entry 36; writes follow WARL/reserved-bit rules.

Common Values

This field is better understood together with surrounding context than as a fixed memorized enumeration.

Open Official Manual
36:35

pmp36cfg.A

RW

Address-matching mode for PMP entry 36.

pmp36cfg.A (bits 36:35) — Address-matching mode for PMP entry 36.

What This Field Controls

  • - Address-matching mode for PMP entry 36.

Common Values

pmp36cfg.A
0OFF

PMP entry 36 is disabled and matches no addresses.

1TOR

PMP entry 36 uses top-of-range matching; the upper bound comes from pmpaddr36, and the lower bound comes from pmpaddr35.

2NA4

PMP entry 36 matches a naturally aligned four-byte region; if the platform PMP grain does not support NA4, this encoding is not selectable.

3NAPOT

PMP entry 36 matches a naturally aligned power-of-two region of at least 8 bytes, with the size encoded in low-order bits of pmpaddr36.

Open Official Manual
34

pmp36cfg.X

RW

Execute permission for PMP entry 36.

pmp36cfg.X (bit 34) — Execute permission for PMP entry 36.

What This Field Controls

  • - Execute permission for PMP entry 36.

Common Values

pmp36cfg.X
0Execute denied

PMP entry 36 does not grant execute permission; matching S/U instruction fetches fail, while M-mode instruction fetches are constrained by this bit only when this entry is locked.

1Execute permitted

PMP entry 36 grants execute permission when this entry matches and other PMP, PMA, and privilege rules also allow the access.

Open Official Manual
33

pmp36cfg.W

RW

Write permission for PMP entry 36.

pmp36cfg.W (bit 33) — Write permission for PMP entry 36.

What This Field Controls

  • - Write permission for PMP entry 36.

Common Values

pmp36cfg.W
0Write denied

PMP entry 36 does not grant write permission; matching S/U store, AMO, and other write-class accesses fail, while M-mode writes are constrained by this bit only when this entry is locked.

1Write permitted (requires R=1)

PMP entry 36 grants write permission only when R=1; the R=0 and W=1 combination is officially reserved and is not a portable configuration.

Open Official Manual
32

pmp36cfg.R

RW

Read permission for PMP entry 36.

pmp36cfg.R (bit 32) — Read permission for PMP entry 36.

What This Field Controls

  • - Read permission for PMP entry 36.

Common Values

pmp36cfg.R
0Read denied

PMP entry 36 does not grant read permission; matching S/U read accesses fail, while M-mode reads are constrained by this bit only when this entry is locked.

1Read permitted

PMP entry 36 grants read permission when this entry matches and other PMP, PMA, and privilege rules also allow the access.

Open Official Manual
47

pmp37cfg.L

RW

Lock bit for PMP entry 37.

pmp37cfg.L (bit 47) — Lock bit for PMP entry 37.

What This Field Controls

  • - Lock bit for PMP entry 37.

Common Values

pmp37cfg.L
0Unlocked

PMP entry 37 is not locked; this entry's configuration may be modified under WARL rules. M-mode accesses matching this entry succeed, and R/W/X permissions constrain only S/U effective-privilege accesses. Note that pmpaddr37 may still be locked by a later locked TOR entry.

1Locked

PMP entry 37 is locked; writes to pmp37cfg and pmpaddr37 are ignored until hart reset, and R/W/X permissions apply to all privilege modes. If A=TOR, pmpaddr36 is also locked.

Open Official Manual
46:45

pmp37cfg.reserved

RO

Reserved bits for PMP entry 37; writes follow WARL/reserved-bit rules.

pmp37cfg.reserved (bits 46:45) — Reserved bits for PMP entry 37; writes follow WARL/reserved-bit rules.

What This Field Controls

  • - Reserved bits for PMP entry 37; writes follow WARL/reserved-bit rules.

Common Values

This field is better understood together with surrounding context than as a fixed memorized enumeration.

Open Official Manual
44:43

pmp37cfg.A

RW

Address-matching mode for PMP entry 37.

pmp37cfg.A (bits 44:43) — Address-matching mode for PMP entry 37.

What This Field Controls

  • - Address-matching mode for PMP entry 37.

Common Values

pmp37cfg.A
0OFF

PMP entry 37 is disabled and matches no addresses.

1TOR

PMP entry 37 uses top-of-range matching; the upper bound comes from pmpaddr37, and the lower bound comes from pmpaddr36.

2NA4

PMP entry 37 matches a naturally aligned four-byte region; if the platform PMP grain does not support NA4, this encoding is not selectable.

3NAPOT

PMP entry 37 matches a naturally aligned power-of-two region of at least 8 bytes, with the size encoded in low-order bits of pmpaddr37.

Open Official Manual
42

pmp37cfg.X

RW

Execute permission for PMP entry 37.

pmp37cfg.X (bit 42) — Execute permission for PMP entry 37.

What This Field Controls

  • - Execute permission for PMP entry 37.

Common Values

pmp37cfg.X
0Execute denied

PMP entry 37 does not grant execute permission; matching S/U instruction fetches fail, while M-mode instruction fetches are constrained by this bit only when this entry is locked.

1Execute permitted

PMP entry 37 grants execute permission when this entry matches and other PMP, PMA, and privilege rules also allow the access.

Open Official Manual
41

pmp37cfg.W

RW

Write permission for PMP entry 37.

pmp37cfg.W (bit 41) — Write permission for PMP entry 37.

What This Field Controls

  • - Write permission for PMP entry 37.

Common Values

pmp37cfg.W
0Write denied

PMP entry 37 does not grant write permission; matching S/U store, AMO, and other write-class accesses fail, while M-mode writes are constrained by this bit only when this entry is locked.

1Write permitted (requires R=1)

PMP entry 37 grants write permission only when R=1; the R=0 and W=1 combination is officially reserved and is not a portable configuration.

Open Official Manual
40

pmp37cfg.R

RW

Read permission for PMP entry 37.

pmp37cfg.R (bit 40) — Read permission for PMP entry 37.

What This Field Controls

  • - Read permission for PMP entry 37.

Common Values

pmp37cfg.R
0Read denied

PMP entry 37 does not grant read permission; matching S/U read accesses fail, while M-mode reads are constrained by this bit only when this entry is locked.

1Read permitted

PMP entry 37 grants read permission when this entry matches and other PMP, PMA, and privilege rules also allow the access.

Open Official Manual
55

pmp38cfg.L

RW

Lock bit for PMP entry 38.

pmp38cfg.L (bit 55) — Lock bit for PMP entry 38.

What This Field Controls

  • - Lock bit for PMP entry 38.

Common Values

pmp38cfg.L
0Unlocked

PMP entry 38 is not locked; this entry's configuration may be modified under WARL rules. M-mode accesses matching this entry succeed, and R/W/X permissions constrain only S/U effective-privilege accesses. Note that pmpaddr38 may still be locked by a later locked TOR entry.

1Locked

PMP entry 38 is locked; writes to pmp38cfg and pmpaddr38 are ignored until hart reset, and R/W/X permissions apply to all privilege modes. If A=TOR, pmpaddr37 is also locked.

Open Official Manual
54:53

pmp38cfg.reserved

RO

Reserved bits for PMP entry 38; writes follow WARL/reserved-bit rules.

pmp38cfg.reserved (bits 54:53) — Reserved bits for PMP entry 38; writes follow WARL/reserved-bit rules.

What This Field Controls

  • - Reserved bits for PMP entry 38; writes follow WARL/reserved-bit rules.

Common Values

This field is better understood together with surrounding context than as a fixed memorized enumeration.

Open Official Manual
52:51

pmp38cfg.A

RW

Address-matching mode for PMP entry 38.

pmp38cfg.A (bits 52:51) — Address-matching mode for PMP entry 38.

What This Field Controls

  • - Address-matching mode for PMP entry 38.

Common Values

pmp38cfg.A
0OFF

PMP entry 38 is disabled and matches no addresses.

1TOR

PMP entry 38 uses top-of-range matching; the upper bound comes from pmpaddr38, and the lower bound comes from pmpaddr37.

2NA4

PMP entry 38 matches a naturally aligned four-byte region; if the platform PMP grain does not support NA4, this encoding is not selectable.

3NAPOT

PMP entry 38 matches a naturally aligned power-of-two region of at least 8 bytes, with the size encoded in low-order bits of pmpaddr38.

Open Official Manual
50

pmp38cfg.X

RW

Execute permission for PMP entry 38.

pmp38cfg.X (bit 50) — Execute permission for PMP entry 38.

What This Field Controls

  • - Execute permission for PMP entry 38.

Common Values

pmp38cfg.X
0Execute denied

PMP entry 38 does not grant execute permission; matching S/U instruction fetches fail, while M-mode instruction fetches are constrained by this bit only when this entry is locked.

1Execute permitted

PMP entry 38 grants execute permission when this entry matches and other PMP, PMA, and privilege rules also allow the access.

Open Official Manual
49

pmp38cfg.W

RW

Write permission for PMP entry 38.

pmp38cfg.W (bit 49) — Write permission for PMP entry 38.

What This Field Controls

  • - Write permission for PMP entry 38.

Common Values

pmp38cfg.W
0Write denied

PMP entry 38 does not grant write permission; matching S/U store, AMO, and other write-class accesses fail, while M-mode writes are constrained by this bit only when this entry is locked.

1Write permitted (requires R=1)

PMP entry 38 grants write permission only when R=1; the R=0 and W=1 combination is officially reserved and is not a portable configuration.

Open Official Manual
48

pmp38cfg.R

RW

Read permission for PMP entry 38.

pmp38cfg.R (bit 48) — Read permission for PMP entry 38.

What This Field Controls

  • - Read permission for PMP entry 38.

Common Values

pmp38cfg.R
0Read denied

PMP entry 38 does not grant read permission; matching S/U read accesses fail, while M-mode reads are constrained by this bit only when this entry is locked.

1Read permitted

PMP entry 38 grants read permission when this entry matches and other PMP, PMA, and privilege rules also allow the access.

Open Official Manual
63

pmp39cfg.L

RW

Lock bit for PMP entry 39.

pmp39cfg.L (bit 63) — Lock bit for PMP entry 39.

What This Field Controls

  • - Lock bit for PMP entry 39.

Common Values

pmp39cfg.L
0Unlocked

PMP entry 39 is not locked; this entry's configuration may be modified under WARL rules. M-mode accesses matching this entry succeed, and R/W/X permissions constrain only S/U effective-privilege accesses. Note that pmpaddr39 may still be locked by a later locked TOR entry.

1Locked

PMP entry 39 is locked; writes to pmp39cfg and pmpaddr39 are ignored until hart reset, and R/W/X permissions apply to all privilege modes. If A=TOR, pmpaddr38 is also locked.

Open Official Manual
62:61

pmp39cfg.reserved

RO

Reserved bits for PMP entry 39; writes follow WARL/reserved-bit rules.

pmp39cfg.reserved (bits 62:61) — Reserved bits for PMP entry 39; writes follow WARL/reserved-bit rules.

What This Field Controls

  • - Reserved bits for PMP entry 39; writes follow WARL/reserved-bit rules.

Common Values

This field is better understood together with surrounding context than as a fixed memorized enumeration.

Open Official Manual
60:59

pmp39cfg.A

RW

Address-matching mode for PMP entry 39.

pmp39cfg.A (bits 60:59) — Address-matching mode for PMP entry 39.

What This Field Controls

  • - Address-matching mode for PMP entry 39.

Common Values

pmp39cfg.A
0OFF

PMP entry 39 is disabled and matches no addresses.

1TOR

PMP entry 39 uses top-of-range matching; the upper bound comes from pmpaddr39, and the lower bound comes from pmpaddr38.

2NA4

PMP entry 39 matches a naturally aligned four-byte region; if the platform PMP grain does not support NA4, this encoding is not selectable.

3NAPOT

PMP entry 39 matches a naturally aligned power-of-two region of at least 8 bytes, with the size encoded in low-order bits of pmpaddr39.

Open Official Manual
58

pmp39cfg.X

RW

Execute permission for PMP entry 39.

pmp39cfg.X (bit 58) — Execute permission for PMP entry 39.

What This Field Controls

  • - Execute permission for PMP entry 39.

Common Values

pmp39cfg.X
0Execute denied

PMP entry 39 does not grant execute permission; matching S/U instruction fetches fail, while M-mode instruction fetches are constrained by this bit only when this entry is locked.

1Execute permitted

PMP entry 39 grants execute permission when this entry matches and other PMP, PMA, and privilege rules also allow the access.

Open Official Manual
57

pmp39cfg.W

RW

Write permission for PMP entry 39.

pmp39cfg.W (bit 57) — Write permission for PMP entry 39.

What This Field Controls

  • - Write permission for PMP entry 39.

Common Values

pmp39cfg.W
0Write denied

PMP entry 39 does not grant write permission; matching S/U store, AMO, and other write-class accesses fail, while M-mode writes are constrained by this bit only when this entry is locked.

1Write permitted (requires R=1)

PMP entry 39 grants write permission only when R=1; the R=0 and W=1 combination is officially reserved and is not a portable configuration.

Open Official Manual
56

pmp39cfg.R

RW

Read permission for PMP entry 39.

pmp39cfg.R (bit 56) — Read permission for PMP entry 39.

What This Field Controls

  • - Read permission for PMP entry 39.

Common Values

pmp39cfg.R
0Read denied

PMP entry 39 does not grant read permission; matching S/U read accesses fail, while M-mode reads are constrained by this bit only when this entry is locked.

1Read permitted

PMP entry 39 grants read permission when this entry matches and other PMP, PMA, and privilege rules also allow the access.

Open Official Manual

What To Check First When Reading This CSR

  • - First confirm that the current hart implements pmpcfg8; unimplemented or insufficiently privileged accesses raise an illegal-instruction exception.
  • - Use address 0x3A8 and the lowest access privilege (Machine) to decide whether software may read it directly.
  • - Do not assume fixed values for reserved, WARL, or WLRL bits; interpret the value according to the specification and implementation.

Risk Checks Before Writing

  • - Preserve bits that are not being changed so reserved or implementation-defined fields are not written with invalid values.
  • - Prefer CSRRS/CSRRC for local set/clear operations to avoid CSRRW overwriting concurrently updated status bits.

Put It Back Into A Real Flow

1

During initialization or the relevant privileged flow, software reads pmpcfg8 to observe the current state.

2

Modify only the target fields while preserving all other bits.

3

Read back the CSR or validate through later trap, interrupt, or context-switch behavior that the setting took effect.