On 06/12/2023 07:30, Aakarsh Jain wrote: > This patch series adds MFC v12 support. MFC v12 is used in Tesla FSD SoC. > > This adds support for following: > > -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 I'm getting one smatch warning: drivers/media/platform/samsung/s5p-mfc/s5p_mfc_enc.c:2453 s5p_mfc_queue_setup() error: we previously assumed 'ctx->src_fmt' could be null (see line 2441) And a few kerneldoc warnings: drivers/media/platform/samsung/s5p-mfc/s5p_mfc_common.h:729: warning: Function parameter or member 'chroma_size_1' not described in 's5p_mfc_ctx' drivers/media/platform/samsung/s5p-mfc/s5p_mfc_common.h:729: warning: Function parameter or member 'is_10bit' not described in 's5p_mfc_ctx' drivers/media/platform/samsung/s5p-mfc/s5p_mfc_common.h:729: warning: Function parameter or member 'is_422' not described in 's5p_mfc_ctx' drivers/media/platform/samsung/s5p-mfc/s5p_mfc_common.h:729: warning: Function parameter or member 'stride' not described in 's5p_mfc_ctx' Something for v6. Regards, Hans > > Changes since v4: > -Addressed review comments by Krzysztof Kozlowski. > As per discussion included iommus property in dt-schema. > -Addressed review comments by Hans Verkuil. > Fixed checkpatch warnings with --strict flag enabled. > Upstreamed s5p-mfc-v12.fw to linux-firmware. > Added comment in the patch 9 regarding loading mfc firmware v12 > sequentially. > -Addressed review comments by Nicolas Dufresne > Made use of v4l2-common library to get number of planes needed for > particular format in patch 4. > v4 link:https://patchwork.kernel.org/project/linux-media/patch/20231025102216.50480-2-aakarsh.jain@xxxxxxxxxxx/ > > Changes since v3: > -Removed vp9 codec support for now and just keeping MFC v12 base > patches with necessary hardware controls, decoder, encoder and > structural changes. Also covers luma dbp, chroma dpb and mv sizes > for each codec as per the UM for MFCv12, along with appropriate > alignment. > v3 link: https://patchwork.kernel.org/project/linux-media/cover/20221011122516.32135-1-aakarsh.jain@xxxxxxxxxxx/ > > Changes since v2: > -Addressed review comments by Rob Herring. > This was regarding the errors found by Rob bot in yaml file. File > 'samsung,s5p-mfc.yaml' is already converted into json schema and is > merged. > > -Addressed review comments by Krzysztof Kozlowski. > This was regarding depricated properties mentioned in s5p-mfc.txt file. > Review comment was addressed and 'samsung,s5p-mfc.yaml' is already > merged now. > > -Addressed review comments by Andi Shyti. > This was regarding addition of 'MFC_V10PLUS_BITS' macro in > 's5p_mfc_common.h file. > v2 link: https://patchwork.kernel.org/project/linux-media/cover/20220907064715.55778-1-smitha.t@xxxxxxxxxxx/ > > Changes since v1: > -Addressed review comments by Krzysztof Kozlowski. > Separated bug fixes patches, resent again with fix tag > and those are merged now. > -Added SoC based compatible string. > > -Addressed review comments by Andrzej Hajda > Assigned width64 and height32 variable with ALIGN(ctx->img_..) > used in the code in 's5p_mfc_opr_v6.c' file. > v1 link: https://patchwork.kernel.org/project/linux-media/patch/20220517125548.14746-2-smitha.t@xxxxxxxxxxx/ > > Aakarsh Jain (11): > dt-bindings: media: s5p-mfc: Add mfcv12 variant > media: s5p-mfc: Rename IS_MFCV10 macro > media: s5p-mfc: Add initial support for MFCv12 > 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 > arm64: dts: fsd: Add MFC related DT enteries > > .../bindings/media/samsung,s5p-mfc.yaml | 18 ++ > arch/arm64/boot/dts/tesla/fsd.dtsi | 21 ++ > .../platform/samsung/s5p-mfc/regs-mfc-v12.h | 52 +++ > .../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_common.h | 29 +- > .../platform/samsung/s5p-mfc/s5p_mfc_ctrl.c | 10 +- > .../platform/samsung/s5p-mfc/s5p_mfc_dec.c | 60 +++- > .../platform/samsung/s5p-mfc/s5p_mfc_enc.c | 149 ++++++--- > .../platform/samsung/s5p-mfc/s5p_mfc_opr.h | 14 +- > .../platform/samsung/s5p-mfc/s5p_mfc_opr_v5.c | 12 +- > .../platform/samsung/s5p-mfc/s5p_mfc_opr_v6.c | 300 ++++++++++++++---- > .../platform/samsung/s5p-mfc/s5p_mfc_opr_v6.h | 7 +- > 14 files changed, 563 insertions(+), 149 deletions(-) > create mode 100644 drivers/media/platform/samsung/s5p-mfc/regs-mfc-v12.h >