]> Git Repo - qemu.git/commit
hw/arm/smmuv3: Apply address mask to linear strtab base address
authorSimon Veith <[email protected]>
Fri, 20 Dec 2019 14:03:00 +0000 (14:03 +0000)
committerPeter Maydell <[email protected]>
Fri, 20 Dec 2019 14:03:00 +0000 (14:03 +0000)
commit3d44c60500785f18bb469c9de0aeba7415c0f28f
tree94eabf90daba15a5ff1cc4c0d6489a699af7063c
parent058d095532dbd50aa3a2b5ef907b76c08f7d6de7
hw/arm/smmuv3: Apply address mask to linear strtab base address

In the SMMU_STRTAB_BASE register, the stream table base address only
occupies bits [51:6]. Other bits, such as RA (bit [62]), must be masked
out to obtain the base address.

The branch for 2-level stream tables correctly applies this mask by way
of SMMU_BASE_ADDR_MASK, but the one for linear stream tables does not.

Apply the missing mask in that case as well so that the correct stream
base address is used by guests which configure a linear stream table.

Linux guests are unaffected by this change because they choose a 2-level
stream table layout for the QEMU SMMUv3, based on the size of its stream
ID space.

ref. ARM IHI 0070C, section 6.3.23.

Signed-off-by: Simon Veith <[email protected]>
Acked-by: Eric Auger <[email protected]>
Tested-by: Eric Auger <[email protected]>
Message-id: 1576509312[email protected]
Cc: Eric Auger <[email protected]>
Cc: [email protected]
Cc: [email protected]
Acked-by: Eric Auger <[email protected]>
Reviewed-by: Peter Maydell <[email protected]>
Signed-off-by: Peter Maydell <[email protected]>
hw/arm/smmuv3.c
This page took 0.025447 seconds and 4 git commands to generate.