diff options
author | Suman Anna <s-anna@ti.com> | 2014-07-03 15:07:02 -0500 |
---|---|---|
committer | Suman Anna <s-anna@ti.com> | 2014-07-08 18:39:17 -0500 |
commit | 115062d77624f2e4aef088f085fc749dd632956c (patch) | |
tree | dfbabbeb6935f470ca1f9660a34ced142d45db8d /include | |
parent | 0f6eda6de8c72c2a7ca61678e661b71a4df7eec3 (diff) |
remoteproc: use a flag to detect the presence of IOMMU
The remoteproc driver core currently relies on iommu_present() on
the bus the device is on, to perform MMU management. However, this
logic doesn't scale for multi-arch, especially for processors that
do not have an IOMMU. Replace this logic instead by using a h/w
capability flag for the presence of IOMMU in the rproc structure.
The individual platform implementations are required to set this
flag appropriately. The default setting is to not have an MMU.
The OMAP remoteproc driver is updated while at this, to maintain
the functionality with the IOMMU detection logic change in this
patch.
Cc: Sjur Brændeland <sjur.brandeland@stericsson.com>
Cc: Robert Tivy <rtivy@ti.com>
Signed-off-by: Suman Anna <s-anna@ti.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/remoteproc.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/remoteproc.h b/include/linux/remoteproc.h index 9e7e745dac5..78b8a9b9d40 100644 --- a/include/linux/remoteproc.h +++ b/include/linux/remoteproc.h @@ -404,6 +404,7 @@ enum rproc_crash_type { * @table_ptr: pointer to the resource table in effect * @cached_table: copy of the resource table * @table_csum: checksum of the resource table + * @has_iommu: flag to indicate if remote processor is behind an MMU */ struct rproc { struct klist_node node; @@ -435,6 +436,7 @@ struct rproc { struct resource_table *table_ptr; struct resource_table *cached_table; u32 table_csum; + bool has_iommu; }; /* we currently support only two vrings per rvdev */ |