From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: [PATCH v3 14/20] drm/i915: Update power domains on readout. Date: Mon, 13 Jul 2015 16:30:27 +0200 Message-ID: <1436797833-11493-15-git-send-email-maarten.lankhorst@linux.intel.com> References: <1436797833-11493-1-git-send-email-maarten.lankhorst@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mblankhorst.nl (mblankhorst.nl [141.105.120.124]) by gabe.freedesktop.org (Postfix) with ESMTPS id AAC436E865 for ; Mon, 13 Jul 2015 07:30:54 -0700 (PDT) In-Reply-To: <1436797833-11493-1-git-send-email-maarten.lankhorst@linux.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 List-Id: intel-gfx@lists.freedesktop.org VGhpcyBhbGxvd3MgdXMgdG8gZ2V0IHJpZCBvZiB0aGUgc2V0X2luaXRfcG93ZXIgaW4KbW9kZXNl dF91cGRhdGVfY3J0Y19kb21haW5zLiBUaGUgc3RhdGUgc2hvdWxkIGJlIHNhbml0aXplZCBlbm91 Z2gKYWZ0ZXIgc2V0dXBfaHdfc3RhdGUgdG8gbm90IG5lZWQgdGhlIGluaXQgcG93ZXIuCgpTaWdu ZWQtb2ZmLWJ5OiBNYWFydGVuIExhbmtob3JzdCA8bWFhcnRlbi5sYW5raG9yc3RAbGludXguaW50 ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyB8IDc2ICsr KysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDUwIGlu c2VydGlvbnMoKyksIDI2IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3Bs YXkuYwppbmRleCA2YmFiMDQ1YjM4OWMuLmY2YzY1NzA2Y2ViZiAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2Rpc3BsYXkuYwpAQCAtNTE5NCw2ICs1MTk0LDkgQEAgc3RhdGljIHVuc2lnbmVkIGxv bmcgZ2V0X2NydGNfcG93ZXJfZG9tYWlucyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCiAJdW5zaWdu ZWQgbG9uZyBtYXNrOwogCWVudW0gdHJhbnNjb2RlciB0cmFuc2NvZGVyOwogCisJaWYgKCFjcnRj LT5zdGF0ZS0+YWN0aXZlKQorCQlyZXR1cm4gMDsKKwogCXRyYW5zY29kZXIgPSBpbnRlbF9waXBl X3RvX2NwdV90cmFuc2NvZGVyKGRldi0+ZGV2X3ByaXZhdGUsIHBpcGUpOwogCiAJbWFzayA9IEJJ VChQT1dFUl9ET01BSU5fUElQRShwaXBlKSk7CkBAIC01MjA4LDI3ICs1MjExLDQ2IEBAIHN0YXRp YyB1bnNpZ25lZCBsb25nIGdldF9jcnRjX3Bvd2VyX2RvbWFpbnMoc3RydWN0IGRybV9jcnRjICpj cnRjKQogCXJldHVybiBtYXNrOwogfQogCi1zdGF0aWMgdm9pZCBtb2Rlc2V0X3VwZGF0ZV9jcnRj X3Bvd2VyX2RvbWFpbnMoc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKQorc3RhdGljIHVu c2lnbmVkIGxvbmcgbW9kZXNldF9nZXRfY3J0Y19wb3dlcl9kb21haW5zKHN0cnVjdCBkcm1fY3J0 YyAqY3J0YykKIHsKLQlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gc3RhdGUtPmRldjsKLQlzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwotCXVuc2ln bmVkIGxvbmcgcGlwZV9kb21haW5zW0k5MTVfTUFYX1BJUEVTXSA9IHsgMCwgfTsKLQlzdHJ1Y3Qg aW50ZWxfY3J0YyAqY3J0YzsKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBj cnRjLT5kZXYtPmRldl9wcml2YXRlOworCXN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjID0g dG9faW50ZWxfY3J0YyhjcnRjKTsKKwllbnVtIGludGVsX2Rpc3BsYXlfcG93ZXJfZG9tYWluIGRv bWFpbjsKKwl1bnNpZ25lZCBsb25nIGRvbWFpbnMsIG5ld19kb21haW5zLCBvbGRfZG9tYWluczsK IAotCS8qCi0JICogRmlyc3QgZ2V0IGFsbCBuZWVkZWQgcG93ZXIgZG9tYWlucywgdGhlbiBwdXQg YWxsIHVubmVlZGVkLCB0byBhdm9pZAotCSAqIGFueSB1bm5lY2Vzc2FyeSB0b2dnbGluZyBvZiB0 aGUgcG93ZXIgd2VsbHMuCi0JICovCi0JZm9yX2VhY2hfaW50ZWxfY3J0YyhkZXYsIGNydGMpIHsK LQkJZW51bSBpbnRlbF9kaXNwbGF5X3Bvd2VyX2RvbWFpbiBkb21haW47CisJb2xkX2RvbWFpbnMg PSBpbnRlbF9jcnRjLT5lbmFibGVkX3Bvd2VyX2RvbWFpbnM7CisJaW50ZWxfY3J0Yy0+ZW5hYmxl ZF9wb3dlcl9kb21haW5zID0gbmV3X2RvbWFpbnMgPSBnZXRfY3J0Y19wb3dlcl9kb21haW5zKGNy dGMpOwogCi0JCWlmICghY3J0Yy0+YmFzZS5zdGF0ZS0+ZW5hYmxlKQotCQkJY29udGludWU7CisJ ZG9tYWlucyA9IG5ld19kb21haW5zICYgfm9sZF9kb21haW5zOworCisJZm9yX2VhY2hfcG93ZXJf ZG9tYWluKGRvbWFpbiwgZG9tYWlucykKKwkJaW50ZWxfZGlzcGxheV9wb3dlcl9nZXQoZGV2X3By aXYsIGRvbWFpbik7CisKKwlyZXR1cm4gb2xkX2RvbWFpbnMgJiB+bmV3X2RvbWFpbnM7Cit9CisK K3N0YXRpYyB2b2lkIG1vZGVzZXRfcHV0X3Bvd2VyX2RvbWFpbnMoc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2LAorCQkJCSAgICAgIHVuc2lnbmVkIGxvbmcgZG9tYWlucykKK3sKKwll bnVtIGludGVsX2Rpc3BsYXlfcG93ZXJfZG9tYWluIGRvbWFpbjsKKworCWZvcl9lYWNoX3Bvd2Vy X2RvbWFpbihkb21haW4sIGRvbWFpbnMpCisJCWludGVsX2Rpc3BsYXlfcG93ZXJfcHV0KGRldl9w cml2LCBkb21haW4pOworfQogCi0JCXBpcGVfZG9tYWluc1tjcnRjLT5waXBlXSA9IGdldF9jcnRj X3Bvd2VyX2RvbWFpbnMoJmNydGMtPmJhc2UpOworc3RhdGljIHZvaWQgbW9kZXNldF91cGRhdGVf Y3J0Y19wb3dlcl9kb21haW5zKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKK3sKKwlz dHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gc3RhdGUtPmRldjsKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOworCXVuc2lnbmVkIGxvbmcgcHV0X2Rv bWFpbnNbSTkxNV9NQVhfUElQRVNdID0ge307CisJc3RydWN0IGRybV9jcnRjX3N0YXRlICpjcnRj X3N0YXRlOworCXN0cnVjdCBkcm1fY3J0YyAqY3J0YzsKKwlpbnQgaTsKIAotCQlmb3JfZWFjaF9w b3dlcl9kb21haW4oZG9tYWluLCBwaXBlX2RvbWFpbnNbY3J0Yy0+cGlwZV0pCi0JCQlpbnRlbF9k aXNwbGF5X3Bvd2VyX2dldChkZXZfcHJpdiwgZG9tYWluKTsKKwlmb3JfZWFjaF9jcnRjX2luX3N0 YXRlKHN0YXRlLCBjcnRjLCBjcnRjX3N0YXRlLCBpKSB7CisJCWlmIChuZWVkc19tb2Rlc2V0KGNy dGMtPnN0YXRlKSkKKwkJCXB1dF9kb21haW5zW3RvX2ludGVsX2NydGMoY3J0YyktPnBpcGVdID0K KwkJCQltb2Rlc2V0X2dldF9jcnRjX3Bvd2VyX2RvbWFpbnMoY3J0Yyk7CiAJfQogCiAJaWYgKGRl dl9wcml2LT5kaXNwbGF5Lm1vZGVzZXRfY29tbWl0X2NkY2xrKSB7CkBAIC01MjM5LDE2ICs1MjYx LDkgQEAgc3RhdGljIHZvaWQgbW9kZXNldF91cGRhdGVfY3J0Y19wb3dlcl9kb21haW5zKHN0cnVj dCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKIAkJCWRldl9wcml2LT5kaXNwbGF5Lm1vZGVzZXRf Y29tbWl0X2NkY2xrKHN0YXRlKTsKIAl9CiAKLQlmb3JfZWFjaF9pbnRlbF9jcnRjKGRldiwgY3J0 YykgewotCQllbnVtIGludGVsX2Rpc3BsYXlfcG93ZXJfZG9tYWluIGRvbWFpbjsKLQotCQlmb3Jf ZWFjaF9wb3dlcl9kb21haW4oZG9tYWluLCBjcnRjLT5lbmFibGVkX3Bvd2VyX2RvbWFpbnMpCi0J CQlpbnRlbF9kaXNwbGF5X3Bvd2VyX3B1dChkZXZfcHJpdiwgZG9tYWluKTsKLQotCQljcnRjLT5l bmFibGVkX3Bvd2VyX2RvbWFpbnMgPSBwaXBlX2RvbWFpbnNbY3J0Yy0+cGlwZV07Ci0JfQotCi0J aW50ZWxfZGlzcGxheV9zZXRfaW5pdF9wb3dlcihkZXZfcHJpdiwgZmFsc2UpOworCWZvciAoaSA9 IDA7IGkgPCBJOTE1X01BWF9QSVBFUzsgaSsrKQorCQlpZiAocHV0X2RvbWFpbnNbaV0pCisJCQlt b2Rlc2V0X3B1dF9wb3dlcl9kb21haW5zKGRldl9wcml2LCBwdXRfZG9tYWluc1tpXSk7CiB9CiAK IHN0YXRpYyB2b2lkIGludGVsX3VwZGF0ZV9tYXhfY2RjbGsoc3RydWN0IGRybV9kZXZpY2UgKmRl dikKQEAgLTE1NTQ3LDYgKzE1NTYyLDE1IEBAIGludGVsX21vZGVzZXRfc2V0dXBfaHdfc3RhdGUo c3RydWN0IGRybV9kZXZpY2UgKmRldikKIAkJc2tsX3dtX2dldF9od19zdGF0ZShkZXYpOwogCWVs c2UgaWYgKEhBU19QQ0hfU1BMSVQoZGV2KSkKIAkJaWxrX3dtX2dldF9od19zdGF0ZShkZXYpOwor CisJZm9yX2VhY2hfaW50ZWxfY3J0YyhkZXYsIGNydGMpIHsKKwkJdW5zaWduZWQgbG9uZyBwdXRf ZG9tYWluczsKKworCQlwdXRfZG9tYWlucyA9IG1vZGVzZXRfZ2V0X2NydGNfcG93ZXJfZG9tYWlu cygmY3J0Yy0+YmFzZSk7CisJCWlmIChXQVJOX09OKHB1dF9kb21haW5zKSkKKwkJCW1vZGVzZXRf cHV0X3Bvd2VyX2RvbWFpbnMoZGV2X3ByaXYsIHB1dF9kb21haW5zKTsKKwl9CisJaW50ZWxfZGlz cGxheV9zZXRfaW5pdF9wb3dlcihkZXZfcHJpdiwgZmFsc2UpOwogfQogCiB2b2lkIGludGVsX2Rp c3BsYXlfcmVzdW1lKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCi0tIAoyLjEuMAoKX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcg bGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVz a3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK