From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: [PATCH v4] drm/i915/audio: rewrite vlv/chv and gen 5-7 audio codec enable sequence Date: Tue, 4 Nov 2014 10:31:28 +0200 Message-ID: <1415089888-2547-1-git-send-email-jani.nikula@intel.com> References: <87egtoioof.fsf@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTP id B84746E4CD for ; Tue, 4 Nov 2014 00:31:36 -0800 (PST) In-Reply-To: <87egtoioof.fsf@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org, Rodrigo Vivi , daniel@ffwll.ch Cc: jani.nikula@intel.com List-Id: intel-gfx@lists.freedesktop.org U2ltaWxhciB0byB0aGUgaHN3L2JkdyBlbmFibGUgc2VxdWVuY2UgcmV3cml0ZS4KCnYzOiByZXBs YWNlIHZibGFuayB3YWl0IHdpdGggYSBjb21tZW50Cgp2NDogZXhwYW5kIHRoZSBjb21tZW50IG9u IHdoYXQgc2hvdWxkIGJlIGRvbmUgd2l0aCB0aGUgdmJsYW5rIHdhaXQKClNpZ25lZC1vZmYtYnk6 IEphbmkgTmlrdWxhIDxqYW5pLm5pa3VsYUBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfYXVkaW8uYyB8IDYzICsrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0t LS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMzEgaW5zZXJ0aW9ucygrKSwgMzIgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYXVkaW8uYyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2F1ZGlvLmMKaW5kZXggNGRjZmM0NmQ1NzI1Li44NzU5ZmM1 MDk3ODMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2F1ZGlvLmMKKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYXVkaW8uYwpAQCAtMjE1LDYgKzIxNSwxMCBA QCBzdGF0aWMgdm9pZCBpbGtfYXVkaW9fY29kZWNfZW5hYmxlKHN0cnVjdCBkcm1fY29ubmVjdG9y ICpjb25uZWN0b3IsCiB7CiAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gY29u bmVjdG9yLT5kZXYtPmRldl9wcml2YXRlOwogCXN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRj ID0gdG9faW50ZWxfY3J0YyhlbmNvZGVyLT5iYXNlLmNydGMpOworCXN0cnVjdCBpbnRlbF9kaWdp dGFsX3BvcnQgKmludGVsX2RpZ19wb3J0ID0KKwkJZW5jX3RvX2RpZ19wb3J0KCZlbmNvZGVyLT5i YXNlKTsKKwllbnVtIHBvcnQgcG9ydCA9IGludGVsX2RpZ19wb3J0LT5wb3J0OworCWVudW0gcGlw ZSBwaXBlID0gaW50ZWxfY3J0Yy0+cGlwZTsKIAl1aW50OF90ICplbGQgPSBjb25uZWN0b3ItPmVs ZDsKIAl1aW50MzJfdCBlbGR2OwogCXVpbnQzMl90IHRtcDsKQEAgLTIyMyw4ICsyMjcsMTYgQEAg c3RhdGljIHZvaWQgaWxrX2F1ZGlvX2NvZGVjX2VuYWJsZShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAq Y29ubmVjdG9yLAogCWludCBhdWRfY29uZmlnOwogCWludCBhdWRfY250bF9zdDsKIAlpbnQgYXVk X2NudHJsX3N0MjsKLQllbnVtIHBpcGUgcGlwZSA9IGludGVsX2NydGMtPnBpcGU7Ci0JZW51bSBw b3J0IHBvcnQ7CisKKwlEUk1fREVCVUdfS01TKCJFbmFibGUgYXVkaW8gY29kZWMgb24gcG9ydCAl YywgcGlwZSAlYywgJXUgYnl0ZXMgRUxEXG4iLAorCQkgICAgICBwb3J0X25hbWUocG9ydCksIHBp cGVfbmFtZShwaXBlKSwgZWxkWzJdKTsKKworCS8qCisJICogRklYTUU6IFdlJ3JlIHN1cHBvc2Vk IHRvIHdhaXQgZm9yIHZibGFuayBoZXJlLCBidXQgd2UgaGF2ZSB2YmxhbmtzCisJICogZGlzYWJs ZWQgZHVyaW5nIHRoZSBtb2RlIHNldC4gVGhlIHByb3BlciBmaXggd291bGQgYmUgdG8gcHVzaCB0 aGUKKwkgKiByZXN0IG9mIHRoZSBzZXR1cCBpbnRvIGEgdmJsYW5rIHdvcmsgaXRlbSwgcXVldWVk IGhlcmUsIGJ1dCB0aGUKKwkgKiBpbmZyYXN0cnVjdHVyZSBpcyBub3QgdGhlcmUgeWV0LgorCSAq LwogCiAJaWYgKEhBU19QQ0hfSUJYKGNvbm5lY3Rvci0+ZGV2KSkgewogCQloZG1pd19oZG1pZWRp ZCA9IElCWF9IRE1JV19IRE1JRURJRChwaXBlKTsKQEAgLTI0Myw1NyArMjU1LDQ0IEBAIHN0YXRp YyB2b2lkIGlsa19hdWRpb19jb2RlY19lbmFibGUoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5l Y3RvciwKIAkJYXVkX2NudHJsX3N0MiA9IENQVF9BVURfQ05UUkxfU1QyOwogCX0KIAotCURSTV9E RUJVR19EUklWRVIoIkVMRCBvbiBwaXBlICVjXG4iLCBwaXBlX25hbWUocGlwZSkpOwotCi0JaWYg KElTX1ZBTExFWVZJRVcoY29ubmVjdG9yLT5kZXYpKSAgewotCQlzdHJ1Y3QgaW50ZWxfZGlnaXRh bF9wb3J0ICppbnRlbF9kaWdfcG9ydDsKLQotCQlpbnRlbF9kaWdfcG9ydCA9IGVuY190b19kaWdf cG9ydCgmZW5jb2Rlci0+YmFzZSk7Ci0JCXBvcnQgPSBpbnRlbF9kaWdfcG9ydC0+cG9ydDsKLQl9 IGVsc2UgewotCQl0bXAgPSBJOTE1X1JFQUQoYXVkX2NudGxfc3QpOwotCQlwb3J0ID0gKHRtcCA+ PiAyOSkgJiBESVBfUE9SVF9TRUxfTUFTSzsKLQkJLyogRElQX1BvcnRfU2VsZWN0LCAweDEgPSBQ b3J0QiAqLwotCX0KLQotCWlmICghcG9ydCkgewotCQlEUk1fREVCVUdfRFJJVkVSKCJBdWRpbyBk aXJlY3RlZCB0byB1bmtub3duIHBvcnRcbiIpOwotCQkvKiBvcGVyYXRlIGJsaW5kbHkgb24gYWxs IHBvcnRzICovCisJaWYgKFdBUk5fT04oIXBvcnQpKSB7CiAJCWVsZHYgPSBJQlhfRUxEX1ZBTElE QjsKIAkJZWxkdiB8PSBJQlhfRUxEX1ZBTElEQiA8PCA0OwogCQllbGR2IHw9IElCWF9FTERfVkFM SURCIDw8IDg7CiAJfSBlbHNlIHsKLQkJRFJNX0RFQlVHX0RSSVZFUigiRUxEIG9uIHBvcnQgJWNc biIsIHBvcnRfbmFtZShwb3J0KSk7CiAJCWVsZHYgPSBJQlhfRUxEX1ZBTElEQiA8PCAoKHBvcnQg LSAxKSAqIDQpOwogCX0KIAotCWlmIChpbnRlbF9waXBlX2hhc190eXBlKGludGVsX2NydGMsIElO VEVMX09VVFBVVF9ESVNQTEFZUE9SVCkpCi0JCUk5MTVfV1JJVEUoYXVkX2NvbmZpZywgQVVEX0NP TkZJR19OX1ZBTFVFX0lOREVYKTsgLyogMHgxID0gRFAgKi8KLQllbHNlCi0JCUk5MTVfV1JJVEUo YXVkX2NvbmZpZywgYXVkaW9fY29uZmlnX2hkbWlfcGl4ZWxfY2xvY2sobW9kZSkpOwotCi0JaWYg KGludGVsX2VsZF91cHRvZGF0ZShjb25uZWN0b3IsCi0JCQkgICAgICAgYXVkX2NudHJsX3N0Miwg ZWxkdiwKLQkJCSAgICAgICBhdWRfY250bF9zdCwgSUJYX0VMRF9BRERSRVNTX01BU0ssCi0JCQkg ICAgICAgaGRtaXdfaGRtaWVkaWQpKQotCQlyZXR1cm47Ci0KKwkvKiBJbnZhbGlkYXRlIEVMRCAq LwogCXRtcCA9IEk5MTVfUkVBRChhdWRfY250cmxfc3QyKTsKIAl0bXAgJj0gfmVsZHY7CiAJSTkx NV9XUklURShhdWRfY250cmxfc3QyLCB0bXApOwogCisJLyogUmVzZXQgRUxEIHdyaXRlIGFkZHJl c3MgKi8KIAl0bXAgPSBJOTE1X1JFQUQoYXVkX2NudGxfc3QpOwogCXRtcCAmPSB+SUJYX0VMRF9B RERSRVNTX01BU0s7CiAJSTkxNV9XUklURShhdWRfY250bF9zdCwgdG1wKTsKIAotCWxlbiA9IG1p bl90KGludCwgZWxkWzJdLCAyMSk7CS8qIDg0IGJ5dGVzIG9mIGh3IEVMRCBidWZmZXIgKi8KLQlE Uk1fREVCVUdfRFJJVkVSKCJFTEQgc2l6ZSAlZFxuIiwgbGVuKTsKKwkvKiBVcCB0byA4NCBieXRl cyBvZiBodyBFTEQgYnVmZmVyICovCisJbGVuID0gbWluX3QoaW50LCBlbGRbMl0sIDIxKTsKIAlm b3IgKGkgPSAwOyBpIDwgbGVuOyBpKyspCiAJCUk5MTVfV1JJVEUoaGRtaXdfaGRtaWVkaWQsICoo KHVpbnQzMl90ICopZWxkICsgaSkpOwogCisJLyogRUxEIHZhbGlkICovCiAJdG1wID0gSTkxNV9S RUFEKGF1ZF9jbnRybF9zdDIpOwogCXRtcCB8PSBlbGR2OwogCUk5MTVfV1JJVEUoYXVkX2NudHJs X3N0MiwgdG1wKTsKKworCS8qIEVuYWJsZSB0aW1lc3RhbXBzICovCisJdG1wID0gSTkxNV9SRUFE KGF1ZF9jb25maWcpOworCXRtcCAmPSB+QVVEX0NPTkZJR19OX1ZBTFVFX0lOREVYOworCXRtcCAm PSB+QVVEX0NPTkZJR19OX1BST0dfRU5BQkxFOworCXRtcCAmPSB+QVVEX0NPTkZJR19QSVhFTF9D TE9DS19IRE1JX01BU0s7CisJaWYgKGludGVsX3BpcGVfaGFzX3R5cGUoaW50ZWxfY3J0YywgSU5U RUxfT1VUUFVUX0RJU1BMQVlQT1JUKSkKKwkJdG1wIHw9IEFVRF9DT05GSUdfTl9WQUxVRV9JTkRF WDsKKwllbHNlCisJCXRtcCB8PSBhdWRpb19jb25maWdfaGRtaV9waXhlbF9jbG9jayhtb2RlKTsK KwlJOTE1X1dSSVRFKGF1ZF9jb25maWcsIHRtcCk7CiB9CiAKIC8qKgotLSAKMi4xLjEKCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWls aW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==