#define _JAILHOUSE_ASM_IOMMU_H
#include <jailhouse/entry.h>
+#include <jailhouse/cell.h>
#include <jailhouse/cell-config.h>
#include <jailhouse/pci.h>
#include <jailhouse/types.h>
#include <asm/apic.h>
-#include <asm/cell.h>
#include <asm/percpu.h>
+extern unsigned int fault_reporting_cpu_id;
+
+unsigned int iommu_count_units(void);
+unsigned int iommu_mmio_count_regions(struct cell *cell);
+
int iommu_init(void);
int iommu_cell_init(struct cell *cell);
void iommu_shutdown(void);
+struct per_cpu *iommu_select_fault_reporting_cpu(void);
void iommu_check_pending_faults(void);
-int iommu_mmio_access_handler(bool is_write, u64 addr, u32 *value);
-
bool iommu_cell_emulates_ir(struct cell *cell);
#endif