linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [V2,0/2] Enable hardware jpeg encoder for MT8186
@ 2022-06-08  6:07 Irui Wang
  2022-06-08  6:07 ` [V2,1/2] media: media: jpegenc: add mediatek,mt8186-jpgenc compatible Irui Wang
  2022-06-08  6:07 ` [V2,2/2] media: media: jpegenc: set bit mask for jpegenc Irui Wang
  0 siblings, 2 replies; 4+ messages in thread
From: Irui Wang @ 2022-06-08  6:07 UTC (permalink / raw)
  To: Hans Verkuil, Mauro Carvalho Chehab, Rob Herring,
	Matthias Brugger, Tzung-Bi Shih
  Cc: Project_Global_Chrome_Upstream_Group, linux-media, devicetree,
	linux-kernel, linux-arm-kernel, linux-mediatek, Tomasz Figa,
	xia.jiang, maoguang.meng, kyrie wu, srv_heupstream

From: kyrie wu <kyrie.wu@mediatek.com>

This series adds support for MT8186 hardware jpeg encoding.

This series has been tested with both MT8186.
Encoding worked for this chip.

Patches 1 Adds jpeg encoder dt-bindings for mt8186

Patches 2 set bit mask for jpegenc to support 34bits iova space,
	which means iova rangement from 0 to 16GB.

Changes compared with v1:
--rebase on latest media_stage tree

kyrie wu (2):
  media: media: jpegenc: add mediatek,mt8186-jpgenc compatible
  media: media: jpegenc: set bit mask for jpegenc

 .../devicetree/bindings/media/mediatek-jpeg-encoder.yaml    | 6 ++++++
 drivers/media/platform/mediatek/jpeg/mtk_jpeg_core.c        | 3 +++
 2 files changed, 9 insertions(+)

-- 
2.18.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [V2,1/2] media: media: jpegenc: add mediatek,mt8186-jpgenc compatible
  2022-06-08  6:07 [V2,0/2] Enable hardware jpeg encoder for MT8186 Irui Wang
@ 2022-06-08  6:07 ` Irui Wang
  2022-06-08 15:00   ` Rob Herring
  2022-06-08  6:07 ` [V2,2/2] media: media: jpegenc: set bit mask for jpegenc Irui Wang
  1 sibling, 1 reply; 4+ messages in thread
From: Irui Wang @ 2022-06-08  6:07 UTC (permalink / raw)
  To: Hans Verkuil, Mauro Carvalho Chehab, Rob Herring,
	Matthias Brugger, Tzung-Bi Shih
  Cc: Project_Global_Chrome_Upstream_Group, linux-media, devicetree,
	linux-kernel, linux-arm-kernel, linux-mediatek, Tomasz Figa,
	xia.jiang, maoguang.meng, kyrie wu, srv_heupstream

From: kyrie wu <kyrie.wu@mediatek.com>

Add mediatek,mt8186-jpgenc compatible to binding document.

MT8186 iommu support 0~16GB iova. We separate it to four banks:
0~4G; 4G~8G; 8G~12G; 12G~16G.

The "dma-ranges" could be used to adjust the bank we locate.
If we don't set this property. The default range always is 0~4G.

Signed-off-by: kyrie wu <kyrie.wu@mediatek.com>
---
 .../devicetree/bindings/media/mediatek-jpeg-encoder.yaml    | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/Documentation/devicetree/bindings/media/mediatek-jpeg-encoder.yaml b/Documentation/devicetree/bindings/media/mediatek-jpeg-encoder.yaml
index 8bfdfdfaba59..4fd390c042a9 100644
--- a/Documentation/devicetree/bindings/media/mediatek-jpeg-encoder.yaml
+++ b/Documentation/devicetree/bindings/media/mediatek-jpeg-encoder.yaml
@@ -18,6 +18,7 @@ properties:
       - enum:
           - mediatek,mt2701-jpgenc
           - mediatek,mt8183-jpgenc
+          - mediatek,mt8186-jpgenc
       - const: mediatek,mtk-jpgenc
   reg:
     maxItems: 1
@@ -42,6 +43,11 @@ properties:
       Documentation/devicetree/bindings/iommu/mediatek,iommu.yaml for details.
       Ports are according to the HW.
 
+  dma-ranges:
+    maxItems: 1
+    description: |
+      Describes the physical address space of IOMMU maps to memory.
+
 required:
   - compatible
   - reg
-- 
2.18.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [V2,2/2] media: media: jpegenc: set bit mask for jpegenc
  2022-06-08  6:07 [V2,0/2] Enable hardware jpeg encoder for MT8186 Irui Wang
  2022-06-08  6:07 ` [V2,1/2] media: media: jpegenc: add mediatek,mt8186-jpgenc compatible Irui Wang
