Message ID | 20230411093144.2690-12-yong.wu@mediatek.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Adjust the dma-ranges for MTK IOMMU | expand |
Il 11/04/23 11:31, Yong Wu ha scritto: > In order to simplify the masters to set their respective dma masks, MTK > IOMMU helps to centralize the processing. Because all the dma ranges is > set in IOMMU, IOMMU knows well the dma mask requirements of masters. After > this patch, the masters(codec here) code does not need care > dma-ranges/dma_mask related information. > > Cc: Tiffany Lin <tiffany.lin@mediatek.com> > Cc: Andrew-CT Chen <andrew-ct.chen@mediatek.com> > Cc: Yunfei Dong <yunfei.dong@mediatek.com> > Cc: Mauro Carvalho Chehab <mchehab@kernel.org> > Cc: irui wang <irui.wang@mediatek.com> > Signed-off-by: Yong Wu <yong.wu@mediatek.com> Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
On 11/04/2023 11:31, Yong Wu wrote: > In order to simplify the masters to set their respective dma masks, MTK > IOMMU helps to centralize the processing. Because all the dma ranges is > set in IOMMU, IOMMU knows well the dma mask requirements of masters. After > this patch, the masters(codec here) code does not need care > dma-ranges/dma_mask related information. > > Cc: Tiffany Lin <tiffany.lin@mediatek.com> > Cc: Andrew-CT Chen <andrew-ct.chen@mediatek.com> > Cc: Yunfei Dong <yunfei.dong@mediatek.com> > Cc: Mauro Carvalho Chehab <mchehab@kernel.org> > Cc: irui wang <irui.wang@mediatek.com> > Signed-off-by: Yong Wu <yong.wu@mediatek.com> Acked-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Regards, Hans > --- > .../media/platform/mediatek/vcodec/mtk_vcodec_dec_drv.c | 8 -------- > .../media/platform/mediatek/vcodec/mtk_vcodec_enc_drv.c | 3 --- > 2 files changed, 11 deletions(-) > > diff --git a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_drv.c b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_drv.c > index 174a6eec2f54..11583405cf61 100644 > --- a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_drv.c > +++ b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_drv.c > @@ -321,14 +321,6 @@ static int mtk_vcodec_probe(struct platform_device *pdev) > } > } > > - if (of_get_property(pdev->dev.of_node, "dma-ranges", NULL)) { > - ret = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(34)); > - if (ret) { > - mtk_v4l2_err("Failed to set mask"); > - goto err_core_workq; > - } > - } > - > for (i = 0; i < MTK_VDEC_HW_MAX; i++) > mutex_init(&dev->dec_mutex[i]); > mutex_init(&dev->dev_mutex); > diff --git a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc_drv.c b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc_drv.c > index 9095186d5495..50e5571608cd 100644 > --- a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc_drv.c > +++ b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc_drv.c > @@ -344,9 +344,6 @@ static int mtk_vcodec_probe(struct platform_device *pdev) > goto err_event_workq; > } > > - if (of_get_property(pdev->dev.of_node, "dma-ranges", NULL)) > - dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(34)); > - > ret = video_register_device(vfd_enc, VFL_TYPE_VIDEO, -1); > if (ret) { > mtk_v4l2_err("Failed to register video device");
diff --git a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_drv.c b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_drv.c index 174a6eec2f54..11583405cf61 100644 --- a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_drv.c +++ b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_drv.c @@ -321,14 +321,6 @@ static int mtk_vcodec_probe(struct platform_device *pdev) } } - if (of_get_property(pdev->dev.of_node, "dma-ranges", NULL)) { - ret = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(34)); - if (ret) { - mtk_v4l2_err("Failed to set mask"); - goto err_core_workq; - } - } - for (i = 0; i < MTK_VDEC_HW_MAX; i++) mutex_init(&dev->dec_mutex[i]); mutex_init(&dev->dev_mutex); diff --git a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc_drv.c b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc_drv.c index 9095186d5495..50e5571608cd 100644 --- a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc_drv.c +++ b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_enc_drv.c @@ -344,9 +344,6 @@ static int mtk_vcodec_probe(struct platform_device *pdev) goto err_event_workq; } - if (of_get_property(pdev->dev.of_node, "dma-ranges", NULL)) - dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(34)); - ret = video_register_device(vfd_enc, VFL_TYPE_VIDEO, -1); if (ret) { mtk_v4l2_err("Failed to register video device");
In order to simplify the masters to set their respective dma masks, MTK IOMMU helps to centralize the processing. Because all the dma ranges is set in IOMMU, IOMMU knows well the dma mask requirements of masters. After this patch, the masters(codec here) code does not need care dma-ranges/dma_mask related information. Cc: Tiffany Lin <tiffany.lin@mediatek.com> Cc: Andrew-CT Chen <andrew-ct.chen@mediatek.com> Cc: Yunfei Dong <yunfei.dong@mediatek.com> Cc: Mauro Carvalho Chehab <mchehab@kernel.org> Cc: irui wang <irui.wang@mediatek.com> Signed-off-by: Yong Wu <yong.wu@mediatek.com> --- .../media/platform/mediatek/vcodec/mtk_vcodec_dec_drv.c | 8 -------- .../media/platform/mediatek/vcodec/mtk_vcodec_enc_drv.c | 3 --- 2 files changed, 11 deletions(-)