Hi Marek, 20. 9. 4. 오후 4:28에 Marek Szyprowski 이(가) 쓴 글: > Hi Robin, > > On 03.09.2020 22:51, Robin Murphy wrote: >> Since commit 9495b7e92f71 ("driver core: platform: Initialize dma_parms >> for platform devices"), struct platform_device already provides a >> dma_parms structure, so we can save allocating another one. >> >> Also the DMA segment size is simply a size, not a bitmask. >> >> Signed-off-by: Robin Murphy <robin.murphy@xxxxxxx> > > I've sent a similar patch over 2 months ago, but it looks it got lost: > > https://lore.kernel.org/dri-devel/20200707110827.3760-1-m.szyprowski@xxxxxxxxxxx/ > > Inki, could You queue it for merge? Oops, sorry. Reviewed already but forgot to merge. Thanks, Inki Dae > >> --- >> drivers/gpu/drm/exynos/exynos_drm_dma.c | 26 +------------------------ >> 1 file changed, 1 insertion(+), 25 deletions(-) >> >> diff --git a/drivers/gpu/drm/exynos/exynos_drm_dma.c b/drivers/gpu/drm/exynos/exynos_drm_dma.c >> index 58b89ec11b0e..9f25a5ebbf7d 100644 >> --- a/drivers/gpu/drm/exynos/exynos_drm_dma.c >> +++ b/drivers/gpu/drm/exynos/exynos_drm_dma.c >> @@ -31,23 +31,6 @@ >> #define EXYNOS_DEV_ADDR_START 0x20000000 >> #define EXYNOS_DEV_ADDR_SIZE 0x40000000 >> >> -static inline int configure_dma_max_seg_size(struct device *dev) >> -{ >> - if (!dev->dma_parms) >> - dev->dma_parms = kzalloc(sizeof(*dev->dma_parms), GFP_KERNEL); >> - if (!dev->dma_parms) >> - return -ENOMEM; >> - >> - dma_set_max_seg_size(dev, DMA_BIT_MASK(32)); >> - return 0; >> -} >> - >> -static inline void clear_dma_max_seg_size(struct device *dev) >> -{ >> - kfree(dev->dma_parms); >> - dev->dma_parms = NULL; >> -} >> - >> /* >> * drm_iommu_attach_device- attach device to iommu mapping >> * >> @@ -69,9 +52,7 @@ static int drm_iommu_attach_device(struct drm_device *drm_dev, >> return -EINVAL; >> } >> >> - ret = configure_dma_max_seg_size(subdrv_dev); >> - if (ret) >> - return ret; >> + dma_set_max_seg_size(subdrv_dev, UINT_MAX); >> >> if (IS_ENABLED(CONFIG_ARM_DMA_USE_IOMMU)) { >> /* >> @@ -89,9 +70,6 @@ static int drm_iommu_attach_device(struct drm_device *drm_dev, >> ret = iommu_attach_device(priv->mapping, subdrv_dev); >> } >> >> - if (ret) >> - clear_dma_max_seg_size(subdrv_dev); >> - >> return ret; >> } >> >> @@ -114,8 +92,6 @@ static void drm_iommu_detach_device(struct drm_device *drm_dev, >> arm_iommu_attach_device(subdrv_dev, *dma_priv); >> } else if (IS_ENABLED(CONFIG_IOMMU_DMA)) >> iommu_detach_device(priv->mapping, subdrv_dev); >> - >> - clear_dma_max_seg_size(subdrv_dev); >> } >> >> int exynos_drm_register_dma(struct drm_device *drm, struct device *dev, > > Best regards >