From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.7 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id EB680C63798 for ; Thu, 26 Nov 2020 23:21:40 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id BFF392145D for ; Thu, 26 Nov 2020 23:21:40 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2391915AbgKZXVY (ORCPT ); Thu, 26 Nov 2020 18:21:24 -0500 Received: from bhuna.collabora.co.uk ([46.235.227.227]:46784 "EHLO bhuna.collabora.co.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388513AbgKZXVX (ORCPT ); Thu, 26 Nov 2020 18:21:23 -0500 Received: from [127.0.0.1] (localhost [127.0.0.1]) (Authenticated sender: ezequiel) with ESMTPSA id A2EB61F46084 Message-ID: <1496f292eadc62a3ab585a89cf9b997ce4a1d799.camel@collabora.com> Subject: Re: [PATCH v3] media: cedrus: Add support for VP8 decoding From: Ezequiel Garcia To: Jernej Skrabec , mripard@kernel.org, paul.kocialkowski@bootlin.com Cc: mchehab@kernel.org, wens@csie.org, hverkuil@xs4all.nl, linux-kernel@vger.kernel.org, linux-media@vger.kernel.org, devel@driverdev.osuosl.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@googlegroups.com, Emmanuel Gil Peyrot Date: Thu, 26 Nov 2020 20:21:11 -0300 In-Reply-To: <20201110223540.4105284-1-jernej.skrabec@siol.net> References: <20201110223540.4105284-1-jernej.skrabec@siol.net> Organization: Collabora Content-Type: text/plain; charset="UTF-8" User-Agent: Evolution 3.36.3-1 MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Jernej, Emmanuel, Thanks for the patch. On Tue, 2020-11-10 at 23:35 +0100, Jernej Skrabec wrote: > VP8 in Cedrus shares same engine as H264. > > Note that it seems necessary to call bitstream parsing functions, > to parse frame header, otherwise decoded image is garbage. This is > contrary to what is driver supposed to do. However, values are not > really used, so this might be acceptable. It's possible that bitstream > parsing functions set some internal VPU state, which is later necessary > for proper decoding. Biggest suspect is "VP8 probs update" trigger. > > Signed-off-by: Jernej Skrabec > [addressed issues from reviewer] > Signed-off-by: Emmanuel Gil Peyrot > --- > Changes in v3: > - addressed comments from Ezequiel Garcia - new comments, > using new macros from VP8 UAPI, new function for waiting > on bit to be set > Changes in v2: > - rebased on top of current linux-media master branch > > NOTE: This now depends on following patch: > https://patchwork.linuxtv.org/project/linux-media/patch/20201108202021.4187-1-linkmauve@linkmauve.fr/ > The patch looks fairly good, so let's wait and see what Hans, Paul and Maxime think about it. FWIW, my humble Reviewed-by: Ezequiel Garcia It would be good to make sure this doesn't regress v4l2-compliance, or cause some regression in decoding. Not really a blocker to merge this, but I'm thinking that now that we have Fluster for conformance testing, we could add the VP8 vectors and use them against Cedrus and Hantro: https://chromium.googlesource.com/webm/vp8-test-vectors/+/refs/heads/master Thanks, Ezequiel > drivers/staging/media/sunxi/cedrus/Makefile | 3 +- > drivers/staging/media/sunxi/cedrus/cedrus.c | 8 + > drivers/staging/media/sunxi/cedrus/cedrus.h | 24 + > .../staging/media/sunxi/cedrus/cedrus_dec.c | 5 + > .../staging/media/sunxi/cedrus/cedrus_hw.c | 2 + > .../staging/media/sunxi/cedrus/cedrus_regs.h | 80 ++ > .../staging/media/sunxi/cedrus/cedrus_video.c | 9 + > .../staging/media/sunxi/cedrus/cedrus_vp8.c | 907 ++++++++++++++++++ > 8 files changed, 1037 insertions(+), 1 deletion(-) > create mode 100644 drivers/staging/media/sunxi/cedrus/cedrus_vp8.c >