Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp808240imm; Wed, 25 Jul 2018 06:36:54 -0700 (PDT) X-Google-Smtp-Source: AAOMgpdYMkQNUhd3y6aglB8WrjlQhM7vlQ2UJU2lE8M/NhW6lcXCf3lEKEN7vXcajtB/sbKrRhP3 X-Received: by 2002:a63:710d:: with SMTP id m13-v6mr20528868pgc.66.1532525814744; Wed, 25 Jul 2018 06:36:54 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1532525814; cv=none; d=google.com; s=arc-20160816; b=e7M1cph/J6AZAkkrz9op2UcxBVlhjBMTjeA0aiqcBYPcq54PQByhXrrknFfhV8/kDD zZvq9zEjBObPVzaTN6xyLegpyJpvAllLk0LGwdjs9lqFNs5EtO9H+9Ms+uVGsSqyMQXp E0CXv3LwLuY671CwMa/sJH3BthisWRwoMxW/CqNBXy/x2rHy+em5LZArIQr6HwNhYBCE 0VRfc+qvpQIuNRGgC9/0aXzpMkvJ5RZeVn9ZA7iLmezGzb5gHOxX+BNWlHEfLHGsJg/4 iHo6J5x8xIUMcEyZETAQpKVfZPLaxxiYs4ueR32cPRXgFbM3ZrsAsiISK+VcJhs5jr0H /8Lw== 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:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature:arc-authentication-results; bh=xoDt6cy2T5WyyNkUfyTtgcdzdSwDUsDnlAppuiyTyiY=; b=FpeDyssPEyWaLPafFm2hNbzBBt0pwc+OKQXfpKO6eJ6aGvJEEtTBg4+24Qaq3G36qO NKamE7XsqN0lgO5TGUmmr8Yseitz3r/VPOFaQ4oL8fWpWoZxYqzgdvCgjtprCj25bRl6 Hj9NV2LKw2ay9lEaDiRBIhwbMT4zQAkOehwJmAJDPDLuX5NOI0AUNmoFmHmAS2eg5gkZ T+46FhKfer0ptQdhU7vg7cuwHh1a1w7NkhU7t1DLHcern54/XJW1Qh9kwzCcxKVcA1mW ZtPV1c3m3kwT1r81y5vrrqYTf+AMfHSmsNhWK3oxWxUs88Poo+k9u8ShYA04cWEXCqs2 hEKQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b="Shq3/FAj"; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id m7-v6si1371132plt.7.2018.07.25.06.36.39; Wed, 25 Jul 2018 06:36:54 -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; dkim=pass header.i=@chromium.org header.s=google header.b="Shq3/FAj"; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729097AbeGYOrb (ORCPT + 99 others); Wed, 25 Jul 2018 10:47:31 -0400 Received: from mail-yw0-f194.google.com ([209.85.161.194]:39014 "EHLO mail-yw0-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728993AbeGYOrb (ORCPT ); Wed, 25 Jul 2018 10:47:31 -0400 Received: by mail-yw0-f194.google.com with SMTP id r184-v6so2853057ywg.6 for ; Wed, 25 Jul 2018 06:35:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=xoDt6cy2T5WyyNkUfyTtgcdzdSwDUsDnlAppuiyTyiY=; b=Shq3/FAjlmNXU0EEcCKXRv02AJZHlr4h79/F2LfGKVXqgMVvmBFBHVc8kSJpRL/xSg XJTCUyswZAkqD+/aK2Xu6DvwtFmyNeN0h54s7haHEmQv/Gw9Nm+Y28o7BYgXef8quvyI B79+NBuYFyVtbKrOTQb9ViITyKENrr9axrjFs= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=xoDt6cy2T5WyyNkUfyTtgcdzdSwDUsDnlAppuiyTyiY=; b=j4v2g1PtWtWfkoLX1qF01W2peZg5ngPMlDT+0+eBqoUirGm0pChXC6KwBNU/rl12wx 8tFC9CgXK/WFihDsoCn29x/I6Beiu566EaMsaJ5tu2Z5OiTIA3buiwXR7kbnM0SkZ+4R bHHPf869EPDP22n7ZEI+AjJ/r1XuOAjJKlDVIJhZAVE0pDRkF4oOLBsnoHArcONJ1oxo WB/ycvR0+vDySd9YjB/bXWDvX+LuUPNM5W51ymkAtB5E7Q476DVgT3Ym86xI8dJHFgVt 4iimbtKeo5Aab86/mr+pND0RQzCcTD3Xb7GtCBCPC2Z9239gfO87GGu1DjfVagJLPEgr ca8g== X-Gm-Message-State: AOUpUlE0EUIYgtTvDV3VIrmCCJd328dJgXSuPKVb8PP2h1GlxVPY1Dku SGuqRRScNeMUzE2K4t0CTy7lvWMRZH1Jbw== X-Received: by 2002:a81:4990:: with SMTP id w138-v6mr10755180ywa.372.1532525747633; Wed, 25 Jul 2018 06:35:47 -0700 (PDT) Received: from mail-yb0-f169.google.com (mail-yb0-f169.google.com. [209.85.213.169]) by smtp.gmail.com with ESMTPSA id r69-v6sm6818828ywh.44.2018.07.25.06.35.46 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 25 Jul 2018 06:35:46 -0700 (PDT) Received: by mail-yb0-f169.google.com with SMTP id e84-v6so2986481ybb.0 for ; Wed, 25 Jul 2018 06:35:46 -0700 (PDT) X-Received: by 2002:a25:207:: with SMTP id 7-v6mr11378997ybc.7.1532525745776; Wed, 25 Jul 2018 06:35:45 -0700 (PDT) MIME-Version: 1.0 References: <20180724140621.59624-1-tfiga@chromium.org> <1532525286.4879.5.camel@pengutronix.de> In-Reply-To: <1532525286.4879.5.camel@pengutronix.de> From: Tomasz Figa Date: Wed, 25 Jul 2018 22:35:34 +0900 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH 0/2] Document memory-to-memory video codec interfaces To: Philipp Zabel Cc: Linux Media Mailing List , Linux Kernel Mailing List , Stanimir Varbanov , Mauro Carvalho Chehab , Hans Verkuil , Pawel Osciak , Alexandre Courbot , kamil@wypas.org, a.hajda@samsung.com, Kyungmin Park , jtp.park@samsung.com, =?UTF-8?B?VGlmZmFueSBMaW4gKOael+aFp+ePiik=?= , =?UTF-8?B?QW5kcmV3LUNUIENoZW4gKOmZs+aZuui/qik=?= , todor.tomov@linaro.org, nicolas@ndufresne.ca, Paul Kocialkowski , Laurent Pinchart , dave.stevenson@raspberrypi.org, Ezequiel Garcia Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Philipp, On Wed, Jul 25, 2018 at 10:28 PM Philipp Zabel wro= te: > > 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=C3=BCsseldorf 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 instanc= e > > 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=3D348588) > > - 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 mu= ch > > more specified now. The issues collected since previous revisions an= d > > 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 a= nd > > 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") To clarify, this point is only about the effect on ENUM_FRAMESIZES. Profile and level controls are mentioned in capabilities enumeration, but it may make sense to add optional steps of querying them in Initialization sequence. > > 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. Encoder controls are driver-specific in general, since the encoding capabilities vary a lot, so I decided to just briefly mention the general idea of encoding parameters in "Encoding parameter changes" section. It could be a good idea to add a reference to the MPEG control documentation there, though. Best regards, Tomasz