- APB_MISC_xxx: Interrupt status and control (ISR non-lockable)
- APB_ERR_CTRL: Programming interface access error control
- SAFETY_CHK: Safety check ( non-lockable)
- PROT_CTRL: Protection control
- ERR_STATUSxxx: Transaction error address (non-lockable)
- SMID_xx: System management ID profiles
- LOCK: Register access lock (once set, stays set until POR reset)
- ECC_xxx: First failing address, data and ECC register access with correctable/uncorrectable error
- APER_TZ_xxx: Source agent message buffer TrustZone security access settings
- xxx_TRIG, xxx_OBS, xxx_ISR, xxx_IER, xxx_IDR: Interrupt control and status for the agents
Access to the registers are controlled by the LPD_XPPU protection unit and the IPI (see Versal Adaptive SoC Register Reference (AM012)).
Agent Interrupt Registers
The IPI interrupt registers have access restriction based on the processor's SMID and security settings in the APER_TZ registers.
The IPI processor interrupt management registers are not affected by the IPI register LOCK control register.
Each agent interrupt is managed by a set of six registers:
- TRIG trigger register is a write only
- OBS observation register is read only
- ISR interrupt status register is read and W1C
- IMR interrupt mask registers is read only
- IER interrupt enable register is write only
- IDR interrupt disable register is write only
The IPI control registers are summarized in the following table.
Register Name | Access Type | Lockable | Description |
---|---|---|---|
APB_CTRL | RW | Yes | APB programming interface address decode error signal enable |
R, W1C |
All except ISR | Access violation and ECC error interrupt status, mask, enable and disable | |
SAFETY_CHK | RW | No | Safety check registers |
PROT_CTRL | RW | Yes | Enable permission checking, parity error checking, and error response |
R | No | Address and ID of error transaction | |
R | Yes |
SMID identification for: |
|
RW | Yes | System management identification for software defined sources | |
LOCK | RWSO | NA | Locks write access to all IPI registers except the ISR |
IPI_ECC_CTRL | RW | Yes | ECC control |
R | Yes | First failing address, data and ECC register access with correctable error | |
R | Yes | First failing address, data and ECC register access with un-correctable error | |
Yes | Fault injection count, data, and syndrome | ||
|
RW | Yes |
Source agent message buffer TrustZone security access settings: |
Register Write Lock Bit
The IPI registers can only be configured by a TrustZone secure transaction. The secure transaction is routed through the LPD_XPPU protection unit to make sure the transaction host has access privileges before it is allowed to reach the IPI programming interface with its additional restrictions.
Writes to the IPI registers can be blocked by setting the LOCK [ReqWrDis] lock bit = 1. Once this bit is set, it can only be cleared by a POR.
After the lock bit is set, many of the registers can no longer be written to until a POR occurs.