Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp799809imm; Wed, 25 Jul 2018 06:29:32 -0700 (PDT) X-Google-Smtp-Source: AAOMgpcoMvITzdEerwnhKGUmkerwawGImSzYc/SUWj4prFnrfZPe9Wsm9M/Jtx9KebgupZHT1Jr7 X-Received: by 2002:a17:902:3a3:: with SMTP id d32-v6mr21204032pld.294.1532525372288; Wed, 25 Jul 2018 06:29:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1532525372; cv=none; d=google.com; s=arc-20160816; b=mGqRdRBq5P6v7mZv5m+tv9Qqe40UzSuLlzLpChV0eqRqiHtXXPKmRkYcDZ9s4YR5YB 7eoSAU3TN5jSx86mZ5EbWfRRjA+tuMdPlpid+TfN8TEtzis1s1STedDBlH1v4CBhjVo7 0foHOXlsDjApWABQ8Jkk43FdRWx1+Gm/WcqDyU1mN/QjOoYGC/IqsuscNwOBctQCLdex Ly9K7qWfwyX3l56gOxM19AAST5zdZxDAptc1n8Il9PGnvPOPu7LSL4DMUDg1wSubRb2f RMz/9wOXyqzT6zEWkK6pNnWE9SY4WXfZr7WHvmGNPAgm30NF86fgRqPsisHu5PeuD4+S qpFA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:date:cc:to:from:subject:message-id :arc-authentication-results; bh=0zWZr4mtlhOHCa4IwjkORjwhLFqIQCvEn+a5Z5UgsIE=; b=ngAg/BzrSCEO2/nInrz85YTmW3sXcSvVDE2A6WBf6W31em2LCXZ2ZH6/jKwOmB9A4G Ke+OctCrpYlxgpRE7hCNz9wTCeL6rS2KJe5/8CHasEx+QijmRIewkpTEDMBlMhTf8L3w mM7CwkZh4BCl9wHpJNUgmZ+12U9pL+dgHbfjh6hD0vGYAjkEV4tBBX2BkJTTyWXtQbdJ Z00MGKuCjC8wYe5UdVAfLgwt29SuW1YW+IsdcTjUJChaXOOvkDDpEIFm/p11CFhfiXqJ nE/Ffi15QzYqVoFWUIMKy2pf9a2W3QNnPCyxMYEQRu4luINe0aZItEyRpa887du/XQZ2 Rc0w== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id q65-v6si14399545pga.283.2018.07.25.06.29.16; Wed, 25 Jul 2018 06:29:32 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729092AbeGYOjy (ORCPT + 99 others); Wed, 25 Jul 2018 10:39:54 -0400 Received: from metis.ext.pengutronix.de ([85.220.165.71]:52169 "EHLO metis.ext.pengutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728379AbeGYOjx (ORCPT ); Wed, 25 Jul 2018 10:39:53 -0400 Received: from lupine.hi.pengutronix.de ([2001:67c:670:100:3ad5:47ff:feaf:1a17] helo=lupine) by metis.ext.pengutronix.de with esmtp (Exim 4.89) (envelope-from ) id 1fiJpr-0004Zx-Ns; Wed, 25 Jul 2018 15:28:11 +0200 Message-ID: <1532525286.4879.5.camel@pengutronix.de> Subject: Re: [PATCH 0/2] Document memory-to-memory video codec interfaces From: Philipp Zabel To: Tomasz Figa , linux-media@vger.kernel.org Cc: linux-kernel@vger.kernel.org, Stanimir Varbanov , Mauro Carvalho Chehab , Hans Verkuil , Pawel Osciak , Alexandre Courbot , kamil@wypas.org, a.hajda@samsung.com, Kyungmin Park , jtp.park@samsung.com, Tiffany Lin =?UTF-8?Q?=28=E6=9E=97=E6=85=A7=E7=8F=8A=29?= , Andrew-CT Chen =?UTF-8?Q?=28=E9=99=B3=E6=99=BA=E8=BF=AA=29?= , todor.tomov@linaro.org, nicolas@ndufresne.ca, Paul Kocialkowski , Laurent Pinchart , Dave Stevenson , ezequiel@collabora.com Date: Wed, 25 Jul 2018 15:28:06 +0200 In-Reply-To: <20180724140621.59624-1-tfiga@chromium.org> References: <20180724140621.59624-1-tfiga@chromium.org> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.22.6-1+deb9u1 Mime-Version: 1.0 Content-Transfer-Encoding: 8bit X-SA-Exim-Connect-IP: 2001:67c:670:100:3ad5:47ff:feaf:1a17 X-SA-Exim-Mail-From: p.zabel@pengutronix.de X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Tomasz, On Tue, 2018-07-24 at 23:06 +0900, Tomasz Figa wrote: > This series attempts to add the documentation of what was discussed > during Media Workshops at LinuxCon Europe 2012 in Barcelona and then > later Embedded Linux Conference Europe 2014 in Düsseldorf and then > eventually written down by Pawel Osciak and tweaked a bit by Chrome OS > video team (but mostly in a cosmetic way or making the document more > precise), during the several years of Chrome OS using the APIs in > production. > > Note that most, if not all, of the API is already implemented in > existing mainline drivers, such as s5p-mfc or mtk-vcodec. Intention of > this series is just to formalize what we already have. > > It is an initial conversion from Google Docs to RST, so formatting is > likely to need some further polishing. It is also the first time for me > to create such long RST documention. I could not find any other instance > of similar userspace sequence specifications among our Media documents, > so I mostly followed what was there in the source. Feel free to suggest > a better format. > > Much of credits should go to Pawel Osciak, for writing most of the > original text of the initial RFC. > > Changes since RFC: > (https://lore.kernel.org/patchwork/project/lkml/list/?series=348588) > - The number of changes is too big to list them all here. Thanks to > a huge number of very useful comments from everyone (Philipp, Hans, > Nicolas, Dave, Stanimir, Alexandre) we should have the interfaces much > more specified now. The issues collected since previous revisions and > answers leading to this revision are listed below. Thanks a lot for the update, and especially for the nice Q&A summary of the discussions so far. [...] > Decoder issues > [...] > How should ENUM_FRAMESIZES be affected by profiles and levels? > > Answer: Not in current specification - the logic is too complicated and > it might make more sense to actually handle this in user space. (In > theory, level implies supported frame sizes + other factors.) For decoding I think it makes more sense to let the hardware decode them from the stream and present them as read-only controls, such as: 42a68012e67c ("media: coda: add read-only h.264 decoder profile/level controls") if possible. For encoding, the coda firmware determines level from bitrate and coded resolution, itself, so I agree not making this part of the spec is a good idea for now. regards Philipp