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: [4/6] usb: gadget: add functions to signal udc driver to delay status stage From: Paul Elder Message-Id: <20181101234059.GA28068@garnet.amanokami.net> Date: Thu, 1 Nov 2018 19:40:59 -0400 To: Alan Stern Cc: Laurent Pinchart , Bin Liu , kieran.bingham@ideasonboard.com, gregkh@linuxfoundation.org, linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, balbi@kernel.org, rogerq@ti.com List-ID: SGkgQWxhbiwKCk9uIFRodSwgT2N0IDE4LCAyMDE4IGF0IDEwOjA3OjM2QU0gLTA0MDAsIEFsYW4g U3Rlcm4gd3JvdGU6Cj4gT24gVGh1LCAxOCBPY3QgMjAxOCwgTGF1cmVudCBQaW5jaGFydCB3cm90 ZToKPiAKPiA+IEhpIEJpbiwKPiA+IAo+ID4gT24gVGh1cnNkYXksIDExIE9jdG9iZXIgMjAxOCAx OToxMDoyMSBFRVNUIEJpbiBMaXUgd3JvdGU6Cj4gPiA+IE9uIFR1ZSwgT2N0IDA5LCAyMDE4IGF0 IDEwOjQ5OjAxUE0gLTA0MDAsIFBhdWwgRWxkZXIgd3JvdGU6Cj4gPiA+ID4gQSB1c2IgZ2FkZ2V0 IGZ1bmN0aW9uIGRyaXZlciBtYXkgb3IgbWF5IG5vdCB3YW50IHRvIGRlbGF5IHRoZSBzdGF0dXMK PiA+ID4gPiBzdGFnZSBvZiBhIGNvbnRyb2wgT1VUIHJlcXVlc3QuIEFuIGluc3RhbmNlIGl0IG1p Z2h0IHdhbnQgdG8gaXMgdG8KPiA+ID4gPiBhc3luY2hyb25vdXNseSB2YWxpZGF0ZSB0aGUgZGF0 YSBvZiBhIGNsYXNzLXNwZWNpZmljIHJlcXVlc3QuCj4gPiA+ID4gCj4gPiA+ID4gQWRkIGEgZnVu Y3Rpb24gdXNiX2VwX2RlbGF5X3N0YXR1cyB0byBhbGxvdyBmdW5jdGlvbiBkcml2ZXJzIHRvIGNo b29zZQo+ID4gPiA+IHRvIGRlbGF5IHRoZSBzdGF0dXMgc3RhZ2UgaW4gdGhlIHJlcXVlc3QgY29t cGxldGlvbiBoYW5kbGVyLiBUaGUgVURDCj4gPiA+ID4gc2hvdWxkIHRoZW4gY2hlY2sgdGhlIHVz Yl9lcC0+ZGVsYXllZF9zdGF0dXMgZmxhZyBhbmQgYWN0IGFjY29yZGluZ2x5IHRvCj4gPiA+ID4g ZGVsYXkgdGhlIHN0YXR1cyBzdGFnZS4KPiA+ID4gPiAKPiA+ID4gPiBBbHNvIGFkZCBhIGZ1bmN0 aW9uIHVzYl9lcF9zZW5kX3Jlc3BvbnNlIGFzIGEgd3JhcHBlciBmb3IKPiA+ID4gPiB1c2JfZXAt Pm9wcy0+c2VuZF9yZXNwb25zZSwgd2hvc2UgcHJvdG90eXBlIGlzIGFkZGVkIGFzIHdlbGwuIFRo aXMKPiA+ID4gPiBmdW5jdGlvbiBzaG91bGQgYmUgY2FsbGVkIGJ5IGZ1bmN0aW9uIGRyaXZlcnMg dG8gdGVsbCB0aGUgVURDIHdoYXQgdG8KPiA+ID4gPiByZXBseSBpbiB0aGUgc3RhdHVzIHN0YWdl IHRoYXQgaXQgaGFzIHJlcXVlc3RlZCB0byBiZSBkZWxheWVkLgo+ID4gPiA+IAo+ID4gPiA+IFNp Z25lZC1vZmYtYnk6IFBhdWwgRWxkZXIgPHBhdWwuZWxkZXJAaWRlYXNvbmJvYXJkLmNvbT4KPiA+ ID4gPiBSZXZpZXdlZC1ieTogTGF1cmVudCBQaW5jaGFydCA8bGF1cmVudC5waW5jaGFydEBpZGVh c29uYm9hcmQuY29tPgo+ID4gPiA+IC0tLQo+ID4gPiA+IAo+ID4gPiA+ICBkcml2ZXJzL3VzYi9n YWRnZXQvdWRjL2NvcmUuYyB8IDM1ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr Cj4gPiA+ID4gIGluY2x1ZGUvbGludXgvdXNiL2dhZGdldC5oICAgIHwgMTEgKysrKysrKysrKysK PiA+ID4gPiAgMiBmaWxlcyBjaGFuZ2VkLCA0NiBpbnNlcnRpb25zKCspCj4gPiA+ID4gCj4gPiA+ ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvdXNiL2dhZGdldC91ZGMvY29yZS5jIGIvZHJpdmVycy91 c2IvZ2FkZ2V0L3VkYy9jb3JlLmMKPiA+ID4gPiBpbmRleCBhZjg4YjQ4YzFjZWEuLjFlYzVjZTZi NDNjZCAxMDA2NDQKPiA+ID4gPiAtLS0gYS9kcml2ZXJzL3VzYi9nYWRnZXQvdWRjL2NvcmUuYwo+ ID4gPiA+ICsrKyBiL2RyaXZlcnMvdXNiL2dhZGdldC91ZGMvY29yZS5jCj4gPiA+ID4gQEAgLTQ0 Myw2ICs0NDMsNDEgQEAgdm9pZCB1c2JfZXBfZmlmb19mbHVzaChzdHJ1Y3QgdXNiX2VwICplcCkK PiA+ID4gPiAgfQo+ID4gPiA+ICBFWFBPUlRfU1lNQk9MX0dQTCh1c2JfZXBfZmlmb19mbHVzaCk7 Cj4gPiA+ID4gCj4gPiA+ID4gKy8qKgo+ID4gPiA+ICsgKiB1c2JfZXBfZXBfZGVsYXlfc3RhdHVz IC0gc2V0IGRlbGF5X3N0YXR1cyBmbGFnCj4gPiA+ID4gKyAqIEBlcDogdGhlIGVuZHBvaW50IHdo b3NlIGRlbGF5X3N0YXR1cyBmbGFnIGlzIGJlaW5nIHNldAo+ID4gPiA+ICsgKgo+ID4gPiA+ICsg KiBUaGlzIGZ1bmN0aW9uIGluc3RydWN0cyB0aGUgVURDIHRvIGRlbGF5IHRoZSBzdGF0dXMgc3Rh Z2Ugb2YgYSBjb250cm9sCj4gPiA+ID4gKyAqIHJlcXVlc3QuIEl0IGNhbiBvbmx5IGJlIGNhbGxl ZCBmcm9tIHRoZSByZXF1ZXN0IGNvbXBsZXRpb24gaGFuZGxlciBvZgo+ID4gPiA+IGEKPiA+ID4g PiArICogY29udHJvbCByZXF1ZXN0Lgo+ID4gPiA+ICsgKi8KPiA+ID4gPiArdm9pZCB1c2JfZXBf ZGVsYXlfc3RhdHVzKHN0cnVjdCB1c2JfZXAgKmVwKQo+ID4gPiA+ICt7Cj4gPiA+ID4gKwllcC0+ ZGVsYXllZF9zdGF0dXMgPSB0cnVlOwo+ID4gPiA+ICt9Cj4gPiA+ID4gK0VYUE9SVF9TWU1CT0xf R1BMKHVzYl9lcF9kZWxheV9zdGF0dXMpOwo+ID4gPiAKPiA+ID4gSXMgdXNiX2VwX3NldF9kZWxh eV9zdGF0dXMoKSBiZXR0ZXI/IEkgdGhvdWdodCBpdCBpbXBsaWVzIGdldC9yZXR1cm4KPiA+ID4g YWN0aW9uIGlmIGEgdmVyYiBpcyBtaXNzaW5nIGluIHRoZSBmdW5jdGlvbiBuYW1lLgo+ID4gCj4g PiBGb3Igd2hhdCBpdCdzIHdvcnRoLCBJIHVuZGVyc3RhbmQgdGhlIGZ1bmN0aW9uIG5hbWUgYXMg ImRlbGF5IHRoZSBzdGF0dXMgCj4gPiBzdGFnZSIsIHdpdGggImRlbGF5IiBiZWluZyBhIHZlcmIu IE1heWJlIHRoZSBzaG9ydCBkZXNjcmlwdGlvbiBjb3VsZCBiZSAKPiA+IHVwZGF0ZWQgYWNjb3Jk aW5nbHkuCj4gCj4gSXMgdGhlcmUgYSByZWFzb24gZm9yIGFkZGluZyBhIG5ldyBmdW5jdGlvbiBm b3IgdGhpcz8gIFRoaXMgaXMgZXhhY3RseQo+IHdoYXQgdGhlIFVTQl9HQURHRVRfREVMQVlFRF9T VEFUVVMgcmV0dXJuIHZhbHVlIGZyb20gdGhlIHNldHVwIGNhbGxiYWNrCj4gaXMgbWVhbnQgZm9y IChhbmQgaXQgaXMgYWxyZWFkeSB1c2VkIGJ5IHNvbWUgZ2FkZ2V0IGRyaXZlcnMpLgoKSW4gdGhl b3J5LCB3ZSBtaWdodCBiZSBhYmxlIHRvIHVzZSBVU0JfR0FER0VUX0RFTEFZRURfU1RBVFVTIGZv ciB0aGlzLgpIb3dldmVyLCB0aGVyZSBhcmUgYSBmZXcgYW1iaWd1aXRpZXMgdGhhdCBwcmV2ZW50 IHVzIGZyb20gZG9pbmcgc28uCgpGaXJzdCBvZiBhbGwsIHdlIHdhbnQgdG8gZGVsYXkgb25seSB0 aGUgc3RhdHVzIHN0YWdlIGZvciBjb250cm9sIE9VVApyZXF1ZXN0czsgYWNjb3JkaW5nIHRvIGNv bXBvc2l0ZS5oLCBVU0JfR0FER0VUX0RFTEFZRURfU1RBVFVTIGlzIGZvcgpkZWxheWluZyB0aGUg ImRhdGEvc3RhdHVzIHN0YWdlcyIuIERvZXMgdGhpcyBtZWFuIHRoYXQgaXQgZGVsYXlzIHRoZQpz dGF0dXMgc3RhZ2Ugb25seSBvciBkb2VzIGl0IGRlbGF5IGJvdGggc3RhZ2VzPyBJZiB0aGUgc2xh c2ggbWVhbnMKImFuZCIsIHRoZW4gd2UgY2Fubm90IHVzZSBVU0JfR0FER0VUX0RFTEFZRURfU1RB VFVTLgoKRnVydGhlcm1vcmUsIHdlIGhhdmUgZm91bmQgdGhhdCBVU0JfR0FER0VUX0RFTEFZRURf U1RBVFVTIGlzIHJhY2V5LAp3aGljaCBoYXMgYWxyZWFkeSBiZWVuIG9ic2VydmVkIGluIHRoZSBV VkMgZ2FkZ2V0IGRyaXZlciBwcmV2aW91c2x5IFswXS4KVGhlIHJhY2VpbmVzcyBzdGVtcyBmcm9t IHRoZSBmYWN0IHRoYXQgdGhpbmdzIGNhbiBoYXBwZW4gaW4gYmV0d2VlbgpyZXR1cm5pbmcgVVNC X0dBREdFVF9ERUxBWUVEX1NUQVRVUyBhbmQgdGhlIGNvbXBvc2l0ZSBsYXllciByZWFjdGluZyB0 bwppdCAtIGVzcGVjaWFsbHkgaWYgdXNiX2NvbXBvc2l0ZV9zZXR1cF9jb250aW51ZSBpcyBjYWxs ZWQgd2l0aGluIHRoYXQKd2luZG93IGl0IGNhdXNlcyBhIFdBUk4uIEluIGFueSBjYXNlLCB0aGUg ZmFjdCB0aGF0IHRoZSBtZWNoYW5pc20gaXRzZWxmCmlzIHJhY2V5IHN1Z2dlc3RzIHRoYXQgaXQg bmVlZHMgaW1wcm92ZW1lbnQsIGFuZCB1c2luZyBpdCB3b3VsZG4ndCBiZSBhCmdvb2Qgc29sdXRp b24gaW4gdGhpcyBjYXNlLgoKPiBJcyBpdCBhIHF1ZXN0aW9uIG9mIHdoZW4gdGhlIGdhZGdldCBk cml2ZXIgbGVhcm5zIHRoYXQgaXQgd2lsbCBuZWVkIHRvCj4gZGVsYXkgdGhlIHN0YXR1cyBzdGFn ZT8gIElmIHRoYXQncyB0aGUgY2FzZSwKCk5vdCByZWFsbHkuCgo+IHdoeSBub3QgYWx3YXlzIHJl dHVybgo+IFVTQl9HQURHRVRfREVMQVlFRF9TVEFUVVMgZnJvbSB0aGUgc2V0dXAgY2FsbGJhY2s/ ICBUaGVuIGluc3RlYWQgb2YKPiBjYWxsaW5nIHVzYl9lcF9kZWxheV9zdGF0dXMoKSB3aGVuIGEg ZGVsYXkgaXMgbmVlZGVkLCB5b3UgY291bGQgcXVldWUKPiB0aGUgc3RhdHVzIHJlcXVlc3Qgd2hl biBhIGRlbGF5IGlzbid0IG5lZWRlZC4KClRoZW9yZXRpY2FsbHkgdGhpcyBtaWdodCB3b3JrLCBi dXQgc2VlIHRoZSBwcm9ibGVtcyBtZW50aW9uZWQgYWJvdmUuCgo+IEFzIGEgbW9yZSBnZW5lcmFs IHNvbHV0aW9uLCBGZWxpcGUgaGFzIHNhaWQgdGhhdCBhIFVEQyBkcml2ZXIgc2hvdWxkIAo+IF9u ZXZlcl8gY2Fycnkgb3V0IHRoZSBzdGF0dXMgc3RhZ2UgdHJhbnNhY3Rpb24gdW50aWwgdGhlIGdh ZGdldCBkcml2ZXIgCj4gaGFzIHRvbGQgaXQgdG8gZG8gc28uICBUaGVuIHRoZXJlIHdvdWxkIGJl IG5vIG5lZWQgZm9yIGFueSBzb3J0IG9mIAo+IGRlbGF5IGluZGljYXRvci4KClllYWgsIGJ1dCwK Cj4gKEJ1dCBpbXBsZW1lbnRpbmcgdGhpcyB3b3VsZCByZXF1aXJlIHNpZ25pZmljYW50IAo+IGNo YW5nZXMgdG8gYSBidW5jaCBvZiBkaWZmZXJlbnQgZHJpdmVycy4uLikKCmV4YWN0bHkgOi8KClsw XSBodHRwczovL3d3dy5zcGluaWNzLm5ldC9saXN0cy9saW51eC11c2IvbXNnMTY5MjA4Lmh0bWwK CgpQYXVsCg==