From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailgw02.mediatek.com (unknown [210.61.82.184]) (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 F01EA226CFE; Mon, 20 Jul 2026 01:21:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=210.61.82.184 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784510498; cv=none; b=g/a1I19/x/u5f8KJatqqnhhJOEERaCSZXuYay/O8wjdDkSFtG/2YdpxZoUIMt3Wm7Fkf7MgZGkJsTPS5rKs5UeUTwQ4oD/uy06wdKCsxSBCgfpcvJrgMNt4d65imZU28zDbBQUdKYGikbCbRq8GgvrvaIaIw3Nr3fmQmDIPo7PU= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784510498; c=relaxed/simple; bh=VxReX8Cr62WW9SEJUOynFv8D+hjM4SanZgHvjoOAKpI=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=oyPol+eg5a3dcHNAA1/j/iUlfvsHrBTXSwdzr5rA3Q9PNgdA0LYZ29J5Gl0CvVGYSFtRCeVdxf1jRUX9qtUdx3/0bA2BPpF6QDP4EgF7pvzJrJn95Ju2WqJSNGJMgncX2SRviPvv3+d27Bkt9gDVjW7bCnbxCEfvvZ+LGfwJ1uk= 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=kKYjrE7B; arc=none smtp.client-ip=210.61.82.184 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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=mediatek.com header.i=@mediatek.com header.b="kKYjrE7B" X-UUID: 5125de1e83d911f18dc8c9802ae25ab1-20260720 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:References:In-Reply-To:Message-ID:Date:Subject:CC:To:From; bh=YEVdjqexgbWcj0da8UDMKDJiezNXVchD6KGIGuVS84g=; b=kKYjrE7BRgYAKJFEdSQ1aQ8SBPfENwSqnmh5Wx2pqxxihPTZ9JkzDKY4wiVTlI9BkirH6KykCviv7n0r7Zxm3TgscRWwnsXkw2OmlW8iNOmgFONTqnMMMJt2qjuSX8D671VQz6Sbqt68vvR+UMLJLvE3xZd8AF7oW/DY1xG7ZOA=; X-CID-P-RULE: Release_Ham X-CID-O-INFO: VERSION:1.3.18,REQID:f00995a4-a91d-4c27-942c-34beb6fb9e18,IP:0,U RL:0,TC:0,Content:-5,EDM:0,RT:0,SF:0,FILE:0,BULK:0,RULE:Release_Ham,ACTION :release,TS:-5 X-CID-META: VersionHash:8a735a6,CLOUDID:5de9f99b-75c7-410a-a98f-13895d3131d4,B ulkID:nil,BulkQuantity:0,SF:81|82|102|836|865|888|898,TC:-5,Content:0|15|5 0|99,EDM:-3,IP:nil,URL:0,File:130,RT:0,Bulk:nil,QS:nil,BEC:-1,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: 2,SSN|SDN X-CID-BAS: 2,SSN|SDN,0,_ X-CID-FACTOR: TF_CID_SPAM_SNR X-CID-RHF: D41D8CD98F00B204E9800998ECF8427E X-UUID: 5125de1e83d911f18dc8c9802ae25ab1-20260720 Received: from mtkmbs11n1.mediatek.inc [(172.21.101.185)] by mailgw02.mediatek.com (envelope-from ) (Generic MTA with TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 256/256) with ESMTP id 24337092; Mon, 20 Jul 2026 09:21:21 +0800 Received: from mtkmbs11n1.mediatek.inc (172.21.101.185) by MTKMBS09N1.mediatek.inc (172.21.101.35) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.29; Mon, 20 Jul 2026 09:21:21 +0800 Received: from gcnsap21.gcn.mediatek.inc (10.17.81.22) by mtkmbs11n1.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.2.2562.29 via Frontend Transport; Mon, 20 Jul 2026 09:21:19 +0800 From: Kyrie Wu To: Tiffany Lin , Andrew-CT Chen , Yunfei Dong , Mauro Carvalho Chehab , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Kyrie Wu , Nicolas Dufresne , Ricardo Ribalda , Kees Cook , Hans Verkuil , Fei Shao , Haoxiang Li , Chen-Yu Tsai , Laurent Pinchart , Tomasz Figa , Sebastian Fricke , Philipp Zabel , Benjamin Gaignard , Qianfeng Rong , Irui Wang , Jacopo Mondi , Fan Wu , , , , , CC: Sakari Ailus Subject: [PATCH v6 13/14] media: mediatek: decoder: fill av1 buffer size with picinfo Date: Mon, 20 Jul 2026 09:20:55 +0800 Message-ID: <20260720012056.1026551-14-kyrie.wu@mediatek.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260720012056.1026551-1-kyrie.wu@mediatek.com> References: <20260720012056.1026551-1-kyrie.wu@mediatek.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-MTK: N The buffer size of y and c plane has been calculated in vcp/scp, can fill each frame buffer size with picinfo directly. Signed-off-by: Kyrie Wu Reviewed-by: Nicolas Dufresne --- .../vcodec/decoder/vdec/vdec_av1_req_lat_if.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c b/drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c index 4932ef469..14639098f 100644 --- a/drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c +++ b/drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c @@ -1811,18 +1811,19 @@ static int vdec_av1_slice_setup_core_buffer(struct vdec_av1_slice_instance *inst { struct vb2_buffer *vb; struct vb2_queue *vq; - int w, h, plane, size; + int plane; int i; plane = instance->ctx->q_data[MTK_Q_DATA_DST].fmt->num_planes; - w = vsi->frame.uh.upscaled_width; - h = vsi->frame.uh.frame_height; - size = ALIGN(w, VCODEC_DEC_ALIGNED_64) * ALIGN(h, VCODEC_DEC_ALIGNED_64); /* frame buffer */ vsi->fb.y.dma_addr = fb->base_y.dma_addr; + + vsi->fb.y.size = instance->ctx->picinfo.fb_sz[0]; + vsi->fb.c.size = instance->ctx->picinfo.fb_sz[1]; + if (plane == 1) - vsi->fb.c.dma_addr = fb->base_y.dma_addr + size; + vsi->fb.c.dma_addr = fb->base_y.dma_addr + vsi->fb.y.size; else vsi->fb.c.dma_addr = fb->base_c.dma_addr; @@ -1845,8 +1846,10 @@ static int vdec_av1_slice_setup_core_buffer(struct vdec_av1_slice_instance *inst } vref->y.dma_addr = vb2_dma_contig_plane_dma_addr(vb, 0); + vref->y.size = vsi->fb.y.size; + vref->c.size = vsi->fb.c.size; if (plane == 1) - vref->c.dma_addr = vref->y.dma_addr + size; + vref->c.dma_addr = vref->y.dma_addr + vsi->fb.y.size; else vref->c.dma_addr = vb2_dma_contig_plane_dma_addr(vb, 1); } -- 2.51.0.windows.2