Message ID | 20250510075357.11761-1-yunfei.dong@mediatek.com (mailing list archive) |
---|---|
Headers |
Received: from ny.mirrors.kernel.org ([147.75.199.223]) by linuxtv.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from <linux-media+bounces-32203-patchwork=linuxtv.org@vger.kernel.org>) id 1uDf6Y-0002Yj-17 for patchwork@linuxtv.org; Sat, 10 May 2025 07:58:46 +0000 Received: from smtp.subspace.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ny.mirrors.kernel.org (Postfix) with ESMTPS id B516F4C6956 for <patchwork@linuxtv.org>; Sat, 10 May 2025 07:58:40 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 377481EA7C2; Sat, 10 May 2025 07:58:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=mediatek.com header.i=@mediatek.com header.b="A4y1uzHW" X-Original-To: linux-media@vger.kernel.org Received: from mailgw01.mediatek.com (unknown [60.244.123.138]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 44E581E7C16; Sat, 10 May 2025 07:58:23 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=60.244.123.138 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746863906; cv=none; b=YPpLHC/IwHT+M8mlmrFJSDtkGZiqzrDnwGMeSOIWHQcnNakplM7ktUC62wLDHxiaQIZK5sPaQ7FKWlBlUi33FUC5E44+aXOB4BZueaap45HWMiSiwjgF0M3MjzGSSh6lR5a/hgHZYUVTxzY8t7crjHMkn2qHxtakw9NorFqD0Tw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746863906; c=relaxed/simple; bh=yxv/GjyWDEcJCRPXJk9IZ8r+FuVV8riWGZpFdwWIz8o=; h=From:To:CC:Subject:Date:Message-ID:MIME-Version:Content-Type; b=LXj+z7meYB5zOwFSsoO/Ta7Fu6KLwqDaAH6YXQgJqCGhn66lsZrGCxpNBYj/wLNXkomJIu1FhosGxTSxUry4FJJVxe6q8h5vvUQpam4U1523ecLt7MpaafDhPboSsqePw3mbw5klTl5faaT5bDEKc2TWCQwZuSHHZh/KaO6GWKw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=mediatek.com; spf=pass smtp.mailfrom=mediatek.com; dkim=pass (1024-bit key) header.d=mediatek.com header.i=@mediatek.com header.b=A4y1uzHW; arc=none smtp.client-ip=60.244.123.138 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=mediatek.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=mediatek.com X-UUID: 8852802a2d7411f0813e4fe1310efc19-20250510 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Type:Content-Transfer-Encoding:MIME-Version:Message-ID:Date:Subject:CC:To:From; bh=6agtWIXbJmUtcrx4iD0m4JDURbIUkZ7GY6LMdZCpjis=; b=A4y1uzHWf0jek4MJPav62tw+95kFtKngbt/N7z4MxBM3TcTPYe1dW1ItiV39S43ZEkFajFP8KBfalkAM27+W0Xemc6Ql8rzz3WEzHOD2DvSZAN08PFK8Gbt4puexsKKY7GZHsUBQ0UmatHPA49ppdurRhS1CM4bm4OwKcWOPTg0=; X-CID-P-RULE: Release_Ham X-CID-O-INFO: VERSION:1.2.1,REQID:90c1b08a-982d-43bd-b094-acf476a1c58e,IP:0,UR L:0,TC:0,Content:0,EDM:0,RT:0,SF:0,FILE:0,BULK:0,RULE:Release_Ham,ACTION:r elease,TS:0 X-CID-META: VersionHash:0ef645f,CLOUDID:ffcc5e51-76c0-4e62-bb75-246dfb0889c6,B ulkID:nil,BulkQuantity:0,Recheck:0,SF:102,TC:nil,Content:0|50,EDM:-3,IP:ni l,URL:99|1,File:nil,RT:nil,Bulk:nil,QS:nil,BEC:nil,COL:0,OSI:0,OSA:0,AV:0, LES:1,SPR:NO,DKR:0,DKP:0,BRR:0,BRE:0,ARC:0 X-CID-BVR: 0 X-CID-BAS: 0,_,0,_ X-CID-FACTOR: TF_CID_SPAM_ULS,TF_CID_SPAM_SNR X-UUID: 8852802a2d7411f0813e4fe1310efc19-20250510 Received: from mtkmbs14n1.mediatek.inc [(172.21.101.75)] by mailgw01.mediatek.com (envelope-from <yunfei.dong@mediatek.com>) (Generic MTA with TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 256/256) with ESMTP id 1686562588; Sat, 10 May 2025 15:58:17 +0800 Received: from mtkmbs13n1.mediatek.inc (172.21.101.193) by MTKMBS14N1.mediatek.inc (172.21.101.75) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1258.39; Sat, 10 May 2025 15:58:14 +0800 Received: from mhfsdcap04.gcn.mediatek.inc (10.17.3.154) by mtkmbs13n1.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.2.1258.39 via Frontend Transport; Sat, 10 May 2025 15:58:13 +0800 From: Yunfei Dong <yunfei.dong@mediatek.com> To: =?utf-8?q?N=C3=ADcolas_F_=2E_R_=2E_A_=2E_Prado?= <nfraprado@collabora.com>, Sebastian Fricke <sebastian.fricke@collabora.com>, Nicolas Dufresne <nicolas.dufresne@collabora.com>, Hans Verkuil <hverkuil-cisco@xs4all.nl>, AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>, Benjamin Gaignard <benjamin.gaignard@collabora.com>, Nathan Hebert <nhebert@chromium.org>, Daniel Almeida <daniel.almeida@collabora.com> CC: Hsin-Yi Wang <hsinyi@chromium.org>, Fritz Koenig <frkoenig@chromium.org>, Daniel Vetter <daniel@ffwll.ch>, Steve Cho <stevecho@chromium.org>, Yunfei Dong <yunfei.dong@mediatek.com>, <linux-media@vger.kernel.org>, <devicetree@vger.kernel.org>, <linux-kernel@vger.kernel.org>, <linux-arm-kernel@lists.infradead.org>, <linux-mediatek@lists.infradead.org>, <Project_Global_Chrome_Upstream_Group@mediatek.com> Subject: [PATCH 00/14] media: mediatek: vcodec: support video decoder in mt8196 Date: Sat, 10 May 2025 15:53:30 +0800 Message-ID: <20250510075357.11761-1-yunfei.dong@mediatek.com> X-Mailer: git-send-email 2.46.0 Precedence: bulk X-Mailing-List: linux-media@vger.kernel.org List-Id: <linux-media.vger.kernel.org> List-Subscribe: <mailto:linux-media+subscribe@vger.kernel.org> List-Unsubscribe: <mailto:linux-media+unsubscribe@vger.kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-MTK: N X-LSpam-Score: -8.6 (--------) X-LSpam-Report: No, score=-8.6 required=5.0 tests=ARC_SIGNED=0.001,ARC_VALID=-0.1,BAYES_00=-1.9,DKIM_SIGNED=0.1,DKIM_VALID=-0.1,DKIM_VALID_AU=-0.1,DMARC_PASS=-0.001,HEADER_FROM_DIFFERENT_DOMAINS=0.5,MAILING_LIST_MULTI=-1,RCVD_IN_DNSWL_MED=-2.3,RCVD_IN_VALIDITY_CERTIFIED=-3,RCVD_IN_VALIDITY_RPBL=1.31,RCVD_IN_VALIDITY_SAFE=-2,SPF_HELO_NONE=0.001,SPF_PASS=-0.001,UNPARSEABLE_RELAY=0.001 autolearn=unavailable autolearn_force=no |
Series |
media: mediatek: vcodec: support video decoder in mt8196
|
|
Message
Yunfei Dong
May 10, 2025, 7:53 a.m. UTC
Using vcp micro processor to support video decoder in mt8196 platform, need to add new firmware interface to communicate with vcp in kernel side. Then add mt8196 compatible, codec levels/profiles and private data. Re-write av1 driver to support extend vsi struct, then change irq table and cdf table size. This patch set depends on "Add VCP support for mt8196"[1] [1] https://patchwork.kernel.org/project/linux-remoteproc/patch/20250402092134.12293-2-xiangzhi.tang@mediatek.com/ --- Yunfei Dong (14): dt-bindings: media: mediatek: vcodec: add decoder dt-bindings for mt8196 media: mediatek: vcodec: add decoder compatible to support mt8196 media: mediatek: vcodec: add driver to support vcp media: mediatek: vcodec: add driver to support vcp encoder media: mediatek: vcodec: get different firmware ipi id media: mediatek: vcodec: get share memory address media: mediatek: vcodec: define MT8196 vcodec levels. media: mediatek: vcodec: support vcp architecture media: mediatek: vcodec: support 36bit iova address media: mediatek: vcodec: clean xpc status media: mediatek: vcodec: add debug information media: mediatek: vcodec: send share memory address to vcp media: mediatek: decoder: fill av1 buffer size with picinfo media: mediatek: decoder: support av1 extend vsi .../media/mediatek,vcodec-subdev-decoder.yaml | 1 + .../media/platform/mediatek/vcodec/Kconfig | 4 + .../platform/mediatek/vcodec/common/Makefile | 4 + .../mediatek/vcodec/common/mtk_vcodec_dbgfs.c | 21 +- .../mediatek/vcodec/common/mtk_vcodec_fw.c | 16 + .../mediatek/vcodec/common/mtk_vcodec_fw.h | 2 + .../vcodec/common/mtk_vcodec_fw_priv.h | 12 + .../vcodec/common/mtk_vcodec_fw_vcp.c | 493 ++++++++++++++++++ .../vcodec/common/mtk_vcodec_fw_vcp.h | 151 ++++++ .../vcodec/decoder/mtk_vcodec_dec_drv.c | 16 + .../vcodec/decoder/mtk_vcodec_dec_drv.h | 1 + .../vcodec/decoder/mtk_vcodec_dec_hw.c | 28 + .../vcodec/decoder/mtk_vcodec_dec_hw.h | 13 +- .../vcodec/decoder/mtk_vcodec_dec_stateless.c | 6 + .../vcodec/decoder/vdec/vdec_av1_req_lat_if.c | 85 ++- .../decoder/vdec/vdec_h264_req_multi_if.c | 10 +- .../decoder/vdec/vdec_hevc_req_multi_if.c | 11 +- .../vcodec/decoder/vdec/vdec_vp8_req_if.c | 4 +- .../vcodec/decoder/vdec/vdec_vp9_req_lat_if.c | 20 +- .../mediatek/vcodec/decoder/vdec_ipi_msg.h | 2 + .../mediatek/vcodec/decoder/vdec_vpu_if.c | 9 +- .../mediatek/vcodec/encoder/mtk_vcodec_enc.c | 1 - .../mediatek/vcodec/encoder/mtk_vcodec_enc.h | 2 + include/linux/remoteproc/mtk_vcp_public.h | 2 +- 24 files changed, 871 insertions(+), 43 deletions(-) create mode 100644 drivers/media/platform/mediatek/vcodec/common/mtk_vcodec_fw_vcp.c create mode 100644 drivers/media/platform/mediatek/vcodec/common/mtk_vcodec_fw_vcp.h