usb: dwc3: Add support to enable best fit algorithm

This change adds the needed support to enable best fit algorithm
for iova allocation. Best fit algorithm helps in reducing fragmentation
and thus utilizing the iova address space more efficiently.

Change-Id: Icaa9bf1db534eba75c1b5724b6210240e4e6faef
Signed-off-by: Elson Roy Serrao <eserrao@codeaurora.org>
This commit is contained in:
Elson Roy Serrao 2021-09-13 18:05:41 -07:00
commit 29fa6d3d55

View file

@ -44,6 +44,7 @@
#include <linux/usb/dwc3-msm.h>
#include <linux/usb/role.h>
#include <linux/usb/redriver.h>
#include <linux/dma-iommu.h>
#ifdef CONFIG_QGKI_MSM_BOOT_TIME_MARKER
#include <soc/qcom/boot_stats.h>
#endif
@ -4803,6 +4804,9 @@ static int dwc3_msm_probe(struct platform_device *pdev)
"qcom,use-pdc-interrupts");
dwc3_set_notifier(&dwc3_msm_notify_event);
if (of_property_read_bool(node, "qcom,iommu-best-fit-algo"))
iommu_dma_enable_best_fit_algo(dev);
if (dma_set_mask_and_coherent(dev, DMA_BIT_MASK(64))) {
dev_err(&pdev->dev, "setting DMA mask to 64 failed.\n");
if (dma_set_mask_and_coherent(dev, DMA_BIT_MASK(32))) {