Commit 50d3fb56 authored by David Woodhouse's avatar David Woodhouse
Browse files

iommu/vt-d: Use plain writeq() for dmar_writeq() where available

parent ba2374fd
Loading
Loading
Loading
Loading
+6 −8
Original line number Diff line number Diff line
@@ -59,14 +59,11 @@
#define DMAR_IRTA_REG	0xb8    /* Interrupt remapping table addr register */

#define OFFSET_STRIDE		(9)
/*
#define dmar_readl(dmar, reg) readl(dmar + reg)
#define dmar_readq(dmar, reg) ({ \
		u32 lo, hi; \
		lo = readl(dmar + reg); \
		hi = readl(dmar + reg + 4); \
		(((u64) hi) << 32) + lo; })
*/

#ifdef CONFIG_64BIT
#define dmar_readq(a) readq(a)
#define dmar_writeq(a,v) writeq(v,a)
#else
static inline u64 dmar_readq(void __iomem *addr)
{
	u32 lo, hi;
@@ -80,6 +77,7 @@ static inline void dmar_writeq(void __iomem *addr, u64 val)
	writel((u32)val, addr);
	writel((u32)(val >> 32), addr + 4);
}
#endif

#define DMAR_VER_MAJOR(v)		(((v) & 0xf0) >> 4)
#define DMAR_VER_MINOR(v)		((v) & 0x0f)