From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Deucher Subject: [PATCH 5/8] ASoC: AMD: DMA driver changes for Stoney Platform Date: Fri, 23 Jun 2017 12:35:03 -0400 Message-ID: <1498235706-31111-6-git-send-email-alexander.deucher@amd.com> References: <1498235706-31111-1-git-send-email-alexander.deucher@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1498235706-31111-1-git-send-email-alexander.deucher@amd.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org, amd-gfx@lists.freedesktop.org, alsa-devel@alsa-project.org, airlied@gmail.com, broonie@kernel.org, Vijendar.Mukunda@amd.com, rajeevkumar.linux@gmail.com Cc: Alex Deucher , lgirdwood@gmail.com, perex@perex.cz List-Id: dri-devel@lists.freedesktop.org RnJvbTogVmlqZW5kYXIgTXVrdW5kYSA8VmlqZW5kYXIuTXVrdW5kYUBhbWQuY29tPgoKQWRkZWQg RE1BIGRyaXZlciBjaGFuZ2VzIGZvciBTdG9uZXkgcGxhdGZvcm0uCkJlbG93IGFyZSB0aGUga2V5 IGRpZmZlcmVuY2VzIGJldHdlZW4gU3RvbmV5IGFuZCBDWjoKLSBNZW1vcnkgR2F0aW5nIGlzIGRp c2FibGVkCi0gU1JBTSBCYW5rcyB3b24ndCBiZSB0dXJuZWQgb2ZmCi0gTm8gT2YgU1JBTSBCYW5r cyByZWR1Y2VkIHRvIDYKLSBEQUdCIEdhcmxpYyBJbnRlcmZhY2UgdXNlZAotIDE2IGJpdCByZXNv bHV0aW9uIGlzIHN1cHBvcnRlZC4KLSBTUkFNIGJhbmsgMSAmIFNSQU0gYmFuayAyIHdpbGwgYmUg dXNlZCBmb3IgcGxheWJhY2sgc2NlbmFyaW8uCi0gU1JBTSBCYW5rIDMgJiBTUkFNIEJhbmsgNCB3 aWxsIGJlIHVzZWQgZm9yIENhcHR1cmUgc2NlbmFyaW8uCgpSZXZpZXdlZC1ieTogQWxleCBEZXVj aGVyIDxhbGV4YW5kZXIuZGV1Y2hlckBhbWQuY29tPgpTaWduZWQtb2ZmLWJ5OiBWaWplbmRhciBN dWt1bmRhIDxWaWplbmRhci5NdWt1bmRhQGFtZC5jb20+ClNpZ25lZC1vZmYtYnk6IEFsZXggRGV1 Y2hlciA8YWxleGFuZGVyLmRldWNoZXJAYW1kLmNvbT4KLS0tCiBzb3VuZC9zb2MvYW1kL2FjcC1w Y20tZG1hLmMgfCA4MSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0t LS0KIHNvdW5kL3NvYy9hbWQvYWNwLmggICAgICAgICB8ICAyICsrCiAyIGZpbGVzIGNoYW5nZWQs IDYxIGluc2VydGlvbnMoKyksIDIyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NvdW5kL3Nv Yy9hbWQvYWNwLXBjbS1kbWEuYyBiL3NvdW5kL3NvYy9hbWQvYWNwLXBjbS1kbWEuYwppbmRleCBl NDhhZTVkLi41YjVlOTVkIDEwMDY0NAotLS0gYS9zb3VuZC9zb2MvYW1kL2FjcC1wY20tZG1hLmMK KysrIGIvc291bmQvc29jL2FtZC9hY3AtcGNtLWRtYS5jCkBAIC0xMzksOCArMTM5LDggQEAgc3Rh dGljIHZvaWQgY29uZmlnX2RtYV9kZXNjcmlwdG9yX2luX3NyYW0odm9pZCBfX2lvbWVtICphY3Bf bW1pbywKICAqIHN5c3RlbSBtZW1vcnkgPC0+IEFDUCBTUkFNCiAgKi8KIHN0YXRpYyB2b2lkIHNl dF9hY3Bfc3lzbWVtX2RtYV9kZXNjcmlwdG9ycyh2b2lkIF9faW9tZW0gKmFjcF9tbWlvLAotCQkJ CQkgICB1MzIgc2l6ZSwgaW50IGRpcmVjdGlvbiwKLQkJCQkJICAgdTMyIHB0ZV9vZmZzZXQpCisJ CQkJCXUzMiBzaXplLCBpbnQgZGlyZWN0aW9uLAorCQkJCQl1MzIgcHRlX29mZnNldCwgdTMyIGFz aWNfdHlwZSkKIHsKIAl1MTYgaTsKIAl1MTYgZG1hX2RzY3JfaWR4ID0gUExBWUJBQ0tfU1RBUlRf RE1BX0RFU0NSX0NIMTI7CkBAIC0xNTQsMjAgKzE1NCwzOCBAQCBzdGF0aWMgdm9pZCBzZXRfYWNw X3N5c21lbV9kbWFfZGVzY3JpcHRvcnModm9pZCBfX2lvbWVtICphY3BfbW1pbywKIAkJCQkJKHNp emUgLyAyKSAtIChpICogKHNpemUvMikpOwogCQkJZG1hZHNjcltpXS5zcmMgPSBBQ1BfSU5URVJO QUxfQVBFUlRVUkVfV0lORE9XXzBfQUREUkVTUwogCQkJCSsgKHB0ZV9vZmZzZXQgKiBTWl80Sykg KyAoaSAqIChzaXplLzIpKTsKLQkJCWRtYWRzY3JbaV0ueGZlcl92YWwgfD0KLQkJCShBQ1BfRE1B X0FUVFJJQlVURVNfREFHQl9PTklPTl9UT19TSEFSRURNRU0gPDwgMTYpIHwKLQkJCShzaXplIC8g Mik7CisJCQlpZiAoYXNpY190eXBlID09IENISVBfU1RPTkVZKSB7CisJCQkJZG1hZHNjcltpXS54 ZmVyX3ZhbCB8PQorCQkJCShBQ1BfRE1BX0FUVFJJQlVURVNfREFHQl9HQVJMSUNfVE9fU0hBUkVE TUVNICA8PCAxNikgfAorCQkJCShzaXplIC8gMik7CisJCQl9IGVsc2UgeworCQkJCWRtYWRzY3Jb aV0ueGZlcl92YWwgfD0KKwkJCQkoQUNQX0RNQV9BVFRSSUJVVEVTX0RBR0JfT05JT05fVE9fU0hB UkVETUVNICA8PCAxNikgfAorCQkJCShzaXplIC8gMik7CisJCQl9CiAJCX0gZWxzZSB7CiAJCQlk bWFfZHNjcl9pZHggPSBDQVBUVVJFX1NUQVJUX0RNQV9ERVNDUl9DSDE0ICsgaTsKLQkJCWRtYWRz Y3JbaV0uc3JjID0gQUNQX1NIQVJFRF9SQU1fQkFOS181X0FERFJFU1MgKwotCQkJCQkoaSAqIChz aXplLzIpKTsKLQkJCWRtYWRzY3JbaV0uZGVzdCA9IEFDUF9JTlRFUk5BTF9BUEVSVFVSRV9XSU5E T1dfMF9BRERSRVNTCi0JCQkJCQkrIChwdGVfb2Zmc2V0ICogU1pfNEspICsKLQkJCQkJCShpICog KHNpemUvMikpOwotCQkJZG1hZHNjcltpXS54ZmVyX3ZhbCB8PQotCQkJQklUKDIyKSB8Ci0JCQko QUNQX0RNQV9BVFRSSUJVVEVTX1NIQVJFRE1FTV9UT19EQUdCX09OSU9OIDw8IDE2KSB8Ci0JCQko c2l6ZSAvIDIpOworCQkJaWYgKGFzaWNfdHlwZSA9PSBDSElQX1NUT05FWSkgeworCQkJCWRtYWRz Y3JbaV0uc3JjID0gQUNQX1NIQVJFRF9SQU1fQkFOS18zX0FERFJFU1MgKworCQkJCShpICogKHNp emUvMikpOworCQkJCWRtYWRzY3JbaV0uZGVzdCA9CisJCQkJQUNQX0lOVEVSTkFMX0FQRVJUVVJF X1dJTkRPV18wX0FERFJFU1MgKworCQkJCShwdGVfb2Zmc2V0ICogU1pfNEspICsgKGkgKiAoc2l6 ZS8yKSk7CisJCQkJZG1hZHNjcltpXS54ZmVyX3ZhbCB8PQorCQkJCUJJVCgyMikgfAorCQkJCShB Q1BfRE1BX0FUVFJJQlVURVNfU0hBUkVEX01FTV9UT19EQUdCX0dBUkxJQyA8PCAxNikgfAorCQkJ CShzaXplIC8gMik7CisJCQl9IGVsc2UgeworCQkJCWRtYWRzY3JbaV0uc3JjID0gQUNQX1NIQVJF RF9SQU1fQkFOS181X0FERFJFU1MgKworCQkJCShpICogKHNpemUvMikpOworCQkJCWRtYWRzY3Jb aV0uZGVzdCA9CisJCQkJIEFDUF9JTlRFUk5BTF9BUEVSVFVSRV9XSU5ET1dfMF9BRERSRVNTICsK KwkJCQkocHRlX29mZnNldCAqIFNaXzRLKSArIChpICogKHNpemUvMikpOworCQkJCWRtYWRzY3Jb aV0ueGZlcl92YWwgfD0KKwkJCQlCSVQoMjIpIHwKKwkJCQkoQUNQX0RNQV9BVFRSSUJVVEVTX1NI QVJFRE1FTV9UT19EQUdCX09OSU9OIDw8IDE2KSB8CisJCQkJKHNpemUgLyAyKTsKKwkJCX0KIAkJ fQogCQljb25maWdfZG1hX2Rlc2NyaXB0b3JfaW5fc3JhbShhY3BfbW1pbywgZG1hX2RzY3JfaWR4 LAogCQkJCQkJJmRtYWRzY3JbaV0pOwpAQCAtMTg4LDcgKzIwNiw4IEBAIHN0YXRpYyB2b2lkIHNl dF9hY3Bfc3lzbWVtX2RtYV9kZXNjcmlwdG9ycyh2b2lkIF9faW9tZW0gKmFjcF9tbWlvLAogICog QUNQIFNSQU0gPC0+IEkyUwogICovCiBzdGF0aWMgdm9pZCBzZXRfYWNwX3RvX2kyc19kbWFfZGVz Y3JpcHRvcnModm9pZCBfX2lvbWVtICphY3BfbW1pbywKLQkJCQkJICAgdTMyIHNpemUsIGludCBk aXJlY3Rpb24pCisJCQkJCXUzMiBzaXplLCBpbnQgZGlyZWN0aW9uLAorCQkJCQl1MzIgYXNpY190 eXBlKQogewogCiAJdTE2IGk7CkBAIC0yMDksOCArMjI4LDE1IEBAIHN0YXRpYyB2b2lkIHNldF9h Y3BfdG9faTJzX2RtYV9kZXNjcmlwdG9ycyh2b2lkIF9faW9tZW0gKmFjcF9tbWlvLAogCQkJZG1h X2RzY3JfaWR4ID0gQ0FQVFVSRV9TVEFSVF9ETUFfREVTQ1JfQ0gxNSArIGk7CiAJCQkvKiBkbWFk c2NyW2ldLnNyYyBpcyB1bnVzZWQgYnkgaGFyZHdhcmUuICovCiAJCQlkbWFkc2NyW2ldLnNyYyA9 IDA7Ci0JCQlkbWFkc2NyW2ldLmRlc3QgPSBBQ1BfU0hBUkVEX1JBTV9CQU5LXzVfQUREUkVTUyAr CisJCQlpZiAoYXNpY190eXBlID09IENISVBfU1RPTkVZKSB7CisJCQkJZG1hZHNjcltpXS5kZXN0 ID0KKwkJCQkJIEFDUF9TSEFSRURfUkFNX0JBTktfM19BRERSRVNTICsKIAkJCQkJKGkgKiAoc2l6 ZSAvIDIpKTsKKwkJCX0gZWxzZSB7CisJCQkJZG1hZHNjcltpXS5kZXN0ID0KKwkJCQkJIEFDUF9T SEFSRURfUkFNX0JBTktfNV9BRERSRVNTICsKKwkJCQkJKGkgKiAoc2l6ZSAvIDIpKTsKKwkJCX0K IAkJCWRtYWRzY3JbaV0ueGZlcl92YWwgfD0gQklUKDIyKSB8CiAJCQkJCShGUk9NX0FDUF9JMlNf MSA8PCAxNikgfCAoc2l6ZSAvIDIpOwogCQl9CkBAIC0yNjYsNyArMjkyLDggQEAgc3RhdGljIHZv aWQgYWNwX3B0ZV9jb25maWcodm9pZCBfX2lvbWVtICphY3BfbW1pbywgc3RydWN0IHBhZ2UgKnBn LAogfQogCiBzdGF0aWMgdm9pZCBjb25maWdfYWNwX2RtYSh2b2lkIF9faW9tZW0gKmFjcF9tbWlv LAotCQkJICAgc3RydWN0IGF1ZGlvX3N1YnN0cmVhbV9kYXRhICphdWRpb19jb25maWcpCisJCQkJ c3RydWN0IGF1ZGlvX3N1YnN0cmVhbV9kYXRhICphdWRpb19jb25maWcsCisJCQkJdTMyIGFzaWNf dHlwZSkKIHsKIAl1MzIgcHRlX29mZnNldDsKIApAQCAtMjgwLDExICszMDcsMTIgQEAgc3RhdGlj IHZvaWQgY29uZmlnX2FjcF9kbWEodm9pZCBfX2lvbWVtICphY3BfbW1pbywKIAogCS8qIENvbmZp Z3VyZSBTeXN0ZW0gbWVtb3J5IDwtPiBBQ1AgU1JBTSBETUEgZGVzY3JpcHRvcnMgKi8KIAlzZXRf YWNwX3N5c21lbV9kbWFfZGVzY3JpcHRvcnMoYWNwX21taW8sIGF1ZGlvX2NvbmZpZy0+c2l6ZSwK LQkJCQkgICAgICAgYXVkaW9fY29uZmlnLT5kaXJlY3Rpb24sIHB0ZV9vZmZzZXQpOworCQkJCQlh dWRpb19jb25maWctPmRpcmVjdGlvbiwgcHRlX29mZnNldCwKKwkJCQkJYXNpY190eXBlKTsKIAog CS8qIENvbmZpZ3VyZSBBQ1AgU1JBTSA8LT4gSTJTIERNQSBkZXNjcmlwdG9ycyAqLwogCXNldF9h Y3BfdG9faTJzX2RtYV9kZXNjcmlwdG9ycyhhY3BfbW1pbywgYXVkaW9fY29uZmlnLT5zaXplLAot CQkJCQlhdWRpb19jb25maWctPmRpcmVjdGlvbik7CisJCQkJCWF1ZGlvX2NvbmZpZy0+ZGlyZWN0 aW9uLCBhc2ljX3R5cGUpOwogfQogCiAvKiBTdGFydCBhIGdpdmVuIERNQSBjaGFubmVsIHRyYW5z ZmVyICovCkBAIC01MDAsNiArNTI4LDExIEBAIHN0YXRpYyBpbnQgYWNwX2luaXQodm9pZCBfX2lv bWVtICphY3BfbW1pbywgdTMyIGFzaWNfdHlwZSkKIAkJZm9yIChiYW5rID0gMTsgYmFuayA8IDQ4 OyBiYW5rKyspCiAJCQlhY3Bfc2V0X3NyYW1fYmFua19zdGF0ZShhY3BfbW1pbywgYmFuaywgZmFs c2UpOwogCX0KKwlpZiAoYXNpY190eXBlID09IENISVBfU1RPTkVZKSB7CisJCXZhbCA9IGFjcF9y ZWdfcmVhZChhY3BfbW1pbywgbW1BQ1BfSTJTXzE2QklUX1JFU09MVVRJT05fRU4pOworCQl2YWwg fD0gMHgwMzsKKwkJYWNwX3JlZ193cml0ZSh2YWwsIGFjcF9tbWlvLCBtbUFDUF9JMlNfMTZCSVRf UkVTT0xVVElPTl9FTik7CisJfQogCiAJcmV0dXJuIDA7CiB9CkBAIC02NzUsNiArNzA4LDggQEAg c3RhdGljIGludCBhY3BfZG1hX2h3X3BhcmFtcyhzdHJ1Y3Qgc25kX3BjbV9zdWJzdHJlYW0gKnN1 YnN0cmVhbSwKIAlzdHJ1Y3QgcGFnZSAqcGc7CiAJc3RydWN0IHNuZF9wY21fcnVudGltZSAqcnVu dGltZTsKIAlzdHJ1Y3QgYXVkaW9fc3Vic3RyZWFtX2RhdGEgKnJ0ZDsKKwlzdHJ1Y3Qgc25kX3Nv Y19wY21fcnVudGltZSAqcHJ0ZCA9IHN1YnN0cmVhbS0+cHJpdmF0ZV9kYXRhOworCXN0cnVjdCBh dWRpb19kcnZfZGF0YSAqYWRhdGEgPSBkZXZfZ2V0X2RydmRhdGEocHJ0ZC0+cGxhdGZvcm0tPmRl dik7CiAKIAlydW50aW1lID0gc3Vic3RyZWFtLT5ydW50aW1lOwogCXJ0ZCA9IHJ1bnRpbWUtPnBy aXZhdGVfZGF0YTsKQEAgLTcwMiw3ICs3MzcsNyBAQCBzdGF0aWMgaW50IGFjcF9kbWFfaHdfcGFy YW1zKHN0cnVjdCBzbmRfcGNtX3N1YnN0cmVhbSAqc3Vic3RyZWFtLAogCQlydGQtPm51bV9vZl9w YWdlcyA9IFBBR0VfQUxJR04oc2l6ZSkgPj4gUEFHRV9TSElGVDsKIAkJcnRkLT5kaXJlY3Rpb24g PSBzdWJzdHJlYW0tPnN0cmVhbTsKIAotCQljb25maWdfYWNwX2RtYShydGQtPmFjcF9tbWlvLCBy dGQpOworCQljb25maWdfYWNwX2RtYShydGQtPmFjcF9tbWlvLCBydGQsIGFkYXRhLT5hc2ljX3R5 cGUpOwogCQlzdGF0dXMgPSAwOwogCX0gZWxzZSB7CiAJCXN0YXR1cyA9IC1FTk9NRU07CkBAIC05 OTcsNyArMTAzMiw4IEBAIHN0YXRpYyBpbnQgYWNwX3BjbV9yZXN1bWUoc3RydWN0IGRldmljZSAq ZGV2KQogCQkJCQkJdHJ1ZSk7CiAJCX0KIAkJY29uZmlnX2FjcF9kbWEoYWRhdGEtPmFjcF9tbWlv LAotCQkJCWFkYXRhLT5wbGF5X3N0cmVhbS0+cnVudGltZS0+cHJpdmF0ZV9kYXRhKTsKKwkJCQlh ZGF0YS0+cGxheV9zdHJlYW0tPnJ1bnRpbWUtPnByaXZhdGVfZGF0YSwKKwkJCQlhZGF0YS0+YXNp Y190eXBlKTsKIAl9CiAJaWYgKGFkYXRhLT5jYXB0dXJlX3N0cmVhbSAmJiBhZGF0YS0+Y2FwdHVy ZV9zdHJlYW0tPnJ1bnRpbWUpIHsKIAkJaWYgKGFkYXRhLT5hc2ljX3R5cGUgPT0gQ0hJUF9DQVJS SVpPKSB7CkBAIC0xMDA2LDcgKzEwNDIsOCBAQCBzdGF0aWMgaW50IGFjcF9wY21fcmVzdW1lKHN0 cnVjdCBkZXZpY2UgKmRldikKIAkJCQkJCXRydWUpOwogCQl9CiAJCWNvbmZpZ19hY3BfZG1hKGFk YXRhLT5hY3BfbW1pbywKLQkJCQlhZGF0YS0+Y2FwdHVyZV9zdHJlYW0tPnJ1bnRpbWUtPnByaXZh dGVfZGF0YSk7CisJCQkJYWRhdGEtPmNhcHR1cmVfc3RyZWFtLT5ydW50aW1lLT5wcml2YXRlX2Rh dGEsCisJCQkJYWRhdGEtPmFzaWNfdHlwZSk7CiAJfQogCWFjcF9yZWdfd3JpdGUoMSwgYWRhdGEt PmFjcF9tbWlvLCBtbUFDUF9FWFRFUk5BTF9JTlRSX0VOQik7CiAJcmV0dXJuIDA7CmRpZmYgLS1n aXQgYS9zb3VuZC9zb2MvYW1kL2FjcC5oIGIvc291bmQvc29jL2FtZC9hY3AuaAppbmRleCAyOGNm OTE0Li5hMzMwYTk5IDEwMDY0NAotLS0gYS9zb3VuZC9zb2MvYW1kL2FjcC5oCisrKyBiL3NvdW5k L3NvYy9hbWQvYWNwLmgKQEAgLTE5LDYgKzE5LDcgQEAKIAogLyogQ2FwdHVyZSBTUkFNIGFkZHJl c3MgKGFzIGEgc291cmNlIGluIGRtYSBkZXNjcmlwdG9yKSAqLwogI2RlZmluZSBBQ1BfU0hBUkVE X1JBTV9CQU5LXzVfQUREUkVTUwkJMHg0MDBBMDAwCisjZGVmaW5lIEFDUF9TSEFSRURfUkFNX0JB TktfM19BRERSRVNTCQkweDQwMDYwMDAKIAogI2RlZmluZSBBQ1BfRE1BX1JFU0VUX1RJTUUJCQkx MDAwMAogI2RlZmluZSBBQ1BfQ0xPQ0tfRU5fVElNRV9PVVRfVkFMVUUJCTB4MDAwMDAwRkYKQEAg LTY3LDYgKzY4LDcgQEAKICNkZWZpbmUgQ0FQVFVSRV9TVEFSVF9ETUFfREVTQ1JfQ0gxNSA2CiAj ZGVmaW5lIENBUFRVUkVfRU5EX0RNQV9ERVNDUl9DSDE1IDcKIAorI2RlZmluZSBtbUFDUF9JMlNf MTZCSVRfUkVTT0xVVElPTl9FTiAgICAgICAweDUyMDkKIGVudW0gYWNwX2RtYV9wcmlvcml0eV9s ZXZlbCB7CiAJLyogMHgwIFNwZWNpZmllcyB0aGUgRE1BIGNoYW5uZWwgaXMgZ2l2ZW4gbm9ybWFs IHByaW9yaXR5ICovCiAJQUNQX0RNQV9QUklPUklUWV9MRVZFTF9OT1JNQUwgPSAweDAsCi0tIAoy LjUuNQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJp LWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBz Oi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==