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=-7.0 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_PASS autolearn=ham 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 3D79BC43387 for ; Tue, 15 Jan 2019 14:44:50 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 124C520657 for ; Tue, 15 Jan 2019 14:44:50 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729279AbfAOOot (ORCPT ); Tue, 15 Jan 2019 09:44:49 -0500 Received: from lb3-smtp-cloud7.xs4all.net ([194.109.24.31]:36157 "EHLO lb3-smtp-cloud7.xs4all.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727626AbfAOOot (ORCPT ); Tue, 15 Jan 2019 09:44:49 -0500 Received: from [IPv6:2001:983:e9a7:1:415f:b492:6ed4:23a7] ([IPv6:2001:983:e9a7:1:415f:b492:6ed4:23a7]) by smtp-cloud7.xs4all.net with ESMTPA id jPxMg8NBkBDyIjPxNgxocr; Tue, 15 Jan 2019 15:44:47 +0100 Subject: Re: [Xen-devel][PATCH v4 1/1] cameraif: add ABI for para-virtual camera To: Oleksandr Andrushchenko , xen-devel@lists.xenproject.org, konrad.wilk@oracle.com, jgross@suse.com, boris.ostrovsky@oracle.com, mchehab@kernel.org, linux-media@vger.kernel.org, sakari.ailus@linux.intel.com, koji.matsuoka.xm@renesas.com Cc: Oleksandr Andrushchenko References: <20190115093853.15495-1-andr2000@gmail.com> <20190115093853.15495-2-andr2000@gmail.com> From: Hans Verkuil Message-ID: <393f824d-e543-476c-777f-402bcc1c0bcb@xs4all.nl> Date: Tue, 15 Jan 2019 15:44:44 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.3.1 MIME-Version: 1.0 In-Reply-To: <20190115093853.15495-2-andr2000@gmail.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-CMAE-Envelope: MS4wfNrbnBzirGivXXovkDhdzMwDc26v8/cEIAROuz2dA9lIG45vTUkilSDzuvvqTl3SknV0tEUlRG0AO0keeNgMJD/tUwDwi8tw+/WZLwrYi43D/cJYoFgZ +Sgn93hk/tsj+KQEwLhKOjhizFXtWO02wpF+uYqQgzr0mBpefg8umFFrFvbTp77ezsg0VlLUBmQU/vBYnJVOIfKb4Bk5RYhYq8A+SpvI9EuNUgN1vLgedwck sfdNxPQVVVo48isr6JSmO17JQ7xzRNTXSO3sOmBTb7E1pKI4nZCYFPnxdT6ORIlmNrIYQFDZIzhwWEpbYTtz/7VTTVL9zADfS/aLiY9pX4PHYNtlug37xeyP U9prHhUBiWU5z097mo7qOP+9JHC3L7bMK+X49G8Z8VoH7mwSnU38egJvNkoWajJqB7R71KPOdACl1kVqy3OxjFpewQc4Mk/K61qTEACq4i1Q06vSMxSR1jgA i/I+XCYdH9fBkBpVVf1TpNmNRfuAOAgzuhIUgKSMREM6h4K49iy6LhaUoRAA/t2XxnxMPaOqE1s09L8XvRtipEIBacUlvi4sAH0UxW7y7iDV6bi+/t5BpkD1 rgVK9ICIPpB97npL1gVfXJF2 Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org Hi Oleksandr, Just two remaining comments: On 1/15/19 10:38 AM, Oleksandr Andrushchenko wrote: > From: Oleksandr Andrushchenko > > This is the ABI for the two halves of a para-virtualized > camera driver which extends Xen's reach multimedia capabilities even > farther enabling it for video conferencing, In-Vehicle Infotainment, > high definition maps etc. > > The initial goal is to support most needed functionality with the > final idea to make it possible to extend the protocol if need be: > > 1. Provide means for base virtual device configuration: > - pixel formats > - resolutions > - frame rates > 2. Support basic camera controls: > - contrast > - brightness > - hue > - saturation > 3. Support streaming control > > Signed-off-by: Oleksandr Andrushchenko > --- > xen/include/public/io/cameraif.h | 1364 ++++++++++++++++++++++++++++++ > 1 file changed, 1364 insertions(+) > create mode 100644 xen/include/public/io/cameraif.h > > diff --git a/xen/include/public/io/cameraif.h b/xen/include/public/io/cameraif.h > new file mode 100644 > index 000000000000..246eb2457f40 > --- /dev/null > +++ b/xen/include/public/io/cameraif.h > @@ -0,0 +1,1364 @@ > +/* > + ****************************************************************************** > + * EVENT CODES > + ****************************************************************************** > + */ > +#define XENCAMERA_EVT_FRAME_AVAIL 0x00 > +#define XENCAMERA_EVT_CTRL_CHANGE 0x01 > + > +/* Resolution has changed. */ > +#define XENCAMERA_EVT_CFG_FLG_RESOL (1 << 0) I think this flag is a left-over from v2 and should be removed. > + * Request number of buffers to be used: > + * 0 1 2 3 octet > + * +----------------+----------------+----------------+----------------+ > + * | id | _OP_BUF_REQUEST| reserved | 4 > + * +----------------+----------------+----------------+----------------+ > + * | reserved | 8 > + * +----------------+----------------+----------------+----------------+ > + * | num_bufs | reserved | 12 > + * +----------------+----------------+----------------+----------------+ > + * | reserved | 16 > + * +----------------+----------------+----------------+----------------+ > + * |/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/| > + * +----------------+----------------+----------------+----------------+ > + * | reserved | 64 > + * +----------------+----------------+----------------+----------------+ > + * > + * num_bufs - uint8_t, desired number of buffers to be used. This is > + * limited to the value configured in XenStore.max-buffers. > + * Passing zero num_bufs in this request (after streaming has stopped > + * and all buffers destroyed) unblocks camera configuration changes. I think the phrase 'unblocks camera configuration changes' is confusing. In v3 this sentence came after the third note below, and so it made sense in that context, but now the order has been reversed and it became hard to understand. I'm not sure what the best approach is to fix this. One option is to remove the third note and integrate it somehow in the sentence above. Or perhaps do away with the 'notes' at all and just write a more extensive documentation for this op. I leave that up to you. > + * > + * See response format for this request. > + * > + * Notes: > + * - frontend must check the corresponding response in order to see > + * if the values reported back by the backend do match the desired ones > + * and can be accepted. > + * - frontend may send multiple XENCAMERA_OP_BUF_REQUEST requests before > + * sending XENCAMERA_OP_STREAM_START request to update or tune the > + * configuration. > + * - after this request camera configuration cannot be changed, unless camera configuration -> the camera configuration > + * streaming is stopped and buffers destroyed > + */ Regards, Hans From mboxrd@z Thu Jan 1 00:00:00 1970 From: Hans Verkuil Subject: Re: [PATCH v4 1/1] cameraif: add ABI for para-virtual camera Date: Tue, 15 Jan 2019 15:44:44 +0100 Message-ID: <393f824d-e543-476c-777f-402bcc1c0bcb@xs4all.nl> References: <20190115093853.15495-1-andr2000@gmail.com> <20190115093853.15495-2-andr2000@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1gjPxS-000259-Va for xen-devel@lists.xenproject.org; Tue, 15 Jan 2019 14:44:51 +0000 In-Reply-To: <20190115093853.15495-2-andr2000@gmail.com> Content-Language: en-US List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Oleksandr Andrushchenko , xen-devel@lists.xenproject.org, konrad.wilk@oracle.com, jgross@suse.com, boris.ostrovsky@oracle.com, mchehab@kernel.org, linux-media@vger.kernel.org, sakari.ailus@linux.intel.com, koji.matsuoka.xm@renesas.com Cc: Oleksandr Andrushchenko List-Id: xen-devel@lists.xenproject.org SGkgT2xla3NhbmRyLAoKSnVzdCB0d28gcmVtYWluaW5nIGNvbW1lbnRzOgoKT24gMS8xNS8xOSAx MDozOCBBTSwgT2xla3NhbmRyIEFuZHJ1c2hjaGVua28gd3JvdGU6Cj4gRnJvbTogT2xla3NhbmRy IEFuZHJ1c2hjaGVua28gPG9sZWtzYW5kcl9hbmRydXNoY2hlbmtvQGVwYW0uY29tPgo+IAo+IFRo aXMgaXMgdGhlIEFCSSBmb3IgdGhlIHR3byBoYWx2ZXMgb2YgYSBwYXJhLXZpcnR1YWxpemVkCj4g Y2FtZXJhIGRyaXZlciB3aGljaCBleHRlbmRzIFhlbidzIHJlYWNoIG11bHRpbWVkaWEgY2FwYWJp bGl0aWVzIGV2ZW4KPiBmYXJ0aGVyIGVuYWJsaW5nIGl0IGZvciB2aWRlbyBjb25mZXJlbmNpbmcs IEluLVZlaGljbGUgSW5mb3RhaW5tZW50LAo+IGhpZ2ggZGVmaW5pdGlvbiBtYXBzIGV0Yy4KPiAK PiBUaGUgaW5pdGlhbCBnb2FsIGlzIHRvIHN1cHBvcnQgbW9zdCBuZWVkZWQgZnVuY3Rpb25hbGl0 eSB3aXRoIHRoZQo+IGZpbmFsIGlkZWEgdG8gbWFrZSBpdCBwb3NzaWJsZSB0byBleHRlbmQgdGhl IHByb3RvY29sIGlmIG5lZWQgYmU6Cj4gCj4gMS4gUHJvdmlkZSBtZWFucyBmb3IgYmFzZSB2aXJ0 dWFsIGRldmljZSBjb25maWd1cmF0aW9uOgo+ICAtIHBpeGVsIGZvcm1hdHMKPiAgLSByZXNvbHV0 aW9ucwo+ICAtIGZyYW1lIHJhdGVzCj4gMi4gU3VwcG9ydCBiYXNpYyBjYW1lcmEgY29udHJvbHM6 Cj4gIC0gY29udHJhc3QKPiAgLSBicmlnaHRuZXNzCj4gIC0gaHVlCj4gIC0gc2F0dXJhdGlvbgo+ IDMuIFN1cHBvcnQgc3RyZWFtaW5nIGNvbnRyb2wKPiAKPiBTaWduZWQtb2ZmLWJ5OiBPbGVrc2Fu ZHIgQW5kcnVzaGNoZW5rbyA8b2xla3NhbmRyX2FuZHJ1c2hjaGVua29AZXBhbS5jb20+Cj4gLS0t Cj4gIHhlbi9pbmNsdWRlL3B1YmxpYy9pby9jYW1lcmFpZi5oIHwgMTM2NCArKysrKysrKysrKysr KysrKysrKysrKysrKysrKysKPiAgMSBmaWxlIGNoYW5nZWQsIDEzNjQgaW5zZXJ0aW9ucygrKQo+ ICBjcmVhdGUgbW9kZSAxMDA2NDQgeGVuL2luY2x1ZGUvcHVibGljL2lvL2NhbWVyYWlmLmgKPiAK PiBkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvcHVibGljL2lvL2NhbWVyYWlmLmggYi94ZW4vaW5j bHVkZS9wdWJsaWMvaW8vY2FtZXJhaWYuaAo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXgg MDAwMDAwMDAwMDAwLi4yNDZlYjI0NTdmNDAKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIveGVuL2lu Y2x1ZGUvcHVibGljL2lvL2NhbWVyYWlmLmgKPiBAQCAtMCwwICsxLDEzNjQgQEAKCjxzbmlwPgoK PiArLyoKPiArICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgo+ICsgKiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIEVWRU5UIENPREVTCj4gKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKPiArICov Cj4gKyNkZWZpbmUgWEVOQ0FNRVJBX0VWVF9GUkFNRV9BVkFJTCAgICAgIDB4MDAKPiArI2RlZmlu ZSBYRU5DQU1FUkFfRVZUX0NUUkxfQ0hBTkdFICAgICAgMHgwMQo+ICsKPiArLyogUmVzb2x1dGlv biBoYXMgY2hhbmdlZC4gKi8KPiArI2RlZmluZSBYRU5DQU1FUkFfRVZUX0NGR19GTEdfUkVTT0wg ICAgKDEgPDwgMCkKCkkgdGhpbmsgdGhpcyBmbGFnIGlzIGEgbGVmdC1vdmVyIGZyb20gdjIgYW5k IHNob3VsZCBiZSByZW1vdmVkLgoKPHNuaXA+Cgo+ICsgKiBSZXF1ZXN0IG51bWJlciBvZiBidWZm ZXJzIHRvIGJlIHVzZWQ6Cj4gKyAqICAgICAgICAgMCAgICAgICAgICAgICAgICAxICAgICAgICAg ICAgICAgICAyICAgICAgICAgICAgICAgMyAgICAgICAgb2N0ZXQKPiArICogKy0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0r Cj4gKyAqIHwgICAgICAgICAgICAgICBpZCAgICAgICAgICAgICAgICB8IF9PUF9CVUZfUkVRVUVT VHwgICByZXNlcnZlZCAgICAgfCA0Cj4gKyAqICstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKwo+ICsgKiB8ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHwgOAo+ICsgKiArLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLSsKPiArICogfCAgICBudW1fYnVmcyAgICB8ICAgICAgICAg ICAgICAgICAgICAgcmVzZXJ2ZWQgICAgICAgICAgICAgICAgICAgICB8IDEyCj4gKyAqICstLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tKwo+ICsgKiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHwgMTYKPiArICogKy0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rCj4gKyAqIHwv XC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c L1wvXC9cL1wvfAo+ICsgKiArLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSsKPiArICogfCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgcmVzZXJ2ZWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDY0Cj4gKyAq ICstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tKwo+ICsgKgo+ICsgKiBudW1fYnVmcyAtIHVpbnQ4X3QsIGRlc2lyZWQgbnVt YmVyIG9mIGJ1ZmZlcnMgdG8gYmUgdXNlZC4gVGhpcyBpcwo+ICsgKiAgIGxpbWl0ZWQgdG8gdGhl IHZhbHVlIGNvbmZpZ3VyZWQgaW4gWGVuU3RvcmUubWF4LWJ1ZmZlcnMuCj4gKyAqICAgUGFzc2lu ZyB6ZXJvIG51bV9idWZzIGluIHRoaXMgcmVxdWVzdCAoYWZ0ZXIgc3RyZWFtaW5nIGhhcyBzdG9w cGVkCj4gKyAqICAgYW5kIGFsbCBidWZmZXJzIGRlc3Ryb3llZCkgdW5ibG9ja3MgY2FtZXJhIGNv bmZpZ3VyYXRpb24gY2hhbmdlcy4KCkkgdGhpbmsgdGhlIHBocmFzZSAndW5ibG9ja3MgY2FtZXJh IGNvbmZpZ3VyYXRpb24gY2hhbmdlcycgaXMgY29uZnVzaW5nLgoKSW4gdjMgdGhpcyBzZW50ZW5j ZSBjYW1lIGFmdGVyIHRoZSB0aGlyZCBub3RlIGJlbG93LCBhbmQgc28gaXQgbWFkZSBzZW5zZQpp biB0aGF0IGNvbnRleHQsIGJ1dCBub3cgdGhlIG9yZGVyIGhhcyBiZWVuIHJldmVyc2VkIGFuZCBp dCBiZWNhbWUgaGFyZCB0bwp1bmRlcnN0YW5kLgoKSSdtIG5vdCBzdXJlIHdoYXQgdGhlIGJlc3Qg YXBwcm9hY2ggaXMgdG8gZml4IHRoaXMuIE9uZSBvcHRpb24gaXMgdG8gcmVtb3ZlCnRoZSB0aGly ZCBub3RlIGFuZCBpbnRlZ3JhdGUgaXQgc29tZWhvdyBpbiB0aGUgc2VudGVuY2UgYWJvdmUuIE9y IHBlcmhhcHMKZG8gYXdheSB3aXRoIHRoZSAnbm90ZXMnIGF0IGFsbCBhbmQganVzdCB3cml0ZSBh IG1vcmUgZXh0ZW5zaXZlIGRvY3VtZW50YXRpb24KZm9yIHRoaXMgb3AuIEkgbGVhdmUgdGhhdCB1 cCB0byB5b3UuCgo+ICsgKgo+ICsgKiBTZWUgcmVzcG9uc2UgZm9ybWF0IGZvciB0aGlzIHJlcXVl c3QuCj4gKyAqCj4gKyAqIE5vdGVzOgo+ICsgKiAgLSBmcm9udGVuZCBtdXN0IGNoZWNrIHRoZSBj b3JyZXNwb25kaW5nIHJlc3BvbnNlIGluIG9yZGVyIHRvIHNlZQo+ICsgKiAgICBpZiB0aGUgdmFs dWVzIHJlcG9ydGVkIGJhY2sgYnkgdGhlIGJhY2tlbmQgZG8gbWF0Y2ggdGhlIGRlc2lyZWQgb25l cwo+ICsgKiAgICBhbmQgY2FuIGJlIGFjY2VwdGVkLgo+ICsgKiAgLSBmcm9udGVuZCBtYXkgc2Vu ZCBtdWx0aXBsZSBYRU5DQU1FUkFfT1BfQlVGX1JFUVVFU1QgcmVxdWVzdHMgYmVmb3JlCj4gKyAq ICAgIHNlbmRpbmcgWEVOQ0FNRVJBX09QX1NUUkVBTV9TVEFSVCByZXF1ZXN0IHRvIHVwZGF0ZSBv ciB0dW5lIHRoZQo+ICsgKiAgICBjb25maWd1cmF0aW9uLgo+ICsgKiAgLSBhZnRlciB0aGlzIHJl cXVlc3QgY2FtZXJhIGNvbmZpZ3VyYXRpb24gY2Fubm90IGJlIGNoYW5nZWQsIHVubGVzcwoKY2Ft ZXJhIGNvbmZpZ3VyYXRpb24gLT4gdGhlIGNhbWVyYSBjb25maWd1cmF0aW9uCgo+ICsgKiAgICBz dHJlYW1pbmcgaXMgc3RvcHBlZCBhbmQgYnVmZmVycyBkZXN0cm95ZWQKPiArICovCgpSZWdhcmRz LAoKCUhhbnMKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f Clhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0 dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw=