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: dmaengine: mcf-edma: add ColdFire mcf5441x eDMA support From: Angelo Dureghello Message-Id: <20180504191819.GA4253@jerusalem> Date: Fri, 4 May 2018 21:18:19 +0200 To: Vinod Koul Cc: dmaengine@vger.kernel.org, gerg@linux-m68k.org, linux-m68k@vger.kernel.org, vkoul@kernel.org List-ID: SGkgVmlub2QsCgp0aGFua3MgZm9yIHRoZSByZXZpZXcsCgpPbiBUaHUsIE1heSAwMywgMjAxOCBh dCAxMDoxODozMFBNICswNTMwLCBWaW5vZCBLb3VsIHdyb3RlOgo+IE9uIFdlZCwgQXByIDI1LCAy MDE4IGF0IDEwOjA4OjE3UE0gKzAyMDAsIEFuZ2VsbyBEdXJlZ2hlbGxvIHdyb3RlOgo+ID4gVGhp cyBwYXRjaCBhZGRzIGRtYSBzdXBwb3J0IGZvciBOWFAgbWNmNTQ0MXggKENvbGRGaXJlKSBmYW1p bHkuCj4gPiAKPiA+IENvbGRGaXJlIG1jZjU0NDF4IGltcGxlbWVudHMgYW4gZWRtYSBodyBtb2R1 bGUgc2ltaWxhciB0byB0aGUKPiAKPiBJcyBpdCBzaW1pbGFyIHRvIHRvIGVkbWEgPwo+IAoKSXQg aXMgc2ltaWxhciB0byBGcmVlc2NhbGUgImVkbWEiIGJ1dCB3aXRoIGEgZGlmZmVyZW50IG51bWJl ciBvZgpjaGFubmVscywgYSBiaXQgZGlmZmVyZW50IHJlZ2lzdGVyIHNldCwgZGlmZmVyZW50IGlu dGVycnVwdApzdHJ1Y3R1cmUsIG5vIGNoYW5uZWwgbXVsdGlwbGV4ZXIuCgo+ID4gb25lIGltcGxl bWVudGVkIGluIFZ5YnJpZCBWRnh4eCBjb250cm9sbGVycywgYnV0IHdpdGggYSBzbGlnaHRseQo+ ID4gZGlmZmVyZW50IHJlZ2lzdGVyIHNldCwgbW9yZSBkbWEgY2hhbm5lbHMgKDY0IGluc3RlYWQg b2YgMzIpLAo+ID4gYSBkaWZmZXJlbnQgaW50ZXJydXB0IG1lY2hhbmlzbSBhbmQgc29tZSBvdGhl ciBtaW5vciBkaWZmZXJlbmNlcy4KPiA+IAo+ID4gRm9yIHRoZSBhYm92ZSByZWFzb25zLCBtb2Rm eWluZyBmc2wtZWRtYS5jIHdhcyB0b28gY29tcGxleCBhbmQKPiA+IGxpa2VseSB0b28gdWdseS4g RnJvbSBoZXJlLCB0aGUgZGVjaXNpb24gdG8gY3JlYXRlIGEgZGlmZmVyZW50Cj4gPiBkcml2ZXIs IGJ1dCBzdGFydGluZyBmcm9tIGZzbC1lZG1hLgo+IAo+IGNhbiB0aGUgY29tbW9uIHN0dWZmIGJl IG1hZGUgaW50byBhIGxpYiBhbmQgc2hhcmVkIGJldHdlZW4gdGhlbiB0d28gcmF0aGVyCj4gdGhh biBoYXZpbmcgYSBzYW1lIGRyaXZlciBvciBkaWZmZXJlbnQgZHJpdmVycz8KPiAKCkl0IHNob3Vs ZCBiZSBwb3NzaWJsZSB0byBjb2xsZWN0IHNvbWUgY29tbW9uIGNvZGUgaW4gYSBraW5kIG9mCm1j Zl9lZG1hX2NvcmUuYyBjb21tb24gbW9kdWxlLCBidXQgaW4gdGhpcyBjYXNlIGkgY2Fubm90IHRo ZW4gdGVzdAp0aGUgVnlicmlkIGVkbWEgYWZ0ZXIgdGhlIGNoYW5nZXMgc2luY2UgaSBtaXNzIHRo YXQgaGFyZHdhcmUuCgpXb3VsZCBiZSBtYXliZSBwb3NzaWJsZSBmb3IgeW91IHRvIGRpZmYgZnNs LWVkbWEgYW5kIHRoaXMgbWNmLWVkbWEsCmp1c3QgdG8gY29uZmlybSBpZiBpIGNhbiBzdGlsbCBz dGF5IHRoaXMgd2F5LCBvciBpZiBtb3ZpbmcgdG8gYQpsaWJyYXJ5IGJlY29tZXMgbWFuZGF0b3J5 ID8KCj4gPiAKPiA+IFRoZSBkcml2ZXIgaGFzIGJlZW4gdGVzdGVkIHdpdGggbWNmNTQ0MXggKHN0 bWFyazIgYm9hcmQpIGFuZAo+ID4gZHNwaSBkcml2ZXIsIGl0IHdvcmtlZCBmaW5lIGFuZCBzZWVt cyByZWxpYWJsZSBhdCBsZWFzdCBhcyBhCj4gPiBmaXJzdCBpbml0aWFsIHZlcnNpb24uCj4gPiAK PiA+IFNpZ25lZC1vZmYtYnk6IEFuZ2VsbyBEdXJlZ2hlbGxvIDxhbmdlbG9Ac3lzYW0uaXQ+Cj4g PiAtLS0KPiA+ICBhcmNoL202OGsvY29uZmlncy9zdG1hcmsyX2RlZmNvbmZpZyAgIAo+IHRoaXMg c2hvdWxkIGJlIGEgc2VwYXJhdGUgcGF0Y2ggcGxlYXNlCj4KCkFjay4KIAo+ID4gIAkgIG11bHRp cGxleGluZyBjYXBhYmlsaXR5IGZvciBETUEgcmVxdWVzdCBzb3VyY2VzKHNsb3QpLgo+ID4gIAkg IFRoaXMgbW9kdWxlIGNhbiBiZSBmb3VuZCBvbiBGcmVlc2NhbGUgVnlicmlkIGFuZCBMUy0xIFNv Q3MuCj4gPiAgCj4gPiArY29uZmlnIE1DRl9FRE1BCj4gCj4gQWxwaGFiZXRpY2FsIHNvcnQgcGxz Cj4KCkFjay4KCj4gPiArLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQTC0yLjAKPiAKPiBD b3B5cmlnaHQgaW5mbyBzaG91bGQgYmUgaGVyZSBpbiBjOTkgc3R5bGUgY29tbWVudHMKPiAKClNl ZW1zIGNoZWNrcGF0Y2gucGwsIGZvciBDIGZpbGVzLCBkb2VzIG5vdCBsaWtlIHRoZSBDIHN0eWxl CmluaXRpYWwgbGluZSBjb21tZW50OgoKV0FSTklORzogTWlzc2luZyBvciBtYWxmb3JtZWQgU1BE WC1MaWNlbnNlLUlkZW50aWZpZXIgdGFnIGluIGxpbmUgMQojODc6IEZJTEU6IGRyaXZlcnMvZG1h L21jZi1lZG1hLmM6MToKKy8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBHUEwtMi4wICovCgpX aGlsZSBjKysgdHlwZSBpcyBhY2NlcHRlZC4KCkluIGNvbnRyYXJ5LCBpbiAuaCBmaWxlcyBpdCB3 YW50cyBjcHAgLy8gc3R5bGUgYW5kIG5vdCBDIHN0eWxlLgoKPiA+ICsKPiA+ICsjZGVmaW5lIHBy X2ZtdChmbXQpIEtCVUlMRF9NT0ROQU1FICI6ICIgZm10Cj4gCj4gd2h5IGRvIHlvdSBuZWVkIHRo aXMsIHdoeSBub3QgdXNlIGRldl94eHgKPgoKV2VsbCwgcHJfIHN0eWxlIHNlZW1zIHRvIHNpbXBs aWZ5IHRoZSBjYWxsIGEgYml0LCBzaG91bGQgYmUgYWxsb3dlZApidXQgaWYgeW91IHByZWZlciBp IGNhbiBtb3ZlIGFsbCB0byBkZXZfIGZvcm1hdC4KIAo+ID4gKyNkZWZpbmUgRURNQV9DSEFOTkVM UwkJNjQKPiA+ICsjZGVmaW5lIEVETUFfTUFTS19DSCh4KQkJKCh4KSAmIDB4M0YpCj4gPiArI2Rl ZmluZSBFRE1BX01BU0tfSVRFUih4KQkoKHgpICYgMHg3RkZGKQo+ID4gKyNkZWZpbmUgRURNQV9U Q0RfTUVNX0FMSUdOCTMyCj4gPiArCj4gPiArI2RlZmluZSBFRE1BX1RDRF9BVFRSX0RTWl84Ygko MHgwMDAwKQo+ID4gKyNkZWZpbmUgRURNQV9UQ0RfQVRUUl9EU1pfMTZiCSgweDAwMDEpCj4gPiAr I2RlZmluZSBFRE1BX1RDRF9BVFRSX0RTWl8zMmIJKDB4MDAwMikKPiA+ICsjZGVmaW5lIEVETUFf VENEX0FUVFJfRFNaXzE2QgkoMHgwMDA0KQo+IAo+IEJJVCBhbmQgR0VOTUFTSyBmb3IgdGhlc2Uu Lgo+IAoKQWNrLgoKPiA+ICtzdGF0aWMgdW5zaWduZWQgaW50IG1jZl9lZG1hX2dldF90Y2RfYXR0 cihlbnVtIGRtYV9zbGF2ZV9idXN3aWR0aCBhZGRyX3dpZHRoKQo+ID4gK3sKPiA+ICsJc3dpdGNo IChhZGRyX3dpZHRoKSB7Cj4gPiArCWNhc2UgMToKPiA+ICsJCXJldHVybiBFRE1BX1RDRF9BVFRS X1NTWl84YiB8IEVETUFfVENEX0FUVFJfRFNaXzhiOwo+ID4gKwljYXNlIDI6Cj4gPiArCQlyZXR1 cm4gRURNQV9UQ0RfQVRUUl9TU1pfMTZiIHwgRURNQV9UQ0RfQVRUUl9EU1pfMTZiOwo+ID4gKwlj YXNlIDQ6Cj4gPiArCWRlZmF1bHQ6Cj4gCj4gd2h5IGRlZmF1bHQgbm90IHRyZWF0ZWQgYXMgZXJy b3I/Cj4gCgpBY2ssIHdpbGwgZml4IHRoYXQuCgo+ID4gK3N0YXRpYyBpbnQgbWNmX2VkbWFfc2xh dmVfY29uZmlnKHN0cnVjdCBkbWFfY2hhbiAqY2hhbiwKPiA+ICsJCQkJIHN0cnVjdCBkbWFfc2xh dmVfY29uZmlnICpjZmcpCj4gPiArewo+ID4gKwlzdHJ1Y3QgbWNmX2VkbWFfY2hhbiAqbWNmX2No YW4gPSB0b19tY2ZfZWRtYV9jaGFuKGNoYW4pOwo+ID4gKwo+ID4gKwltY2ZfY2hhbi0+ZXNjLmRp ciA9IGNmZy0+ZGlyZWN0aW9uOwo+ID4gKwlpZiAoY2ZnLT5kaXJlY3Rpb24gPT0gRE1BX0RFVl9U T19NRU0pIHsKPiA+ICsJCW1jZl9jaGFuLT5lc2MuZGV2X2FkZHIgPSBjZmctPnNyY19hZGRyOwo+ ID4gKwkJbWNmX2NoYW4tPmVzYy5hZGRyX3dpZHRoID0gY2ZnLT5zcmNfYWRkcl93aWR0aDsKPiA+ ICsJCW1jZl9jaGFuLT5lc2MuYnVyc3QgPSBjZmctPnNyY19tYXhidXJzdDsKPiA+ICsJCW1jZl9j aGFuLT5lc2MuYXR0ciA9IG1jZl9lZG1hX2dldF90Y2RfYXR0cihjZmctPnNyY19hZGRyX3dpZHRo KTsKPiA+ICsJfSBlbHNlIGlmIChjZmctPmRpcmVjdGlvbiA9PSBETUFfTUVNX1RPX0RFVikgewo+ ID4gKwkJbWNmX2NoYW4tPmVzYy5kZXZfYWRkciA9IGNmZy0+ZHN0X2FkZHI7Cj4gPiArCQltY2Zf Y2hhbi0+ZXNjLmFkZHJfd2lkdGggPSBjZmctPmRzdF9hZGRyX3dpZHRoOwo+ID4gKwkJbWNmX2No YW4tPmVzYy5idXJzdCA9IGNmZy0+ZHN0X21heGJ1cnN0Owo+ID4gKwkJbWNmX2NoYW4tPmVzYy5h dHRyID0gbWNmX2VkbWFfZ2V0X3RjZF9hdHRyKGNmZy0+ZHN0X2FkZHJfd2lkdGgpOwo+IAo+IHBs ZWFzZSBzYXZlIGJvdGggc3JjL2RzdG4gZGV0YWlscyBoZXJlLCB0eXBpY2FsbHkgd2UgZG9udCBh dCB0aGlzIHBvaW50Cj4gYWJvdXQgdGhlIHR4biBkaXJlY3Rpb24uLi4gZGlyZWN0aW9uIGNvbWVz IHdpdGggcHJlcF94eHggY2FsbAo+IAoKQWNrLgoKPiA+ICtzdGF0aWMgdm9pZCBtY2ZfZWRtYV9m cmVlX2Rlc2Moc3RydWN0IHZpcnRfZG1hX2Rlc2MgKnZkZXNjKQo+ID4gK3sKPiA+ICsJc3RydWN0 IG1jZl9lZG1hX2Rlc2MgKm1jZl9kZXNjOwo+ID4gKwlpbnQgaTsKPiA+ICsJc3RydWN0IGVkbWFf cmVncyAqcmVnczsKPiA+ICsKPiA+ICsJbWNmX2Rlc2MgPSB0b19tY2ZfZWRtYV9kZXNjKHZkZXNj KTsKPiA+ICsJcmVncyA9IG1jZl9kZXNjLT5lY2hhbi0+ZWRtYS0+bWVtYmFzZTsKPiA+ICsKPiA+ ICsJLy90cmFjZV90Y2QoJnJlZ3MtPnRjZFttY2ZfZGVzYy0+ZWNoYW4tPnNsYXZlX2lkXSk7Cj4g PiArCS8vdHJhY2VfcmVncyhyZWdzKTsKPiAKPiA/Pwo+CgpTb3JyeSwgZm9yZ290IHRob3NlLCB3 aWxsIHJlbW92ZSB0aGVtLgogCj4gPiArc3RhdGljIGludCBtY2ZfZWRtYV9pcnFfaW5pdChzdHJ1 Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LAo+ID4gKwkJCQlzdHJ1Y3QgbWNmX2VkbWFfZW5naW5l ICptY2ZfZWRtYSkKPiA+ICt7Cj4gPiArCWludCByZXQgPSAwLCBpOwo+ID4gKwlzdHJ1Y3QgcmVz b3VyY2UgKnJlczsKPiA+ICsKPiA+ICsJcmVzID0gcGxhdGZvcm1fZ2V0X3Jlc291cmNlX2J5bmFt ZShwZGV2LAo+ID4gKwkJCQlJT1JFU09VUkNFX0lSUSwgImVkbWEtdHgtMDAtMTUiKTsKPiA+ICsJ aWYgKCFyZXMpCj4gPiArCQlyZXR1cm4gLTE7Cj4gPiArCj4gPiArCWZvciAocmV0ID0gMCwgaSA9 IHJlcy0+c3RhcnQ7IGkgPD0gcmVzLT5lbmQ7ICsraSkgewo+ID4gKwkJcmV0IHw9IGRldm1fcmVx dWVzdF9pcnEoJnBkZXYtPmRldiwgaSwKPiA+ICsJCQltY2ZfZWRtYV90eF9oYW5kbGVyLCAwLCAi ZURNQSIsIG1jZl9lZG1hKTsKPiAKPiB5b3UgYXJlIGV4cGxpY2l0bHkgZnJlZWluZyBpcnEgYmVs b3csIHNvIHdoeSB1c2UgZGV2bV8gPwoKQWNrLCBXaWxsIGZpeCB0aGF0LgoKPiAtLSAKPiB+Vmlu b2QKCk1hbnkgdGhhbmtzLAoKUmVnYXJkcywKQW5nZWxvCi0tLQpUbyB1bnN1YnNjcmliZSBmcm9t IHRoaXMgbGlzdDogc2VuZCB0aGUgbGluZSAidW5zdWJzY3JpYmUgZG1hZW5naW5lIiBpbgp0aGUg Ym9keSBvZiBhIG1lc3NhZ2UgdG8gbWFqb3Jkb21vQHZnZXIua2VybmVsLm9yZwpNb3JlIG1ham9y ZG9tbyBpbmZvIGF0ICBodHRwOi8vdmdlci5rZXJuZWwub3JnL21ham9yZG9tby1pbmZvLmh0bWwK