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,1/5] dmaengine: imx-sdma: add clock ratio 1:1 check From: Lucas Stach Message-Id: <1548409366.28802.39.camel@pengutronix.de> Date: Fri, 25 Jan 2019 10:42:46 +0100 To: "Angus Ainslie (Purism)" Cc: angus.ainslie@puri.sm, Vinod Koul , dmaengine@vger.kernel.org, NXP Linux Team , Pengutronix Kernel Team , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Daniel Baluta List-ID: QW0gRG9ubmVyc3RhZywgZGVuIDI0LjAxLjIwMTksIDE5OjU1IC0wNzAwIHNjaHJpZWIgQW5ndXMg QWluc2xpZSAoUHVyaXNtKToKPiBPbiBpLm14OCBtc2NhbGUgQjAgY2hpcCwgQUhCL1NETUEgY2xv Y2sgcmF0aW8gMjoxIGNhbid0IGJlIHN1cHBvcnR0ZWQsCj4gc2luY2UgU0RNQSBjbG9jayByYXRp byBoYXMgdG8gYmUgaW5jcmVhc2VkIHRvIDI1ME1oeiwgQUhCIGNhbid0IHJlYWNoCj4gdG8gNTAw TWh6LCBzbyB1c2UgMToxIGluc3RlYWQuCj4gCj4gPiBCYXNlZCBvbiBOWFAgY29tbWl0IE1MSy0x Njg0MS0xIGJ5IFJvYmluIEdvbmcgPHlpYmluLmdvbmdAbnhwLmNvbT4KPiAKPiA+IFNpZ25lZC1v ZmYtYnk6IEFuZ3VzIEFpbnNsaWUgKFB1cmlzbSkgPGFuZ3VzQGFra2VhLmNhPgo+IC0tLQo+IMKg ZHJpdmVycy9kbWEvaW14LXNkbWEuYyB8IDIxICsrKysrKysrKysrKysrKysrLS0tLQo+IMKgMSBm aWxlIGNoYW5nZWQsIDE3IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAt LWdpdCBhL2RyaXZlcnMvZG1hL2lteC1zZG1hLmMgYi9kcml2ZXJzL2RtYS9pbXgtc2RtYS5jCj4g aW5kZXggMGIzYTY3ZmY4ZTgyLi41ZTVlZjBiNWE5NzMgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9k bWEvaW14LXNkbWEuYwo+ICsrKyBiL2RyaXZlcnMvZG1hL2lteC1zZG1hLmMKPiBAQCAtNDQwLDYg KzQ0MCw4IEBAIHN0cnVjdCBzZG1hX2VuZ2luZSB7Cj4gPiA+IMKgCXVuc2lnbmVkIGludAkJCWly cTsKPiA+ID4gwqAJZG1hX2FkZHJfdAkJCWJkMF9waHlzOwo+ID4gPiDCoAlzdHJ1Y3Qgc2RtYV9i dWZmZXJfZGVzY3JpcHRvcgkqYmQwOwo+ID4gKwkvKiBjbG9jayByYXRpbyBmb3IgQUhCOlNETUEg Y29yZS4gMToxIGlzIDEsIDI6MSBpcyAwKi8KPiA+ID4gKwlib29sCQkJCWNsa19yYXRpbzsKPiDC oH07Cj4gwqAKPiDCoHN0YXRpYyBpbnQgc2RtYV9jb25maWdfd3JpdGUoc3RydWN0IGRtYV9jaGFu ICpjaGFuLAo+IEBAIC02NjIsOCArNjY0LDE0IEBAIHN0YXRpYyBpbnQgc2RtYV9ydW5fY2hhbm5l bDAoc3RydWN0IHNkbWFfZW5naW5lICpzZG1hKQo+ID4gwqAJCWRldl9lcnIoc2RtYS0+ZGV2LCAi VGltZW91dCB3YWl0aW5nIGZvciBDSDAgcmVhZHlcbiIpOwo+IMKgCj4gPiDCoAkvKiBTZXQgYml0 cyBvZiBDT05GSUcgcmVnaXN0ZXIgd2l0aCBkeW5hbWljIGNvbnRleHQgc3dpdGNoaW5nICovCj4g PiAtCWlmIChyZWFkbChzZG1hLT5yZWdzICsgU0RNQV9IX0NPTkZJRykgPT0gMCkKPiA+IC0JCXdy aXRlbF9yZWxheGVkKFNETUFfSF9DT05GSUdfQ1NNLCBzZG1hLT5yZWdzICsgU0RNQV9IX0NPTkZJ Ryk7Cj4gKwlpZiAoKHJlYWRsKHNkbWEtPnJlZ3MgKyBTRE1BX0hfQ09ORklHKSAmIH5TRE1BX0hf Q09ORklHX0FDUikgPT0gMCkgewoKVGhlIGludGVudGlvbiBvZiB0aGlzIGNvZGUgd2FzIHByb2Jh Ymx5IHRvIHNldCB0aGUgQ1NNIGJpdCBpZiB0aGV5CndlcmVuJ3Qgc2V0IGJlZm9yZSwgc28gbWFz a2luZyBvdXQgaW5kaXZpZHVhbCBiaXRzIGZyb20gdGhlIHJlZ2lzdGVyCmFuZCByaXNraW5nIHRv IHNraXAgdGhpcyB3aGVuIG9uZSBvZiB0aGUgb3RoZXIgYml0cyB3YXMgc2V0IGRvZXNuJ3QKc2Vl bSByaWdodC4KCkkgZ3Vlc3MgdGhlIHdob2xlIGJsb2NrIGNhbiBiZSBzaW1wbGlmaWVkIHRvOgoK cmVnID0gcmVhZGwoc2RtYS0+cmVncyArIFNETUFfSF9DT05GSUcpOwppZiAoKHJlZyAmIFNETUFf SF9DT05GSUdfQ1NNKSAhPSBTRE1BX0hfQ09ORklHX0NTTSkKCXJlZyB8PSBTRE1BX0hfQ09ORklH X0NTTTsKd3JpdGVsX3JlbGF4ZWQocmVnLCBzZG1hLT5yZWdzICsgU0RNQV9IX0NPTkZJRyk7CgpS ZWdhcmRzLApMdWNhcwoKPiArCQlyZWcgPSBTRE1BX0hfQ09ORklHX0NTTTsKPiArCj4gPiArCQlp ZiAoc2RtYS0+Y2xrX3JhdGlvKQo+ID4gKwkJCXJlZyB8PSBTRE1BX0hfQ09ORklHX0FDUjsKPiAr Cj4gPiArCQl3cml0ZWxfcmVsYXhlZChyZWcsIHNkbWEtPnJlZ3MgKyBTRE1BX0hfQ09ORklHKTsK PiA+ICsJfQo+IMKgCj4gPiDCoAlyZXR1cm4gcmV0Owo+IMKgfQo+IEBAIC0xODQwLDYgKzE4NDgs OSBAQCBzdGF0aWMgaW50IHNkbWFfaW5pdChzdHJ1Y3Qgc2RtYV9lbmdpbmUgKnNkbWEpCj4gPiDC oAlpZiAocmV0KQo+ID4gwqAJCWdvdG8gZGlzYWJsZV9jbGtfaXBnOwo+IMKgCj4gPiArCWlmIChj bGtfZ2V0X3JhdGUoc2RtYS0+Y2xrX2FoYikgPT0gY2xrX2dldF9yYXRlKHNkbWEtPmNsa19pcGcp KQo+ID4gKwkJc2RtYS0+Y2xrX3JhdGlvID0gMTsKPiArCj4gPiDCoAkvKiBCZSBzdXJlIFNETUEg aGFzIG5vdCBzdGFydGVkIHlldCAqLwo+ID4gwqAJd3JpdGVsX3JlbGF4ZWQoMCwgc2RtYS0+cmVn cyArIFNETUFfSF9DMFBUUik7Cj4gwqAKPiBAQCAtMTg4MCw4ICsxODkxLDEwIEBAIHN0YXRpYyBp bnQgc2RtYV9pbml0KHN0cnVjdCBzZG1hX2VuZ2luZSAqc2RtYSkKPiA+IMKgCXdyaXRlbF9yZWxh eGVkKDB4NDA1MCwgc2RtYS0+cmVncyArIFNETUFfQ0hOMEFERFIpOwo+IMKgCj4gPiDCoAkvKiBT ZXQgYml0cyBvZiBDT05GSUcgcmVnaXN0ZXIgYnV0IHdpdGggc3RhdGljIGNvbnRleHQgc3dpdGNo aW5nICovCj4gPiAtCS8qIEZJWE1FOiBDaGVjayB3aGV0aGVyIHRvIHNldCBBQ1IgYml0IGRlcGVu ZGluZyBvbiBjbG9jayByYXRpb3MgKi8KPiA+IC0Jd3JpdGVsX3JlbGF4ZWQoMCwgc2RtYS0+cmVn cyArIFNETUFfSF9DT05GSUcpOwo+ID4gKwlpZiAoc2RtYS0+Y2xrX3JhdGlvKQo+ID4gKwkJd3Jp dGVsX3JlbGF4ZWQoU0RNQV9IX0NPTkZJR19BQ1IsIHNkbWEtPnJlZ3MgKyBTRE1BX0hfQ09ORklH KTsKPiA+ICsJZWxzZQo+ID4gKwkJd3JpdGVsX3JlbGF4ZWQoMCwgc2RtYS0+cmVncyArIFNETUFf SF9DT05GSUcpOwo+IMKgCj4gPiDCoAl3cml0ZWxfcmVsYXhlZChjY2JfcGh5cywgc2RtYS0+cmVn cyArIFNETUFfSF9DMFBUUik7Cj4K