Datasheet
Processor Integrated I/O (IIO) Configuration Registers
146 Datasheet, Volume 2
3.5.2.7 CTXCMD[0:1]—Context Command Register
Register: CTXCMD[0:1]
Addr: MMIO
BAR: VTBAR
Offset: 28h, 1028h
Bit Attr Default Description
63 RW 0
Invalidate Context Entry Cache (ICC)
Software requests invalidation of context-cache by setting this field.
Software must also set the requested invalidation granularity by
programming the CIRG field. Software must read back and check the ICC
field to be clear to confirm the invalidation is complete. Software must not
update this register when this field is set. Hardware clears the ICC field to
indicate the invalidation request is complete. Hardware also indicates the
granularity at which the invalidation operation was performed through the
CAIG field. Software must not submit another invalidation request through
this register while the ICC field is set.
Since information from the context-cache may be used by hardware to tag
IOTLB entries, software must perform domain-selective (or global)
invalidation of IOTLB after the context cache invalidation has completed.
62:61 RW 0
Context Invalidation Request Granularity (CIRG)
When requesting hardware to invalidate the context-entry cache (by setting
the ICC field), software writes the requested invalidation granularity
through this field.
Following are the encoding for the 2-bit CIRG field.
00 = Reserved
01 = Global Invalidation request. IIO supports this.
10 = Domain-selective invalidation request. The target domain-ID must be
specified in the DID field. IIO supports this.
11 = Device-selective invalidation request. The target SID must be
specified in the SID field, and the domain-ID (programmed in the
context-entry for this device) must be provided in the DID field. IIO
aliases the h/w behavior for this command to the ‘Domain-selective
invalidation request’.
Hardware indicates completion of the invalidation request by clearing the
ICC field. At this time, hardware also indicates the granularity at which the
actual invalidation was performed through the CAIG field.
60:59 RO 0
Context Actual Invalidation Granularity (CAIG)
Hardware reports the granularity at which an invalidation request was
processed through the CAIG field at the time of reporting invalidation
completion (by clearing the ICC field). The following are the encoding for
the 2-bit CAIG field.
00 = Reserved. This is the value on reset.
01 = Global Invalidation performed. IIO sets this in response to a global
invalidation request.
10 = Domain-selective invalidation performed using the domain-ID that
was specified by software in the DID field. IIO set this in response to a
domain-selective or device-selective invalidation request.
11 = Device-selective invalidation. IIO never sets this encoding.
58:34 RV 0000000h Reserved
33:32 RW 00b
Function Mask
Since IIO does not perform any device selective invalidation, this field is a
don’t care.
31:16 RW 0000h
Source ID
IIO ignores this field. (Used when performing device selective context
cache invalidation)
15:0 RW 0000h
Domain ID
Indicates the ID of the domain whose context-entries needs to be
selectively invalidated. S/W needs to program this for both domain and
device selective invalidates. IIO ignores Bits 15:8 since it supports only a 8-
bit Domain ID.