Signed-off-by: Wei Wang <wei.wang2@amd.com>
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Committed-by: Jan Beulich <jbeulich@suse.com>
static unsigned long get_gfn_from_base_reg(uint64_t base_raw)
{
- struct mmio_reg reg;
- uint64_t addr64;
-
- reg.lo = iommu_get_addr_lo_from_reg(base_raw & DMA_32BIT_MASK);
- reg.hi = iommu_get_addr_hi_from_reg(base_raw >> 32);
- addr64 = reg_to_u64(reg);
-
- ASSERT ( addr64 != 0 );
-
- return addr64 >> PAGE_SHIFT;
+ base_raw &= PADDR_MASK;
+ ASSERT ( base_raw != 0 );
+ return base_raw >> PAGE_SHIFT;
}
static void guest_iommu_deliver_msi(struct domain *d)
IOMMU_REG_BASE_ADDR_HIGH_SHIFT, reg);
}
-static inline uint32_t iommu_get_addr_lo_from_reg(uint32_t reg)
-{
- return get_field_from_reg_u32(reg, IOMMU_REG_BASE_ADDR_LOW_MASK,
- IOMMU_REG_BASE_ADDR_LOW_SHIFT);
-}
-
-static inline uint32_t iommu_get_addr_hi_from_reg(uint32_t reg)
-{
- return get_field_from_reg_u32(reg, IOMMU_REG_BASE_ADDR_HIGH_MASK,
- IOMMU_REG_BASE_ADDR_HIGH_SHIFT);
-}
-
#endif /* _ASM_X86_64_AMD_IOMMU_PROTO_H */