[V14,0/15] Enable jpeg enc & dec multi-hardwares for MT8195

kyrie.wu kyrie.wu at mediatek.com
Sun Sep 25 23:45:46 PDT 2022


On Fri, 2022-09-23 at 11:38 +0200, Hans Verkuil wrote:
> Hi Irui,
> 
> Something went wrong here: patches 10-15 never made it to the
> mailinglist.
> 
> Can you repost?
> 
> 	Hans
Hi Hans,

I'm sorry for this mistake. I will resend the series patches.

Thanks.

Regards,
Kyrie.
> 
> On 15/09/2022 08:43, Irui Wang wrote:
> > From: kyrie wu <kyrie.wu at mediatek.com>
> > 
> > This series adds support for multi hardwares jpeg enc & dec,
> > by first adding use of_platform_populate to manage each hardware
> > information:interrupt, clock, register bases and power.
> > Secondly add jpeg enc & dec work queue to deal with the encoding
> > or decoding requests of multi-hardwares at the same time.
> > Lastly, add output picture reorder function interface to
> > eliminate the out of order images.
> > 
> > This series has been tested with MT8195 Gstreamer.
> > Encoding and decoding worked for this chip.
> > 
> > Patches 1 Adds jpeg encoder dt-bindings for mt8195
> > 
> > Patches 2 jpeg encoder builds two module for using Multi-HW,
> > export some functions to make them visible by other modules.
> > 
> > Patches 3 use devm_of_platform_populate to manage multi-hardware.
> > 
> > Patch 4 add jpeg encoding timeout function to judge hardware
> > timeout.
> > 
> > Patch 5 add encoding work queue to deal with multi-hardware
> > encoding
> > at the same time.
> > 
> > Patch 6 add output picture reorder function to order images.
> > 
> > Patch 7 add stop cmd function to deal with EOS operation.
> > 
> > Patch 8 Adds jpeg decoder dt-bindings for mt8195
> > 
> > Patches 9 jpeg decoder builds three module for using Multi-HW,
> > export some functions to make them visible by other modules.
> > 
> > Patch 10 use of_platform_populate to manage multi-hardware.
> > 
> > Patch 11 add jpeg decoding timeout function to judge hardware
> > timeout.
> > 
> > Patch 12 add decoding work queue to deal with multi-hardware
> > decoding
> > at the same time.
> > 
> > Patch 13 add output picture reorder function to order images.
> > 
> > Patch 14 refactor jpegdec func interface for HW working.
> > 
> > Patch 15 add stop cmd function to deal with EOS operation.
> > 
> > ---
> > This series patches dependent on:
> > media_stage tree:
> > [1]
> > 
https://urldefense.com/v3/__https://git.linuxtv.org/media_stage.git/commit/?id=b3627647f9ea7473d10fb08a95fd7c4133a17ca4__;!!CTRNKA9wMg0ARbw!1eLKBlTK5IneP2_qZFZp3ujjHfmsb3PEdN5FQJdtUBhR4FitxsDKmCIdxqfG1JIV$
> >  
> > 
> > patch1 new jpegdec dt-bindings included files
> > [2] MM IOMMU binding:
> > 
https://urldefense.com/v3/__https://patchwork.kernel.org/project/linux-mediatek/patch/20220217113453.13658-2-yong.wu@mediatek.com/__;!!CTRNKA9wMg0ARbw!1eLKBlTK5IneP2_qZFZp3ujjHfmsb3PEdN5FQJdtUBhR4FitxsDKmCIdxm6Up7tS$
> >  
> > 
> > [3] MT8195 power domain:
> > 
https://urldefense.com/v3/__https://patchwork.kernel.org/project/linux-mediatek/list/?series=580579__;!!CTRNKA9wMg0ARbw!1eLKBlTK5IneP2_qZFZp3ujjHfmsb3PEdN5FQJdtUBhR4FitxsDKmCIdxs3hFoKL$
> >  
> > 
> > Changes compared with v13:
> > - some modifications for patch v13's review comments.
> > - fix kernel robot check errors.
> > - fix kernel-doc check warns.
> > - fix sparse check warns.
> > - combine jpeg encoder series with decoder series into
> >   one single series.
> > 
> > Changes compared with v12:
> > - some modifications for patch v12's review comments.
> > 
> > Changes compared with v11:
> > - some modifications for patch v11's review comments.
> > - fix yaml file check errors.
> > 
> > Changes compared with v10:
> > - some modifications for patch v10's review comments.
> > - fix Gstreamer test errors.
> > 
> > Changes compared with v9:
> > - some modifications for patch v9's review comments.
> > 
> > Changes compared with v8:
> > - some modifications for patch v8's review comments.
> > - add stop cmd function.
> > 
> > Changes compared with v7:
> > - some modifications for patch v6's review comments.
> > 
> > Changes compared with v6:
> > - new yaml file for mt8195 jpeg encoder.
> > - some modifications for patch v5's review comments.
> > 
> > Changes compared with v5:
> > - use of_platform_populate to replace component framework to
> >   manage multi-hardware in patch 2.
> > 
> > Changes compared with v4:
> > - No change compaered with v4
> > 
> > Changes compared with v3:
> > - Structure patches for consistency, non-backward
> >   compatible and do not break any existing functionality
> > 
> > Changes compared with v2:
> > - Split the last two patches into several patches
> >   to enhance readability
> > - Correct some syntax errors
> > - Explain why the component framework is used
> > 
> > Changes compared with v1:
> > - Add jpeg encoder dt-bindings for MT8195
> > - Use component framework to manage jpegenc HW
> > - Add jpegenc output pic reorder function interface
> > 
> > kyrie wu (15):
> >   dt-bindings: mediatek: Add mediatek, mt8195-jpgenc compatible
> >   mtk-jpegenc: export jpeg encoder functions
> >   mtk-jpegenc: support jpegenc multi-hardware
> >   mtk-jpegenc: add jpegenc timeout func interface
> >   mtk-jpegenc: add jpeg encode worker interface
> >   mtk-jpegenc: add output pic reorder interface
> >   mtk-jpegenc: add stop cmd interface for jpgenc
> >   dt-bindings: mediatek: Add mediatek,mt8195-jpgdec compatible
> >   media: mtk-jpegdec: export jpeg decoder functions
> >   media: mtk-jpegdec: support jpegdec multi-hardware
> >   media: mtk-jpegdec: add jpegdec timeout func interface
> >   media: mtk-jpegdec: add jpeg decode worker interface
> >   media: mtk-jpegdec: add output pic reorder interface
> >   media: mtk-jpegdec: refactor jpegdec func interface
> >   mtk-jpegdec: add stop cmd interface for jpgdec
> > 
> >  .../media/mediatek,mt8195-jpegdec.yaml        | 169 ++++++
> >  .../media/mediatek,mt8195-jpegenc.yaml        | 147 ++++++
> >  drivers/media/platform/mediatek/jpeg/Makefile |  14 +-
> >  .../platform/mediatek/jpeg/mtk_jpeg_core.c    | 490
> > ++++++++++++++++--
> >  .../platform/mediatek/jpeg/mtk_jpeg_core.h    | 169 +++++-
> >  .../platform/mediatek/jpeg/mtk_jpeg_dec_hw.c  | 315 ++++++++++-
> >  .../platform/mediatek/jpeg/mtk_jpeg_dec_hw.h  |   6 +-
> >  .../platform/mediatek/jpeg/mtk_jpeg_dec_reg.h |   1 +
> >  .../platform/mediatek/jpeg/mtk_jpeg_enc_hw.c  | 255 +++++++++
> >  9 files changed, 1483 insertions(+), 83 deletions(-)
> >  create mode 100644
> > Documentation/devicetree/bindings/media/mediatek,mt8195-
> > jpegdec.yaml
> >  create mode 100644
> > Documentation/devicetree/bindings/media/mediatek,mt8195-
> > jpegenc.yaml
> > 
> 
> 




More information about the linux-arm-kernel mailing list