Function iommu::init

source ·
pub fn init(
    host_address_width: u8,
    pci_segment_number: u16,
    register_base_address: PhysicalAddress,
    page_table: &mut PageTable
) -> Result<(), &'static str>
Expand description

Initialize the IOMMU hardware.

Currently this just sets up basic structures and prints out information about the IOMMU; it doesn’t actually create any I/O device page tables.

Arguments

  • host_address_width: number of address bits available for DMA
  • pci_segment_number: PCI segment associated with this IOMMU
  • register_base_address: base address of register set
  • page_table: page table to install mapping