This series adds support for the encoder present on MT8183. It is very similar to the one in MT8173, but with different capabilities and using a new firmware interface (SCP, while MT8173 talked to the VPU). So this series starts with some preparatory work by putting the firmware interface behind a small abstraction layer instead of directly talking to the VPU, and by adding support for the SCP firmware. Next platform data is completed with features that differ between the chips, like supported formats and bitrate, before support for MT8183 is added. Alexandre Courbot (6): media: mtk-vcodec: venc: handle firmware version field media: mtk-vcodec: venc: specify bitrate range per-chip media: mtk-vcodec: venc: specify supported formats per-chip media: mtk-vcodec: venc: remove redundant code media: dt-bindings: mtk-vcodec: specify SCP node media: dt-bindings: mtk-vcodec: document mediatek,mt8183-vcodec-enc Yunfei Dong (4): media: mtk-vcodec: abstract firmware interface media: mtk-vcodec: add SCP firmware ops media: mtk-vcodec: venc: support SCP firmware media: mtk-vcodec: add support for MT8183 encoder .../bindings/media/mediatek-vcodec.txt | 9 +- drivers/media/platform/Kconfig | 2 + drivers/media/platform/mtk-vcodec/Makefile | 4 +- .../platform/mtk-vcodec/mtk_vcodec_dec_drv.c | 53 ++-- .../platform/mtk-vcodec/mtk_vcodec_dec_pm.c | 1 - .../platform/mtk-vcodec/mtk_vcodec_drv.h | 38 ++- .../platform/mtk-vcodec/mtk_vcodec_enc.c | 141 ++++------- .../platform/mtk-vcodec/mtk_vcodec_enc_drv.c | 149 ++++++++---- .../platform/mtk-vcodec/mtk_vcodec_enc_pm.c | 2 - .../media/platform/mtk-vcodec/mtk_vcodec_fw.c | 228 ++++++++++++++++++ .../media/platform/mtk-vcodec/mtk_vcodec_fw.h | 38 +++ .../platform/mtk-vcodec/mtk_vcodec_util.c | 1 - .../platform/mtk-vcodec/vdec/vdec_h264_if.c | 1 - .../platform/mtk-vcodec/vdec/vdec_vp8_if.c | 1 - .../platform/mtk-vcodec/vdec/vdec_vp9_if.c | 1 - .../media/platform/mtk-vcodec/vdec_drv_base.h | 2 - .../media/platform/mtk-vcodec/vdec_drv_if.c | 1 - .../media/platform/mtk-vcodec/vdec_vpu_if.c | 12 +- .../media/platform/mtk-vcodec/vdec_vpu_if.h | 11 +- .../platform/mtk-vcodec/venc/venc_h264_if.c | 80 ++++-- .../platform/mtk-vcodec/venc/venc_vp8_if.c | 11 +- .../media/platform/mtk-vcodec/venc_drv_if.c | 1 - .../media/platform/mtk-vcodec/venc_drv_if.h | 6 + .../media/platform/mtk-vcodec/venc_ipi_msg.h | 24 +- .../media/platform/mtk-vcodec/venc_vpu_if.c | 141 ++++++++--- .../media/platform/mtk-vcodec/venc_vpu_if.h | 8 +- 26 files changed, 711 insertions(+), 255 deletions(-) create mode 100644 drivers/media/platform/mtk-vcodec/mtk_vcodec_fw.c create mode 100644 drivers/media/platform/mtk-vcodec/mtk_vcodec_fw.h -- 2.26.2.761.g0e0b3e54be-goog