From mboxrd@z Thu Jan 1 00:00:00 1970 From: Juergen Gross Subject: Re: [PATCH 1/1] cameraif: add ABI for para-virtual camera Date: Tue, 14 Aug 2018 10:30:23 +0200 Message-ID: <99cd131d-85ae-bbfb-61ef-fdc0401727f6@suse.com> References: <20180731093142.3828-1-andr2000@gmail.com> <20180731093142.3828-2-andr2000@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1fpUij-0007FO-JM for xen-devel@lists.xenproject.org; Tue, 14 Aug 2018 08:30:29 +0000 In-Reply-To: <20180731093142.3828-2-andr2000@gmail.com> Content-Language: de-DE 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, 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 T24gMzEvMDcvMTggMTE6MzEsIE9sZWtzYW5kciBBbmRydXNoY2hlbmtvIHdyb3RlOgo+IEZyb206 IE9sZWtzYW5kciBBbmRydXNoY2hlbmtvIDxvbGVrc2FuZHJfYW5kcnVzaGNoZW5rb0BlcGFtLmNv bT4KPiAKPiBUaGlzIGlzIHRoZSBBQkkgZm9yIHRoZSB0d28gaGFsdmVzIG9mIGEgcGFyYS12aXJ0 dWFsaXplZAo+IGNhbWVyYSBkcml2ZXIgd2hpY2ggZXh0ZW5kcyBYZW4ncyByZWFjaCBtdWx0aW1l ZGlhIGNhcGFiaWxpdGllcyBldmVuCj4gZmFydGhlciBlbmFibGluZyBpdCBmb3IgdmlkZW8gY29u ZmVyZW5jaW5nLCBJbi1WZWhpY2xlIEluZm90YWlubWVudCwKPiBoaWdoIGRlZmluaXRpb24gbWFw cyBldGMuCj4gCj4gVGhlIGluaXRpYWwgZ29hbCBpcyB0byBzdXBwb3J0IG1vc3QgbmVlZGVkIGZ1 bmN0aW9uYWxpdHkgd2l0aCB0aGUKPiBmaW5hbCBpZGVhIHRvIG1ha2UgaXQgcG9zc2libGUgdG8g ZXh0ZW5kIHRoZSBwcm90b2NvbCBpZiBuZWVkIGJlOgo+IAo+IDEuIFByb3ZpZGUgbWVhbnMgZm9y IGJhc2UgdmlydHVhbCBkZXZpY2UgY29uZmlndXJhdGlvbjoKPiAgLSBwaXhlbCBmb3JtYXRzCj4g IC0gcmVzb2x1dGlvbnMKPiAgLSBmcmFtZSByYXRlcwo+IDIuIFN1cHBvcnQgYmFzaWMgY2FtZXJh IGNvbnRyb2xzOgo+ICAtIGNvbnRyYXN0Cj4gIC0gYnJpZ2h0bmVzcwo+ICAtIGh1ZQo+ICAtIHNh dHVyYXRpb24KPiAzLiBTdXBwb3J0IHN0cmVhbWluZyBjb250cm9sCj4gNC4gU3VwcG9ydCB6ZXJv LWNvcHlpbmcgdXNlLWNhc2VzCj4gCj4gU2lnbmVkLW9mZi1ieTogT2xla3NhbmRyIEFuZHJ1c2hj aGVua28gPG9sZWtzYW5kcl9hbmRydXNoY2hlbmtvQGVwYW0uY29tPgoKU29tZSBzdHlsZSBpc3N1 ZXMgYmVsb3cuLi4KCj4gLS0tCj4gIHhlbi9pbmNsdWRlL3B1YmxpYy9pby9jYW1lcmFpZi5oIHwg OTgxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKPiAgMSBmaWxlIGNoYW5nZWQsIDk4 MSBpbnNlcnRpb25zKCspCj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCB4ZW4vaW5jbHVkZS9wdWJsaWMv aW8vY2FtZXJhaWYuaAo+IAo+IGRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9wdWJsaWMvaW8vY2Ft ZXJhaWYuaCBiL3hlbi9pbmNsdWRlL3B1YmxpYy9pby9jYW1lcmFpZi5oCj4gbmV3IGZpbGUgbW9k ZSAxMDA2NDQKPiBpbmRleCAwMDAwMDAwMDAwMDAuLmJkYzZhMTI2MmZjZgo+IC0tLSAvZGV2L251 bGwKPiArKysgYi94ZW4vaW5jbHVkZS9wdWJsaWMvaW8vY2FtZXJhaWYuaAoKPiArc3RydWN0IHhl bmNhbWVyYV9jb25maWcgewo+ICsgICAgdWludDMyX3QgcGl4ZWxfZm9ybWF0Owo+ICsgICAgdWlu dDMyX3Qgd2lkdGg7Cj4gKyAgICB1aW50MzJfdCBoZWlnaHQ7Cj4gKyAgICB1aW50MzJfdCBmcmFt ZV9yYXRlX25vbTsKPiArICAgIHVpbnQzMl90IGZyYW1lX3JhdGVfZGVub207Cj4gKyAgICB1aW50 OF90IG51bV9idWZzOwoKQWRkIGV4cGxpY2l0IHBhZGRpbmc/Cgo+ICt9OwoKPiArc3RydWN0IHhl bmNhbWVyYV9yZXEgewo+ICsgICAgdWludDE2X3QgaWQ7Cj4gKyAgICB1aW50OF90IG9wZXJhdGlv bjsKPiArICAgIHVpbnQ4X3QgcmVzZXJ2ZWRbNV07Cj4gKyAgICB1bmlvbiB7Cj4gKyAgICAgICAg c3RydWN0IHhlbmNhbWVyYV9jb25maWcgY29uZmlnOwo+ICsgICAgICAgIHN0cnVjdCB4ZW5jYW1l cmFfYnVmX2NyZWF0ZV9yZXEgYnVmX2NyZWF0ZTsKPiArCXN0cnVjdCB4ZW5jYW1lcmFfYnVmX2Rl c3Ryb3lfcmVxIGJ1Zl9kZXN0cm95Owo+ICsJc3RydWN0IHhlbmNhbWVyYV9zZXRfY3RybF9yZXEg c2V0X2N0cmw7CgpObyB0YWJzLCBwbGVhc2UuCgo+ICsgICAgICAgIHVpbnQ4X3QgcmVzZXJ2ZWRb NTZdOwo+ICsgICAgfSByZXE7Cj4gK307Cj4gKwo+ICtzdHJ1Y3QgeGVuY2FtZXJhX3Jlc3Agewo+ ICsgICAgdWludDE2X3QgaWQ7Cj4gKyAgICB1aW50OF90IG9wZXJhdGlvbjsKPiArICAgIHVpbnQ4 X3QgcmVzZXJ2ZWQ7Cj4gKyAgICBpbnQzMl90IHN0YXR1czsKPiArICAgIHVuaW9uIHsKPiArICAg ICAgICBzdHJ1Y3QgeGVuY2FtZXJhX2NvbmZpZyBjb25maWc7Cj4gKyAgICAgICAgc3RydWN0IHhl bmNhbWVyYV9idWZfZGV0YWlsc19yZXNwIGJ1Zl9kZXRhaWxzOwo+ICsJc3RydWN0IHhlbmNhbWVy YV9nZXRfY3RybF9kZXRhaWxzX3Jlc3AgY3RybF9kZXRhaWxzOwoKVGFiIGFnYWluLgoKPiArICAg ICAgICB1aW50OF90IHJlc2VydmVkMVs1Nl07Cj4gKyAgICB9IHJlc3A7Cj4gK307CgoKSnVlcmdl bgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRl dmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9s aXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA== From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from mx2.suse.de ([195.135.220.15]:42330 "EHLO mx1.suse.de" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1727689AbeHNLQf (ORCPT ); Tue, 14 Aug 2018 07:16:35 -0400 Subject: Re: [Xen-devel][PATCH 1/1] cameraif: add ABI for para-virtual camera To: Oleksandr Andrushchenko , xen-devel@lists.xenproject.org, konrad.wilk@oracle.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: <20180731093142.3828-1-andr2000@gmail.com> <20180731093142.3828-2-andr2000@gmail.com> From: Juergen Gross Message-ID: <99cd131d-85ae-bbfb-61ef-fdc0401727f6@suse.com> Date: Tue, 14 Aug 2018 10:30:23 +0200 MIME-Version: 1.0 In-Reply-To: <20180731093142.3828-2-andr2000@gmail.com> Content-Type: text/plain; charset=utf-8 Content-Language: de-DE Content-Transfer-Encoding: 7bit Sender: linux-media-owner@vger.kernel.org List-ID: On 31/07/18 11:31, 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 > 4. Support zero-copying use-cases > > Signed-off-by: Oleksandr Andrushchenko Some style issues below... > --- > xen/include/public/io/cameraif.h | 981 +++++++++++++++++++++++++++++++ > 1 file changed, 981 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..bdc6a1262fcf > --- /dev/null > +++ b/xen/include/public/io/cameraif.h > +struct xencamera_config { > + uint32_t pixel_format; > + uint32_t width; > + uint32_t height; > + uint32_t frame_rate_nom; > + uint32_t frame_rate_denom; > + uint8_t num_bufs; Add explicit padding? > +}; > +struct xencamera_req { > + uint16_t id; > + uint8_t operation; > + uint8_t reserved[5]; > + union { > + struct xencamera_config config; > + struct xencamera_buf_create_req buf_create; > + struct xencamera_buf_destroy_req buf_destroy; > + struct xencamera_set_ctrl_req set_ctrl; No tabs, please. > + uint8_t reserved[56]; > + } req; > +}; > + > +struct xencamera_resp { > + uint16_t id; > + uint8_t operation; > + uint8_t reserved; > + int32_t status; > + union { > + struct xencamera_config config; > + struct xencamera_buf_details_resp buf_details; > + struct xencamera_get_ctrl_details_resp ctrl_details; Tab again. > + uint8_t reserved1[56]; > + } resp; > +}; Juergen