From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [v2,7/8] usb: gadget: uvc: configfs: Add bFrameIndex attributes From: Laurent Pinchart Message-Id: <3737319.VtgiAp8zSC@avalon> Date: Mon, 24 Sep 2018 19:00:47 +0300 To: kieran.bingham@ideasonboard.com Cc: linux-usb@vger.kernel.org, Felipe Balbi , Joel Pepper , Andrzej Pietrasiewicz List-ID: SGkgS2llcmFuLAoKT24gTW9uZGF5LCAyNCBTZXB0ZW1iZXIgMjAxOCAxNToyMjo1NyBFRVNUIEtp ZXJhbiBCaW5naGFtIHdyb3RlOgo+IE9uIDAxLzA4LzE4IDIyOjU1LCBMYXVyZW50IFBpbmNoYXJ0 IHdyb3RlOgo+ID4gRnJvbTogSm9lbCBQZXBwZXIgPGpvZWwucGVwcGVyQHJ3dGgtYWFjaGVuLmRl Pgo+ID4gCj4gPiAtIEFkZCBiRnJhbWVJbmRleCBhcyBhIFVWQ0dfRlJBTUVfQVRUUl9STyBmb3Ig ZWFjaCBmcmFtZSBzaXplLgo+ID4gLSBBdXRvbWF0aWNhbGx5IGFzc2lnbiBhc2NlbmRpbmcgYkZy YW1lSW5kZXggdG8gZWFjaCBmcmFtZSBpbiBhIGZvcm1hdC4KPiA+IAo+ID4gQmVmb3JlIGFsbCAi YkZyYW1laW5kZXgiIGF0dHJpYnV0ZXMgd2VyZSBzZXQgdG8gIjEiIHdpdGggbm8gd2F5IHRvCj4g PiBjb25maWd1cmUgdGhlIGdhZGdldCBvdGhlcndpc2UuIFRoaXMgcmVzdWx0ZWQgaW4gdGhlIGhv c3QgYWx3YXlzCj4gPiBuZWdvdGlhdGluZyBmb3IgYkZyYW1lSW5kZXggMSAoaS5lLiB0aGUgZmly c3QgZnJhbWVzaXplIG9mIHRoZSBnYWRnZXQpLgo+ID4gQWZ0ZXIgdGhlIG5lZ290aWF0aW9uIHRo ZSBob3N0IGRyaXZlciB3aWxsIHNldCB0aGUgdXNlciBvciBhcHBsaWNhdGlvbgo+ID4gc2VsZWN0 ZWQgZnJhbWVzaXplLCB3aGlsZSB0aGUgZ2FkZ2V0IGlzIGFjdHVhbGx5IHNldCB0byB0aGUgZmly c3QKPiA+IGZyYW1lc2l6ZS4KPiAKPiBzL2ZyYW1lc2l6ZS9mcmFtZSBzaXplLyAqMyBhYm92ZSA/ IChvciBhbHRlcm5hdGl2ZWx5IGZyYW1lLXNpemU/KQo+IAo+ID4gTm93LCB3aGVuIHRoZSBjb250 YWluaW5nIGZvcm1hdCBpcyBsaW5rZWQgaW50byB0aGUgc3RyZWFtaW5nIGhlYWRlciwKPiA+IGl0 ZXJhdGUgb3ZlciBhbGwgY2hpbGQgZnJhbWUgZGVzY3JpcHRvcnMgYW5kIGFzc2lnbiBhc2NlbmRp bmcgaW5kaWNlcy4KPiA+IFRoZSBhdXRvbWF0aWNhbGx5IGFzc2lnbmVkIGluZGljZXMgY2FuIGJl IHJlYWQgZnJvbSB0aGUgbmV3IHJlYWQgb25seQo+ID4gYkZyYW1lSW5kZXggY29uZmlnc2ZzIGF0 dHJpYnV0ZSBpbiBlYWNoIGZyYW1lIGRlc2NyaXB0b3IgaXRlbS4KPiAKPiBzL2NvbmZpZ3Nmcy9j b25maWdmcy8KPiAKPiA+IFNpZ25lZC1vZmYtYnk6IEpvZWwgUGVwcGVyIDxqb2VsLnBlcHBlckBy d3RoLWFhY2hlbi5kZT4KPiA+IFtTaW1wbGlmaWVkIGRvY3VtZW50YXRpb24sIHJlbmFtZWQgZnVu Y3Rpb24sIGJsYW5rIHNwYWNlIHVwZGF0ZV0KPiA+IFNpZ25lZC1vZmYtYnk6IExhdXJlbnQgUGlu Y2hhcnQgPGxhdXJlbnQucGluY2hhcnRAaWRlYXNvbmJvYXJkLmNvbT4KPiA+IC0tLQo+ID4gCj4g PiAgRG9jdW1lbnRhdGlvbi9BQkkvdGVzdGluZy9jb25maWdmcy11c2ItZ2FkZ2V0LXV2YyB8ICA4 ICsrKysKPiA+ICBkcml2ZXJzL3VzYi9nYWRnZXQvZnVuY3Rpb24vdXZjX2NvbmZpZ2ZzLmMgICAg ICAgIHwgNTYgKysrKysrKysrKysrKysrKysrCj4gPiAgMiBmaWxlcyBjaGFuZ2VkLCA2NCBpbnNl cnRpb25zKCspCgpbc25pcF0KCj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy91c2IvZ2FkZ2V0L2Z1 bmN0aW9uL3V2Y19jb25maWdmcy5jCj4gPiBiL2RyaXZlcnMvdXNiL2dhZGdldC9mdW5jdGlvbi91 dmNfY29uZmlnZnMuYyBpbmRleAo+ID4gNWNlZThhY2EzNzM0Li5iODc2MzM0M2RjYWUgMTAwNjQ0 Cj4gPiAtLS0gYS9kcml2ZXJzL3VzYi9nYWRnZXQvZnVuY3Rpb24vdXZjX2NvbmZpZ2ZzLmMKPiA+ ICsrKyBiL2RyaXZlcnMvdXNiL2dhZGdldC9mdW5jdGlvbi91dmNfY29uZmlnZnMuYwo+ID4gQEAg LTg2OCw2ICs4NjgsOCBAQCBzdGF0aWMgc3RydWN0IHV2Y2dfc3RyZWFtaW5nX2hlYWRlcgo+ID4g KnRvX3V2Y2dfc3RyZWFtaW5nX2hlYWRlcihzdHJ1Y3QgY29uZmlnX2l0ZW0+IAo+ID4gIAlyZXR1 cm4gY29udGFpbmVyX29mKGl0ZW0sIHN0cnVjdCB1dmNnX3N0cmVhbWluZ19oZWFkZXIsIGl0ZW0p Owo+ID4gIAo+ID4gIH0KPiA+IAo+ID4gK3N0YXRpYyB2b2lkIHV2Y2dfZm9ybWF0X3NldF9pbmRp Y2VzKHN0cnVjdCBjb25maWdfZ3JvdXAgKmZtdCk7Cj4gPiArCj4gCj4gRG8gd2UgbmVlZCB0byBm b3J3YXJkIGRlY2xhcmUgaGVyZT8KPiAKPiBDb3VsZG4ndCB3ZSBtb3ZlIHRoZSB1dmNnX2Zvcm1h dF9zZXRfaW5kaWNlcygpIGltcGxlbWVudGF0aW9uIHVwID8KPiBPciBpcyBpdCBwcmVmZXJyZWQg dG8ga2VlcCB0aGF0IGNvZGUgZG93biBpbiB0aGUgbG93ZXIgc2VjdGlvbi4KCllvdSBrbm93IGhv dyBtdWNoIEkgZGlzbGlrZSBmb3J3YXJkLWRlY2xhcmF0aW9ucy4gSSB0cmllZCB0byBmaXggdGhp cyBvbmUsIGJ1dCAKdXZjZ19mb3JtYXRfc2V0X2luZGljZXMoKSBjYW4ndCBiZSBtb3ZlZCB1cCBh cy1pcyBhcyBpdCBkZXBlbmRzIG9uIHRoZSAKZGVmaW5pdGlvbiBvZiB0aGUgdXZjZ19mcmFtZSBz dHJ1Y3R1cmUuIEkgYXR0ZW1wdGVkIHRvIHJlb3JnYW5pemUgdGhlIGNvZGUgaW4gCmEgbW9yZSBs b2dpY2FsIHdheSBidXQgZ2F2ZSB1cCBnaXZlbiBob3cgbGFyZ2UgdGhlIHJlc3VsdGluZyBjaGFu Z2Ugd2FzIGV2ZW4gCmJlZm9yZSBJIGdvdCBpdCB0byBjb21waWxlLCBhbmQgaG93IHRoZSBuZXcg b3JnYW5pemF0aW9uIHdhcyBsZXNzIGxvZ2ljYWwgOi0oCgo+IFdpdGggYSBkZWNpc2lvbiBtYWRl IG9uIHRoYXQsIGFuZCB0aGUgdHlwbyBmaXhlZCBpbiB0aGUgY29tbWl0IG1lc3NhZ2U6Cj4gCj4g UmV2aWV3ZWQtYnk6IEtpZXJhbiBCaW5naGFtIDxraWVyYW4uYmluZ2hhbUBpZGVhc29uYm9hcmQu Y29tPgoKVGhhbmsgeW91LiBJJ2xsIGtlZXAgdGhlIGZvcndhcmQgZGVjbGFyYXRpb24gZm9yIG5v dy4gSSBtaWdodCBnaXZlIGl0IGEgdHJ5IAphZ2FpbiBsYXRlci4KCj4gPiAgc3RhdGljIGludCB1 dmNnX3N0cmVhbWluZ19oZWFkZXJfYWxsb3dfbGluayhzdHJ1Y3QgY29uZmlnX2l0ZW0gKnNyYywK PiA+ICAKPiA+ICAJCQkJCSAgICBzdHJ1Y3QgY29uZmlnX2l0ZW0gKnRhcmdldCkKPiA+ICAKPiA+ ICB7Cj4gPiAKPiA+IEBAIC05MTUsNiArOTE3LDggQEAgc3RhdGljIGludCB1dmNnX3N0cmVhbWlu Z19oZWFkZXJfYWxsb3dfbGluayhzdHJ1Y3QKPiA+IGNvbmZpZ19pdGVtICpzcmMsPiAKPiA+ICAJ aWYgKCF0YXJnZXRfZm10KQo+ID4gIAkKPiA+ICAJCWdvdG8gb3V0Owo+ID4gCj4gPiArCXV2Y2df Zm9ybWF0X3NldF9pbmRpY2VzKHRvX2NvbmZpZ19ncm91cCh0YXJnZXQpKTsKPiA+ICsKPiA+IAo+ ID4gIAlmb3JtYXRfcHRyID0ga3phbGxvYyhzaXplb2YoKmZvcm1hdF9wdHIpLCBHRlBfS0VSTkVM KTsKPiA+ICAJaWYgKCFmb3JtYXRfcHRyKSB7Cj4gPiAgCQo+ID4gIAkJcmV0ID0gLUVOT01FTTsK PiA+IAo+ID4gQEAgLTExNDYsNiArMTE1MCw0MSBAQCBlbmQ6CQkJCQkJCQkJXAo+ID4gCj4gPiAg CQkJCQkJCQkJXAo+ID4gIAo+ID4gIFVWQ19BVFRSKHV2Y2dfZnJhbWVfLCBjbmFtZSwgYW5hbWUp Owo+ID4gCj4gPiArc3RhdGljIHNzaXplX3QgdXZjZ19mcmFtZV9iX2ZyYW1lX2luZGV4X3Nob3co c3RydWN0IGNvbmZpZ19pdGVtICppdGVtLAo+ID4gKwkJCQkJICAgICBjaGFyICpwYWdlKQo+ID4g K3sKPiA+ICsJc3RydWN0IHV2Y2dfZnJhbWUgKmYgPSB0b191dmNnX2ZyYW1lKGl0ZW0pOwo+ID4g KwlzdHJ1Y3QgdXZjZ19mb3JtYXQgKmZtdDsKPiA+ICsJc3RydWN0IGZfdXZjX29wdHMgKm9wdHM7 Cj4gPiArCXN0cnVjdCBjb25maWdfaXRlbSAqb3B0c19pdGVtOwo+ID4gKwlzdHJ1Y3QgY29uZmln X2l0ZW0gKmZtdF9pdGVtOwo+ID4gKwlzdHJ1Y3QgbXV0ZXggKnN1X211dGV4ID0gJmYtPml0ZW0u Y2lfZ3JvdXAtPmNnX3N1YnN5cy0+c3VfbXV0ZXg7Cj4gPiArCWludCByZXN1bHQ7Cj4gPiArCj4g PiArCW11dGV4X2xvY2soc3VfbXV0ZXgpOyAvKiBmb3IgbmF2aWdhdGluZyBjb25maWdmcyBoaWVy YXJjaHkgKi8KPiA+ICsKPiA+ICsJZm10X2l0ZW0gPSBmLT5pdGVtLmNpX3BhcmVudDsKPiA+ICsJ Zm10ID0gdG9fdXZjZ19mb3JtYXQoZm10X2l0ZW0pOwo+ID4gKwo+ID4gKwlpZiAoIWZtdC0+bGlu a2VkKSB7Cj4gPiArCQlyZXN1bHQgPSAtRUJVU1k7Cj4gPiArCQlnb3RvIG91dDsKPiA+ICsJfQo+ ID4gKwo+ID4gKwlvcHRzX2l0ZW0gPSBmbXRfaXRlbS0+Y2lfcGFyZW50LT5jaV9wYXJlbnQtPmNp X3BhcmVudDsKPiA+ICsJb3B0cyA9IHRvX2ZfdXZjX29wdHMob3B0c19pdGVtKTsKPiA+ICsKPiA+ ICsJbXV0ZXhfbG9jaygmb3B0cy0+bG9jayk7Cj4gPiArCXJlc3VsdCA9IHNwcmludGYocGFnZSwg IiVkXG4iLCBmLT5mcmFtZS5iX2ZyYW1lX2luZGV4KTsKPiA+ICsJbXV0ZXhfdW5sb2NrKCZvcHRz LT5sb2NrKTsKPiA+ICsKPiA+ICtvdXQ6Cj4gPiArCW11dGV4X3VubG9jayhzdV9tdXRleCk7Cj4g PiArCXJldHVybiByZXN1bHQ7Cj4gPiArfQo+ID4gKwo+ID4gK1VWQ19BVFRSX1JPKHV2Y2dfZnJh bWVfLCBiX2ZyYW1lX2luZGV4LCBiRnJhbWVJbmRleCk7Cj4gPiArCj4gPiAKPiA+ICAjZGVmaW5l IG5vb3BfY29udmVyc2lvbih4KSAoeCkKPiA+ICAKPiA+ICBVVkNHX0ZSQU1FX0FUVFIoYm1fY2Fw YWJpbGl0aWVzLCBibUNhcGFiaWxpdGllcywgbm9vcF9jb252ZXJzaW9uLAo+ID4gCj4gPiBAQCAt MTI5NCw2ICsxMzMzLDcgQEAgc3RhdGljIHNzaXplX3QKPiA+IHV2Y2dfZnJhbWVfZHdfZnJhbWVf aW50ZXJ2YWxfc3RvcmUoc3RydWN0IGNvbmZpZ19pdGVtICppdGVtLD4gCj4gPiAgVVZDX0FUVFIo dXZjZ19mcmFtZV8sIGR3X2ZyYW1lX2ludGVydmFsLCBkd0ZyYW1lSW50ZXJ2YWwpOwo+ID4gIAo+ ID4gIHN0YXRpYyBzdHJ1Y3QgY29uZmlnZnNfYXR0cmlidXRlICp1dmNnX2ZyYW1lX2F0dHJzW10g PSB7Cj4gPiAKPiA+ICsJJnV2Y2dfZnJhbWVfYXR0cl9iX2ZyYW1lX2luZGV4LAo+ID4gCj4gPiAg CSZ1dmNnX2ZyYW1lX2F0dHJfYm1fY2FwYWJpbGl0aWVzLAo+ID4gIAkmdXZjZ19mcmFtZV9hdHRy X3dfd2lkdGgsCj4gPiAgCSZ1dmNnX2ZyYW1lX2F0dHJfd19oZWlnaHQsCj4gPiAKPiA+IEBAIC0x MzczLDYgKzE0MTMsMjIgQEAgc3RhdGljIHZvaWQgdXZjZ19mcmFtZV9kcm9wKHN0cnVjdCBjb25m aWdfZ3JvdXAKPiA+ICpncm91cCwgc3RydWN0IGNvbmZpZ19pdGVtICppdGVtPiAKPiA+ICAJY29u ZmlnX2l0ZW1fcHV0KGl0ZW0pOwo+ID4gIAo+ID4gIH0KPiA+IAo+ID4gK3N0YXRpYyB2b2lkIHV2 Y2dfZm9ybWF0X3NldF9pbmRpY2VzKHN0cnVjdCBjb25maWdfZ3JvdXAgKmZtdCkKPiA+ICt7Cj4g PiArCXN0cnVjdCBjb25maWdfaXRlbSAqY2k7Cj4gPiArCXVuc2lnbmVkIGludCBpID0gMTsKPiA+ ICsKPiA+ICsJbGlzdF9mb3JfZWFjaF9lbnRyeShjaSwgJmZtdC0+Y2dfY2hpbGRyZW4sIGNpX2Vu dHJ5KSB7Cj4gPiArCQlzdHJ1Y3QgdXZjZ19mcmFtZSAqZnJtOwo+ID4gKwo+ID4gKwkJaWYgKGNp LT5jaV90eXBlICE9ICZ1dmNnX2ZyYW1lX3R5cGUpCj4gPiArCQkJY29udGludWU7Cj4gPiArCj4g PiArCQlmcm0gPSB0b191dmNnX2ZyYW1lKGNpKTsKPiA+ICsJCWZybS0+ZnJhbWUuYl9mcmFtZV9p bmRleCA9IGkrKzsKPiA+ICsJfQo+ID4gK30KPiA+ICsKPiA+IAo+ID4gIC8qCj4gPiAgLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCj4gPiAgLS0tLS0+ICAKPiA+ICAgKiBzdHJlYW1pbmcvdW5jb21wcmVzc2VkLzxO QU1FPgo+ID4gICAqLwo=