[PATCH 00/20] Add MFC v12 support.

Smitha T Murthy
2022-05-17T12:58:08Z

This patch series adds MFC v12 support. MFC v12 is used in
Tesla FSD SoC.

This adds support for following:

* Add support for VP9 encoder
* Add support for YV12 and I420 format (3-plane)
* Add support for Rate Control, UHD and DMABUF for encoder
* Add support for DPB buffers allocation based on MFC requirement
* Fix to handle reference queue at MFCINST_FINISHING state.
* Fix to handle error scenario on CLOSE_INSTANCE command.
* Fix for register read and write for H264 codec encoding.
* Update Documentation for control id definitions

Smitha T Murthy (20):
MAINTAINERS: Add git repo path for MFC
dt-bindings: media: s5p-mfc: Convert s5p-mfc.txt to new DT schema
dt-bindings: media: s5p-mfc: Add mfcv12 variant
media: s5p-mfc: Rename IS_MFCV10 macro
media: s5p-mfc: Add initial support for MFCv12
Documention: v4l: Documentation for VP9 CIDs.
media: v4l2: Add v4l2 control IDs for VP9 encoder.
media: s5p-mfc: Add support for VP9 encoder.
media: s5p-mfc: Add YV12 and I420 multiplanar format support
media: s5p-mfc: Add support for rate controls in MFCv12
media: s5p-mfc: Add support for UHD encoding.
media: s5p-mfc: Add support for DMABUF for encoder
media: s5p-mfc: Set context for valid case before calling try_run
media: s5p-mfc: Load firmware for each run in MFCv12.
media: s5p-mfc: DPB Count Independent of VIDIOC_REQBUF
media: s5p-mfc: Fix to handle reference queue during finishing
media: s5p-mfc: Clear workbit to handle error condition
media: s5p-mfc: Correction in register read and write for H264
arm64: dts: fsd: Add MFC related DT enteries
arm64 defconfig: Add MFC in defconfig

.../devicetree/bindings/media/s5p-mfc.txt | 77 +--
.../devicetree/bindings/media/s5p-mfc.yaml | 99 ++++
.../media/v4l/ext-ctrls-codec.rst | 167 +++++++
MAINTAINERS | 1 +
arch/arm64/boot/dts/tesla/fsd-evb.dts | 8 +
arch/arm64/boot/dts/tesla/fsd.dtsi | 22 +
arch/arm64/configs/defconfig | 4 +-
.../platform/samsung/s5p-mfc/regs-mfc-v12.h | 60 +++
.../platform/samsung/s5p-mfc/regs-mfc-v7.h | 1 +
.../platform/samsung/s5p-mfc/regs-mfc-v8.h | 3 +
.../media/platform/samsung/s5p-mfc/s5p_mfc.c | 36 +-
.../platform/samsung/s5p-mfc/s5p_mfc_cmd_v6.c | 3 +
.../platform/samsung/s5p-mfc/s5p_mfc_common.h | 48 +-
.../platform/samsung/s5p-mfc/s5p_mfc_ctrl.c | 13 +-
.../platform/samsung/s5p-mfc/s5p_mfc_dec.c | 51 +-
.../platform/samsung/s5p-mfc/s5p_mfc_enc.c | 417 ++++++++++++++--
.../platform/samsung/s5p-mfc/s5p_mfc_opr.h | 16 +-
.../platform/samsung/s5p-mfc/s5p_mfc_opr_v5.c | 12 +-
.../platform/samsung/s5p-mfc/s5p_mfc_opr_v6.c | 446 ++++++++++++++++--
.../platform/samsung/s5p-mfc/s5p_mfc_opr_v6.h | 3 +
drivers/media/v4l2-core/v4l2-ctrls-defs.c | 44 ++
include/uapi/linux/v4l2-controls.h | 33 ++
22 files changed, 1362 insertions(+), 202 deletions(-)
create mode 100644 Documentation/devicetree/bindings/media/s5p-mfc.yaml
create mode 100644 drivers/media/platform/samsung/s5p-mfc/regs-mfc-v12.h

base-commit: 3ae87d2f25c0e998da2721ce332e2b80d3d53c39
--
2.17.1