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: [v1,2/2] dmaengine: dw: implement per-channel protection control setting From: Andy Shevchenko Message-Id: <20181105142254.GG10650@smile.fi.intel.com> Date: Mon, 5 Nov 2018 16:22:54 +0200 To: Christian Lamparter Cc: dmaengine@vger.kernel.org, devicetree@vger.kernel.org, Dan Williams , Vinod Koul , Viresh Kumar , Rob Herring , Mark Rutland List-ID: VGhhbmtzIGZvciB0aGUgcGF0Y2gsIG15IGNvbW1lbnRzIGJlbG93LgoKT24gU3VuLCBOb3YgMDQs IDIwMTggYXQgMDY6MDE6MzlQTSArMDEwMCwgQ2hyaXN0aWFuIExhbXBhcnRlciB3cm90ZToKPiBU aGlzIHBhdGNoIGFkZHMgYSBuZXcgZGV2aWNlLXRyZWUgcHJvcGVydHkgdGhhdCBhbGxvd3MgdG8K PiBzcGVjaWZ5IHRoZSBwcm90ZWN0aW9uIGNvbnRyb2wgYml0cyBmb3IgZWFjaCBETUEgY2hhbm5l bAo+IGluZGl2aWR1YWxseS4KPiAKPiBTZXR0aW5nIHRoZSAiY29ycmVjdCIgYml0cyBjYW4gaGF2 ZSBhIGh1Z2UgaW1wYWN0IG9uIHRoZQo+IFBQQzQ2MEVYIGFuZCBBUE04MjE4MSB0aGF0IHVzZSB0 aGlzIERNQSBlbmdpbmUgaW4gY29tYmluYXRpb24KPiB3aXRoIGEgRGVzaWduV2FyZScgU0FUQS1J SSBjb3JlIChzYXRhX2R3Y180NjBleCBkcml2ZXIpLgo+IAo+IEluIHRoZSBPcGVuV3J0IEZvcnVt LCB0aGUgdXNlciB0YWtpbWF0YSByZXBvcnRlZCB0aGF0Ogo+IHw8aHR0cHM6Ly9mb3J1bS5sZWRl LXByb2plY3Qub3JnL3Qvd2QtbXlib29rLWxpdmUtZHVvLXR3by1kaXNrcy8xNjE5NS81NT4KCllv dSBtYXkgdXNlIEJ1Z0xpbms6IHRhZyBhdCB0aGUgZW5kIG9mIGNvbW1pdCBtZXNzYWdlLgoKPiB8 SXQgc2VlbXMgeW91ciBwYXRjaCB1bmxlYXNoZWQgdGhlIGZ1bGwgcG93ZXIgb2YgdGhlIFNBVEEg cG9ydC4KPiB8V2hlcmUgSSB3YXMgcHJldmlvdXNseSBoaXR0aW5nIGEgcmVhbGx5IGhhcmQgbGlt aXQgYXQgYXJvdW5kCj4gfDgyIE1CL3MgZm9yIHJlYWRpbmcgYW5kIDI3IE1CL3MgZm9yIHdyaXRp bmcsIEkgYW0gbm93IGdldHRpbmcgdGhpczoKPiB8Cj4gfHJvb3RAT3BlbldydDovbW50IyB0aW1l IGRkIGlmPS9kZXYvemVybyBvZj10ZW1wZmlsZSBicz0xTSBjb3VudD0xMDI0Cj4gfDEwMjQrMCBy ZWNvcmRzIGluCj4gfDEwMjQrMCByZWNvcmRzIG91dAo+IHxyZWFsICAgIDBtIDEzLjY1cwo+IHx1 c2VyICAgIDBtIDAuMDFzCj4gfHN5cyAgICAgMG0gMTEuODlzCj4gfAo+IHxyb290QE9wZW5XcnQ6 L21udCMgdGltZSBkZCBpZj10ZW1wZmlsZSBvZj0vZGV2L251bGwgYnM9MU0gY291bnQ9MTAyNAo+ IHwxMDI0KzAgcmVjb3JkcyBpbgo+IHwxMDI0KzAgcmVjb3JkcyBvdXQKPiB8cmVhbCAgICAwbSA4 LjQxcwo+IHx1c2VyICAgIDBtIDAuMDFzCj4gfHN5cyAgICAgMG0gNC43MHMKPiB8Cj4gfFRoaXMg bWVhbnM6IDEyMSBNQi9zIHJlYWRpbmcgYW5kIDc1IE1CL3Mgd3JpdGluZyEKPiB8Cj4gfFRoZSBk cml2ZSBpcyBhIFdEIEdyZWVuIFdEMTBFQVJYIHRha2VuIGZyb20gYW4gb2xkZXIgTUJMIFNpbmds ZS4KPiB8SSByZXBlYXRlZCB0aGUgdGVzdCBhIGZldyB0aW1lcyB3aXRoIGV2ZW4gbGFyZ2VyIGZp bGVzIHRvIHJ1bGUgb3V0Cj4gfGFueSBjYWNoaW5nLCBJJ20gc3RpbGwgc2VlaW5nIHRoZSBzYW1l IGdyZWF0IHBlcmZvcm1hbmNlLiBPcGVuV3J0IGlzCj4gfG5vdyBjb21wbGV0ZWx5IG9uIHBhciB3 aXRoIHRoZSBvcmlnaW5hbCBNQkwgZmlybXdhcmUncyBwZXJmb3JtYW5jZS4KPiAKPiBBbm90aGVy IHVzZXIgQW5kLnNob3J0IHJlcG9ydGVkIGluIHRoZSBzYW1lIHRocmVhZDoKPiB8PGh0dHBzOi8v Zm9ydW0ub3BlbndydC5vcmcvdC9zb2x2ZWQtd2QtbXlib29rLWxpdmUtZHVvLXR3by1kaXNrcy8x NjE5NS81MD4KCkFub3RoZXIgQnVnTGluazogdGFnIGVudHJ5IDotKQoKPiB8SSBjYW4gcmVwb3J0 IHRoYXQgeW91ciBmaXggd29ya2VkISBCb290cyB1cCBmaW5lIHdpdGggdHdvCj4gfGRyaXZlcyBl dmVuIHdpdGggbW9yZSBwYXJ0aXRpb25zLCBhbmQgbm8gbW9yZSByZWJvb3Qgb24KPiB8Y29uY3Vy cmVudCBkaXNrIGFjY2VzcyEKPiAKPiBBIGNsb3NlciBsb29rIGludG8gdGhlIHNhdGFfZHdjXzQ2 MGV4IGNvZGUgcmV2ZWFsZWQgdGhhdAo+IHRoZSBkcml2ZXIgZGlkIGluaXRhbGx5IHNldCB0aGUg Y29ycmVjdCBwcm90ZWN0aW9uIGNvbnRyb2wKPiBiaXRzLiAKCj4gSG93ZXZlciwgdGhpcyBmZWF0 dXJlIHdhcyBsb3N0IHdoZW4gdGhlIHNhdGFfZHdjXzQ2MGV4Cj4gZHJpdmVyIHdhcyBjb252ZXJ0 ZWQgdG8gdGhlIGdlbmVyaWMgRE1BIGRyaXZlciBmcmFtZXdvcmsgd2l0aDoKPiA4YjM0NDQ4NTJh MiAoInNhdGFfZHdjXzQ2MGV4OiBtb3ZlIHRvIGdlbmVyaWMgRE1BIGRyaXZlciIpLgoKRml4ZXM6 IHRhZy4KCj4gCj4gU2lnbmVkLW9mZi1ieTogQ2hyaXN0aWFuIExhbXBhcnRlciA8Y2h1bmtlZXlA Z21haWwuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2RtYS9kdy9jb3JlLmMgICAgICAgICAgICAgICAg fCAgMyArKysKPiAgZHJpdmVycy9kbWEvZHcvcGxhdGZvcm0uYyAgICAgICAgICAgIHwgMTIgKysr KysrKysrLS0tCj4gIGRyaXZlcnMvZG1hL2R3L3JlZ3MuaCAgICAgICAgICAgICAgICB8ICA0ICsr KysKPiAgaW5jbHVkZS9saW51eC9wbGF0Zm9ybV9kYXRhL2RtYS1kdy5oIHwgIDYgKysrKysrCj4g IDQgZmlsZXMgY2hhbmdlZCwgMjIgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKPiAKPiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9kbWEvZHcvY29yZS5jIGIvZHJpdmVycy9kbWEvZHcvY29yZS5j Cj4gaW5kZXggZjQzZTZkYWZlNDQ2Li4yZGIxNWU5YjMzYTggMTAwNjQ0Cj4gLS0tIGEvZHJpdmVy cy9kbWEvZHcvY29yZS5jCj4gKysrIGIvZHJpdmVycy9kbWEvZHcvY29yZS5jCj4gQEAgLTE2MCwx MiArMTYwLDE1IEBAIHN0YXRpYyB2b2lkIGR3Y19pbml0aWFsaXplX2NoYW5faWRtYTMyKHN0cnVj dCBkd19kbWFfY2hhbiAqZHdjKQo+ICAKPiAgc3RhdGljIHZvaWQgZHdjX2luaXRpYWxpemVfY2hh bl9kdyhzdHJ1Y3QgZHdfZG1hX2NoYW4gKmR3YykKPiAgewo+ICsJc3RydWN0IGR3X2RtYSAqZHcg PSB0b19kd19kbWEoZHdjLT5jaGFuLmRldmljZSk7Cj4gKwlzaXplX3QgY2hhbmlkeCA9IChzaXpl X3QpKGR3YyAtIGR3LT5jaGFuKTsKCldlIGhhdmUgbWFzayBmaWVsZCwgc28sIGluZGV4IGlzIGEg Zmlyc3Qgc2V0IGJpdCBvdXQgb2YgbWFzaywgX19mZnMobWFzaykuCgoJdW5zaWduZWQgaW50IHBy b3RjdGwgPSBkdy0+cGRhdGEtPnByb3RjdGxbX19mZnMobWFzayldOwoKCj4gIAl1MzIgY2ZnaGkg PSBEV0NfQ0ZHSF9GSUZPX01PREU7Cj4gIAl1MzIgY2ZnbG8gPSBEV0NfQ0ZHTF9DSF9QUklPUihk d2MtPnByaW9yaXR5KTsKPiAgCWJvb2wgaHNfcG9sYXJpdHkgPSBkd2MtPmR3cy5oc19wb2xhcml0 eTsKPiAgCj4gIAljZmdoaSB8PSBEV0NfQ0ZHSF9EU1RfUEVSKGR3Yy0+ZHdzLmRzdF9pZCk7Cj4g IAljZmdoaSB8PSBEV0NfQ0ZHSF9TUkNfUEVSKGR3Yy0+ZHdzLnNyY19pZCk7Cj4gKwljZmdoaSB8 PSBEV0NfQ0ZHSF9QUk9UQ1RMKGR3LT5wZGF0YS0+cHJvdGN0bFtjaGFuaWR4XSk7Cj4gIAo+ICAJ LyogU2V0IHBvbGFyaXR5IG9mIGhhbmRzaGFrZSBpbnRlcmZhY2UgKi8KPiAgCWNmZ2xvIHw9IGhz X3BvbGFyaXR5ID8gRFdDX0NGR0xfSFNfRFNUX1BPTCB8IERXQ19DRkdMX0hTX1NSQ19QT0wgOiAw Owo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2RtYS9kdy9wbGF0Zm9ybS5jIGIvZHJpdmVycy9kbWEv ZHcvcGxhdGZvcm0uYwo+IGluZGV4IGY2MmRkMDk0NDkwOC4uMDc4Y2NhNjU3NmMzIDEwMDY0NAo+ IC0tLSBhL2RyaXZlcnMvZG1hL2R3L3BsYXRmb3JtLmMKPiArKysgYi9kcml2ZXJzL2RtYS9kdy9w bGF0Zm9ybS5jCj4gQEAgLTEwMiw3ICsxMDIsNyBAQCBkd19kbWFfcGFyc2VfZHQoc3RydWN0IHBs YXRmb3JtX2RldmljZSAqcGRldikKPiAgewo+ICAJc3RydWN0IGRldmljZV9ub2RlICpucCA9IHBk ZXYtPmRldi5vZl9ub2RlOwo+ICAJc3RydWN0IGR3X2RtYV9wbGF0Zm9ybV9kYXRhICpwZGF0YTsK PiAtCXUzMiB0bXAsIGFycltEV19ETUFfTUFYX05SX01BU1RFUlNdLCBtYltEV19ETUFfTUFYX05S X0NIQU5ORUxTXTsKPiArCXUzMiB0bXAsIGFycltEV19ETUFfTUFYX05SX01BU1RFUlNdLCB2YWxb RFdfRE1BX01BWF9OUl9DSEFOTkVMU107Cj4gIAl1MzIgbnJfbWFzdGVyczsKPiAgCXUzMiBucl9j aGFubmVsczsKPiAgCj4gQEAgLTE1NCwxNCArMTU0LDIwIEBAIGR3X2RtYV9wYXJzZV9kdChzdHJ1 Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2KQo+ICAJCQlwZGF0YS0+ZGF0YV93aWR0aFt0bXBdID0g QklUKGFyclt0bXBdICYgMHgwNyk7Cj4gIAl9Cj4gIAo+IC0JaWYgKCFvZl9wcm9wZXJ0eV9yZWFk X3UzMl9hcnJheShucCwgIm11bHRpLWJsb2NrIiwgbWIsIG5yX2NoYW5uZWxzKSkgewo+ICsJaWYg KCFvZl9wcm9wZXJ0eV9yZWFkX3UzMl9hcnJheShucCwgIm11bHRpLWJsb2NrIiwgdmFsLCBucl9j aGFubmVscykpIHsKPiAgCQlmb3IgKHRtcCA9IDA7IHRtcCA8IG5yX2NoYW5uZWxzOyB0bXArKykK PiAtCQkJcGRhdGEtPm11bHRpX2Jsb2NrW3RtcF0gPSBtYlt0bXBdOwo+ICsJCQlwZGF0YS0+bXVs dGlfYmxvY2tbdG1wXSA9IHZhbFt0bXBdOwo+ICAJfSBlbHNlIHsKPiAgCQlmb3IgKHRtcCA9IDA7 IHRtcCA8IG5yX2NoYW5uZWxzOyB0bXArKykKPiAgCQkJcGRhdGEtPm11bHRpX2Jsb2NrW3RtcF0g PSAxOwo+ICAJfQo+ICAKPiArCWlmICghb2ZfcHJvcGVydHlfcmVhZF91MzJfYXJyYXkobnAsICJz bnBzLGRtYS1wcm90ZWN0aW9uLWNvbnRyb2wiLAo+ICsJCQkJCXZhbCwgbnJfY2hhbm5lbHMpKSB7 Cj4gKwkJZm9yICh0bXAgPSAwOyB0bXAgPCBucl9jaGFubmVsczsgdG1wKyspCj4gKwkJCXBkYXRh LT5wcm90Y3RsW3RtcF0gPSB2YWxbdG1wXTsKPiArCX0KPiArCj4gIAlyZXR1cm4gcGRhdGE7Cj4g IH0KPiAgI2Vsc2UKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9kbWEvZHcvcmVncy5oIGIvZHJpdmVy cy9kbWEvZHcvcmVncy5oCj4gaW5kZXggMDllN2RmZGJiNzkwLi42NDZjOWM5NjBjMDcgMTAwNjQ0 Cj4gLS0tIGEvZHJpdmVycy9kbWEvZHcvcmVncy5oCj4gKysrIGIvZHJpdmVycy9kbWEvZHcvcmVn cy5oCj4gQEAgLTIwMCw2ICsyMDAsMTAgQEAgZW51bSBkd19kbWFfbXNpemUgewo+ICAjZGVmaW5l IERXQ19DRkdIX0ZDTU9ERQkJKDEgPDwgMCkKPiAgI2RlZmluZSBEV0NfQ0ZHSF9GSUZPX01PREUJ KDEgPDwgMSkKPiAgI2RlZmluZSBEV0NfQ0ZHSF9QUk9UQ1RMKHgpCSgoeCkgPDwgMikKCj4gKyNk ZWZpbmUgRFdDX0NGR0hfUFJPVENUTF9EQVRBCSgwIDw8IDIpCS8qIGRhdGEgYWNjZXNzIC0gYWx3 YXlzIHNldCAqLwo+ICsjZGVmaW5lIERXQ19DRkdIX1BST1RDVExfUFJJVgkoMSA8PCAyKQkvKiBw cml2aWxlZ2VkIC0+IEFIQiBIUFJPVFsxXSAqLwo+ICsjZGVmaW5lIERXQ19DRkdIX1BST1RDVExf QlVGRkVSCSgyIDw8IDIpCS8qIGJ1ZmZlcmFibGUgLT4gQUhCIEhQUk9UWzJdICovCj4gKyNkZWZp bmUgRFdDX0NGR0hfUFJPVENUTF9DQUNIRQkoNCA8PCAyKQkvKiBjYWNoZWFibGUgIC0+IEFIQiBI UFJPVFszXSAqLwoKPiAgI2RlZmluZSBEV0NfQ0ZHSF9EU19VUERfRU4JKDEgPDwgNSkKPiAgI2Rl ZmluZSBEV0NfQ0ZHSF9TU19VUERfRU4JKDEgPDwgNikKPiAgI2RlZmluZSBEV0NfQ0ZHSF9TUkNf UEVSKHgpCSgoeCkgPDwgNykKPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9saW51eC9wbGF0Zm9ybV9k YXRhL2RtYS1kdy5oIGIvaW5jbHVkZS9saW51eC9wbGF0Zm9ybV9kYXRhL2RtYS1kdy5oCj4gaW5k ZXggODk2Y2I3MWEzODJjLi5kZjY1ZTMzMTFhNTYgMTAwNjQ0Cj4gLS0tIGEvaW5jbHVkZS9saW51 eC9wbGF0Zm9ybV9kYXRhL2RtYS1kdy5oCj4gKysrIGIvaW5jbHVkZS9saW51eC9wbGF0Zm9ybV9k YXRhL2RtYS1kdy5oCj4gQEAgLTQ5LDYgKzQ5LDcgQEAgc3RydWN0IGR3X2RtYV9zbGF2ZSB7Cj4g ICAqIEBkYXRhX3dpZHRoOiBNYXhpbXVtIGRhdGEgd2lkdGggc3VwcG9ydGVkIGJ5IGhhcmR3YXJl IHBlciBBSEIgbWFzdGVyCj4gICAqCQkoaW4gYnl0ZXMsIHBvd2VyIG9mIDIpCj4gICAqIEBtdWx0 aV9ibG9jazogTXVsdGkgYmxvY2sgdHJhbnNmZXJzIHN1cHBvcnRlZCBieSBoYXJkd2FyZSBwZXIg Y2hhbm5lbC4KPiArICogQHByb3RjdGw6CVByb3RlY3Rpb24gY29udHJvbCBzaWduYWxzIHNldHRp bmcgcGVyIGNoYW5uZWwuCj4gICAqLwo+ICBzdHJ1Y3QgZHdfZG1hX3BsYXRmb3JtX2RhdGEgewo+ ICAJdW5zaWduZWQgaW50CW5yX2NoYW5uZWxzOwo+IEBAIC02NSw2ICs2NiwxMSBAQCBzdHJ1Y3Qg ZHdfZG1hX3BsYXRmb3JtX2RhdGEgewo+ICAJdW5zaWduZWQgY2hhcglucl9tYXN0ZXJzOwo+ICAJ dW5zaWduZWQgY2hhcglkYXRhX3dpZHRoW0RXX0RNQV9NQVhfTlJfTUFTVEVSU107Cj4gIAl1bnNp Z25lZCBjaGFyCW11bHRpX2Jsb2NrW0RXX0RNQV9NQVhfTlJfQ0hBTk5FTFNdOwo+ICsjZGVmaW5l IENIQU5fUFJPVENUTF9QUklWSUxFR0VECQlCSVQoMCkKPiArI2RlZmluZSBDSEFOX1BST1RDVExf QlVGRkVSQUJMRQkJQklUKDEpCj4gKyNkZWZpbmUgQ0hBTl9QUk9UQ1RMX0NBQ0hFQUJMRQkJQklU KDIpCgo+ICsjZGVmaW5lCUNIQU5fUFJPVENUTF9NQVNLCQkweDcKCkdFTk1BU0soKQoKPiArCXVu c2lnbmVkIGNoYXIJcHJvdGN0bFtEV19ETUFfTUFYX05SX0NIQU5ORUxTXTsKPiAgfTsKPiAgCj4g ICNlbmRpZiAvKiBfUExBVEZPUk1fREFUQV9ETUFfRFdfSCAqLwo+IC0tIAo+IDIuMTkuMQo+Cg==