diff options
Diffstat (limited to 'drivers/iommu/amd_iommu_init.c')
-rw-r--r-- | drivers/iommu/amd_iommu_init.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/iommu/amd_iommu_init.c b/drivers/iommu/amd_iommu_init.c index bb2cd29e1658..d8f7000a466a 100644 --- a/drivers/iommu/amd_iommu_init.c +++ b/drivers/iommu/amd_iommu_init.c | |||
@@ -797,7 +797,8 @@ static int iommu_init_ga_log(struct amd_iommu *iommu) | |||
797 | entry = iommu_virt_to_phys(iommu->ga_log) | GA_LOG_SIZE_512; | 797 | entry = iommu_virt_to_phys(iommu->ga_log) | GA_LOG_SIZE_512; |
798 | memcpy_toio(iommu->mmio_base + MMIO_GA_LOG_BASE_OFFSET, | 798 | memcpy_toio(iommu->mmio_base + MMIO_GA_LOG_BASE_OFFSET, |
799 | &entry, sizeof(entry)); | 799 | &entry, sizeof(entry)); |
800 | entry = (iommu_virt_to_phys(iommu->ga_log) & 0xFFFFFFFFFFFFFULL) & ~7ULL; | 800 | entry = (iommu_virt_to_phys(iommu->ga_log_tail) & |
801 | (BIT_ULL(52)-1)) & ~7ULL; | ||
801 | memcpy_toio(iommu->mmio_base + MMIO_GA_LOG_TAIL_OFFSET, | 802 | memcpy_toio(iommu->mmio_base + MMIO_GA_LOG_TAIL_OFFSET, |
802 | &entry, sizeof(entry)); | 803 | &entry, sizeof(entry)); |
803 | writel(0x00, iommu->mmio_base + MMIO_GA_HEAD_OFFSET); | 804 | writel(0x00, iommu->mmio_base + MMIO_GA_HEAD_OFFSET); |