MFC r258002, r258024, r258027, r258051, r258052, r258243, r258244, r258002,
    r258024, r258027, r258051, r258052, r258243,

  Follow up r223485, which made AIM use the ABI thread pointer instead of
  PCPU fields for curthread, by doing the same to Book-E.

  Use the same implementation of copyinout.c for both AIM and Book-E.

  Actually add IOMMU domain to the list of known mappings.

  Following the approach with ACPI DMAR on x86, split IOMMU handling into
  a variant PCI bus instead of trying to shoehorn it into the PCI host bridge
  adapter.

  Make sure that TLB1 mappings are aligned correctly.