Visible to Intel only — GUID: vom1685986498032
Ixiasoft
Visible to Intel only — GUID: vom1685986498032
Ixiasoft
3.5.3. 2121468: C_BAD_STREAMID not asserted in certain conditions
Description
The MMU-600 does not generate C_BAD_STREAMID under certain conditions.
Conditions
This issue occurs when all the following conditions occur:
- The value of STE.CONT is greater than SMMU_(S)_STRTAB_BASE_CFG.LOG2SIZE
- A transaction is generated that uses this Stream table, and the resultant translation is cached in either the TBU uTLB, or MTLB, or both
- Another transaction uses a Stream ID that is outside the range of SMMU_(S)_STRTAB_BASE_CFG.LOG2SIZE, but is within the range of Stream IDs that STE.CONT determines
When the above conditions occur, the TCU does not generate a C_BAD_STREAMID as expected.
Impact
It is not expected that software programs an STE.CONT value that exceeds the span of the Stream table. It is also not expected that the device that is connected to the TBU generates an incorrect Stream ID.
If both these conditions occur, the transaction completes as determined by the Stream table information that is cached. This can result in data corruption or data being read by an unauthorized device.
Workaround
Ensure that the value of STE.CONT is not greater than SMMU_(S)_STRTAB_BASE_CFG.LOG2SIZE. This ensures that this erratum does not occur.
Category
Category C