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: [v4,2/2] usb/gadget: Add driver for Aspeed SoC virtual hub From: Felipe Balbi Message-Id: <87tvtjrq9u.fsf@linux.intel.com> Date: Wed, 14 Mar 2018 10:54:21 +0200 To: Benjamin Herrenschmidt , linux-usb@vger.kernel.org Cc: Greg KH , Joel Stanley , Andrew Jeffery List-ID: SGksCgpCZW5qYW1pbiBIZXJyZW5zY2htaWR0IDxiZW5oQGtlcm5lbC5jcmFzaGluZy5vcmc+IHdy aXRlczoKPiBPbiBUdWUsIDIwMTgtMDMtMTMgYXQgMDk6MzUgKzExMDAsIEJlbmphbWluIEhlcnJl bnNjaG1pZHQgd3JvdGU6Cj4+IE9uIEZyaSwgMjAxOC0wMy0wOSBhdCAxMToyMCArMDIwMCwgRmVs aXBlIEJhbGJpIHdyb3RlOgo+PiA+IAo+PiA+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvdXNiL2dh ZGdldC91ZGMvYXNwZWVkLXZodWIvY29yZS5jIGIvZHJpdmVycy91c2IvZ2FkZ2V0L3VkYy9hc3Bl ZWQtdmh1Yi9jb3JlLmMKPj4gPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4+ID4gPiBpbmRleCAw MDAwMDAwMDAwMDAuLjMxZWQyYjZlMjQxYgo+PiA+ID4gLS0tIC9kZXYvbnVsbAo+PiA+ID4gKysr IGIvZHJpdmVycy91c2IvZ2FkZ2V0L3VkYy9hc3BlZWQtdmh1Yi9jb3JlLmMKPj4gPiA+IEBAIC0w LDAgKzEsNDI5IEBACj4+ID4gCj4+ID4gbWlzc2luZyBTUERYIGxpY2Vuc2UgaWRlbnRpZmllciAo YWxsIGZpbGVzKQo+PiAKPj4gQWggeXVwLCB0aGUgZHJpdmVyIHByZWRhdGVzIG1lIGtub3dpbmcg YWJvdXQgdGhlbSwgSSdsbCBmaXguCj4+IAo+PiA+ID4gK3N0YXRpYyBib29sIGZvcmNlX3VzYjEg PSBmYWxzZTsKPj4gPiA+ICtzdGF0aWMgYm9vbCBub19kbWFfZGVzYyA9IGZhbHNlOwo+PiA+ID4g Kwo+PiA+ID4gK21vZHVsZV9wYXJhbV9uYW1lZChmb3JjZV91c2IxLCBmb3JjZV91c2IxLCBib29s LCAwNjQ0KTsKPj4gPiA+ICtNT0RVTEVfUEFSTV9ERVNDKGZvcmNlX3VzYjEsICJTZXQgdG8gdHJ1 ZSB0byBmb3JjZSB0byBVU0IxIHNwZWVkIik7Cj4+ID4gPiArbW9kdWxlX3BhcmFtX25hbWVkKG5v X2RtYV9kZXNjLCBub19kbWFfZGVzYywgYm9vbCwgMDY0NCk7Cj4+ID4gPiArTU9EVUxFX1BBUk1f REVTQyhub19kbWFfZGVzYywgIlNldCB0byB0cnVlIHRvIGRpc2FibGUgdXNlIG9mIERNQSBkZXNj cmlwdG9ycyIpOwo+PiA+IAo+PiA+IG1vZHVsZSBwYXJhbWV0ZXJzPyBTb3JyeSwgYnV0IG5vLgo+ PiAKPj4gV2h5ID8gQW55IHN1Z2dlc3Rpb24gdGhlbiBmb3IgdGhlIHR3byBhYm92ZSA/IFRoZXkg YXJlIG1vc3RseSBtZWFudCBhcwo+PiBkaWFnbm9zdGljL2RlYnVnIGZlYXR1cmVzIGlmIHNvbWV0 aGluZyBkb2Vzbid0IHdvcmsgKGZvciBleGFtcGxlLCB0aGUKPj4gYm9hcmQgaGFzIHNvbWUgc3Vi LXN0YW5kYXJkIHdpcmluZyBtYWtpbmcgVVNCMiB1bnJlbGlhYmxlLCBvciBhIGRyaXZlcgo+PiBi dWcgd2l0aCBETUEgZGVzY3JpcHRvcnMpLgo+PiAKPj4gSSBjYW4ganVzdCB0YWtlIHRoZW0gb3V0 IGNvbXBsZXRlbHkgYnV0IGl0IGZlZWxzIGxpa2UgbW9kdWxlIHBhcmFtZXRlcnMKPj4gYXJlIHRo ZSByaWdodCB0aGluZyB0byBkbyBpbiB0aGF0IHNwZWNpZmljIGNhc2UuCj4KPiBJJ3ZlIHRha2Vu IG91dCB0aGUgc2Vjb25kIG9uZSwgaXQgaXNuJ3QgdGhhdCB1c2VmdWwuIEkndmUgbGVmdCBpbiB0 aGUKPiBmaXJzdCBvbmUgaG93ZXZlci4gVGhpcyBpcyB0aGUgcmlnaHQgdGhpbmcgdG8gZG8uIFRo YXQgc2V0dGluZyAoZm9yY2UKPiBVU0IxIG1vZGUpIG5lZWRzIHRvIGJlIGFwcGxpZWQgYXMgc29v biBhcyB0aGUgdmh1YiBnZXRzIGluaXRpYWxpemVkCj4gYXQgZHJpdmVyIGxvYWQgdGltZSwgcmVn YXJkbGVzcyBvZiB3aGF0IGdhZGdldHMgbWlnaHQgYmUgYXR0YWNoZWQgdG8KPiBpdCBsYXRlciBv bi4KCndlIGhhdmUgRFQgYmluZGluZyBmb3IgcGFzc2luZyBtYXhpbXVtIHNwZWVkLiBBIG1vZHVs ZSBwYXJhbWV0ZXIgaXMKZ2xvYmFsLCB3aGVyZWFzIERUIGJpbmRpbmcgKG9yIGRldmljZSBwcm9w ZXJ0eSkgaXMgcGVyLWRldmljZS4KCj4+ID4gPiArdm9pZCBhc3Rfdmh1Yl9pbml0X2h3KHN0cnVj dCBhc3Rfdmh1YiAqdmh1YikKPj4gPiA+ICt7Cj4+ID4gPiArICAgdTMyIGN0cmw7Cj4+ID4gPiAr Cj4+ID4gPiArICAgVURDREJHKHZodWIsIihSZSlTdGFydGluZyBIVyAuLi5cbiIpOwo+PiA+ID4g Kwo+PiA+ID4gKyAgIC8qIEVuYWJsZSBQSFkgKi8KPj4gPiA+ICsgICBjdHJsID0gVkhVQl9DVFJM X1BIWV9DTEsgfAo+PiA+ID4gKyAgICAgICAgICAgVkhVQl9DVFJMX1BIWV9SRVNFVF9ESVM7Cj4+ ID4gPiArCj4+ID4gPiArI2lmIDAgLyoKPj4gPiA+ICsgICAgICAgKiBUaGlzIGNhdXNlcyByZWdp c3RlcnMgdG8gYmVjb21lIGluYWNjZXNzaWJsZSBkdXJpbmcKPj4gPiA+ICsgICAgICAgKiBzdXNw ZW5kLiBOZWVkIHRvIGZpZ3VyZSBvdXQgaG93IHRvIGJyaW5nIHRoZSBjb250cm9sbGVyCj4+ID4g PiArICAgICAgICogYmFjayBpbnRvIGxpZmUgdG8gaXNzdWUgYSB3YWtldXAuCj4+ID4gPiArICAg ICAgICovCj4+ID4gPiArICAgY3RybCB8PSBWSFVCX0NUUkxfQ0xLX1NUT1BfU1VTUEVORDsKPj4g PiA+ICsjZW5kaWYKPj4gPiAKPj4gPiBubyBjb21tZW50ZWQgY29kZS4KPj4gCj4+IFdoeSA/IFRo aXMgZG9jdW1lbnRzIGEgSFcgaXNzdWUgLi4uIGllLCBvbmUgd291bGQgbm9ybWFsbHkgd2FudCB0 byBzZXQKPj4gdGhpcyBiaXQgYnV0IHlvdSBjYW4ndCBiZWNhdXNlIGluIHByYWN0aWNlIHlvdSBj YW4ndCBicmluZyB0aGUgSFcgYmFjawo+PiBzaG9ydCBvZiBkb2luZyBhIGZ1bGwgcmVzZXQuCj4K PiBTbyBJIGRvbid0IHdhbnQgdG8gbG9zZSB0aGUgIkhXIGRvY3VtZW50YXRpb24iIHBhcnQgb2Yg dGhhdCwgSSd2ZQo+IHR1cm5lZCB0aGUgYWJvdmUgaW50byBhIGNvbW1lbnQ6Cj4KPiAgICAgICAv Kgo+IAkqIFdlIGRvICpOT1QqIHNldCB0aGUgVkhVQl9DVFJMX0NMS19TVE9QX1NVU1BFTkQgYml0 Cj4gCSogdG8gc3RvcCB0aGUgbG9naWMgY2xvY2sgZHVyaW5nIHN1c3BlbmQgYmVjYXVzZQo+IAkq IGl0IGNhdXNlcyB0aGUgcmVnaXN0ZXJzIHRvIGJlY29tZSBpbmFjY2Vzc2libGUgYW5kCj4gCSog d2UgaGF2ZW4ndCB5ZXQgZmlndXJlZCBvdXQgYSBnb29kIHdheXQgdG8gYnJpbmcgdGhlCj4gCSog Y29udHJvbGxlciBiYWNrIGludG8gbGlmZSB0byBpc3N1ZSBhIHdha2V1cC4KPiAJKi8KCnRoaXMg aXMgZ29vZAoKPiBJdCB3aWxsIGJlIGluIHY1IHdoZW4gSSBwb3N0IGl0IChJJ2xsIHRlc3QgYSBi aXQgbW9yZSBhbmQgd2FpdAo+IGZvciBvdGhlciByZXBsaWVzIGZyb20geW91LCBpZiBJIGRvbid0 IGhlYXIgYmFjayBJJ2xsIHByb2JhYmx5IHNlbmQKPiBpdCBieSBlbmQgb2Ygd2VlayBvciBuZXh0 IHdlZWspLgoKb2theQoKPj4gPiA+ICsgICAvKgo+PiA+ID4gKyAgICAqIFNldCBzb21lIElTTyAm IHNwbGl0IGNvbnRyb2wgYml0cyBhY2NvcmRpbmcgdG8gQXNwZWVkCj4+ID4gPiArICAgICogcmVj b21tZW5kYXRpb24KPj4gPiA+ICsgICAgKgo+PiA+ID4gKyAgICAqIFZIVUJfQ1RSTF9JU09fUlNQ X0NUUkw6IFdoZW4gc2V0IHRlbGxzIHRoZSBIVyB0byByZXNwb25kCj4+ID4gPiArICAgICogd2l0 aCAwIGJ5dGVzIGRhdGEgcGFja2V0IHRvIElTTyBJTiBlbmRwb2ludHMgd2hlbiBubyBkYXRhCj4+ ID4gPiArICAgICogaXMgYXZhaWxhYmxlLgo+PiA+ID4gKyAgICAqCj4+ID4gPiArICAgICogVkhV Ql9DVFJMX1NQTElUX0lOOiBUaGlzIG1ha2VzIGEgU09GIGNvbXBsZXRlIGEgc3BsaXQgSU4KPj4g PiA+ICsgICAgKiB0cmFuc2FjdGlvbi4KPj4gPiA+ICsgICAgKi8KPj4gPiA+ICsgICBjdHJsIHw9 IFZIVUJfQ1RSTF9JU09fUlNQX0NUUkwgfCBWSFVCX0NUUkxfU1BMSVRfSU47Cj4+ID4gPiArICAg d3JpdGVsKGN0cmwsIHZodWItPnJlZ3MgKyBBU1RfVkhVQl9DVFJMKTsKPj4gPiA+ICsgICB1ZGVs YXkoMSk7Cj4+ID4gPiArCj4+ID4gPiArICAgLyogU2V0IGRlc2NyaXB0b3IgcmluZyBzaXplICov Cj4+ID4gPiArI2lmIEFTVF9WSFVCX0RFU0NTX0NPVU5UID09IDI1Ngo+PiA+ID4gKyAgIGN0cmwg fD0gVkhVQl9DVFJMX0xPTkdfREVTQzsKPj4gPiA+ICsgICB3cml0ZWwoY3RybCwgdmh1Yi0+cmVn cyArIEFTVF9WSFVCX0NUUkwpOwo+PiA+ID4gKyNlbGlmIEFTVF9WSFVCX0RFU0NTX0NPVU5UICE9 IDMyCj4+ID4gPiArICAgI2Vycm9yIEludmFsaWQgQVNUX1ZIVUJfREVTQ1NfQ09VTlQKPj4gPiA+ ICsjZW5kaWYKPj4gPiAKPj4gPiBmaW5kIGEgYmV0dGVyIHdheSBmb3IgdGhpcy4gTm8gaWZkZWZz Cj4+IAo+PiBVZ2ggPyBXaGF0J3MgdGhhdCBydWxlID8gSSBjb3VsZCBkbyBhIG1vZHVsZSBwYXJh bWV0ZXIgYnV0IHlvdSBoYXRlCj4+IHRoYXQgdG9vIGFuZCBob25lc3RseSBrZWVwaW5nIHRoYXQg YW4gaWZkZWYgbWFrZXMgdGhpbmdzIGVhc2llci4gSXQncwo+PiBub3QgbWVhbnQgdG8gYmUgY2hh bmdlZCB1bmxlc3MgYSBoYXJkd2FyZSBvciBwZXJmb3JtYW5jZSBpc3N1ZXMgc2hvd3MKPj4gdXAs IEkgd2FudGVkIHRvIGtlZXAgYm90aCBtb2RlIG9mIG9wZXJhdGlvbnMgYXZhaWxhYmxlLgo+Cj4g T2ggd2VsbCwgSSd2ZSBqdXN0IG1hZGUgaXQgYW4gaWYgKCkgYW5kIGtlcHQgdGhlICNkZWZpbmUs IGFuZCB0aGUKPiAjZXJyb3IgdHVybnMgaW50byBhIEJVSUxEX0JVR19PTigpLiBTYW1lIHByaW5j aXBsZS4uLiBidXQgSSBkb24ndAo+IGxpa2UgdGhvc2UgYXJiaXRyYXJ5ICJydWxlcyIsIEkgdHJ5 IHRvIGF2b2lkIHRoZW0gZm9yIHRoaW5ncyBJCj4gbWFpbnRhaW4gKGdyYW50ZWQsIG5vdCBtdWNo IGFueW1vcmUgdGhlc2UgZGF5cykuCgp0aGV5J3JlIG5vdCBhcmJpdHJhcnksIGFjdHVhbGx5LCBh bmQgaGF2ZSBiZWVuIGFyb3VuZCBmb3IgYSBsb25nIHRpbWUgOy0pCgo+IERvIHlvdSBoYXZlIG1v cmUgY29tbWVudHMgZm9yIHRoZSByZXN0IG9mIHRoZSBkcml2ZXIgb3IgdGhhdCdzIGl0ID8KCnNv IGZhciwgdGhhdCdzIGl0Lgo=