]> git.baikalelectronics.ru Git - kernel.git/commit
iommu/core: pass a user-provided token to fault handlers
authorOhad Ben-Cohen <ohad@wizery.com>
Mon, 21 May 2012 17:20:05 +0000 (20:20 +0300)
committerJoerg Roedel <joerg.roedel@amd.com>
Tue, 22 May 2012 16:08:08 +0000 (18:08 +0200)
commit364b2cbb2301f7f0f7abe1212dc91944d499a2df
tree7b2f6e2c95e799084043e36266cecdc0a6198e01
parent27db80d95a7cf803679ea88ac0f0fbad45b6724c
iommu/core: pass a user-provided token to fault handlers

Sometimes a single IOMMU user may have to deal with several
different IOMMU devices (e.g. remoteproc).

When an IOMMU fault happens, such users have to regain their
context in order to deal with the fault.

Users can't use the private fields of neither the iommu_domain nor
the IOMMU device, because those are already used by the IOMMU core
and low level driver (respectively).

This patch just simply allows users to pass a private token (most
notably their own context pointer) to iommu_set_fault_handler(),
and then makes sure it is provided back to the users whenever
an IOMMU fault happens.

The patch also adopts remoteproc to the new fault handling
interface, but the real functionality using this (recovery of
remote processors) will only be added later in a subsequent patch
set.

Cc: Fernando Guzman Lugo <fernando.lugo@ti.com>
Signed-off-by: Ohad Ben-Cohen <ohad@wizery.com>
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
drivers/iommu/iommu.c
drivers/remoteproc/remoteproc_core.c
include/linux/iommu.h