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: [v5,7/7] dmaengine: imx-sdma: alloclate bd memory from dma pool From: Lucas Stach Message-Id: <1533559459.2809.3.camel@pengutronix.de> Date: Mon, 06 Aug 2018 14:44:19 +0200 To: Robin Gong , vkoul@kernel.org, s.hauer@pengutronix.de, dan.j.williams@intel.com, gregkh@linuxfoundation.org, jslaby@suse.com Cc: linux-serial@vger.kernel.org, dmaengine@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-imx@nxp.com List-ID: SGkgVmlub2QsIGhpIFJvYmluLAoKdGhpcyBwYXRjaCBpcyBhbHJlYWR5IGluIHlvdXIgc2xhdmUt ZG1hIHRyZWUsIGJ1dCB1cG9uIGNsb3NlcgppbnNwZWN0aW9uwqB0aGlzIGlzIHRvdGFsbHkgZG9p bmcgdGhlIHdyb25nIHRoaW5nIGFuZCBzaG91bGQgYmUgZHJvcHBlZCwKc2VlIGlubGluZSBjb21t ZW50cy4gVGhlIHBhdGNoc2V0IGluIHlvdXIgdHJlZSB3aWxsIHJlZ3Jlc3Mgd2l0aG91dAp0aGlz IHBhdGNoLCB0aG91Z2guIFNvIEkgdGhpbmsgd2UgbmVlZCB0byBkZWxheSBnZXR0aW5nIHRoaXMg c2V0CnVwc3RyZWFtIHVudGlsIHRoaXMgaXNzdWUgaXMgcHJvcGVybHkgZml4ZWQuIAoKCkFtIE1p dHR3b2NoLCBkZW4gMjAuMDYuMjAxOCwgMDA6NTcgKzA4MDAgc2NocmllYiBSb2JpbiBHb25nOgo+ IGRtYV90ZXJtaW5hdGVfYWxsIG1heWJlIGNhbGxlZCBpbiBpbnRlcnJ1cHQgY29udGV4dCB3aGlj aCBtZWFucwo+IFdBUk5fT04oKSB3aWxsIGJlIHRyaWdnZXJlZCBhcyBiZWxvdyB3aGVuIGJkIG1l bW9yeSBmcmVlZC4gQWxsb2NhdAo+IGJkIG1lbW9yeSBmcm9tIGRtYSBwb29sIGluc3RlYWQuCgpX aGlsZSB0aGUgZG1hX3Bvb2wgdXNhZ2Ugd29ya3MgYXJvdW5kIHRoaXMgV0FSTl9PTiwgaXQgZG9l c24ndCBmaXggdGhlCnVuZGVybHlpbmcgaXNzdWUuIEZyZWVpbmcgb2YgdGhlIGRlc2NyaXB0b3Ig bWVtb3J5IHNob3VsZCBvbmx5IGhhcHBlbgphZnRlciB0aGUgU0RNQSBpcyBub3QgYWNjZXNzaW5n IGl0IGFueW1vcmUuIFRoZSBjb21tZW50IGluCnNkbWFfZGlzYWJsZV9jaGFubmVsX3dpdGhfZGVs YXkoKSBzdWdnZXN0cyB0aGF0IHdlIG5lZWQgdG8gd2FpdCBzb21lCnRpbWUgZm9yIHRoaXMgdG8g YmUgc2FmZS4KClNvIHJhdGhlciB0aGFuIHVzaW5nIGEgZG1hX3Bvb2wgZm9yIHRoaXMgbWVtb3J5 LCBzZXR0aW5nIHVwIGEgZGVsYXllZAp3b3JrZXIgdG8gY2xlYW4gdXAgdGhlIGNoYW5uZWwgd291 bGQgd29yayBtdWNoIGJldHRlciBhbmQgZXZlbiBhbGxvdyB0bwpkcm9wIHRoYXQgbmFzdHkgbWRl bGF5KCkgZnJvbSB0aGUgdGVybWluYXRlIGNhbGxiYWNrLiBUaGVuCmRldmljZV9zeW5jaHJvbml6 ZSBmdW5jdGlvbiBuZWVkcyB0byBiZSBpbXBsZW1lbnRlZCBwcm9wZXJseSwgYnV0CnRoYXQncyBt dWNoIGJldHRlciBhcyB0aGFuIHRoZSBibG9ja2luZyB3YWl0IGluIGF0b21pYyBjb250ZXh0LgoK PiBbwqDCoMKgMjkuMTYxMDc5XSBXQVJOSU5HOiBDUFU6IDEgUElEOiA1MzMgYXQgLi9pbmNsdWRl L2xpbnV4L2RtYS1tYXBwaW5nLmg6NTQxIHNkbWFfZnJlZV9iZCsweGE0LzB4YjQKPiBbwqDCoMKg MjkuMTY5ODgzXSBNb2R1bGVzIGxpbmtlZCBpbjoKPiBbwqDCoMKgMjkuMTcyOTkwXSBDUFU6IDEg UElEOiA1MzMgQ29tbTogbXBlZ2F1ZGlvcGFyc2UwIE5vdCB0YWludGVkIDQuMTguMC1yYzEtbmV4 dC0yMDE4MDYxOC0wMDAwOS1nZjc5ZjIyYyAjMjAKPiBbwqDCoMKgMjkuMTgyNTk3XSBIYXJkd2Fy ZSBuYW1lOiBGcmVlc2NhbGUgaS5NWDYgUXVhZC9EdWFsTGl0ZSAoRGV2aWNlIFRyZWUpCj4gW8Kg wqDCoDI5LjE4OTE2M10gQmFja3RyYWNlOgo+IFvCoMKgwqAyOS4xOTE2ODVdIFs8YzAxMGQxZTA+ XSAoZHVtcF9iYWNrdHJhY2UpIGZyb20gWzxjMDEwZDRhMD5dIChzaG93X3N0YWNrKzB4MTgvMHgx YykKPiBbwqDCoMKgMjkuMTk5MzA2XcKgwqByNzowMDAwMDAwMCByNjo2MDBmMDA5MyByNTowMDAw MDAwMCByNDpjMTA3ZGI3Ywo+IFvCoMKgwqAyOS4yMDUwMjldIFs8YzAxMGQ0ODg+XSAoc2hvd19z dGFjaykgZnJvbSBbPGMwYTViYmEwPl0gKGR1bXBfc3RhY2srMHhiNC8weGU4KQo+IFvCoMKgwqAy OS4yMTIzMTJdIFs8YzBhNWJhZWM+XSAoZHVtcF9zdGFjaykgZnJvbSBbPGMwMTI3MDNjPl0gKF9f d2FybisweDEwNC8weDEzMCkKPiBbwqDCoMKgMjkuMjE5NDExXcKgwqByOTplYzNlODE3YyByODow MDAwMDIxZCByNzowMDAwMDAwOSByNjpjMGQxZDQ0MCByNTowMDAwMDAwMCByNDowMDAwMDAwMAo+ IFvCoMKgwqAyOS4yMjcyMDRdIFs8YzAxMjZmMzg+XSAoX193YXJuKSBmcm9tIFs8YzAxMjcxODA+ XSAod2Fybl9zbG93cGF0aF9udWxsKzB4NDQvMHg1MCkKPiBbwqDCoMKgMjkuMjM0ODIxXcKgwqBy ODplZDEyOWRjNCByNzpjMGIwMTk3OCByNjpjMDRkNGU5MCByNTowMDAwMDIxZCByNDpjMGQxZDQ0 MAo+IFvCoMKgwqAyOS4yNDE1NzRdIFs8YzAxMjcxM2M+XSAod2Fybl9zbG93cGF0aF9udWxsKSBm cm9tIFs8YzA0ZDRlOTA+XSAoc2RtYV9mcmVlX2JkKzB4YTQvMHhiNCkKPiBbwqDCoMKgMjkuMjQ5 NzA2XcKgwqByNjo0YzAwMTAwMCByNTpmMDgyZTAwMCByNDowMDAwMDAyNAo+IFvCoMKgwqAyOS4y NTQzNzZdIFs8YzA0ZDRkZWM+XSAoc2RtYV9mcmVlX2JkKSBmcm9tIFs8YzA0ZDRlYjQ+XSAoc2Rt YV9kZXNjX2ZyZWUrMHgxNC8weDIwKQo+IFvCoMKgwqAyOS4yNjIxNjNdwqDCoHI3OmVjM2U4MTEw IHI2OjAwMDAwMTAwIHI1OjAwMDAwMjAwIHI0OmVjZjg5YTAwCj4gW8KgwqDCoDI5LjI2Nzg3M10g WzxjMDRkNGVhMD5dIChzZG1hX2Rlc2NfZnJlZSkgZnJvbSBbPGMwNGQyMjljPl0gKHZjaGFuX2Rt YV9kZXNjX2ZyZWVfbGlzdCsweGE0LzB4YWMpCj4gW8KgwqDCoDI5LjI3NjY5N13CoMKgcjU6MDAw MDAyMDAgcjQ6ZWQxMjlkOWMKPiBbwqDCoMKgMjkuMjgwMzI2XSBbPGMwNGQyMWY4Pl0gKHZjaGFu X2RtYV9kZXNjX2ZyZWVfbGlzdCkgZnJvbSBbPGMwNGQ0ODJjPl0gKHNkbWFfZGlzYWJsZV9jaGFu bmVsX3dpdGhfZGVsYXkrMHgxNGMvMHgxODgpCj4gW8KgwqDCoDI5LjI5MDgwOF3CoMKgcjk6ZWNh ZTU2MGMgcjg6ZWMzZTgxNWMgcjc6MDAwMDAwMDAgcjY6YzEwMDg5MDggcjU6ZWQxMjlkYzQgcjQ6 ZWMzZTgxMTAKPiBbwqDCoMKgMjkuMjk4NjA1XSBbPGMwNGQ0NmUwPl0gKHNkbWFfZGlzYWJsZV9j aGFubmVsX3dpdGhfZGVsYXkpIGZyb20gWzxjMDdjNWM4ND5dIChzbmRfZG1hZW5naW5lX3BjbV90 cmlnZ2VyKzB4OTAvMHgxYjApCj4gW8KgwqDCoDI5LjMwOTA4N13CoMKgcjg6ZWNhZTUwMDAgcjc6 ZWM5NDA4MDAgcjY6ZWQzMWJkODAgcjU6ZWNhZGIyMDAgcjQ6ZWMyNmE3MDAKPiBbwqDCoMKgMjku MzE1ODU1XSBbPGMwN2M1YmY0Pl0gKHNuZF9kbWFlbmdpbmVfcGNtX3RyaWdnZXIpIGZyb20gWzxj MDdkZDgwMD5dIChzb2NfcGNtX3RyaWdnZXIrMHhiNC8weDEzMCkKPiBbwqDCoMKgMjkuMzI0OTUz XcKgwqByODplY2FlNTAwMCByNzplYzk0MDgwMCByNjowMDAwMDAwMCByNTplY2FkYjIwMCByNDpl YzI2YTcwMAo+IFvCoMKgwqAyOS4zMzE3MTZdIFs8YzA3ZGQ3NGM+XSAoc29jX3BjbV90cmlnZ2Vy KSBmcm9tIFs8YzA3YmMwMDg+XSAoc25kX3BjbV9kb19zdG9wKzB4NTgvMHg1YykKPiBbwqDCoMKg MjkuMzM5ODU5XcKgwqByOTplY2FlZDVhOCByODplZDMxYmRjMCByNzowMDAwMDAwMCByNjowMDAw MDAwMSByNTplY2FkYjIwMCByNDpjMGI5YzRkMAo+IFvCoMKgwqAyOS4zNDc2NTJdIFs8YzA3YmJm YjA+XSAoc25kX3BjbV9kb19zdG9wKSBmcm9tIFs8YzA3YmJkZTg+XSAoc25kX3BjbV9hY3Rpb25f c2luZ2xlKzB4NDAvMHg4MCkKPiBbwqDCoMKgMjkuMzU2MzE1XSBbPGMwN2JiZGE4Pl0gKHNuZF9w Y21fYWN0aW9uX3NpbmdsZSkgZnJvbSBbPGMwN2JiZjFjPl0gKHNuZF9wY21fYWN0aW9uKzB4ZjQv MHhmYykKPiBbwqDCoMKgMjkuMzY0ODgzXcKgwqByNzowMDAwMDAwMSByNjpjMGI5YzRkMCByNTpl Y2FkYjJkNCByNDplY2FkYjIwMAo+IFvCoMKgwqAyOS4zNzA1OTNdIFs8YzA3YmJlMjg+XSAoc25k X3BjbV9hY3Rpb24pIGZyb20gWzxjMDdiYzhkYz5dIChzbmRfcGNtX2Ryb3ArMHg1OC8weDljKQo+ IAo+ID4gU2lnbmVkLW9mZi1ieTogUm9iaW4gR29uZyA8eWliaW4uZ29uZ0BueHAuY29tPgo+IC0t LQo+IMKgZHJpdmVycy9kbWEvaW14LXNkbWEuYyB8IDE4ICsrKysrKysrKysrKy0tLS0tLQo+IMKg MSBmaWxlIGNoYW5nZWQsIDEyIGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCj4gCj4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZG1hL2lteC1zZG1hLmMgYi9kcml2ZXJzL2RtYS9pbXgtc2RtYS5j Cj4gaW5kZXggZjhiZWNhZi4uN2RhYjdlOSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2RtYS9pbXgt c2RtYS5jCj4gKysrIGIvZHJpdmVycy9kbWEvaW14LXNkbWEuYwo+IEBAIC0yNCw2ICsyNCw3IEBA Cj4gwqAjaW5jbHVkZSA8bGludXgvc3BpbmxvY2suaD4KPiDCoCNpbmNsdWRlIDxsaW51eC9kZXZp Y2UuaD4KPiDCoCNpbmNsdWRlIDxsaW51eC9kbWEtbWFwcGluZy5oPgo+ICsjaW5jbHVkZSA8bGlu dXgvZG1hcG9vbC5oPgo+IMKgI2luY2x1ZGUgPGxpbnV4L2Zpcm13YXJlLmg+Cj4gwqAjaW5jbHVk ZSA8bGludXgvc2xhYi5oPgo+IMKgI2luY2x1ZGUgPGxpbnV4L3BsYXRmb3JtX2RldmljZS5oPgo+ IEBAIC0zNDMsNiArMzQ0LDcgQEAgc3RydWN0IHNkbWFfY2hhbm5lbCB7Cj4gPiA+IMKgCXUzMgkJ CQlzaHBfYWRkciwgcGVyX2FkZHI7Cj4gPiA+IMKgCWVudW0gZG1hX3N0YXR1cwkJCXN0YXR1czsK PiA+ID4gwqAJc3RydWN0IGlteF9kbWFfZGF0YQkJZGF0YTsKPiA+ID4gKwlzdHJ1Y3QgZG1hX3Bv b2wJCQkqYmRfcG9vbDsKPiDCoH07Cj4gwqAKPiA+IMKgI2RlZmluZSBJTVhfRE1BX1NHX0xPT1AJ CUJJVCgwKQo+IEBAIC0xMTUzLDExICsxMTU1LDEwIEBAIHN0YXRpYyBpbnQgc2RtYV9yZXF1ZXN0 X2NoYW5uZWwwKHN0cnVjdCBzZG1hX2VuZ2luZSAqc2RtYSkKPiDCoAo+IMKgc3RhdGljIGludCBz ZG1hX2FsbG9jX2JkKHN0cnVjdCBzZG1hX2Rlc2MgKmRlc2MpCj4gwqB7Cj4gPiAtCXUzMiBiZF9z aXplID0gZGVzYy0+bnVtX2JkICogc2l6ZW9mKHN0cnVjdCBzZG1hX2J1ZmZlcl9kZXNjcmlwdG9y KTsKPiA+IMKgCWludCByZXQgPSAwOwo+IMKgCj4gPiAtCWRlc2MtPmJkID0gZG1hX3phbGxvY19j b2hlcmVudChOVUxMLCBiZF9zaXplLCAmZGVzYy0+YmRfcGh5cywKPiA+IC0JCQkJCUdGUF9BVE9N SUMpOwo+ID4gKwlkZXNjLT5iZCA9IGRtYV9wb29sX2FsbG9jKGRlc2MtPnNkbWFjLT5iZF9wb29s LCBHRlBfQVRPTUlDLAo+ICsJCQkJCSZkZXNjLT5iZF9waHlzKTsKClRoaXMgaXMgcmVwbGFjaW5n IGEgYWxsb2NhdGlvbiBvZiBudW1fYmQgKiBzaXplb2YoZGVzY3JpcHRvcikgYnkgYQpzaW5nbGUg Y2FsbCB0byBkbWFfcG9vbF9hbGxvYywgd2hpY2ggcHJvdmlkZXMgZW5vdWdoIG1lbW9yeSBmb3Ig YQpzaW5nbGUgZGVzY3JpcHRvciwgc28gdGhpcyB3aWxsIGxlYWQgdG8gaW52YWxpZCB1c2FnZSBv ZiBkZXNjcmlwdG9yCm1lbW9yeSBmb3IgYWxsIHRyYW5zZmVycyB3aXRoIG1vcmUgdGhhbiBhIHNp bmdsZSBkZXNjcmlwdG9yLgoKUmVnYXJkcywKTHVjYXMKCj4gwqAJaWYgKCFkZXNjLT5iZCkgewo+ ID4gwqAJCXJldCA9IC1FTk9NRU07Cj4gPiDCoAkJZ290byBvdXQ7Cj4gQEAgLTExNjgsOSArMTE2 OSw3IEBAIHN0YXRpYyBpbnQgc2RtYV9hbGxvY19iZChzdHJ1Y3Qgc2RtYV9kZXNjICpkZXNjKQo+ IMKgCj4gwqBzdGF0aWMgdm9pZCBzZG1hX2ZyZWVfYmQoc3RydWN0IHNkbWFfZGVzYyAqZGVzYykK PiDCoHsKPiA+IC0JdTMyIGJkX3NpemUgPSBkZXNjLT5udW1fYmQgKiBzaXplb2Yoc3RydWN0IHNk bWFfYnVmZmVyX2Rlc2NyaXB0b3IpOwo+IC0KPiA+IC0JZG1hX2ZyZWVfY29oZXJlbnQoTlVMTCwg YmRfc2l6ZSwgZGVzYy0+YmQsIGRlc2MtPmJkX3BoeXMpOwo+ID4gKwlkbWFfcG9vbF9mcmVlKGRl c2MtPnNkbWFjLT5iZF9wb29sLCBkZXNjLT5iZCwgZGVzYy0+YmRfcGh5cyk7Cj4gwqB9Cj4gwqAK PiDCoHN0YXRpYyB2b2lkIHNkbWFfZGVzY19mcmVlKHN0cnVjdCB2aXJ0X2RtYV9kZXNjICp2ZCkK PiBAQCAtMTIxOCw2ICsxMjE3LDEwIEBAIHN0YXRpYyBpbnQgc2RtYV9hbGxvY19jaGFuX3Jlc291 cmNlcyhzdHJ1Y3QgZG1hX2NoYW4gKmNoYW4pCj4gPiDCoAlpZiAocmV0KQo+ID4gwqAJCWdvdG8g ZGlzYWJsZV9jbGtfYWhiOwo+IMKgCj4gPiArCXNkbWFjLT5iZF9wb29sID0gZG1hX3Bvb2xfY3Jl YXRlKCJiZF9wb29sIiwgY2hhbi0+ZGV2aWNlLT5kZXYsCj4gPiArCQkJCXNpemVvZihzdHJ1Y3Qg c2RtYV9idWZmZXJfZGVzY3JpcHRvciksCj4gPiArCQkJCTMyLCAwKTsKPiArCj4gPiDCoAlyZXR1 cm4gMDsKPiDCoAo+IMKgZGlzYWJsZV9jbGtfYWhiOgo+IEBAIC0xMjQ2LDYgKzEyNDksOSBAQCBz dGF0aWMgdm9pZCBzZG1hX2ZyZWVfY2hhbl9yZXNvdXJjZXMoc3RydWN0IGRtYV9jaGFuICpjaGFu KQo+IMKgCj4gPiDCoAljbGtfZGlzYWJsZShzZG1hLT5jbGtfaXBnKTsKPiA+IMKgCWNsa19kaXNh YmxlKHNkbWEtPmNsa19haGIpOwo+ICsKPiA+ICsJZG1hX3Bvb2xfZGVzdHJveShzZG1hYy0+YmRf cG9vbCk7Cj4gPiArCXNkbWFjLT5iZF9wb29sID0gTlVMTDsKPiDCoH0KPiDCoAo+IMKgc3RhdGlj IHN0cnVjdCBzZG1hX2Rlc2MgKnNkbWFfdHJhbnNmZXJfaW5pdChzdHJ1Y3Qgc2RtYV9jaGFubmVs ICpzZG1hYywKLS0tClRvIHVuc3Vic2NyaWJlIGZyb20gdGhpcyBsaXN0OiBzZW5kIHRoZSBsaW5l ICJ1bnN1YnNjcmliZSBkbWFlbmdpbmUiIGluCnRoZSBib2R5IG9mIGEgbWVzc2FnZSB0byBtYWpv cmRvbW9Admdlci5rZXJuZWwub3JnCk1vcmUgbWFqb3Jkb21vIGluZm8gYXQgIGh0dHA6Ly92Z2Vy Lmtlcm5lbC5vcmcvbWFqb3Jkb21vLWluZm8uaHRtbAo=