From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Deucher Subject: [PATCH 6/9 v2] ASoC: AMD: DMA driver changes for Stoney Platform Date: Fri, 28 Jul 2017 15:31:31 -0400 Message-ID: <1501270294-31153-7-git-send-email-alexander.deucher@amd.com> References: <1501270294-31153-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: <1501270294-31153-1-git-send-email-alexander.deucher-5C7GfCeVMHo@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, alsa-devel-K7yf7f+aM1XWsZ/bQMPhNw@public.gmane.org, airlied-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org, broonie-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org, Vijendar.Mukunda-5C7GfCeVMHo@public.gmane.org, rajeevkumar.linux-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org, perex-/Fr2/VpizcU@public.gmane.org Cc: tiwai-l3A5Bk7waGM@public.gmane.org, Alex Deucher , lgirdwood-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org List-Id: alsa-devel@alsa-project.org RnJvbTogVmlqZW5kYXIgTXVrdW5kYSA8VmlqZW5kYXIuTXVrdW5kYUBhbWQuY29tPgoKQWRkZWQg RE1BIGRyaXZlciBjaGFuZ2VzIGZvciBTdG9uZXkgcGxhdGZvcm0uCkJlbG93IGFyZSB0aGUga2V5 IGRpZmZlcmVuY2VzIGJldHdlZW4gU3RvbmV5IGFuZCBDWgoKSW4gU3RvbmV5LCBNZW1vcnkgR2F0 aW5nIGlzIGRpc2FibGVkLlNSQU0gQmFua3Mgd29uJ3QKYmUgdHVybmVkIG9mZi5ObyBPZiBTUkFN IEJhbmtzIHJlZHVjZWQgdG8gNi4KREFHQiBHYXJsaWMgSW50ZXJmYWNlIHVzZWQgYW5kIDE2IGJp dCByZXNvbHV0aW9uIGlzIHN1cHBvcnRlZC4KU1JBTSBiYW5rIDEgJiBTUkFNIGJhbmsgMiB3aWxs IGJlIHVzZWQgZm9yIHBsYXliYWNrIHNjZW5hcmlvLgpTUkFNIEJhbmsgMyAmIFNSQU0gQmFuayA0 IHdpbGwgYmUgdXNlZCBmb3IgQ2FwdHVyZSBzY2VuYXJpby4KClNpZ25lZC1vZmYtYnk6IFZpamVu ZGFyIE11a3VuZGEgPFZpamVuZGFyLk11a3VuZGFAYW1kLmNvbT4KU2lnbmVkLW9mZi1ieTogQWxl eCBEZXVjaGVyIDxhbGV4YW5kZXIuZGV1Y2hlckBhbWQuY29tPgotLS0KCnYyOiBBZGRlZCBzd2l0 Y2ggY2FzZXMgZm9yIGFzaWMgdHlwZS4KCnNvdW5kL3NvYy9hbWQvYWNwLXBjbS1kbWEuYyB8IDg3 ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLQogc291bmQvc29j L2FtZC9hY3AuaCAgICAgICAgIHwgIDIgKysKIDIgZmlsZXMgY2hhbmdlZCwgNjcgaW5zZXJ0aW9u cygrKSwgMjIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc291bmQvc29jL2FtZC9hY3AtcGNt LWRtYS5jIGIvc291bmQvc29jL2FtZC9hY3AtcGNtLWRtYS5jCmluZGV4IGYwMGI2YjkuLmYxNmUw YjggMTAwNjQ0Ci0tLSBhL3NvdW5kL3NvYy9hbWQvYWNwLXBjbS1kbWEuYworKysgYi9zb3VuZC9z b2MvYW1kL2FjcC1wY20tZG1hLmMKQEAgLTEzNyw4ICsxMzcsOCBAQCBzdGF0aWMgdm9pZCBjb25m aWdfZG1hX2Rlc2NyaXB0b3JfaW5fc3JhbSh2b2lkIF9faW9tZW0gKmFjcF9tbWlvLAogICogc3lz dGVtIG1lbW9yeSA8LT4gQUNQIFNSQU0KICAqLwogc3RhdGljIHZvaWQgc2V0X2FjcF9zeXNtZW1f ZG1hX2Rlc2NyaXB0b3JzKHZvaWQgX19pb21lbSAqYWNwX21taW8sCi0JCQkJCSAgIHUzMiBzaXpl LCBpbnQgZGlyZWN0aW9uLAotCQkJCQkgICB1MzIgcHRlX29mZnNldCkKKwkJCQkJdTMyIHNpemUs IGludCBkaXJlY3Rpb24sCisJCQkJCXUzMiBwdGVfb2Zmc2V0LCB1MzIgYXNpY190eXBlKQogewog CXUxNiBpOwogCXUxNiBkbWFfZHNjcl9pZHggPSBQTEFZQkFDS19TVEFSVF9ETUFfREVTQ1JfQ0gx MjsKQEAgLTE1MiwyMCArMTUyLDQyIEBAIHN0YXRpYyB2b2lkIHNldF9hY3Bfc3lzbWVtX2RtYV9k ZXNjcmlwdG9ycyh2b2lkIF9faW9tZW0gKmFjcF9tbWlvLAogCQkJCQkoc2l6ZSAvIDIpIC0gKGkg KiAoc2l6ZS8yKSk7CiAJCQlkbWFkc2NyW2ldLnNyYyA9IEFDUF9JTlRFUk5BTF9BUEVSVFVSRV9X SU5ET1dfMF9BRERSRVNTCiAJCQkJKyAocHRlX29mZnNldCAqIFNaXzRLKSArIChpICogKHNpemUv MikpOwotCQkJZG1hZHNjcltpXS54ZmVyX3ZhbCB8PQotCQkJKEFDUF9ETUFfQVRUUklCVVRFU19E QUdCX09OSU9OX1RPX1NIQVJFRE1FTSA8PCAxNikgfAotCQkJKHNpemUgLyAyKTsKKwkJCXN3aXRj aCAoYXNpY190eXBlKSB7CisJCQljYXNlIENISVBfU1RPTkVZOgorCQkJCWRtYWRzY3JbaV0ueGZl cl92YWwgfD0KKwkJCQkoQUNQX0RNQV9BVFRSSUJVVEVTX0RBR0JfR0FSTElDX1RPX1NIQVJFRE1F TSAgPDwgMTYpIHwKKwkJCQkoc2l6ZSAvIDIpOworCQkJCWJyZWFrOworCQkJZGVmYXVsdDoKKwkJ CQlkbWFkc2NyW2ldLnhmZXJfdmFsIHw9CisJCQkJKEFDUF9ETUFfQVRUUklCVVRFU19EQUdCX09O SU9OX1RPX1NIQVJFRE1FTSAgPDwgMTYpIHwKKwkJCQkoc2l6ZSAvIDIpOworCQkJfQogCQl9IGVs c2UgewogCQkJZG1hX2RzY3JfaWR4ID0gQ0FQVFVSRV9TVEFSVF9ETUFfREVTQ1JfQ0gxNCArIGk7 Ci0JCQlkbWFkc2NyW2ldLnNyYyA9IEFDUF9TSEFSRURfUkFNX0JBTktfNV9BRERSRVNTICsKLQkJ CQkJKGkgKiAoc2l6ZS8yKSk7Ci0JCQlkbWFkc2NyW2ldLmRlc3QgPSBBQ1BfSU5URVJOQUxfQVBF UlRVUkVfV0lORE9XXzBfQUREUkVTUwotCQkJCQkJKyAocHRlX29mZnNldCAqIFNaXzRLKSArCi0J CQkJCQkoaSAqIChzaXplLzIpKTsKLQkJCWRtYWRzY3JbaV0ueGZlcl92YWwgfD0KLQkJCUJJVCgy MikgfAotCQkJKEFDUF9ETUFfQVRUUklCVVRFU19TSEFSRURNRU1fVE9fREFHQl9PTklPTiA8PCAx NikgfAotCQkJKHNpemUgLyAyKTsKKwkJCXN3aXRjaCAoYXNpY190eXBlKSB7CisJCQljYXNlIENI SVBfU1RPTkVZOgorCQkJCWRtYWRzY3JbaV0uc3JjID0gQUNQX1NIQVJFRF9SQU1fQkFOS18zX0FE RFJFU1MgKworCQkJCShpICogKHNpemUvMikpOworCQkJCWRtYWRzY3JbaV0uZGVzdCA9CisJCQkJ QUNQX0lOVEVSTkFMX0FQRVJUVVJFX1dJTkRPV18wX0FERFJFU1MgKworCQkJCShwdGVfb2Zmc2V0 ICogU1pfNEspICsgKGkgKiAoc2l6ZS8yKSk7CisJCQkJZG1hZHNjcltpXS54ZmVyX3ZhbCB8PQor CQkJCUJJVCgyMikgfAorCQkJCShBQ1BfRE1BX0FUVFJJQlVURVNfU0hBUkVEX01FTV9UT19EQUdC X0dBUkxJQyA8PCAxNikgfAorCQkJCShzaXplIC8gMik7CisJCQkJYnJlYWs7CisJCQlkZWZhdWx0 OgorCQkJCWRtYWRzY3JbaV0uc3JjID0gQUNQX1NIQVJFRF9SQU1fQkFOS181X0FERFJFU1MgKwor CQkJCShpICogKHNpemUvMikpOworCQkJCWRtYWRzY3JbaV0uZGVzdCA9CisJCQkJQUNQX0lOVEVS TkFMX0FQRVJUVVJFX1dJTkRPV18wX0FERFJFU1MgKworCQkJCShwdGVfb2Zmc2V0ICogU1pfNEsp ICsgKGkgKiAoc2l6ZS8yKSk7CisJCQkJZG1hZHNjcltpXS54ZmVyX3ZhbCB8PQorCQkJCUJJVCgy MikgfAorCQkJCShBQ1BfRE1BX0FUVFJJQlVURVNfU0hBUkVETUVNX1RPX0RBR0JfT05JT04gPDwg MTYpIHwKKwkJCQkoc2l6ZSAvIDIpOworCQkJfQogCQl9CiAJCWNvbmZpZ19kbWFfZGVzY3JpcHRv cl9pbl9zcmFtKGFjcF9tbWlvLCBkbWFfZHNjcl9pZHgsCiAJCQkJCQkmZG1hZHNjcltpXSk7CkBA IC0xODYsNyArMjA4LDggQEAgc3RhdGljIHZvaWQgc2V0X2FjcF9zeXNtZW1fZG1hX2Rlc2NyaXB0 b3JzKHZvaWQgX19pb21lbSAqYWNwX21taW8sCiAgKiBBQ1AgU1JBTSA8LT4gSTJTCiAgKi8KIHN0 YXRpYyB2b2lkIHNldF9hY3BfdG9faTJzX2RtYV9kZXNjcmlwdG9ycyh2b2lkIF9faW9tZW0gKmFj cF9tbWlvLAotCQkJCQkgICB1MzIgc2l6ZSwgaW50IGRpcmVjdGlvbikKKwkJCQkJdTMyIHNpemUs IGludCBkaXJlY3Rpb24sCisJCQkJCXUzMiBhc2ljX3R5cGUpCiB7CiAKIAl1MTYgaTsKQEAgLTIw Nyw4ICsyMzAsMTcgQEAgc3RhdGljIHZvaWQgc2V0X2FjcF90b19pMnNfZG1hX2Rlc2NyaXB0b3Jz KHZvaWQgX19pb21lbSAqYWNwX21taW8sCiAJCQlkbWFfZHNjcl9pZHggPSBDQVBUVVJFX1NUQVJU X0RNQV9ERVNDUl9DSDE1ICsgaTsKIAkJCS8qIGRtYWRzY3JbaV0uc3JjIGlzIHVudXNlZCBieSBo YXJkd2FyZS4gKi8KIAkJCWRtYWRzY3JbaV0uc3JjID0gMDsKLQkJCWRtYWRzY3JbaV0uZGVzdCA9 IEFDUF9TSEFSRURfUkFNX0JBTktfNV9BRERSRVNTICsKKwkJCXN3aXRjaCAoYXNpY190eXBlKSB7 CisJCQljYXNlIENISVBfU1RPTkVZOgorCQkJCWRtYWRzY3JbaV0uZGVzdCA9CisJCQkJCSBBQ1Bf U0hBUkVEX1JBTV9CQU5LXzNfQUREUkVTUyArCiAJCQkJCShpICogKHNpemUgLyAyKSk7CisJCQkJ YnJlYWs7CisJCQlkZWZhdWx0OgorCQkJCWRtYWRzY3JbaV0uZGVzdCA9CisJCQkJCSBBQ1BfU0hB UkVEX1JBTV9CQU5LXzVfQUREUkVTUyArCisJCQkJCShpICogKHNpemUgLyAyKSk7CisJCQl9CiAJ CQlkbWFkc2NyW2ldLnhmZXJfdmFsIHw9IEJJVCgyMikgfAogCQkJCQkoRlJPTV9BQ1BfSTJTXzEg PDwgMTYpIHwgKHNpemUgLyAyKTsKIAkJfQpAQCAtMjY0LDcgKzI5Niw4IEBAIHN0YXRpYyB2b2lk IGFjcF9wdGVfY29uZmlnKHZvaWQgX19pb21lbSAqYWNwX21taW8sIHN0cnVjdCBwYWdlICpwZywK IH0KIAogc3RhdGljIHZvaWQgY29uZmlnX2FjcF9kbWEodm9pZCBfX2lvbWVtICphY3BfbW1pbywK LQkJCSAgIHN0cnVjdCBhdWRpb19zdWJzdHJlYW1fZGF0YSAqYXVkaW9fY29uZmlnKQorCQkJc3Ry dWN0IGF1ZGlvX3N1YnN0cmVhbV9kYXRhICphdWRpb19jb25maWcsCisJCQl1MzIgYXNpY190eXBl KQogewogCXUzMiBwdGVfb2Zmc2V0OwogCkBAIC0yNzgsMTEgKzMxMSwxMSBAQCBzdGF0aWMgdm9p ZCBjb25maWdfYWNwX2RtYSh2b2lkIF9faW9tZW0gKmFjcF9tbWlvLAogCiAJLyogQ29uZmlndXJl IFN5c3RlbSBtZW1vcnkgPC0+IEFDUCBTUkFNIERNQSBkZXNjcmlwdG9ycyAqLwogCXNldF9hY3Bf c3lzbWVtX2RtYV9kZXNjcmlwdG9ycyhhY3BfbW1pbywgYXVkaW9fY29uZmlnLT5zaXplLAotCQkJ CSAgICAgICBhdWRpb19jb25maWctPmRpcmVjdGlvbiwgcHRlX29mZnNldCk7CisJCQkJYXVkaW9f Y29uZmlnLT5kaXJlY3Rpb24sIHB0ZV9vZmZzZXQsIGFzaWNfdHlwZSk7CiAKIAkvKiBDb25maWd1 cmUgQUNQIFNSQU0gPC0+IEkyUyBETUEgZGVzY3JpcHRvcnMgKi8KIAlzZXRfYWNwX3RvX2kyc19k bWFfZGVzY3JpcHRvcnMoYWNwX21taW8sIGF1ZGlvX2NvbmZpZy0+c2l6ZSwKLQkJCQkJYXVkaW9f Y29uZmlnLT5kaXJlY3Rpb24pOworCQkJCWF1ZGlvX2NvbmZpZy0+ZGlyZWN0aW9uLCBhc2ljX3R5 cGUpOwogfQogCiAvKiBTdGFydCBhIGdpdmVuIERNQSBjaGFubmVsIHRyYW5zZmVyICovCkBAIC01 MDIsNiArNTM1LDEyIEBAIHN0YXRpYyBpbnQgYWNwX2luaXQodm9pZCBfX2lvbWVtICphY3BfbW1p bywgdTMyIGFzaWNfdHlwZSkKIAkJCWFjcF9zZXRfc3JhbV9iYW5rX3N0YXRlKGFjcF9tbWlvLCBi YW5rLCBmYWxzZSk7CiAJfQogCisJLyogU3RvbmV5IHN1cHBvcnRzIDE2Yml0IHJlc29sdXRpb24g Ki8KKwlpZiAoYXNpY190eXBlID09IENISVBfU1RPTkVZKSB7CisJCXZhbCA9IGFjcF9yZWdfcmVh ZChhY3BfbW1pbywgbW1BQ1BfSTJTXzE2QklUX1JFU09MVVRJT05fRU4pOworCQl2YWwgfD0gMHgw MzsKKwkJYWNwX3JlZ193cml0ZSh2YWwsIGFjcF9tbWlvLCBtbUFDUF9JMlNfMTZCSVRfUkVTT0xV VElPTl9FTik7CisJfQogCXJldHVybiAwOwogfQogCkBAIC02ODAsNiArNzE5LDggQEAgc3RhdGlj IGludCBhY3BfZG1hX2h3X3BhcmFtcyhzdHJ1Y3Qgc25kX3BjbV9zdWJzdHJlYW0gKnN1YnN0cmVh bSwKIAlzdHJ1Y3QgcGFnZSAqcGc7CiAJc3RydWN0IHNuZF9wY21fcnVudGltZSAqcnVudGltZTsK IAlzdHJ1Y3QgYXVkaW9fc3Vic3RyZWFtX2RhdGEgKnJ0ZDsKKwlzdHJ1Y3Qgc25kX3NvY19wY21f cnVudGltZSAqcHJ0ZCA9IHN1YnN0cmVhbS0+cHJpdmF0ZV9kYXRhOworCXN0cnVjdCBhdWRpb19k cnZfZGF0YSAqYWRhdGEgPSBkZXZfZ2V0X2RydmRhdGEocHJ0ZC0+cGxhdGZvcm0tPmRldik7CiAK IAlydW50aW1lID0gc3Vic3RyZWFtLT5ydW50aW1lOwogCXJ0ZCA9IHJ1bnRpbWUtPnByaXZhdGVf ZGF0YTsKQEAgLTcwNyw3ICs3NDgsNyBAQCBzdGF0aWMgaW50IGFjcF9kbWFfaHdfcGFyYW1zKHN0 cnVjdCBzbmRfcGNtX3N1YnN0cmVhbSAqc3Vic3RyZWFtLAogCQlydGQtPm51bV9vZl9wYWdlcyA9 IFBBR0VfQUxJR04oc2l6ZSkgPj4gUEFHRV9TSElGVDsKIAkJcnRkLT5kaXJlY3Rpb24gPSBzdWJz dHJlYW0tPnN0cmVhbTsKIAotCQljb25maWdfYWNwX2RtYShydGQtPmFjcF9tbWlvLCBydGQpOwor CQljb25maWdfYWNwX2RtYShydGQtPmFjcF9tbWlvLCBydGQsIGFkYXRhLT5hc2ljX3R5cGUpOwog CQlzdGF0dXMgPSAwOwogCX0gZWxzZSB7CiAJCXN0YXR1cyA9IC1FTk9NRU07CkBAIC0xMDExLDcg KzEwNTIsOCBAQCBzdGF0aWMgaW50IGFjcF9wY21fcmVzdW1lKHN0cnVjdCBkZXZpY2UgKmRldikK IAkJCQkJCXRydWUpOwogCQl9CiAJCWNvbmZpZ19hY3BfZG1hKGFkYXRhLT5hY3BfbW1pbywKLQkJ CQlhZGF0YS0+cGxheV9zdHJlYW0tPnJ1bnRpbWUtPnByaXZhdGVfZGF0YSk7CisJCQlhZGF0YS0+ cGxheV9zdHJlYW0tPnJ1bnRpbWUtPnByaXZhdGVfZGF0YSwKKwkJCWFkYXRhLT5hc2ljX3R5cGUp OwogCX0KIAlpZiAoYWRhdGEtPmNhcHR1cmVfc3RyZWFtICYmIGFkYXRhLT5jYXB0dXJlX3N0cmVh bS0+cnVudGltZSkgewogCQlpZiAoYWRhdGEtPmFzaWNfdHlwZSAhPSBDSElQX1NUT05FWSkgewpA QCAtMTAyMCw3ICsxMDYyLDggQEAgc3RhdGljIGludCBhY3BfcGNtX3Jlc3VtZShzdHJ1Y3QgZGV2 aWNlICpkZXYpCiAJCQkJCQl0cnVlKTsKIAkJfQogCQljb25maWdfYWNwX2RtYShhZGF0YS0+YWNw X21taW8sCi0JCQkJYWRhdGEtPmNhcHR1cmVfc3RyZWFtLT5ydW50aW1lLT5wcml2YXRlX2RhdGEp OworCQkJYWRhdGEtPmNhcHR1cmVfc3RyZWFtLT5ydW50aW1lLT5wcml2YXRlX2RhdGEsCisJCQlh ZGF0YS0+YXNpY190eXBlKTsKIAl9CiAJYWNwX3JlZ193cml0ZSgxLCBhZGF0YS0+YWNwX21taW8s IG1tQUNQX0VYVEVSTkFMX0lOVFJfRU5CKTsKIAlyZXR1cm4gMDsKZGlmZiAtLWdpdCBhL3NvdW5k L3NvYy9hbWQvYWNwLmggYi9zb3VuZC9zb2MvYW1kL2FjcC5oCmluZGV4IDI4Y2Y5MTQuLmEzMzBh OTkgMTAwNjQ0Ci0tLSBhL3NvdW5kL3NvYy9hbWQvYWNwLmgKKysrIGIvc291bmQvc29jL2FtZC9h Y3AuaApAQCAtMTksNiArMTksNyBAQAogCiAvKiBDYXB0dXJlIFNSQU0gYWRkcmVzcyAoYXMgYSBz b3VyY2UgaW4gZG1hIGRlc2NyaXB0b3IpICovCiAjZGVmaW5lIEFDUF9TSEFSRURfUkFNX0JBTktf NV9BRERSRVNTCQkweDQwMEEwMDAKKyNkZWZpbmUgQUNQX1NIQVJFRF9SQU1fQkFOS18zX0FERFJF U1MJCTB4NDAwNjAwMAogCiAjZGVmaW5lIEFDUF9ETUFfUkVTRVRfVElNRQkJCTEwMDAwCiAjZGVm aW5lIEFDUF9DTE9DS19FTl9USU1FX09VVF9WQUxVRQkJMHgwMDAwMDBGRgpAQCAtNjcsNiArNjgs NyBAQAogI2RlZmluZSBDQVBUVVJFX1NUQVJUX0RNQV9ERVNDUl9DSDE1IDYKICNkZWZpbmUgQ0FQ VFVSRV9FTkRfRE1BX0RFU0NSX0NIMTUgNwogCisjZGVmaW5lIG1tQUNQX0kyU18xNkJJVF9SRVNP TFVUSU9OX0VOICAgICAgIDB4NTIwOQogZW51bSBhY3BfZG1hX3ByaW9yaXR5X2xldmVsIHsKIAkv KiAweDAgU3BlY2lmaWVzIHRoZSBETUEgY2hhbm5lbCBpcyBnaXZlbiBub3JtYWwgcHJpb3JpdHkg Ki8KIAlBQ1BfRE1BX1BSSU9SSVRZX0xFVkVMX05PUk1BTCA9IDB4MCwKLS0gCjIuNS41CgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwphbWQtZ2Z4IG1haWxp bmcgbGlzdAphbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVk ZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2FtZC1nZngK