From mboxrd@z Thu Jan 1 00:00:00 1970 From: ville.syrjala@linux.intel.com Subject: [PATCH 2/6] drm/i915: Don't wait for Punit after each freq change on VLV Date: Tue, 25 Jun 2013 19:21:02 +0300 Message-ID: <1372177266-2665-3-git-send-email-ville.syrjala@linux.intel.com> References: <1372177266-2665-1-git-send-email-ville.syrjala@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTP id 5FDC2E5D55 for ; Tue, 25 Jun 2013 09:22:18 -0700 (PDT) In-Reply-To: <1372177266-2665-1-git-send-email-ville.syrjala@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: intel-gfx-bounces+gcfxdi-intel-gfx=m.gmane.org@lists.freedesktop.org Errors-To: intel-gfx-bounces+gcfxdi-intel-gfx=m.gmane.org@lists.freedesktop.org To: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KCkl0 IHNlZW1zIHRoYXQgZXZlbiB0aG91Z2ggUHVuaXQgcmVwb3J0cyB0aGUgZnJlcXVlbmN5IGNoYW5n ZSB0byBoYXZlCmJlZW4gY29tcGxldGVkLCBpdCBzdGlsbCByZXBvcnRzIHRoZSBvbGQgZnJlcXVl bmN5IGluIHRoZSBzdGF0dXMKcmVnaXN0ZXIgZm9yIHNvbWUgdGltZS4KClNvIHJhdGhlciB0aGFu IHBvbGxpbmcgZm9yIFB1bml0IHRvIGNvbXBsZXRlIHRoZSBmcmVxdWVuY3kgY2hhbmdlIGFmdGVy CmVhY2ggcmVxdWVzdCwgcG9sbCBiZWZvcmUuIFRoaXMgZ2V0cyByaWQgb2YgdGhlIHNwdXJpb3Vz ICJQdW5pdCBvdmVycm9kZQpHUFUgZnJlcSIgbWVzc2FnZXMuCgpUaGlzIGFsc28gbGV0cyB1cyBj b250aW51ZSB3b3JraW5nIHdoaWxlIFB1bml0IGlzIHBlcmZvcm1pbmcgdGhlIGFjdHVhbApmcmVx dWVuY3kgY2hhbmdlLiBBcyBhIHJlc3VsdCwgb3BlbmFyZW5hIGRlbW8wODgtdGVzdDEgdGltZWRl bW8gYXZlcmFnZQpmcHMgaXMgaW5jcmVhc2VkIGJ5IH41IGZwcywgYW5kIHRoZSBzbG93ZXN0IGZy YW1lIGR1cmF0aW9uIGlzIHJlZHVjZWQKYnkgfjI1JS4KClRoZSBzeXNmcyBjdXJfZnJlcSBmaWxl IGFsd2F5cyByZWFkcyB0aGUgY3VycmVudCBmcmVxdWVuY3kgZnJvbSBQdW5pdAphbnl3YXksIHNv IGhhdmluZyBycHMuY3VyX2RlbGF5IGJlIHNsaWdodGx5IG9mZiBhdCB0aW1lcyBkb2Vzbid0IG1h dHRlci4KClNpZ25lZC1vZmYtYnk6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51 eC5pbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYyB8IDUzICsr KysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwg MzUgaW5zZXJ0aW9ucygrKSwgMTggZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfcG0uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMK aW5kZXggNDhhMzE2Mi4uNmRiY2FkNyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfcG0uYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jCkBAIC0zMDY2 LDE3ICszMDY2LDQ5IEBAIHZvaWQgZ2VuNl9zZXRfcnBzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYs IHU4IHZhbCkKIAl0cmFjZV9pbnRlbF9ncHVfZnJlcV9jaGFuZ2UodmFsICogNTApOwogfQogCisv KgorICogV2FpdCB1bnRpbCB0aGUgcHJldmlvdXMgZnJlcSBjaGFuZ2UgaGFzIGNvbXBsZXRlZCwK KyAqIG9yIHRoZSB0aW1lb3V0IGVsYXBzZWQsIGFuZCB0aGVuIHVwZGF0ZSBvdXIgbm90aW9uCisg KiBvZiB0aGUgY3VycmVudCBHUFUgZnJlcXVlbmN5LgorICovCitzdGF0aWMgdm9pZCB2bHZfdXBk YXRlX3Jwc19jdXJfZGVsYXkoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQorewor CXVuc2lnbmVkIGxvbmcgdGltZW91dCA9IGppZmZpZXMgKyBtc2Vjc190b19qaWZmaWVzKDEwKTsK Kwl1MzIgcHZhbDsKKworCVdBUk5fT04oIW11dGV4X2lzX2xvY2tlZCgmZGV2X3ByaXYtPnJwcy5o d19sb2NrKSk7CisKKwlkbyB7CisJCXB2YWwgPSB2bHZfcHVuaXRfcmVhZChkZXZfcHJpdiwgUFVO SVRfUkVHX0dQVV9GUkVRX1NUUyk7CisJCWlmICh0aW1lX2FmdGVyKGppZmZpZXMsIHRpbWVvdXQp KSB7CisJCQlEUk1fREVCVUdfRFJJVkVSKCJ0aW1lZCBvdXQgd2FpdGluZyBmb3IgUHVuaXRcbiIp OworCQkJYnJlYWs7CisJCX0KKwkJdWRlbGF5KDEwKTsKKwl9IHdoaWxlIChwdmFsICYgMSk7CisK KwlwdmFsID4+PSA4OworCisJaWYgKHB2YWwgIT0gZGV2X3ByaXYtPnJwcy5jdXJfZGVsYXkpCisJ CURSTV9ERUJVR19EUklWRVIoIlB1bml0IG92ZXJyb2RlIEdQVSBmcmVxOiAlZCBNSHogKCV1KSBy ZXF1ZXN0ZWQsIGJ1dCBnb3QgJWQgTWh6ICgldSlcbiIsCisJCQkJIHZsdl9ncHVfZnJlcShkZXZf cHJpdi0+bWVtX2ZyZXEsIGRldl9wcml2LT5ycHMuY3VyX2RlbGF5KSwKKwkJCQkgZGV2X3ByaXYt PnJwcy5jdXJfZGVsYXksCisJCQkJIHZsdl9ncHVfZnJlcShkZXZfcHJpdi0+bWVtX2ZyZXEsIHB2 YWwpLCBwdmFsKTsKKworCWRldl9wcml2LT5ycHMuY3VyX2RlbGF5ID0gcHZhbDsKK30KKwogdm9p ZCB2YWxsZXl2aWV3X3NldF9ycHMoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdTggdmFsKQogewog CXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7Ci0J dW5zaWduZWQgbG9uZyB0aW1lb3V0ID0gamlmZmllcyArIG1zZWNzX3RvX2ppZmZpZXMoMTApOwog CXUzMiBsaW1pdHMgPSBnZW42X3Jwc19saW1pdHMoZGV2X3ByaXYsICZ2YWwpOwotCXUzMiBwdmFs OwogCiAJV0FSTl9PTighbXV0ZXhfaXNfbG9ja2VkKCZkZXZfcHJpdi0+cnBzLmh3X2xvY2spKTsK IAlXQVJOX09OKHZhbCA+IGRldl9wcml2LT5ycHMubWF4X2RlbGF5KTsKIAlXQVJOX09OKHZhbCA8 IGRldl9wcml2LT5ycHMubWluX2RlbGF5KTsKIAorCXZsdl91cGRhdGVfcnBzX2N1cl9kZWxheShk ZXZfcHJpdik7CisKIAlEUk1fREVCVUdfRFJJVkVSKCJHUFUgZnJlcSByZXF1ZXN0IGZyb20gJWQg TUh6ICgldSkgdG8gJWQgTUh6ICgldSlcbiIsCiAJCQkgdmx2X2dwdV9mcmVxKGRldl9wcml2LT5t ZW1fZnJlcSwKIAkJCQkgICAgICBkZXZfcHJpdi0+cnBzLmN1cl9kZWxheSksCkBAIC0zMDg4LDI3 ICszMTIwLDEyIEBAIHZvaWQgdmFsbGV5dmlld19zZXRfcnBzKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsIHU4IHZhbCkKIAogCXZsdl9wdW5pdF93cml0ZShkZXZfcHJpdiwgUFVOSVRfUkVHX0dQVV9G UkVRX1JFUSwgdmFsKTsKIAotCWRvIHsKLQkJcHZhbCA9IHZsdl9wdW5pdF9yZWFkKGRldl9wcml2 LCBQVU5JVF9SRUdfR1BVX0ZSRVFfU1RTKTsKLQkJaWYgKHRpbWVfYWZ0ZXIoamlmZmllcywgdGlt ZW91dCkpIHsKLQkJCURSTV9ERUJVR19EUklWRVIoInRpbWVkIG91dCB3YWl0aW5nIGZvciBQdW5p dFxuIik7Ci0JCQlicmVhazsKLQkJfQotCQl1ZGVsYXkoMTApOwotCX0gd2hpbGUgKHB2YWwgJiAx KTsKLQotCXB2YWwgPSB2bHZfcHVuaXRfcmVhZChkZXZfcHJpdiwgUFVOSVRfUkVHX0dQVV9GUkVR X1NUUyk7Ci0JaWYgKChwdmFsID4+IDgpICE9IHZhbCkKLQkJRFJNX0RFQlVHX0RSSVZFUigiUHVu aXQgb3ZlcnJvZGUgR1BVIGZyZXE6ICVkIE1IeiAoJXUpIHJlcXVlc3RlZCwgYnV0IGdvdCAlZCBN aHogKCV1KVxuIiwKLQkJCQkgdmx2X2dwdV9mcmVxKGRldl9wcml2LT5tZW1fZnJlcSwgdmFsKSwg dmFsLAotCQkJCSB2bHZfZ3B1X2ZyZXEoZGV2X3ByaXYtPm1lbV9mcmVxLCBwdmFsID4+IDgpLCBw dmFsID4+IDgpOwotCiAJLyogTWFrZSBzdXJlIHdlIGNvbnRpbnVlIHRvIGdldCBpbnRlcnJ1cHRz CiAJICogdW50aWwgd2UgaGl0IHRoZSBtaW5pbXVtIG9yIG1heGltdW0gZnJlcXVlbmNpZXMuCiAJ ICovCiAJSTkxNV9XUklURShHRU42X1JQX0lOVEVSUlVQVF9MSU1JVFMsIGxpbWl0cyk7CiAKLQlk ZXZfcHJpdi0+cnBzLmN1cl9kZWxheSA9IHB2YWwgPj4gODsKKwlkZXZfcHJpdi0+cnBzLmN1cl9k ZWxheSA9IHZhbDsKIAogCXRyYWNlX2ludGVsX2dwdV9mcmVxX2NoYW5nZSh2bHZfZ3B1X2ZyZXEo ZGV2X3ByaXYtPm1lbV9mcmVxLCB2YWwpKTsKIH0KLS0gCjEuOC4xLjUKCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QK SW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Au b3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==