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,6/6] usb: musb: Add support for MediaTek musb controller From: min.guo@mediatek.com Message-Id: <1548121515.4433.259.camel@mhfsdcap03> Date: Tue, 22 Jan 2019 09:45:15 +0800 To: Bin Liu Cc: Rob Herring , Greg Kroah-Hartman , Mark Rutland , Matthias Brugger , Alan Stern , chunfeng.yun@mediatek.com, linux-usb@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, tony@atomide.com, hdegoede@redhat.com, Yonglong Wu List-ID: SGkgQmluLAoKT24gTW9uLCAyMDE5LTAxLTIxIGF0IDEwOjA3IC0wNjAwLCBCaW4gTGl1IHdyb3Rl Ogo+IEhpIE1pbiwKPiAKPiBPbiBNb24sIEphbiAyMSwgMjAxOSBhdCAwODoyMjozMVBNICswODAw LCBtaW4uZ3VvQG1lZGlhdGVrLmNvbSB3cm90ZToKPiA+IEZyb206IE1pbiBHdW8gPG1pbi5ndW9A bWVkaWF0ZWsuY29tPgo+ID4gCj4gPiBUaGlzIGFkZHMgc3VwcG9ydCBmb3IgTWVkaWFUZWsgbXVz YiBjb250cm9sbGVyIGluCj4gPiBob3N0LCBwZXJpcGhlcmFsIGFuZCBvdGcgbW9kZS4KPiA+IFRo ZXJlIGFyZSBzb21lIHF1aXJrIG9mIE1lZGlhVGVrIG11c2IgY29udHJvbGxlciwgc3VjaCBhczoK PiA+ICAtVzFDIGludGVycnVwdCBzdGF0dXMgcmVnaXN0ZXJzCj4gPiAgLVByaXZhdGUgZGF0YSB0 b2dnbGUgcmVnaXN0ZXJzCj4gPiAgLU5vIGRlZGljYXRlZCBETUEgaW50ZXJydXB0IGxpbmUKPiA+ IAo+ID4gU2lnbmVkLW9mZi1ieTogTWluIEd1byA8bWluLmd1b0BtZWRpYXRlay5jb20+Cj4gPiBT aWduZWQtb2ZmLWJ5OiBZb25nbG9uZyBXdSA8eW9uZ2xvbmcud3VAbWVkaWF0ZWsuY29tPgo+ID4g LS0tCj4gPiBjaGFuZ2VzIGluIHY0Ogo+ID4gMS4gbm8gY2hhbmdlcwo+ID4gCj4gPiBjaGFuZ2Vz IGluIHYzOgo+ID4gc3VnZ2VzdGVkIGJ5IEJpbjoKPiA+IDEuIFJlbW92ZSAndTgvdTE2IGRhdGEn IHBhcmFtZXRlciBpbiBjbGVhcmIvdygpIGhvb2tzCj4gPiAyLiBSZXBsYWNlIG11c2JfcmVhZGIv dygpIHdpdGggbXVzYl9jbGVhcmIvdygpIHRvIGNsZWFyIGludGVycnVwdHMgc3RhdHVzCj4gPiAK PiA+IGNoYW5nZXMgaW4gdjI6Cj4gPiBzdWdnZXN0ZWQgYnkgQmluOgo+ID4gMS4gQWRkIHN1bW1h cml6ZSBvZiBNZWRpYVRlayBtdXNiIGNvbnRyb2xsZXIgZGlmZmVyZW5jZXMgaW4gdGhlIGNvbW1p dCBsb2cKPiA+IDIuIEFkZCAifHwgQ09NUElMRV9URVNUIiBpbiBLY29uZmlnCj4gPiAzLiBNb3Zl IE1lZGlhVGVrJ3MgcHJpdmF0ZSB0b2dnbGUgcmVnaXN0ZXJzIGZyb20gbXVzYl9yZWdzLmggdG8g bWVkaWF0ZWsuYwo+ID4gNC4gUmVwbGFjZSBtdXNiX3JlYWRsKCkgd2l0aCBtdXNiX3JlYWR3KCkg dG8gcmVhZCAxNmJpdCB0b2dnbGUgcmVnaXN0ZXIKPiA+IC0tLQo+ID4gIGRyaXZlcnMvdXNiL211 c2IvS2NvbmZpZyAgICB8ICAgOCArLQo+ID4gIGRyaXZlcnMvdXNiL211c2IvTWFrZWZpbGUgICB8 ICAgMSArCj4gPiAgZHJpdmVycy91c2IvbXVzYi9tZWRpYXRlay5jIHwgNjI0ICsrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCj4gPiAgMyBmaWxlcyBjaGFuZ2VkLCA2 MzIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQo+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBk cml2ZXJzL3VzYi9tdXNiL21lZGlhdGVrLmMKPiA+IAo+IAo+IFtzbmlwXQo+IAo+ID4gK3N0YXRp YyBpcnFyZXR1cm5fdCBnZW5lcmljX2ludGVycnVwdChpbnQgaXJxLCB2b2lkICpfX2hjaSkKPiA+ ICt7Cj4gPiArCXVuc2lnbmVkIGxvbmcgZmxhZ3M7Cj4gPiArCWlycXJldHVybl90IHJldHZhbCA9 IElSUV9OT05FOwo+ID4gKwlzdHJ1Y3QgbXVzYiAqbXVzYiA9IF9faGNpOwo+ID4gKwo+ID4gKwlz cGluX2xvY2tfaXJxc2F2ZSgmbXVzYi0+bG9jaywgZmxhZ3MpOwo+ID4gKwltdXNiLT5pbnRfdXNi ID0gbXVzYl9yZWFkYihtdXNiLT5tcmVncywgTVVTQl9JTlRSVVNCKSAmCj4gPiArCSAgICBtdXNi X3JlYWRiKG11c2ItPm1yZWdzLCBNVVNCX0lOVFJVU0JFKTsKPiA+ICsJbXVzYi0+aW50X3R4ID0g bXVzYl9yZWFkdyhtdXNiLT5tcmVncywgTVVTQl9JTlRSVFgpCj4gPiArCSAgICAmIG11c2JfcmVh ZHcobXVzYi0+bXJlZ3MsIE1VU0JfSU5UUlRYRSk7Cj4gPiArCW11c2ItPmludF9yeCA9IG11c2Jf cmVhZHcobXVzYi0+bXJlZ3MsIE1VU0JfSU5UUlJYKQo+ID4gKwkgICAgJiBtdXNiX3JlYWR3KG11 c2ItPm1yZWdzLCBNVVNCX0lOVFJSWEUpOwo+IAo+IEJhc2VkIG9uIG15IGNvbW1lbnQgaW4gNS82 LCB0aGUgYWJvdmUgMyBtdXNiX3JlYWRiL3coKSBjYW4gYmUgY2hhbmdlZCB0bwo+IAo+ID4gKwkv KiBNZWRpYVRlayBjb250cm9sbGVyIGludGVycnVwdCBzdGF0dXMgaXMgVzFDICovCj4gPiArCW11 c2JfY2xlYXJ3KG11c2ItPm1yZWdzLCBNVVNCX0lOVFJSWCk7Cj4gPiArCW11c2JfY2xlYXJ3KG11 c2ItPm1yZWdzLCBNVVNCX0lOVFJUWCk7Cj4gPiArCW11c2JfY2xlYXJiKG11c2ItPm1yZWdzLCBN VVNCX0lOVFJVU0IpOwo+IAo+IAltdXNiLT5pbnRfdXNiID0gbXVzYl9jbGVhcmIobXVzYi0+bXJl Z3MsIE1VU0JfSU5UUlVTQikKPiAJbXVzYi0+aW50X3R4ID0gbXVzYl9jbGVhcncobXVzYi0+bXJl Z3MsIE1VU0JfSU5UUlRYKTsKPiAJbXVzYi0+aW50X3J4ID0gbXVzYl9jbGVhcncobXVzYi0+bXJl Z3MsIE1VU0JfSU5UUlJYKTsKCk9rYXkuCgo+ID4gKwo+ID4gKwlpZiAobXVzYi0+aW50X3VzYiB8 fCBtdXNiLT5pbnRfdHggfHwgbXVzYi0+aW50X3J4KQo+ID4gKwkJcmV0dmFsID0gbXVzYl9pbnRl cnJ1cHQobXVzYik7Cj4gPiArCj4gPiArCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJm11c2ItPmxv Y2ssIGZsYWdzKTsKPiA+ICsKPiA+ICsJcmV0dXJuIHJldHZhbDsKPiA+ICt9Cj4gPiArCj4gCj4g W3NuaXBdCj4gCj4gPiArCj4gPiArc3RhdGljIHU4IG10a19tdXNiX2NsZWFyYih2b2lkIF9faW9t ZW0gKmFkZHIsIHVuc2lnbmVkIGludCBvZmZzZXQpCj4gPiArewo+ID4gKwl1OCBkYXRhOwo+ID4g Kwo+ID4gKwkvKiBXMUMgKi8KPiA+ICsJZGF0YSA9IG11c2JfcmVhZGIoYWRkciwgb2Zmc2V0KTsK PiA+ICsJbXVzYl93cml0ZWIoYWRkciwgb2Zmc2V0LCBkYXRhKTsKPiA+ICsJcmV0dXJuIG11c2Jf cmVhZGIoYWRkciwgb2Zmc2V0KTsKPiAKPiAJcmV0dXJuIGRhdGE7CgpPa2F5LgoKPiA+ICt9Cj4g PiArCj4gPiArc3RhdGljIHUxNiBtdGtfbXVzYl9jbGVhcncodm9pZCBfX2lvbWVtICphZGRyLCB1 bnNpZ25lZCBpbnQgb2Zmc2V0KQo+ID4gK3sKPiA+ICsJdTE2IGRhdGE7Cj4gPiArCj4gPiArCS8q IFcxQyAqLwo+ID4gKwlkYXRhID0gbXVzYl9yZWFkdyhhZGRyLCBvZmZzZXQpOwo+ID4gKwltdXNi X3dyaXRldyhhZGRyLCBvZmZzZXQsIGRhdGEpOwo+ID4gKwlyZXR1cm4gbXVzYl9yZWFkdyhhZGRy LCBvZmZzZXQpOwo+IAo+IAlyZXR1cm4gZGF0YTsKCk9rYXkuCgo+IAo+IFJlZ2FyZHMsCj4gLUJp bi4K