1. 31 3月, 2015 1 次提交
  2. 04 11月, 2014 1 次提交
    • O
      iommu: Add iommu_map_sg() function · 315786eb
      Olav Haugan 提交于
      Mapping and unmapping are more often than not in the critical path.
      map_sg allows IOMMU driver implementations to optimize the process
      of mapping buffers into the IOMMU page tables.
      
      Instead of mapping a buffer one page at a time and requiring potentially
      expensive TLB operations for each page, this function allows the driver
      to map all pages in one go and defer TLB maintenance until after all
      pages have been mapped.
      
      Additionally, the mapping operation would be faster in general since
      clients does not have to keep calling map API over and over again for
      each physically contiguous chunk of memory that needs to be mapped to a
      virtually contiguous region.
      Signed-off-by: NOlav Haugan <ohaugan@codeaurora.org>
      Signed-off-by: NJoerg Roedel <jroedel@suse.de>
      315786eb
  3. 07 7月, 2014 1 次提交
  4. 28 2月, 2014 1 次提交
    • M
      arm: dma-mapping: remove order parameter from arm_iommu_create_mapping() · 68efd7d2
      Marek Szyprowski 提交于
      The 'order' parameter for IOMMU-aware dma-mapping implementation was
      introduced mainly as a hack to reduce size of the bitmap used for
      tracking IO virtual address space. Since now it is possible to dynamically
      resize the bitmap, this hack is not needed and can be removed without any
      impact on the client devices. This way the parameters for
      arm_iommu_create_mapping() becomes much easier to understand. 'size'
      parameter now means the maximum supported IO address space size.
      
      The code will allocate (resize) bitmap in chunks, ensuring that a single
      chunk is not larger than a single memory page to avoid unreliable
      allocations of size larger than PAGE_SIZE in atomic context.
      Signed-off-by: NMarek Szyprowski <m.szyprowski@samsung.com>
      68efd7d2
  5. 07 1月, 2014 1 次提交
  6. 03 4月, 2013 1 次提交
  7. 06 2月, 2013 1 次提交
    • H
      iommu/shmobile: Add iommu driver for Renesas IPMMU modules · c2c460f7
      Hideki EIRAKU 提交于
      This is the Renesas IPMMU driver and IOMMU API implementation.
      
      The IPMMU module supports the MMU function and the PMB function.  The
      MMU function provides address translation by pagetable compatible with
      ARMv6.  The PMB function provides address translation including
      tile-linear translation.  This patch implements the MMU function.
      
      The iommu driver does not register a platform driver directly because:
      - the register space of the MMU function and the PMB function
        have a common register (used for settings flush), so they should ideally
        have a way to appropriately share this register.
      - the MMU function uses the IOMMU API while the PMB function does not.
      - the two functions may be used independently.
      Signed-off-by: NHideki EIRAKU <hdk@igel.co.jp>
      Signed-off-by: NJoerg Roedel <joro@8bytes.org>
      c2c460f7