summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-msm/iommu.c
Commit message (Collapse)AuthorAgeFilesLines
* msm: iommu: Use the correct memory allocation flagStepan Moskovchenko2010-12-151-1/+1
| | | | | | | | | Change msm_iommu_map to use GFP_ATOMIC instead of GFP_KERNEL due to the fact that the call occurs within a spinlock-protected region. Signed-off-by: Stepan Moskovchenko <stepanm@codeaurora.org> Signed-off-by: David Brown <davidb@codeaurora.org>
* msm: iommu: Miscellaneous code cleanupStepan Moskovchenko2010-12-011-12/+17
| | | | | | | | | Remove some unneeded assignments and messages, restructure a failure path in iova_to_phys, and make __flush_iotlb return int in preparation for adding IOMMU clock control. Signed-off-by: Stepan Moskovchenko <stepanm@codeaurora.org> Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
* msm: iommu: Support cache-coherent memory accessStepan Moskovchenko2010-12-011-11/+82
| | | | | | | | | | | | Add support for allowing IOMMU memory transactions to be cache coherent, eliminating the need for software cache management in certain situations. This can lead to improvements in performance and power usage, assuming the multimedia core's access pattern exhibits spatial locality and that its working set fits into the cache. Signed-off-by: Stepan Moskovchenko <stepanm@codeaurora.org> Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
* msm: iommu: Check if device is already attachedStepan Moskovchenko2010-12-011-0/+5
| | | | | | | | | | An IOMMU device can only be attached to one IOMMU domain at any given time. Check whether the device is already attached to a domain before allowing it to be attached to another domain. If so, return busy. Signed-off-by: Stepan Moskovchenko <stepanm@codeaurora.org> Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
* msm: iommu: Don't flush page tables if no devices attachedStepan Moskovchenko2010-11-301-6/+9
| | | | | | | | | | | Don't flush the page tables on an IOMMU domain if there are no IOMMU devices attached to the domain. The act of attaching to the domain will cause an implicit flush of those areas if the page tables are configured to not be L2 cacheable. Signed-off-by: Stepan Moskovchenko <stepanm@codeaurora.org> Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
* msm: iommu: Mark functions with the right section namesStepan Moskovchenko2010-11-301-1/+1
| | | | | | | | Mark the init and exit functions as __init and __exit where appropriate. Signed-off-by: Stepan Moskovchenko <stepanm@codeaurora.org> Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
* msm: Add MSM IOMMU supportStepan Moskovchenko2010-10-091-0/+597
Add support for the IOMMUs found on the upcoming Qualcomm MSM8x60 chips. These IOMMUs allow virtualization of the address space used by most of the multimedia cores on these chips. Signed-off-by: Stepan Moskovchenko <stepanm@codeaurora.org> Signed-off-by: Daniel Walker <dwalker@codeaurora.org>