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: Andrea Merello Message-Id: <20180802141012.19970-5-andrea.merello@gmail.com> Date: Thu, 2 Aug 2018 16:10:10 +0200 To: vkoul@kernel.org, dan.j.williams@intel.com, michal.simek@xilinx.com, appana.durga.rao@xilinx.com, dmaengine@vger.kernel.org Cc: 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, Andrea Merello List-ID: VGhlIEFYSURNQSBhbmQgQ0RNQSBIVyBjYW4gYmUgZWl0aGVyIGRpcmVjdC1hY2Nlc3Mgb3Igc2Nh dHRlci1nYXRoZXIKdmVyc2lvbi4gVGhlc2UgYXJlIFNXIGluY29tcGF0aWJsZS4KClRoZSBkcml2 ZXIgY2FuIGhhbmRsZSBib3RoIHZlcnNpb25zOiBhIERUIHByb3BlcnR5IHdhcyB1c2VkIHRvCnRl bGwgdGhlIGRyaXZlciB3aGV0aGVyIHRvIGFzc3VtZSB0aGUgSFcgaXMgaW4gc2NhdHRlci1nYXRo ZXIgbW9kZS4KClRoaXMgcGF0Y2ggbWFrZXMgdGhlIGRyaXZlciB0byBhdXRvZGV0ZWN0IHRoaXMg aW5mb3JtYXRpb24uIFRoZSBEVApwcm9wZXJ0eSBpcyBub3QgcmVxdWlyZWQgYW55bW9yZS4KCk5v IGNoYW5nZXMgZm9yIFZETUEuCgpDYzogUm9iIEhlcnJpbmcgPHJvYmgrZHRAa2VybmVsLm9yZz4K Q2M6IE1hcmsgUnV0bGFuZCA8bWFyay5ydXRsYW5kQGFybS5jb20+CkNjOiBkZXZpY2V0cmVlQHZn ZXIua2VybmVsLm9yZwpDYzogUmFkaGV5IFNoeWFtIFBhbmRleSA8cmFkaGV5LnNoeWFtLnBhbmRl eUB4aWxpbnguY29tPgpTaWduZWQtb2ZmLWJ5OiBBbmRyZWEgTWVyZWxsbyA8YW5kcmVhLm1lcmVs bG9AZ21haWwuY29tPgpSZXZpZXdlZC1ieTogUmFkaGV5IFNoeWFtIFBhbmRleSA8cmFkaGV5LnNo eWFtLnBhbmRleUB4aWxpbnguY29tPgotLS0KQ2hhbmdlcyBpbiB2MjoKCS0gYXV0b2RldGVjdCBv bmx5IGluICFWRE1BIGNhc2UKQ2hhbmdlcyBpbiB2MzoKCS0gY2MgRFQgbWFpbnRhaW5lcnMvTUwK Q2hhbmdlcyBpbiB2NDoKCS0gZml4IHR5cG9zIGluIGNvbW1pdCBtZXNzYWdlCi0tLQogZHJpdmVy cy9kbWEveGlsaW54L3hpbGlueF9kbWEuYyB8IDE0ICsrKysrKysrKystLS0tCiAxIGZpbGUgY2hh bmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2 ZXJzL2RtYS94aWxpbngveGlsaW54X2RtYS5jIGIvZHJpdmVycy9kbWEveGlsaW54L3hpbGlueF9k bWEuYwppbmRleCBiMTdmMjRlNGVjMzUuLjc4ZDBmMmY4MjI1ZSAxMDA2NDQKLS0tIGEvZHJpdmVy cy9kbWEveGlsaW54L3hpbGlueF9kbWEuYworKysgYi9kcml2ZXJzL2RtYS94aWxpbngveGlsaW54 X2RtYS5jCkBAIC04Niw2ICs4Niw3IEBACiAjZGVmaW5lIFhJTElOWF9ETUFfRE1BU1JfRE1BX0RF Q19FUlIJCUJJVCg2KQogI2RlZmluZSBYSUxJTlhfRE1BX0RNQVNSX0RNQV9TTEFWRV9FUlIJCUJJ VCg1KQogI2RlZmluZSBYSUxJTlhfRE1BX0RNQVNSX0RNQV9JTlRfRVJSCQlCSVQoNCkKKyNkZWZp bmUgWElMSU5YX0RNQV9ETUFTUl9TR19NQVNLCQlCSVQoMykKICNkZWZpbmUgWElMSU5YX0RNQV9E TUFTUl9JRExFCQkJQklUKDEpCiAjZGVmaW5lIFhJTElOWF9ETUFfRE1BU1JfSEFMVEVECQlCSVQo MCkKICNkZWZpbmUgWElMSU5YX0RNQV9ETUFTUl9ERUxBWV9NQVNLCQlHRU5NQVNLKDMxLCAyNCkK QEAgLTQwNyw3ICs0MDgsNiBAQCBzdHJ1Y3QgeGlsaW54X2RtYV9jb25maWcgewogICogQGRldjog RGV2aWNlIFN0cnVjdHVyZQogICogQGNvbW1vbjogRE1BIGRldmljZSBzdHJ1Y3R1cmUKICAqIEBj aGFuOiBEcml2ZXIgc3BlY2lmaWMgRE1BIGNoYW5uZWwKLSAqIEBoYXNfc2c6IFNwZWNpZmllcyB3 aGV0aGVyIFNjYXR0ZXItR2F0aGVyIGlzIHByZXNlbnQgb3Igbm90CiAgKiBAbWNkbWE6IFNwZWNp ZmllcyB3aGV0aGVyIE11bHRpLUNoYW5uZWwgaXMgcHJlc2VudCBvciBub3QKICAqIEBmbHVzaF9v bl9mc3luYzogRmx1c2ggb24gZnJhbWUgc3luYwogICogQGV4dF9hZGRyOiBJbmRpY2F0ZXMgNjQg Yml0IGFkZHJlc3NpbmcgaXMgc3VwcG9ydGVkIGJ5IGRtYSBkZXZpY2UKQEAgLTQyNyw3ICs0Mjcs NiBAQCBzdHJ1Y3QgeGlsaW54X2RtYV9kZXZpY2UgewogCXN0cnVjdCBkZXZpY2UgKmRldjsKIAlz dHJ1Y3QgZG1hX2RldmljZSBjb21tb247CiAJc3RydWN0IHhpbGlueF9kbWFfY2hhbiAqY2hhbltY SUxJTlhfRE1BX01BWF9DSEFOU19QRVJfREVWSUNFXTsKLQlib29sIGhhc19zZzsKIAlib29sIG1j ZG1hOwogCXUzMiBmbHVzaF9vbl9mc3luYzsKIAlib29sIGV4dF9hZGRyOwpAQCAtMjQwMCw3ICsy Mzk5LDYgQEAgc3RhdGljIGludCB4aWxpbnhfZG1hX2NoYW5fcHJvYmUoc3RydWN0IHhpbGlueF9k bWFfZGV2aWNlICp4ZGV2LAogCiAJY2hhbi0+ZGV2ID0geGRldi0+ZGV2OwogCWNoYW4tPnhkZXYg PSB4ZGV2OwotCWNoYW4tPmhhc19zZyA9IHhkZXYtPmhhc19zZzsKIAljaGFuLT5kZXNjX3BlbmRp bmdjb3VudCA9IDB4MDsKIAljaGFuLT5leHRfYWRkciA9IHhkZXYtPmV4dF9hZGRyOwogCS8qIFRo aXMgdmFyaWFibGUgZW5zdXJlcyB0aGF0IGRlc2NyaXB0b3JzIGFyZSBub3QKQEAgLTI0OTMsNiAr MjQ5MSwxNSBAQCBzdGF0aWMgaW50IHhpbGlueF9kbWFfY2hhbl9wcm9iZShzdHJ1Y3QgeGlsaW54 X2RtYV9kZXZpY2UgKnhkZXYsCiAJCWNoYW4tPnN0b3BfdHJhbnNmZXIgPSB4aWxpbnhfZG1hX3N0 b3BfdHJhbnNmZXI7CiAJfQogCisJLyogY2hlY2sgaWYgU0cgaXMgZW5hYmxlZCAob25seSBmb3Ig QVhJRE1BIGFuZCBDRE1BKSAqLworCWlmICh4ZGV2LT5kbWFfY29uZmlnLT5kbWF0eXBlICE9IFhE TUFfVFlQRV9WRE1BKSB7CisJCWlmIChkbWFfY3RybF9yZWFkKGNoYW4sIFhJTElOWF9ETUFfUkVH X0RNQVNSKSAmCisJCSAgICBYSUxJTlhfRE1BX0RNQVNSX1NHX01BU0spCisJCQljaGFuLT5oYXNf c2cgPSB0cnVlOworCQlkZXZfZGJnKGNoYW4tPmRldiwgImNoICVkOiBTRyAlc1xuIiwgY2hhbi0+ aWQsCisJCQljaGFuLT5oYXNfc2cgPyAiZW5hYmxlZCIgOiAiZGlzYWJsZWQiKTsKKwl9CisKIAkv KiBJbml0aWFsaXplIHRoZSB0YXNrbGV0ICovCiAJdGFza2xldF9pbml0KCZjaGFuLT50YXNrbGV0 LCB4aWxpbnhfZG1hX2RvX3Rhc2tsZXQsCiAJCQkodW5zaWduZWQgbG9uZyljaGFuKTsKQEAgLTI2 MzEsNyArMjYzOCw2IEBAIHN0YXRpYyBpbnQgeGlsaW54X2RtYV9wcm9iZShzdHJ1Y3QgcGxhdGZv cm1fZGV2aWNlICpwZGV2KQogCQlyZXR1cm4gUFRSX0VSUih4ZGV2LT5yZWdzKTsKIAogCS8qIFJl dHJpZXZlIHRoZSBETUEgZW5naW5lIHByb3BlcnRpZXMgZnJvbSB0aGUgZGV2aWNlIHRyZWUgKi8K LQl4ZGV2LT5oYXNfc2cgPSBvZl9wcm9wZXJ0eV9yZWFkX2Jvb2wobm9kZSwgInhsbngsaW5jbHVk ZS1zZyIpOwogCXhkZXYtPm1heF9idWZmZXJfbGVuID0gR0VOTUFTSyhYSUxJTlhfRE1BX01BWF9U UkFOU19MRU5fTUFYIC0gMSwgMCk7CiAKIAlpZiAoeGRldi0+ZG1hX2NvbmZpZy0+ZG1hdHlwZSA9 PSBYRE1BX1RZUEVfQVhJRE1BKSB7Cg==