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: [5/8,v2] dma: k3dma: Add support to dma_avail_chan From: John Stultz Message-Id: <1546635388-13795-6-git-send-email-john.stultz@linaro.org> Date: Fri, 4 Jan 2019 12:56:25 -0800 To: lkml Cc: Li Yu , Dan Williams , Vinod Koul , Tanglei Han , Zhuangluan Su , Ryan Grachek , Manivannan Sadhasivam , Guodong Xu , dmaengine@vger.kernel.org, John Stultz List-ID: RnJvbTogTGkgWXUgPGxpeXU2NUBoaXNpbGljb24uY29tPgoKZG1hX2F2YWlsX2NoYW4gYXMgYSBw cm9wZXJ0eSBmb3IgazNkbWEsIGl0IGRlZmluZXMgYXZhaWxhYmxlIGRtYQpjaGFubmVscyB3aGlj aCBhIG5vbi1zZWN1cmUgbW9kZSBkcml2ZXIgY2FuIHVzZS4KCk9uZSBzYW1wbGUgdXNhZ2Ugb2Yg dGhpcyBpcyBpbiBIaTM2NjAgU29DLiBETUEgY2hhbm5lbCAwIGlzCnJlc2VydmVkIHRvIGxwbTMs IHdoaWNoIGlzIGEgY29wcm9jZXNzb3IgZm9yIHBvd2VyIG1hbmFnZW1lbnQuIFNvCmFzIGEgcmVz dWx0LCBhbnkgcmVxdWVzdCBpbiBrZXJuZWwgKHdoaWNoIHJ1bnMgb24gbWFpbiBwcm9jZXNzb3IK YW5kIGluIG5vbi1zZWN1cmUgbW9kZSkgc2hvdWxkIHN0YXJ0IGZyb20gYXQgbGVhc3QgY2hhbm5l bCAxLgoKQ2M6IERhbiBXaWxsaWFtcyA8ZGFuLmoud2lsbGlhbXNAaW50ZWwuY29tPgpDYzogVmlu b2QgS291bCA8dmtvdWxAa2VybmVsLm9yZz4KQ2M6IFRhbmdsZWkgSGFuIDxoYW50YW5nbGVpQGh1 YXdlaS5jb20+CkNjOiBaaHVhbmdsdWFuIFN1IDxzdXpodWFuZ2x1YW5AaGlzaWxpY29uLmNvbT4K Q2M6IFJ5YW4gR3JhY2hlayA8cnlhbkBlZGl0ZWQudXM+CkNjOiBNYW5pdmFubmFuIFNhZGhhc2l2 YW0gPG1hbml2YW5uYW4uc2FkaGFzaXZhbUBsaW5hcm8ub3JnPgpDYzogR3VvZG9uZyBYdSA8Z3Vv ZG9uZy54dUBsaW5hcm8ub3JnPgpDYzogZG1hZW5naW5lQHZnZXIua2VybmVsLm9yZwpTaWduZWQt b2ZmLWJ5OiBMaSBZdSA8bGl5dTY1QGhpc2lsaWNvbi5jb20+Cltqc3R1bHR6OiBSZXdvcmtlZCB0 byB1c2UgYSBjaGFubmVsIG1hc2tdClNpZ25lZC1vZmYtYnk6IEpvaG4gU3R1bHR6IDxqb2huLnN0 dWx0ekBsaW5hcm8ub3JnPgotLS0KIGRyaXZlcnMvZG1hL2szZG1hLmMgfCAyMCArKysrKysrKysr KysrKysrKysrLQogMSBmaWxlIGNoYW5nZWQsIDE5IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24o LSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2RtYS9rM2RtYS5jIGIvZHJpdmVycy9kbWEvazNkbWEu YwppbmRleCBiMjA2MGJmLi40MzEwOTRiIDEwMDY0NAotLS0gYS9kcml2ZXJzL2RtYS9rM2RtYS5j CisrKyBiL2RyaXZlcnMvZG1hL2szZG1hLmMKQEAgLTExMSw2ICsxMTEsNyBAQCBzdHJ1Y3QgazNf ZG1hX2RldiB7CiAJc3RydWN0IGRtYV9wb29sCQkqcG9vbDsKIAl1MzIJCQlkbWFfY2hhbm5lbHM7 CiAJdTMyCQkJZG1hX3JlcXVlc3RzOworCXUzMgkJCWRtYV9hdmFpbF9jaGFuOwogCXVuc2lnbmVk IGludAkJaXJxOwogfTsKIApAQCAtMzE4LDYgKzMxOSw5IEBAIHN0YXRpYyB2b2lkIGszX2RtYV90 YXNrbGV0KHVuc2lnbmVkIGxvbmcgYXJnKQogCS8qIGNoZWNrIG5ldyBjaGFubmVsIHJlcXVlc3Qg aW4gZC0+Y2hhbl9wZW5kaW5nICovCiAJc3Bpbl9sb2NrX2lycSgmZC0+bG9jayk7CiAJZm9yIChw Y2ggPSAwOyBwY2ggPCBkLT5kbWFfY2hhbm5lbHM7IHBjaCsrKSB7CisJCWlmICghKGQtPmRtYV9h dmFpbF9jaGFuICYgKDE8PHBjaCkpKQorCQkJY29udGludWU7CisKIAkJcCA9ICZkLT5waHlbcGNo XTsKIAogCQlpZiAocC0+dmNoYW4gPT0gTlVMTCAmJiAhbGlzdF9lbXB0eSgmZC0+Y2hhbl9wZW5k aW5nKSkgewpAQCAtMzM1LDYgKzMzOSw5IEBAIHN0YXRpYyB2b2lkIGszX2RtYV90YXNrbGV0KHVu c2lnbmVkIGxvbmcgYXJnKQogCXNwaW5fdW5sb2NrX2lycSgmZC0+bG9jayk7CiAKIAlmb3IgKHBj aCA9IDA7IHBjaCA8IGQtPmRtYV9jaGFubmVsczsgcGNoKyspIHsKKwkJaWYgKCEoZC0+ZG1hX2F2 YWlsX2NoYW4gJiAoMTw8cGNoKSkpCisJCQljb250aW51ZTsKKwogCQlpZiAocGNoX2FsbG9jICYg KDEgPDwgcGNoKSkgewogCQkJcCA9ICZkLT5waHlbcGNoXTsKIAkJCWMgPSBwLT52Y2hhbjsKQEAg LTg1NSw2ICs4NjIsMTMgQEAgc3RhdGljIGludCBrM19kbWFfcHJvYmUoc3RydWN0IHBsYXRmb3Jt X2RldmljZSAqb3ApCiAJCQkJImRtYS1jaGFubmVscyIsICZkLT5kbWFfY2hhbm5lbHMpOwogCQlv Zl9wcm9wZXJ0eV9yZWFkX3UzMigoJm9wLT5kZXYpLT5vZl9ub2RlLAogCQkJCSJkbWEtcmVxdWVz dHMiLCAmZC0+ZG1hX3JlcXVlc3RzKTsKKwkJcmV0ID0gb2ZfcHJvcGVydHlfcmVhZF91MzIoKCZv cC0+ZGV2KS0+b2Zfbm9kZSwKKwkJCQkiZG1hLWF2YWlsLWNoYW4iLCAmZC0+ZG1hX2F2YWlsX2No YW4pOworCQlpZiAocmV0KSB7CisJCQlkZXZfd2Fybigmb3AtPmRldiwKKwkJCQkgImRtYS1hdmFp bC1jaGFuIGRvZXNuJ3QgZXhpc3QsIGNvbnNpZGVyaW5nIGFsbCBhcyBhdmFpbGFibGUuXG4iKTsK KwkJCWQtPmRtYV9hdmFpbF9jaGFuID0gKHUzMil+MFVMOworCQl9CiAJfQogCiAJaWYgKCEoc29j X2RhdGEtPmZsYWdzICYgSzNfRkxBR19OT0NMSykpIHsKQEAgLTg4Niw4ICs5MDAsMTIgQEAgc3Rh dGljIGludCBrM19kbWFfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqb3ApCiAJCXJldHVy biAtRU5PTUVNOwogCiAJZm9yIChpID0gMDsgaSA8IGQtPmRtYV9jaGFubmVsczsgaSsrKSB7Ci0J CXN0cnVjdCBrM19kbWFfcGh5ICpwID0gJmQtPnBoeVtpXTsKKwkJc3RydWN0IGszX2RtYV9waHkg KnA7CisKKwkJaWYgKCEoZC0+ZG1hX2F2YWlsX2NoYW4gJiAoMTw8aSkpKQorCQkJY29udGludWU7 CiAKKwkJcCA9ICZkLT5waHlbaV07CiAJCXAtPmlkeCA9IGk7CiAJCXAtPmJhc2UgPSBkLT5iYXNl ICsgaSAqIDB4NDA7CiAJfQo=