disp: msm: snapshot change for mdp driver to support multiple SIs
This change adds support in mdp and dsi driver to support multiple SIS. Change-Id: I432068cea17e1784d7570a472fbadaa86695df07 Signed-off-by: Narendra Muppalla <NarendraM@codeaurora.org> Signed-off-by: Amine Najahi <anajahi@codeaurora.org>
This commit is contained in:

committad av
Bruce Hoo

förälder
88c7d83030
incheckning
7c5d715673
@@ -129,6 +129,7 @@ static void msm_smmu_detach(struct msm_mmu *mmu, const char * const *names,
|
||||
dev_dbg(client->dev, "iommu domain detached\n");
|
||||
}
|
||||
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 15, 0))
|
||||
static int msm_enable_smmu_translations(struct msm_mmu *mmu)
|
||||
{
|
||||
struct msm_smmu *smmu = to_msm_smmu(mmu);
|
||||
@@ -144,6 +145,24 @@ static int msm_enable_smmu_translations(struct msm_mmu *mmu)
|
||||
|
||||
return ret;
|
||||
}
|
||||
#else
|
||||
static int msm_smmu_set_attribute(struct msm_mmu *mmu,
|
||||
enum iommu_attr attr, void *data)
|
||||
{
|
||||
struct msm_smmu *smmu = to_msm_smmu(mmu);
|
||||
struct msm_smmu_client *client = msm_smmu_to_client(smmu);
|
||||
int ret = 0;
|
||||
|
||||
if (!client || !client->domain)
|
||||
return -ENODEV;
|
||||
|
||||
ret = iommu_domain_set_attr(client->domain, attr, data);
|
||||
if (ret)
|
||||
DRM_ERROR("set domain attribute failed:%d\n", ret);
|
||||
|
||||
return ret;
|
||||
}
|
||||
#endif
|
||||
|
||||
static int msm_smmu_one_to_one_unmap(struct msm_mmu *mmu,
|
||||
uint32_t dest_address, uint32_t size)
|
||||
@@ -306,7 +325,11 @@ static const struct msm_mmu_funcs funcs = {
|
||||
.unmap_dma_buf = msm_smmu_unmap_dma_buf,
|
||||
.destroy = msm_smmu_destroy,
|
||||
.is_domain_secure = msm_smmu_is_domain_secure,
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 15, 0))
|
||||
.enable_smmu_translations = msm_enable_smmu_translations,
|
||||
#else
|
||||
.set_attribute = msm_smmu_set_attribute,
|
||||
#endif
|
||||
.one_to_one_map = msm_smmu_one_to_one_map,
|
||||
.one_to_one_unmap = msm_smmu_one_to_one_unmap,
|
||||
.get_dev = msm_smmu_get_dev,
|
||||
|
Referens i nytt ärende
Block a user