drm/exynos: add iommu support to fimd driver
The iommu will be enabled when fimd sub driver is probed and will be disabled when removed. Signed-off-by: Inki Dae <inki.dae@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
This commit is contained in:
parent
0519f9a12d
commit
bcc5cd1c5f
@ -25,6 +25,7 @@
|
|||||||
#include "exynos_drm_drv.h"
|
#include "exynos_drm_drv.h"
|
||||||
#include "exynos_drm_fbdev.h"
|
#include "exynos_drm_fbdev.h"
|
||||||
#include "exynos_drm_crtc.h"
|
#include "exynos_drm_crtc.h"
|
||||||
|
#include "exynos_drm_iommu.h"
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* FIMD is stand for Fully Interactive Mobile Display and
|
* FIMD is stand for Fully Interactive Mobile Display and
|
||||||
@ -691,6 +692,10 @@ static int fimd_subdrv_probe(struct drm_device *drm_dev, struct device *dev)
|
|||||||
*/
|
*/
|
||||||
drm_dev->vblank_disable_allowed = 1;
|
drm_dev->vblank_disable_allowed = 1;
|
||||||
|
|
||||||
|
/* attach this sub driver to iommu mapping if supported. */
|
||||||
|
if (is_drm_iommu_supported(drm_dev))
|
||||||
|
drm_iommu_attach_device(drm_dev, dev);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -698,7 +703,9 @@ static void fimd_subdrv_remove(struct drm_device *drm_dev, struct device *dev)
|
|||||||
{
|
{
|
||||||
DRM_DEBUG_KMS("%s\n", __FILE__);
|
DRM_DEBUG_KMS("%s\n", __FILE__);
|
||||||
|
|
||||||
/* TODO. */
|
/* detach this sub driver from iommu mapping if supported. */
|
||||||
|
if (is_drm_iommu_supported(drm_dev))
|
||||||
|
drm_iommu_detach_device(drm_dev, dev);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int fimd_calc_clkdiv(struct fimd_context *ctx,
|
static int fimd_calc_clkdiv(struct fimd_context *ctx,
|
||||||
|
Loading…
Reference in New Issue
Block a user