diff --git a/msm/vidc/msm_vidc_res_parse.c b/msm/vidc/msm_vidc_res_parse.c index ff6df21c3d36..ca4cd5b442c4 100644 --- a/msm/vidc/msm_vidc_res_parse.c +++ b/msm/vidc/msm_vidc_res_parse.c @@ -4,6 +4,7 @@ */ #include +#include #include #include #include "msm_vidc_debug.h" @@ -968,6 +969,12 @@ static int msm_vidc_setup_context_bank(struct msm_vidc_platform_resources *res, cb->domain = iommu_get_domain_for_dev(cb->dev); + /* + * When memory is fragmented, below configuration increases the + * possibility to get a mapping for buffer in the configured CB. + */ + iommu_dma_enable_best_fit_algo(cb->dev); + /* * configure device segment size and segment boundary to ensure * iommu mapping returns one mapping (which is required for partial