diff --git a/drivers/video/rockchip/mpp_osal/mpp_osal.c b/drivers/video/rockchip/mpp_osal/mpp_osal.c index abdaf4be6a22..4c3f1297ba57 100644 --- a/drivers/video/rockchip/mpp_osal/mpp_osal.c +++ b/drivers/video/rockchip/mpp_osal/mpp_osal.c @@ -41,3 +41,13 @@ void mpp_device_add_driver(void *dev, void *drv) #endif } EXPORT_SYMBOL(mpp_device_add_driver); + +struct dma_iommu_mapping *mpp_arm_iommu_get_mapping(struct device *dev) +{ +#ifdef CONFIG_ARM_DMA_USE_IOMMU + return dev->archdata.mapping; +#else + return NULL; +#endif +} +EXPORT_SYMBOL(mpp_arm_iommu_get_mapping); diff --git a/drivers/video/rockchip/mpp_osal/mpp_osal.h b/drivers/video/rockchip/mpp_osal/mpp_osal.h index 826f006d8552..7082acd308f4 100644 --- a/drivers/video/rockchip/mpp_osal/mpp_osal.h +++ b/drivers/video/rockchip/mpp_osal/mpp_osal.h @@ -10,10 +10,13 @@ #include #include +struct dma_iommu_mapping; + struct device_node *mpp_dev_of_node(struct device *dev); void mpp_pm_relax(struct device *dev); void mpp_pm_stay_awake(struct device *dev); int mpp_device_init_wakeup(struct device *dev, bool enable); void mpp_device_add_driver(void *dev, void *drv); +struct dma_iommu_mapping *mpp_arm_iommu_get_mapping(struct device *dev); #endif