From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dhinakaran Pandiyan Subject: [PATCH 3/9] drm/i915/psr: Extract PSR DPCD initialization and move it to intel_psr.c Date: Fri, 26 Jan 2018 18:49:17 -0800 Message-ID: <20180127024923.3093-3-dhinakaran.pandiyan@intel.com> References: <20180127024923.3093-1-dhinakaran.pandiyan@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id 378BE6E85A for ; Sat, 27 Jan 2018 02:49:43 +0000 (UTC) In-Reply-To: <20180127024923.3093-1-dhinakaran.pandiyan@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 Cc: Dhinakaran Pandiyan , Rodrigo Vivi List-Id: intel-gfx@lists.freedesktop.org aW50ZWxfZWRwX2luaXRfZHBjZCgpIGlzIGNsdXR0ZXJlZCB3aXRoIFBTUiBzcGVjaWZpYyBEUENE IGNoZWNrcyBhbmQKaW50ZWxfZHAuYyBpcyBodWdlLgoKTm8gZnVuY3Rpb25hbCBjaGFuZ2UgaW50 ZW5kZWQuCgpDYzogUm9kcmlnbyBWaXZpIDxyb2RyaWdvLnZpdmlAaW50ZWwuY29tPgpTaWduZWQt b2ZmLWJ5OiBEaGluYWthcmFuIFBhbmRpeWFuIDxkaGluYWthcmFuLnBhbmRpeWFuQGludGVsLmNv bT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jICB8IDY0ICstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Ry di5oIHwgIDEgKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcHNyLmMgfCA2OCArKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiAzIGZpbGVzIGNoYW5nZWQsIDcwIGlu c2VydGlvbnMoKyksIDYzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2RwLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jCmluZGV4 IGEyZTg4Nzk5OTkxNS4uMjQ1NDMyNjY5MGZiIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9kcC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMKQEAg LTMxMzUsMzUgKzMxMzUsNiBAQCBpbnRlbF9kcF9nZXRfbGlua19zdGF0dXMoc3RydWN0IGludGVs X2RwICppbnRlbF9kcCwgdWludDhfdCBsaW5rX3N0YXR1c1tEUF9MSU5LXwogCQkJCURQX0xJTktf U1RBVFVTX1NJWkUpID09IERQX0xJTktfU1RBVFVTX1NJWkU7CiB9CiAKLXN0YXRpYyBib29sIGlu dGVsX2RwX2dldF95X2NvcmRfc3RhdHVzKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHApCi17Ci0J dWludDhfdCBwc3JfY2FwcyA9IDA7Ci0KLQlpZiAoZHJtX2RwX2RwY2RfcmVhZGIoJmludGVsX2Rw LT5hdXgsIERQX1BTUl9DQVBTLCAmcHNyX2NhcHMpICE9IDEpCi0JCXJldHVybiBmYWxzZTsKLQly ZXR1cm4gcHNyX2NhcHMgJiBEUF9QU1IyX1NVX1lfQ09PUkRJTkFURV9SRVFVSVJFRDsKLX0KLQot c3RhdGljIGJvb2wgaW50ZWxfZHBfZ2V0X2NvbG9yaW1ldHJ5X3N0YXR1cyhzdHJ1Y3QgaW50ZWxf ZHAgKmludGVsX2RwKQotewotCXVpbnQ4X3QgZHByeCA9IDA7Ci0KLQlpZiAoZHJtX2RwX2RwY2Rf cmVhZGIoJmludGVsX2RwLT5hdXgsIERQX0RQUlhfRkVBVFVSRV9FTlVNRVJBVElPTl9MSVNULAot CQkJICAgICAgJmRwcngpICE9IDEpCi0JCXJldHVybiBmYWxzZTsKLQlyZXR1cm4gZHByeCAmIERQ X1ZTQ19TRFBfRVhUX0ZPUl9DT0xPUklNRVRSWV9TVVBQT1JURUQ7Ci19Ci0KLXN0YXRpYyBib29s IGludGVsX2RwX2dldF9hbHBtX3N0YXR1cyhzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQotewot CXVpbnQ4X3QgYWxwbV9jYXBzID0gMDsKLQotCWlmIChkcm1fZHBfZHBjZF9yZWFkYigmaW50ZWxf ZHAtPmF1eCwgRFBfUkVDRUlWRVJfQUxQTV9DQVAsCi0JCQkgICAgICAmYWxwbV9jYXBzKSAhPSAx KQotCQlyZXR1cm4gZmFsc2U7Ci0JcmV0dXJuIGFscG1fY2FwcyAmIERQX0FMUE1fQ0FQOwotfQot CiAvKiBUaGVzZSBhcmUgc291cmNlLXNwZWNpZmljIHZhbHVlcy4gKi8KIHVpbnQ4X3QKIGludGVs X2RwX3ZvbHRhZ2VfbWF4KHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHApCkBAIC0zNzE0LDQwICsz Njg1LDcgQEAgaW50ZWxfZWRwX2luaXRfZHBjZChzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQog CQlkZXZfcHJpdi0+bm9fYXV4X2hhbmRzaGFrZSA9IGludGVsX2RwLT5kcGNkW0RQX01BWF9ET1dO U1BSRUFEXSAmCiAJCQlEUF9OT19BVVhfSEFORFNIQUtFX0xJTktfVFJBSU5JTkc7CiAKLQkvKiBD aGVjayBpZiB0aGUgcGFuZWwgc3VwcG9ydHMgUFNSICovCi0JZHJtX2RwX2RwY2RfcmVhZCgmaW50 ZWxfZHAtPmF1eCwgRFBfUFNSX1NVUFBPUlQsCi0JCQkgaW50ZWxfZHAtPnBzcl9kcGNkLAotCQkJ IHNpemVvZihpbnRlbF9kcC0+cHNyX2RwY2QpKTsKLQlpZiAoaW50ZWxfZHAtPnBzcl9kcGNkWzBd ICYgRFBfUFNSX0lTX1NVUFBPUlRFRCkgewotCQlkZXZfcHJpdi0+cHNyLnNpbmtfc3VwcG9ydCA9 IHRydWU7Ci0JCURSTV9ERUJVR19LTVMoIkRldGVjdGVkIEVEUCBQU1IgUGFuZWwuXG4iKTsKLQl9 Ci0KLQlpZiAoSU5URUxfR0VOKGRldl9wcml2KSA+PSA5ICYmCi0JICAgIChpbnRlbF9kcC0+cHNy X2RwY2RbMF0gJiBEUF9QU1IyX0lTX1NVUFBPUlRFRCkpIHsKLQkJdWludDhfdCBmcmFtZV9zeW5j X2NhcDsKLQotCQlkZXZfcHJpdi0+cHNyLnNpbmtfc3VwcG9ydCA9IHRydWU7Ci0JCWlmIChkcm1f ZHBfZHBjZF9yZWFkYigmaW50ZWxfZHAtPmF1eCwKLQkJCQkgICAgICBEUF9TSU5LX0RFVklDRV9B VVhfRlJBTUVfU1lOQ19DQVAsCi0JCQkJICAgICAgJmZyYW1lX3N5bmNfY2FwKSAhPSAxKQotCQkJ ZnJhbWVfc3luY19jYXAgPSAwOwotCQlkZXZfcHJpdi0+cHNyLmF1eF9mcmFtZV9zeW5jID0gZnJh bWVfc3luY19jYXAgPyB0cnVlIDogZmFsc2U7Ci0JCS8qIFBTUjIgbmVlZHMgZnJhbWUgc3luYyBh cyB3ZWxsICovCi0JCWRldl9wcml2LT5wc3IucHNyMl9zdXBwb3J0ID0gZGV2X3ByaXYtPnBzci5h dXhfZnJhbWVfc3luYzsKLQkJRFJNX0RFQlVHX0tNUygiUFNSMiAlcyBvbiBzaW5rIiwKLQkJCSAg ICAgIGRldl9wcml2LT5wc3IucHNyMl9zdXBwb3J0ID8gInN1cHBvcnRlZCIgOiAibm90IHN1cHBv cnRlZCIpOwotCi0JCWlmIChkZXZfcHJpdi0+cHNyLnBzcjJfc3VwcG9ydCkgewotCQkJZGV2X3By aXYtPnBzci55X2NvcmRfc3VwcG9ydCA9Ci0JCQkJaW50ZWxfZHBfZ2V0X3lfY29yZF9zdGF0dXMo aW50ZWxfZHApOwotCQkJZGV2X3ByaXYtPnBzci5jb2xvcmltZXRyeV9zdXBwb3J0ID0KLQkJCQlp bnRlbF9kcF9nZXRfY29sb3JpbWV0cnlfc3RhdHVzKGludGVsX2RwKTsKLQkJCWRldl9wcml2LT5w c3IuYWxwbSA9Ci0JCQkJaW50ZWxfZHBfZ2V0X2FscG1fc3RhdHVzKGludGVsX2RwKTsKLQkJfQot Ci0JfQorCWludGVsX3Bzcl9pbml0X2RwY2QoaW50ZWxfZHApOwogCiAJLyoKIAkgKiBSZWFkIHRo ZSBlRFAgZGlzcGxheSBjb250cm9sIHJlZ2lzdGVycy4KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgK aW5kZXggM2NlZTU0YmMwMzUyLi5hMzQwYmMwNGRhZDggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Ry di5oCkBAIC0xODUxLDYgKzE4NTEsNyBAQCBib29sIGlzX2hkY3Bfc3VwcG9ydGVkKHN0cnVjdCBk cm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgZW51bSBwb3J0IHBvcnQpOwogCiAvKiBpbnRlbF9w c3IuYyAqLwogI2RlZmluZSBDQU5fUFNSKGRldl9wcml2KSAoSEFTX1BTUihkZXZfcHJpdikgJiYg ZGV2X3ByaXYtPnBzci5zaW5rX3N1cHBvcnQpCit2b2lkIGludGVsX3Bzcl9pbml0X2RwY2Qoc3Ry dWN0IGludGVsX2RwICppbnRlbF9kcCk7CiB2b2lkIGludGVsX3Bzcl9lbmFibGUoc3RydWN0IGlu dGVsX2RwICppbnRlbF9kcCwKIAkJICAgICAgY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUg KmNydGNfc3RhdGUpOwogdm9pZCBpbnRlbF9wc3JfZGlzYWJsZShzdHJ1Y3QgaW50ZWxfZHAgKmlu dGVsX2RwLApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcHNyLmMgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wc3IuYwppbmRleCBjMTJhZjExMTg2NDcuLmExYjg3 ODQ0OWU4MyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcHNyLmMKKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcHNyLmMKQEAgLTU2LDYgKzU2LDc0IEBACiAj aW5jbHVkZSAiaW50ZWxfZHJ2LmgiCiAjaW5jbHVkZSAiaTkxNV9kcnYuaCIKIAorc3RhdGljIGJv b2wgaW50ZWxfZHBfZ2V0X3lfY29yZF9zdGF0dXMoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCkK K3sKKwl1aW50OF90IHBzcl9jYXBzID0gMDsKKworCWlmIChkcm1fZHBfZHBjZF9yZWFkYigmaW50 ZWxfZHAtPmF1eCwgRFBfUFNSX0NBUFMsICZwc3JfY2FwcykgIT0gMSkKKwkJcmV0dXJuIGZhbHNl OworCXJldHVybiBwc3JfY2FwcyAmIERQX1BTUjJfU1VfWV9DT09SRElOQVRFX1JFUVVJUkVEOwor fQorCitzdGF0aWMgYm9vbCBpbnRlbF9kcF9nZXRfY29sb3JpbWV0cnlfc3RhdHVzKHN0cnVjdCBp bnRlbF9kcCAqaW50ZWxfZHApCit7CisJdWludDhfdCBkcHJ4ID0gMDsKKworCWlmIChkcm1fZHBf ZHBjZF9yZWFkYigmaW50ZWxfZHAtPmF1eCwgRFBfRFBSWF9GRUFUVVJFX0VOVU1FUkFUSU9OX0xJ U1QsCisJCQkgICAgICAmZHByeCkgIT0gMSkKKwkJcmV0dXJuIGZhbHNlOworCXJldHVybiBkcHJ4 ICYgRFBfVlNDX1NEUF9FWFRfRk9SX0NPTE9SSU1FVFJZX1NVUFBPUlRFRDsKK30KKworc3RhdGlj IGJvb2wgaW50ZWxfZHBfZ2V0X2FscG1fc3RhdHVzKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAp Cit7CisJdWludDhfdCBhbHBtX2NhcHMgPSAwOworCisJaWYgKGRybV9kcF9kcGNkX3JlYWRiKCZp bnRlbF9kcC0+YXV4LCBEUF9SRUNFSVZFUl9BTFBNX0NBUCwKKwkJCSAgICAgICZhbHBtX2NhcHMp ICE9IDEpCisJCXJldHVybiBmYWxzZTsKKwlyZXR1cm4gYWxwbV9jYXBzICYgRFBfQUxQTV9DQVA7 Cit9CisKK3ZvaWQgaW50ZWxfcHNyX2luaXRfZHBjZChzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2Rw KQoreworCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9CisJCXRvX2k5MTUoZHBf dG9fZGlnX3BvcnQoaW50ZWxfZHApLT5iYXNlLmJhc2UuZGV2KTsKKworCWRybV9kcF9kcGNkX3Jl YWQoJmludGVsX2RwLT5hdXgsIERQX1BTUl9TVVBQT1JULCBpbnRlbF9kcC0+cHNyX2RwY2QsCisJ CQkgc2l6ZW9mKGludGVsX2RwLT5wc3JfZHBjZCkpOworCisJaWYgKGludGVsX2RwLT5wc3JfZHBj ZFswXSAmIERQX1BTUl9JU19TVVBQT1JURUQpIHsKKwkJZGV2X3ByaXYtPnBzci5zaW5rX3N1cHBv cnQgPSB0cnVlOworCQlEUk1fREVCVUdfS01TKCJEZXRlY3RlZCBFRFAgUFNSIFBhbmVsLlxuIik7 CisJfQorCisJaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPj0gOSAmJgorCSAgICAoaW50ZWxfZHAt PnBzcl9kcGNkWzBdICYgRFBfUFNSMl9JU19TVVBQT1JURUQpKSB7CisJCXVpbnQ4X3QgZnJhbWVf c3luY19jYXA7CisKKwkJZGV2X3ByaXYtPnBzci5zaW5rX3N1cHBvcnQgPSB0cnVlOworCQlpZiAo ZHJtX2RwX2RwY2RfcmVhZGIoJmludGVsX2RwLT5hdXgsCisJCQkJICAgICAgRFBfU0lOS19ERVZJ Q0VfQVVYX0ZSQU1FX1NZTkNfQ0FQLAorCQkJCSAgICAgICZmcmFtZV9zeW5jX2NhcCkgIT0gMSkK KwkJCWZyYW1lX3N5bmNfY2FwID0gMDsKKwkJZGV2X3ByaXYtPnBzci5hdXhfZnJhbWVfc3luYyA9 IGZyYW1lX3N5bmNfY2FwID8gdHJ1ZSA6IGZhbHNlOworCQkvKiBQU1IyIG5lZWRzIGZyYW1lIHN5 bmMgYXMgd2VsbCAqLworCQlkZXZfcHJpdi0+cHNyLnBzcjJfc3VwcG9ydCA9IGRldl9wcml2LT5w c3IuYXV4X2ZyYW1lX3N5bmM7CisJCURSTV9ERUJVR19LTVMoIlBTUjIgJXMgb24gc2luayIsCisJ CQkgICAgICBkZXZfcHJpdi0+cHNyLnBzcjJfc3VwcG9ydCA/ICJzdXBwb3J0ZWQiIDogIm5vdCBz dXBwb3J0ZWQiKTsKKworCQlpZiAoZGV2X3ByaXYtPnBzci5wc3IyX3N1cHBvcnQpIHsKKwkJCWRl dl9wcml2LT5wc3IueV9jb3JkX3N1cHBvcnQgPQorCQkJCWludGVsX2RwX2dldF95X2NvcmRfc3Rh dHVzKGludGVsX2RwKTsKKwkJCWRldl9wcml2LT5wc3IuY29sb3JpbWV0cnlfc3VwcG9ydCA9CisJ CQkJaW50ZWxfZHBfZ2V0X2NvbG9yaW1ldHJ5X3N0YXR1cyhpbnRlbF9kcCk7CisJCQlkZXZfcHJp di0+cHNyLmFscG0gPQorCQkJCWludGVsX2RwX2dldF9hbHBtX3N0YXR1cyhpbnRlbF9kcCk7CisJ CX0KKwl9Cit9CisKIHN0YXRpYyBib29sIHZsdl9pc19wc3JfYWN0aXZlX29uX3BpcGUoc3RydWN0 IGRybV9kZXZpY2UgKmRldiwgaW50IHBpcGUpCiB7CiAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2ID0gdG9faTkxNShkZXYpOwotLSAKMi4xNC4xCgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVs LWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv bWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK