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,5/7] dmaengine: xilinx_dma: autodetect whether the HW supports scatter-gather From: Vinod Koul Message-Id: <20180827053409.GV2388@vkoul-mobl> Date: Mon, 27 Aug 2018 11:04:09 +0530 To: Andrea Merello Cc: dan.j.williams@intel.com, michal.simek@xilinx.com, appana.durga.rao@xilinx.com, dmaengine@vger.kernel.org, v4-000linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, robh+dt@kernel.org, mark.rutland@arm.com, devicetree@vger.kernel.org, radhey.shyam.pandey@xilinx.com List-ID: T24gMDItMDgtMTgsIDE2OjEwLCBBbmRyZWEgTWVyZWxsbyB3cm90ZToKPiBUaGUgQVhJRE1BIGFu ZCBDRE1BIEhXIGNhbiBiZSBlaXRoZXIgZGlyZWN0LWFjY2VzcyBvciBzY2F0dGVyLWdhdGhlcgo+ IHZlcnNpb24uIFRoZXNlIGFyZSBTVyBpbmNvbXBhdGlibGUuCj4gCj4gVGhlIGRyaXZlciBjYW4g aGFuZGxlIGJvdGggdmVyc2lvbnM6IGEgRFQgcHJvcGVydHkgd2FzIHVzZWQgdG8KPiB0ZWxsIHRo ZSBkcml2ZXIgd2hldGhlciB0byBhc3N1bWUgdGhlIEhXIGlzIGluIHNjYXR0ZXItZ2F0aGVyIG1v ZGUuCj4gCj4gVGhpcyBwYXRjaCBtYWtlcyB0aGUgZHJpdmVyIHRvIGF1dG9kZXRlY3QgdGhpcyBp bmZvcm1hdGlvbi4gVGhlIERUCj4gcHJvcGVydHkgaXMgbm90IHJlcXVpcmVkIGFueW1vcmUuCj4g Cj4gTm8gY2hhbmdlcyBmb3IgVkRNQS4KPiAKPiBDYzogUm9iIEhlcnJpbmcgPHJvYmgrZHRAa2Vy bmVsLm9yZz4KPiBDYzogTWFyayBSdXRsYW5kIDxtYXJrLnJ1dGxhbmRAYXJtLmNvbT4KPiBDYzog ZGV2aWNldHJlZUB2Z2VyLmtlcm5lbC5vcmcKPiBDYzogUmFkaGV5IFNoeWFtIFBhbmRleSA8cmFk aGV5LnNoeWFtLnBhbmRleUB4aWxpbnguY29tPgo+IFNpZ25lZC1vZmYtYnk6IEFuZHJlYSBNZXJl bGxvIDxhbmRyZWEubWVyZWxsb0BnbWFpbC5jb20+Cj4gUmV2aWV3ZWQtYnk6IFJhZGhleSBTaHlh bSBQYW5kZXkgPHJhZGhleS5zaHlhbS5wYW5kZXlAeGlsaW54LmNvbT4KPiAtLS0KPiBDaGFuZ2Vz IGluIHYyOgo+IAktIGF1dG9kZXRlY3Qgb25seSBpbiAhVkRNQSBjYXNlCj4gQ2hhbmdlcyBpbiB2 MzoKPiAJLSBjYyBEVCBtYWludGFpbmVycy9NTAo+IENoYW5nZXMgaW4gdjQ6Cj4gCS0gZml4IHR5 cG9zIGluIGNvbW1pdCBtZXNzYWdlCj4gLS0tCj4gIGRyaXZlcnMvZG1hL3hpbGlueC94aWxpbnhf ZG1hLmMgfCAxNCArKysrKysrKysrLS0tLQoKU28geW91IGFyZSBub3QgcmVtb3ZpbmcgdGhpcyBw cm9wZXJ0eSBmcm9tIGJpbmRpbmcgZG9jdW1lbnQ/IE9yIGFyZQp0aGVyZSB2YXJpYW50cyB3aGlj aCBkb250IGhhdmUgaHcgbWVjaGFuaXNtPwoKPiAgMSBmaWxlIGNoYW5nZWQsIDEwIGluc2VydGlv bnMoKyksIDQgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZG1hL3hpbGlu eC94aWxpbnhfZG1hLmMgYi9kcml2ZXJzL2RtYS94aWxpbngveGlsaW54X2RtYS5jCj4gaW5kZXgg YjE3ZjI0ZTRlYzM1Li43OGQwZjJmODIyNWUgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9kbWEveGls aW54L3hpbGlueF9kbWEuYwo+ICsrKyBiL2RyaXZlcnMvZG1hL3hpbGlueC94aWxpbnhfZG1hLmMK PiBAQCAtODYsNiArODYsNyBAQAo+ICAjZGVmaW5lIFhJTElOWF9ETUFfRE1BU1JfRE1BX0RFQ19F UlIJCUJJVCg2KQo+ICAjZGVmaW5lIFhJTElOWF9ETUFfRE1BU1JfRE1BX1NMQVZFX0VSUgkJQklU KDUpCj4gICNkZWZpbmUgWElMSU5YX0RNQV9ETUFTUl9ETUFfSU5UX0VSUgkJQklUKDQpCj4gKyNk ZWZpbmUgWElMSU5YX0RNQV9ETUFTUl9TR19NQVNLCQlCSVQoMykKPiAgI2RlZmluZSBYSUxJTlhf RE1BX0RNQVNSX0lETEUJCQlCSVQoMSkKPiAgI2RlZmluZSBYSUxJTlhfRE1BX0RNQVNSX0hBTFRF RAkJQklUKDApCj4gICNkZWZpbmUgWElMSU5YX0RNQV9ETUFTUl9ERUxBWV9NQVNLCQlHRU5NQVNL KDMxLCAyNCkKPiBAQCAtNDA3LDcgKzQwOCw2IEBAIHN0cnVjdCB4aWxpbnhfZG1hX2NvbmZpZyB7 Cj4gICAqIEBkZXY6IERldmljZSBTdHJ1Y3R1cmUKPiAgICogQGNvbW1vbjogRE1BIGRldmljZSBz dHJ1Y3R1cmUKPiAgICogQGNoYW46IERyaXZlciBzcGVjaWZpYyBETUEgY2hhbm5lbAo+IC0gKiBA aGFzX3NnOiBTcGVjaWZpZXMgd2hldGhlciBTY2F0dGVyLUdhdGhlciBpcyBwcmVzZW50IG9yIG5v dAo+ICAgKiBAbWNkbWE6IFNwZWNpZmllcyB3aGV0aGVyIE11bHRpLUNoYW5uZWwgaXMgcHJlc2Vu dCBvciBub3QKPiAgICogQGZsdXNoX29uX2ZzeW5jOiBGbHVzaCBvbiBmcmFtZSBzeW5jCj4gICAq IEBleHRfYWRkcjogSW5kaWNhdGVzIDY0IGJpdCBhZGRyZXNzaW5nIGlzIHN1cHBvcnRlZCBieSBk bWEgZGV2aWNlCj4gQEAgLTQyNyw3ICs0MjcsNiBAQCBzdHJ1Y3QgeGlsaW54X2RtYV9kZXZpY2Ug ewo+ICAJc3RydWN0IGRldmljZSAqZGV2Owo+ICAJc3RydWN0IGRtYV9kZXZpY2UgY29tbW9uOwo+ ICAJc3RydWN0IHhpbGlueF9kbWFfY2hhbiAqY2hhbltYSUxJTlhfRE1BX01BWF9DSEFOU19QRVJf REVWSUNFXTsKPiAtCWJvb2wgaGFzX3NnOwo+ICAJYm9vbCBtY2RtYTsKPiAgCXUzMiBmbHVzaF9v bl9mc3luYzsKPiAgCWJvb2wgZXh0X2FkZHI7Cj4gQEAgLTI0MDAsNyArMjM5OSw2IEBAIHN0YXRp YyBpbnQgeGlsaW54X2RtYV9jaGFuX3Byb2JlKHN0cnVjdCB4aWxpbnhfZG1hX2RldmljZSAqeGRl diwKPiAgCj4gIAljaGFuLT5kZXYgPSB4ZGV2LT5kZXY7Cj4gIAljaGFuLT54ZGV2ID0geGRldjsK PiAtCWNoYW4tPmhhc19zZyA9IHhkZXYtPmhhc19zZzsKPiAgCWNoYW4tPmRlc2NfcGVuZGluZ2Nv dW50ID0gMHgwOwo+ICAJY2hhbi0+ZXh0X2FkZHIgPSB4ZGV2LT5leHRfYWRkcjsKPiAgCS8qIFRo aXMgdmFyaWFibGUgZW5zdXJlcyB0aGF0IGRlc2NyaXB0b3JzIGFyZSBub3QKPiBAQCAtMjQ5Myw2 ICsyNDkxLDE1IEBAIHN0YXRpYyBpbnQgeGlsaW54X2RtYV9jaGFuX3Byb2JlKHN0cnVjdCB4aWxp bnhfZG1hX2RldmljZSAqeGRldiwKPiAgCQljaGFuLT5zdG9wX3RyYW5zZmVyID0geGlsaW54X2Rt YV9zdG9wX3RyYW5zZmVyOwo+ICAJfQo+ICAKPiArCS8qIGNoZWNrIGlmIFNHIGlzIGVuYWJsZWQg KG9ubHkgZm9yIEFYSURNQSBhbmQgQ0RNQSkgKi8KPiArCWlmICh4ZGV2LT5kbWFfY29uZmlnLT5k bWF0eXBlICE9IFhETUFfVFlQRV9WRE1BKSB7Cj4gKwkJaWYgKGRtYV9jdHJsX3JlYWQoY2hhbiwg WElMSU5YX0RNQV9SRUdfRE1BU1IpICYKPiArCQkgICAgWElMSU5YX0RNQV9ETUFTUl9TR19NQVNL KQo+ICsJCQljaGFuLT5oYXNfc2cgPSB0cnVlOwo+ICsJCWRldl9kYmcoY2hhbi0+ZGV2LCAiY2gg JWQ6IFNHICVzXG4iLCBjaGFuLT5pZCwKPiArCQkJY2hhbi0+aGFzX3NnID8gImVuYWJsZWQiIDog ImRpc2FibGVkIik7Cj4gKwl9Cj4gKwo+ICAJLyogSW5pdGlhbGl6ZSB0aGUgdGFza2xldCAqLwo+ ICAJdGFza2xldF9pbml0KCZjaGFuLT50YXNrbGV0LCB4aWxpbnhfZG1hX2RvX3Rhc2tsZXQsCj4g IAkJCSh1bnNpZ25lZCBsb25nKWNoYW4pOwo+IEBAIC0yNjMxLDcgKzI2MzgsNiBAQCBzdGF0aWMg aW50IHhpbGlueF9kbWFfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikKPiAgCQly ZXR1cm4gUFRSX0VSUih4ZGV2LT5yZWdzKTsKPiAgCj4gIAkvKiBSZXRyaWV2ZSB0aGUgRE1BIGVu Z2luZSBwcm9wZXJ0aWVzIGZyb20gdGhlIGRldmljZSB0cmVlICovCj4gLQl4ZGV2LT5oYXNfc2cg PSBvZl9wcm9wZXJ0eV9yZWFkX2Jvb2wobm9kZSwgInhsbngsaW5jbHVkZS1zZyIpOwo+ICAJeGRl di0+bWF4X2J1ZmZlcl9sZW4gPSBHRU5NQVNLKFhJTElOWF9ETUFfTUFYX1RSQU5TX0xFTl9NQVgg LSAxLCAwKTsKPiAgCj4gIAlpZiAoeGRldi0+ZG1hX2NvbmZpZy0+ZG1hdHlwZSA9PSBYRE1BX1RZ UEVfQVhJRE1BKSB7Cj4gLS0gCj4gMi4xNy4xCg==