Operation From a Debug Adapter

Debug adapters should access the DSU registers in the external address range [0x100 – 0x1FFF].

If STATUSB.DAL is equal to 0x0, accessing the first 0x100 bytes causes the DSU security filter to return an error to the DAP.

(SAM L11 only): If STATUSB.DAL is equal to 0x1, debug accesses will go through the DSU security filter but will be forced as non-secure, therefore the DSU internal address space will not be accessible and any access in this case is discarded (writes are ignored, reads return 0) and raise STATUSA.PERR.

Table 1. DAP transaction authorizations and error response types
DAL Debugger Access Type DAP transaction allowed?
DSU internal address space DSU external address space Other than PPB PPB
0 Secure No (Bus Error) Yes No (Bus Error) No (Bus Error)
0 Non-Secure No (Bus Error) Yes No (Bus Error) No (Bus Error)

(SAM L11 only)

Secure No (PERR) Yes Yes (NS,PERR) Yes (ARMv8M)

(SAM L11 only)

Non-Secure No (PERR) Yes Yes (NS,PERR) Yes (ARMv8M)
2 Secure Yes Yes Yes Yes
2 Non-Secure No (PERR) Yes Yes Yes

Bus Error: A Bus Error is sent back to the DAP setting its sticky bit error.

PERR: No bus error, STATUSA.PERR rises, writes are discarded, reads always return 0

NS, PERR: Access forced to non-secure, secure violations are reported in STATUSA.PERR.

Note: Refer to the ARM Debug Interface Architecture Specification for details.