From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rodrigo Vivi Subject: [RFC 6/8] drm/i915: Consolidate cdclk hooks. Date: Thu, 18 Oct 2018 16:34:45 -0700 Message-ID: <20181018233447.5187-7-rodrigo.vivi@intel.com> References: <20181018233447.5187-1-rodrigo.vivi@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by gabe.freedesktop.org (Postfix) with ESMTPS id 418056E12B for ; Thu, 18 Oct 2018 23:35:00 +0000 (UTC) In-Reply-To: <20181018233447.5187-1-rodrigo.vivi@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: lucas.demarchi@intel.com, Rodrigo Vivi List-Id: intel-gfx@lists.freedesktop.org V2UgZG9uJ3QgbmVlZCAyIGRpZmZlcmVudCBibG9ja3MuClNwZWNpYWxseSB3aXRoIG9uIGluIG9y ZGVyZWQgb2xkZXItdG8tbmV3ZXIgYW5kIHRoZSBvdGhlcgpvbmUgbmV3ZXItdG8tb2xkZXIuCgpM ZXQncyBzdGFydCBhbHdheXMgdXNpbmcgbmV3ZXItdG8tb2xkZXIgb3JkZXIKd2hlbiBpdCBtYWtl cyBzZW5zZS4KClNpZ25lZC1vZmYtYnk6IFJvZHJpZ28gVml2aSA8cm9kcmlnby52aXZpQGludGVs LmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jZGNsay5jIHwgOTEgKysrKysr KysrKysrKystLS0tLS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNDIgaW5zZXJ0aW9ucygr KSwgNDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfY2RjbGsuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2NkY2xrLmMKaW5kZXggOTE1 ZTJjOTM0MTJiLi4zNmRiMWZhZDE2MGIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2NkY2xrLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY2RjbGsuYwpA QCAtMjc3Nyw4MCArMjc3Nyw3MyBAQCB2b2lkIGludGVsX3VwZGF0ZV9yYXdjbGsoc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogICovCiB2b2lkIGludGVsX2luaXRfY2RjbGtfaG9v a3Moc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogewotCWlmIChJU19DSEVSUllW SUVXKGRldl9wcml2KSkgewotCQlkZXZfcHJpdi0+ZGlzcGxheS5zZXRfY2RjbGsgPSBjaHZfc2V0 X2NkY2xrOwotCQlkZXZfcHJpdi0+ZGlzcGxheS5tb2Rlc2V0X2NhbGNfY2RjbGsgPQotCQkJdmx2 X21vZGVzZXRfY2FsY19jZGNsazsKLQl9IGVsc2UgaWYgKElTX1ZBTExFWVZJRVcoZGV2X3ByaXYp KSB7Ci0JCWRldl9wcml2LT5kaXNwbGF5LnNldF9jZGNsayA9IHZsdl9zZXRfY2RjbGs7Ci0JCWRl dl9wcml2LT5kaXNwbGF5Lm1vZGVzZXRfY2FsY19jZGNsayA9Ci0JCQl2bHZfbW9kZXNldF9jYWxj X2NkY2xrOwotCX0gZWxzZSBpZiAoSVNfQlJPQURXRUxMKGRldl9wcml2KSkgewotCQlkZXZfcHJp di0+ZGlzcGxheS5zZXRfY2RjbGsgPSBiZHdfc2V0X2NkY2xrOwotCQlkZXZfcHJpdi0+ZGlzcGxh eS5tb2Rlc2V0X2NhbGNfY2RjbGsgPQotCQkJYmR3X21vZGVzZXRfY2FsY19jZGNsazsKLQl9IGVs c2UgaWYgKElTX0dFTjlfTFAoZGV2X3ByaXYpKSB7Ci0JCWRldl9wcml2LT5kaXNwbGF5LnNldF9j ZGNsayA9IGJ4dF9zZXRfY2RjbGs7Ci0JCWRldl9wcml2LT5kaXNwbGF5Lm1vZGVzZXRfY2FsY19j ZGNsayA9Ci0JCQlieHRfbW9kZXNldF9jYWxjX2NkY2xrOwotCX0gZWxzZSBpZiAoSVNfR0VOOV9C QyhkZXZfcHJpdikpIHsKLQkJZGV2X3ByaXYtPmRpc3BsYXkuc2V0X2NkY2xrID0gc2tsX3NldF9j ZGNsazsKLQkJZGV2X3ByaXYtPmRpc3BsYXkubW9kZXNldF9jYWxjX2NkY2xrID0KLQkJCXNrbF9t b2Rlc2V0X2NhbGNfY2RjbGs7CisJaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPj0gMTEpIHsKKwkJ ZGV2X3ByaXYtPmRpc3BsYXkuc2V0X2NkY2xrID0gaWNsX3NldF9jZGNsazsKKwkJZGV2X3ByaXYt PmRpc3BsYXkubW9kZXNldF9jYWxjX2NkY2xrID0gaWNsX21vZGVzZXRfY2FsY19jZGNsazsKKwkJ ZGV2X3ByaXYtPmRpc3BsYXkuZ2V0X2NkY2xrID0gaWNsX2dldF9jZGNsazsKIAl9IGVsc2UgaWYg KElTX0dFTjEwKGRldl9wcml2KSkgewogCQlkZXZfcHJpdi0+ZGlzcGxheS5zZXRfY2RjbGsgPSBj bmxfc2V0X2NkY2xrOwogCQlkZXZfcHJpdi0+ZGlzcGxheS5tb2Rlc2V0X2NhbGNfY2RjbGsgPQog CQkJY25sX21vZGVzZXRfY2FsY19jZGNsazsKLQl9IGVsc2UgaWYgKElOVEVMX0dFTihkZXZfcHJp dikgPj0gMTEpIHsKLQkJZGV2X3ByaXYtPmRpc3BsYXkuc2V0X2NkY2xrID0gaWNsX3NldF9jZGNs azsKLQkJZGV2X3ByaXYtPmRpc3BsYXkubW9kZXNldF9jYWxjX2NkY2xrID0gaWNsX21vZGVzZXRf Y2FsY19jZGNsazsKLQl9Ci0KLQlpZiAoSU5URUxfR0VOKGRldl9wcml2KSA+PSAxMSkKLQkJZGV2 X3ByaXYtPmRpc3BsYXkuZ2V0X2NkY2xrID0gaWNsX2dldF9jZGNsazsKLQllbHNlIGlmIChJU19H RU4xMChkZXZfcHJpdikpCiAJCWRldl9wcml2LT5kaXNwbGF5LmdldF9jZGNsayA9IGNubF9nZXRf Y2RjbGs7Ci0JZWxzZSBpZiAoSVNfR0VOOV9CQyhkZXZfcHJpdikpCisJfSBlbHNlIGlmIChJU19H RU45X0JDKGRldl9wcml2KSkgeworCQlkZXZfcHJpdi0+ZGlzcGxheS5zZXRfY2RjbGsgPSBza2xf c2V0X2NkY2xrOworCQlkZXZfcHJpdi0+ZGlzcGxheS5tb2Rlc2V0X2NhbGNfY2RjbGsgPQorCQkJ c2tsX21vZGVzZXRfY2FsY19jZGNsazsKIAkJZGV2X3ByaXYtPmRpc3BsYXkuZ2V0X2NkY2xrID0g c2tsX2dldF9jZGNsazsKLQllbHNlIGlmIChJU19HRU45X0xQKGRldl9wcml2KSkKKwl9IGVsc2Ug aWYgKElTX0dFTjlfTFAoZGV2X3ByaXYpKSB7CisJCWRldl9wcml2LT5kaXNwbGF5LnNldF9jZGNs ayA9IGJ4dF9zZXRfY2RjbGs7CisJCWRldl9wcml2LT5kaXNwbGF5Lm1vZGVzZXRfY2FsY19jZGNs ayA9CisJCQlieHRfbW9kZXNldF9jYWxjX2NkY2xrOwogCQlkZXZfcHJpdi0+ZGlzcGxheS5nZXRf Y2RjbGsgPSBieHRfZ2V0X2NkY2xrOwotCWVsc2UgaWYgKElTX0JST0FEV0VMTChkZXZfcHJpdikp CisJfSBlbHNlIGlmIChJU19CUk9BRFdFTEwoZGV2X3ByaXYpKSB7CisJCWRldl9wcml2LT5kaXNw bGF5LnNldF9jZGNsayA9IGJkd19zZXRfY2RjbGs7CisJCWRldl9wcml2LT5kaXNwbGF5Lm1vZGVz ZXRfY2FsY19jZGNsayA9CisJCQliZHdfbW9kZXNldF9jYWxjX2NkY2xrOwogCQlkZXZfcHJpdi0+ ZGlzcGxheS5nZXRfY2RjbGsgPSBiZHdfZ2V0X2NkY2xrOwotCWVsc2UgaWYgKElTX0hBU1dFTEwo ZGV2X3ByaXYpKQorCX0gZWxzZSBpZiAoSVNfSEFTV0VMTChkZXZfcHJpdikpIHsKIAkJZGV2X3By aXYtPmRpc3BsYXkuZ2V0X2NkY2xrID0gaHN3X2dldF9jZGNsazsKLQllbHNlIGlmIChJU19WQUxM RVlWSUVXKGRldl9wcml2KSB8fCBJU19DSEVSUllWSUVXKGRldl9wcml2KSkKKwl9IGVsc2UgaWYg KElTX0NIRVJSWVZJRVcoZGV2X3ByaXYpKSB7CisJCWRldl9wcml2LT5kaXNwbGF5LnNldF9jZGNs ayA9IGNodl9zZXRfY2RjbGs7CisJCWRldl9wcml2LT5kaXNwbGF5Lm1vZGVzZXRfY2FsY19jZGNs ayA9CisJCQl2bHZfbW9kZXNldF9jYWxjX2NkY2xrOwogCQlkZXZfcHJpdi0+ZGlzcGxheS5nZXRf Y2RjbGsgPSB2bHZfZ2V0X2NkY2xrOwotCWVsc2UgaWYgKElTX0dFTjYoZGV2X3ByaXYpIHx8IElT X0lWWUJSSURHRShkZXZfcHJpdikpCisJfSBlbHNlIGlmIChJU19WQUxMRVlWSUVXKGRldl9wcml2 KSkgeworCQlkZXZfcHJpdi0+ZGlzcGxheS5zZXRfY2RjbGsgPSB2bHZfc2V0X2NkY2xrOworCQlk ZXZfcHJpdi0+ZGlzcGxheS5tb2Rlc2V0X2NhbGNfY2RjbGsgPQorCQkJdmx2X21vZGVzZXRfY2Fs Y19jZGNsazsKKwkJZGV2X3ByaXYtPmRpc3BsYXkuZ2V0X2NkY2xrID0gdmx2X2dldF9jZGNsazsK Kwl9IGVsc2UgaWYgKElTX0dFTjYoZGV2X3ByaXYpIHx8IElTX0lWWUJSSURHRShkZXZfcHJpdikp IHsKIAkJZGV2X3ByaXYtPmRpc3BsYXkuZ2V0X2NkY2xrID0gZml4ZWRfNDAwbWh6X2dldF9jZGNs azsKLQllbHNlIGlmIChJU19HRU41KGRldl9wcml2KSkKKwl9IGVsc2UgaWYgKElTX0dFTjUoZGV2 X3ByaXYpKSB7CiAJCWRldl9wcml2LT5kaXNwbGF5LmdldF9jZGNsayA9IGZpeGVkXzQ1MG1oel9n ZXRfY2RjbGs7Ci0JZWxzZSBpZiAoSVNfR000NShkZXZfcHJpdikpCisJfSBlbHNlIGlmIChJU19H TTQ1KGRldl9wcml2KSkgewogCQlkZXZfcHJpdi0+ZGlzcGxheS5nZXRfY2RjbGsgPSBnbTQ1X2dl dF9jZGNsazsKLQllbHNlIGlmIChJU19HNDUoZGV2X3ByaXYpKQorCX0gZWxzZSBpZiAoSVNfRzQ1 KGRldl9wcml2KSkgewogCQlkZXZfcHJpdi0+ZGlzcGxheS5nZXRfY2RjbGsgPSBnMzNfZ2V0X2Nk Y2xrOwotCWVsc2UgaWYgKElTX0k5NjVHTShkZXZfcHJpdikpCisJfSBlbHNlIGlmIChJU19JOTY1 R00oZGV2X3ByaXYpKSB7CiAJCWRldl9wcml2LT5kaXNwbGF5LmdldF9jZGNsayA9IGk5NjVnbV9n ZXRfY2RjbGs7Ci0JZWxzZSBpZiAoSVNfSTk2NUcoZGV2X3ByaXYpKQorCX0gZWxzZSBpZiAoSVNf STk2NUcoZGV2X3ByaXYpKSB7CiAJCWRldl9wcml2LT5kaXNwbGF5LmdldF9jZGNsayA9IGZpeGVk XzQwMG1oel9nZXRfY2RjbGs7Ci0JZWxzZSBpZiAoSVNfUElORVZJRVcoZGV2X3ByaXYpKQorCX0g ZWxzZSBpZiAoSVNfUElORVZJRVcoZGV2X3ByaXYpKSB7CiAJCWRldl9wcml2LT5kaXNwbGF5Lmdl dF9jZGNsayA9IHBudl9nZXRfY2RjbGs7Ci0JZWxzZSBpZiAoSVNfRzMzKGRldl9wcml2KSkKKwl9 IGVsc2UgaWYgKElTX0czMyhkZXZfcHJpdikpIHsKIAkJZGV2X3ByaXYtPmRpc3BsYXkuZ2V0X2Nk Y2xrID0gZzMzX2dldF9jZGNsazsKLQllbHNlIGlmIChJU19JOTQ1R00oZGV2X3ByaXYpKQorCX0g ZWxzZSBpZiAoSVNfSTk0NUdNKGRldl9wcml2KSkgewogCQlkZXZfcHJpdi0+ZGlzcGxheS5nZXRf Y2RjbGsgPSBpOTQ1Z21fZ2V0X2NkY2xrOwotCWVsc2UgaWYgKElTX0k5NDVHKGRldl9wcml2KSkK Kwl9IGVsc2UgaWYgKElTX0k5NDVHKGRldl9wcml2KSkgewogCQlkZXZfcHJpdi0+ZGlzcGxheS5n ZXRfY2RjbGsgPSBmaXhlZF80MDBtaHpfZ2V0X2NkY2xrOwotCWVsc2UgaWYgKElTX0k5MTVHTShk ZXZfcHJpdikpCisJfSBlbHNlIGlmIChJU19JOTE1R00oZGV2X3ByaXYpKSB7CiAJCWRldl9wcml2 LT5kaXNwbGF5LmdldF9jZGNsayA9IGk5MTVnbV9nZXRfY2RjbGs7Ci0JZWxzZSBpZiAoSVNfSTkx NUcoZGV2X3ByaXYpKQorCX0gZWxzZSBpZiAoSVNfSTkxNUcoZGV2X3ByaXYpKSB7CiAJCWRldl9w cml2LT5kaXNwbGF5LmdldF9jZGNsayA9IGZpeGVkXzMzM21oel9nZXRfY2RjbGs7Ci0JZWxzZSBp ZiAoSVNfSTg2NUcoZGV2X3ByaXYpKQorCX0gZWxzZSBpZiAoSVNfSTg2NUcoZGV2X3ByaXYpKSB7 CiAJCWRldl9wcml2LT5kaXNwbGF5LmdldF9jZGNsayA9IGZpeGVkXzI2Nm1oel9nZXRfY2RjbGs7 Ci0JZWxzZSBpZiAoSVNfSTg1WChkZXZfcHJpdikpCisJfSBlbHNlIGlmIChJU19JODVYKGRldl9w cml2KSkgewogCQlkZXZfcHJpdi0+ZGlzcGxheS5nZXRfY2RjbGsgPSBpODV4X2dldF9jZGNsazsK LQllbHNlIGlmIChJU19JODQ1RyhkZXZfcHJpdikpCisJfSBlbHNlIGlmIChJU19JODQ1RyhkZXZf cHJpdikpIHsKIAkJZGV2X3ByaXYtPmRpc3BsYXkuZ2V0X2NkY2xrID0gZml4ZWRfMjAwbWh6X2dl dF9jZGNsazsKLQllbHNlIHsgLyogODMwICovCisJfSBlbHNlIHsgLyogODMwICovCiAJCVdBUk4o IUlTX0k4MzAoZGV2X3ByaXYpLAogCQkgICAgICJVbmtub3duIHBsYXRmb3JtLiBBc3N1bWluZyAx MzMgTUh6IENEQ0xLXG4iKTsKIAkJZGV2X3ByaXYtPmRpc3BsYXkuZ2V0X2NkY2xrID0gZml4ZWRf MTMzbWh6X2dldF9jZGNsazsKLS0gCjIuMTkuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlz dHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4v bGlzdGluZm8vaW50ZWwtZ2Z4Cg==