@ 2022-06-08  6:07 ` Irui Wang
  1 sibling, 0 replies; 4+ messages in thread
From: Irui Wang @ 2022-06-08  6:07 UTC (permalink / raw)
  To: Hans Verkuil, Mauro Carvalho Chehab, Rob Herring,
	Matthias Brugger, Tzung-Bi Shih
  Cc: Project_Global_Chrome_Upstream_Group, linux-media, devicetree,
	linux-kernel, linux-arm-kernel, linux-mediatek, Tomasz Figa,
	xia.jiang, maoguang.meng, kyrie wu, srv_heupstream

From: kyrie wu <kyrie.wu@mediatek.com>

set jpeg encode DMA bit mask to support 34bits
iova space(16GB) that the mt8186 iommu HW support.
Whole the iova range separate to 0~4G/4G~8G/8G~12G/12G~16G,
regarding which iova range jpgenc actually locate, it
depends on the dma-ranges property of vdec dtsi node.

Signed-off-by: kyrie wu <kyrie.wu@mediatek.com>
---
 drivers/media/platform/mediatek/jpeg/mtk_jpeg_core.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/media/platform/mediatek/jpeg/mtk_jpeg_core.c b/drivers/media/platform/mediatek/jpeg/mtk_jpeg_core.c
index bc5b0a0168ec..87685a62a5c2 100644
--- a/drivers/media/platform/mediatek/jpeg/mtk_jpeg_core.c
+++ b/drivers/media/platform/mediatek/jpeg/mtk_jpeg_core.c
@@ -1369,6 +1369,9 @@ static int mtk_jpeg_probe(struct platform_device *pdev)
 	jpeg->vdev->device_caps = V4L2_CAP_STREAMING |
 				  V4L2_CAP_VIDEO_M2M_MPLANE;
 
+	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(jpeg->vdev, VFL_TYPE_VIDEO, -1);
 	if (ret) {
 		v4l2_err(&jpeg->v4l2_dev, "Failed to register video device\n");
-- 
2.18.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [V2,1/2] media: media: jpegenc: add mediatek,mt8186-jpgenc compatible
  2022-06-08  6:07 ` [V2,1/2] media: media: jpegenc: add mediatek,mt8186-jpgenc compatible Irui Wang
@ 2022-06-08 15:00   ` Rob Herring
  0 siblings, 0 replies; 4+ messages in thread
From: Rob Herring @ 2022-06-08 15:00 UTC (permalink / raw)
  To: Irui Wang
  Cc: kyrie wu, devicetree, Mauro Carvalho Chehab, Tomasz Figa,
	xia.jiang, Hans Verkuil, linux-kernel, Rob Herring, linux-media,
	Tzung-Bi Shih, linux-mediatek, srv_heupstream, maoguang.meng,
	Matthias Brugger, linux-arm-kernel,
	Project_Global_Chrome_Upstream_Group

On Wed, 08 Jun 2022 14:07:54 +0800, Irui Wang wrote:
> From: kyrie wu <kyrie.wu@mediatek.com>
> 
> Add mediatek,mt8186-jpgenc compatible to binding document.
> 
> MT8186 iommu support 0~16GB iova. We separate it to four banks:
> 0~4G; 4G~8G; 8G~12G; 12G~16G.
> 
> The "dma-ranges" could be used to adjust the bank we locate.
> If we don't set this property. The default range always is 0~4G.
> 
> Signed-off-by: kyrie wu <kyrie.wu@mediatek.com>
> ---
>  .../devicetree/bindings/media/mediatek-jpeg-encoder.yaml    | 6 ++++++
>  1 file changed, 6 insertions(+)
> 


Please add Acked-by/Reviewed-by tags when posting new versions. However,
there's no need to repost patches *only* to add the tags. The upstream
maintainer will do that for acks received on the version they apply.

If a tag was not added on purpose, please state why and what changed.


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2022-06-08 15:01 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-08  6:07 [V2,0/2] Enable hardware jpeg encoder for MT8186 Irui Wang
2022-06-08  6:07 ` [V2,1/2] media: media: jpegenc: add mediatek,mt8186-jpgenc compatible Irui Wang
2022-06-08 15:00   ` Rob Herring
2022-06-08  6:07 ` [V2,2/2] media: media: jpegenc: set bit mask for jpegenc Irui Wang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).