From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ander Conselvan de Oliveira Subject: [PATCH 14/15] drm/i915: Split g4x_crtc_compute_clock() Date: Mon, 21 Mar 2016 18:00:15 +0200 Message-ID: <1458576016-30348-15-git-send-email-ander.conselvan.de.oliveira@intel.com> References: <1458576016-30348-1-git-send-email-ander.conselvan.de.oliveira@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 59B816E060 for ; Mon, 21 Mar 2016 16:00:45 +0000 (UTC) In-Reply-To: <1458576016-30348-1-git-send-email-ander.conselvan.de.oliveira@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: Ander Conselvan de Oliveira List-Id: intel-gfx@lists.freedesktop.org U3BsaXQgYSBHNFggc3BlY2lmaWMgdmVyc2lvbiBmcm9tIGk5eHhfY3J0Y19jb21wdXRlX2Nsb2Nr KCkuIFdpdGggdGhpcwp0aGUgZGlmZmVyZW5jZXMgYmV0d2VlbiBwbGF0Zm9ybXMgYmVjb21lIG1v cmUgb2J2aW91cy4KClNpZ25lZC1vZmYtYnk6IEFuZGVyIENvbnNlbHZhbiBkZSBPbGl2ZWlyYSA8 YW5kZXIuY29uc2VsdmFuLmRlLm9saXZlaXJhQGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgfCA4MiArKysrKysrKysrKysrKysrKysrKysrKy0tLS0t LS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA1MyBpbnNlcnRpb25zKCspLCAyOSBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKaW5kZXggMjQ1ZDZjNi4uNTUyZmQ0 YyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwpAQCAtNTY3LDQwICs1NjcsMTYg QEAgc3RhdGljIGJvb2wgaW50ZWxfcGlwZV93aWxsX2hhdmVfdHlwZShjb25zdCBzdHJ1Y3QgaW50 ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSwKIH0KIAogc3RhdGljIGNvbnN0IGludGVsX2xpbWl0 X3QgKgotaW50ZWxfZzR4X2xpbWl0KHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRl KQotewotCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjcnRjX3N0YXRlLT5iYXNlLmNydGMtPmRl djsKLQljb25zdCBpbnRlbF9saW1pdF90ICpsaW1pdDsKLQotCWlmIChpbnRlbF9waXBlX3dpbGxf aGF2ZV90eXBlKGNydGNfc3RhdGUsIElOVEVMX09VVFBVVF9MVkRTKSkgewotCQlpZiAoaW50ZWxf aXNfZHVhbF9saW5rX2x2ZHMoZGV2KSkKLQkJCWxpbWl0ID0gJmludGVsX2xpbWl0c19nNHhfZHVh bF9jaGFubmVsX2x2ZHM7Ci0JCWVsc2UKLQkJCWxpbWl0ID0gJmludGVsX2xpbWl0c19nNHhfc2lu Z2xlX2NoYW5uZWxfbHZkczsKLQl9IGVsc2UgaWYgKGludGVsX3BpcGVfd2lsbF9oYXZlX3R5cGUo Y3J0Y19zdGF0ZSwgSU5URUxfT1VUUFVUX0hETUkpIHx8Ci0JCSAgIGludGVsX3BpcGVfd2lsbF9o YXZlX3R5cGUoY3J0Y19zdGF0ZSwgSU5URUxfT1VUUFVUX0FOQUxPRykpIHsKLQkJbGltaXQgPSAm aW50ZWxfbGltaXRzX2c0eF9oZG1pOwotCX0gZWxzZSBpZiAoaW50ZWxfcGlwZV93aWxsX2hhdmVf dHlwZShjcnRjX3N0YXRlLCBJTlRFTF9PVVRQVVRfU0RWTykpIHsKLQkJbGltaXQgPSAmaW50ZWxf bGltaXRzX2c0eF9zZHZvOwotCX0gZWxzZSAvKiBUaGUgb3B0aW9uIGlzIGZvciBvdGhlciBvdXRw dXRzICovCi0JCWxpbWl0ID0gJmludGVsX2xpbWl0c19pOXh4X3Nkdm87Ci0KLQlyZXR1cm4gbGlt aXQ7Ci19Ci0KLXN0YXRpYyBjb25zdCBpbnRlbF9saW1pdF90ICoKIGludGVsX2xpbWl0KHN0cnVj dCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlLCBpbnQgcmVmY2xrKQogewogCXN0cnVjdCBk cm1fZGV2aWNlICpkZXYgPSBjcnRjX3N0YXRlLT5iYXNlLmNydGMtPmRldjsKIAljb25zdCBpbnRl bF9saW1pdF90ICpsaW1pdDsKIAogCWlmIChJU19CUk9YVE9OKGRldikgfHwgSVNfQ0hFUlJZVklF VyhkZXYpIHx8IElTX1ZBTExFWVZJRVcoZGV2KSB8fAotCSAgICBIQVNfUENIX1NQTElUKGRldikg fHwgSVNfR0VOMihkZXYpKQorCSAgICBIQVNfUENIX1NQTElUKGRldikgfHwgSVNfRzRYKGRldikg fHwgSVNfR0VOMihkZXYpKQogCQlsaW1pdCA9IE5VTEw7CiAKLQlpZiAoSVNfRzRYKGRldikpIHsK LQkJbGltaXQgPSBpbnRlbF9nNHhfbGltaXQoY3J0Y19zdGF0ZSk7Ci0JfSBlbHNlIGlmIChJU19Q SU5FVklFVyhkZXYpKSB7CisJaWYgKElTX1BJTkVWSUVXKGRldikpIHsKIAkJaWYgKGludGVsX3Bp cGVfd2lsbF9oYXZlX3R5cGUoY3J0Y19zdGF0ZSwgSU5URUxfT1VUUFVUX0xWRFMpKQogCQkJbGlt aXQgPSAmaW50ZWxfbGltaXRzX3BpbmV2aWV3X2x2ZHM7CiAJCWVsc2UKQEAgLTc4ODUsNiArNzg2 MSw0OSBAQCBzdGF0aWMgaW50IGdlbjJfY3J0Y19jb21wdXRlX2Nsb2NrKHN0cnVjdCBpbnRlbF9j cnRjICpjcnRjLAogCXJldHVybiAwOwogfQogCitzdGF0aWMgaW50IGc0eF9jcnRjX2NvbXB1dGVf Y2xvY2soc3RydWN0IGludGVsX2NydGMgKmNydGMsCisJCQkJICBzdHJ1Y3QgaW50ZWxfY3J0Y19z dGF0ZSAqY3J0Y19zdGF0ZSkKK3sKKwlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gY3J0Yy0+YmFz ZS5kZXY7CisJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2LT5kZXZfcHJp dmF0ZTsKKwljb25zdCBpbnRlbF9saW1pdF90ICpsaW1pdDsKKwlpbnQgcmVmY2xrID0gOTYwMDA7 CisKKwltZW1zZXQoJmNydGNfc3RhdGUtPmRwbGxfaHdfc3RhdGUsIDAsCisJICAgICAgIHNpemVv ZihjcnRjX3N0YXRlLT5kcGxsX2h3X3N0YXRlKSk7CisKKwlpZiAoaW50ZWxfcGlwZV93aWxsX2hh dmVfdHlwZShjcnRjX3N0YXRlLCBJTlRFTF9PVVRQVVRfTFZEUykpIHsKKwkJaWYgKGludGVsX3Bh bmVsX3VzZV9zc2MoZGV2X3ByaXYpKSB7CisJCQlyZWZjbGsgPSBkZXZfcHJpdi0+dmJ0Lmx2ZHNf c3NjX2ZyZXE7CisJCQlEUk1fREVCVUdfS01TKCJ1c2luZyBTU0MgcmVmZXJlbmNlIGNsb2NrIG9m ICVkIGtIelxuIiwgcmVmY2xrKTsKKwkJfQorCisJCWlmIChpbnRlbF9pc19kdWFsX2xpbmtfbHZk cyhkZXYpKQorCQkJbGltaXQgPSAmaW50ZWxfbGltaXRzX2c0eF9kdWFsX2NoYW5uZWxfbHZkczsK KwkJZWxzZQorCQkJbGltaXQgPSAmaW50ZWxfbGltaXRzX2c0eF9zaW5nbGVfY2hhbm5lbF9sdmRz OworCX0gZWxzZSBpZiAoaW50ZWxfcGlwZV93aWxsX2hhdmVfdHlwZShjcnRjX3N0YXRlLCBJTlRF TF9PVVRQVVRfSERNSSkgfHwKKwkJICAgaW50ZWxfcGlwZV93aWxsX2hhdmVfdHlwZShjcnRjX3N0 YXRlLCBJTlRFTF9PVVRQVVRfQU5BTE9HKSkgeworCQlsaW1pdCA9ICZpbnRlbF9saW1pdHNfZzR4 X2hkbWk7CisJfSBlbHNlIGlmIChpbnRlbF9waXBlX3dpbGxfaGF2ZV90eXBlKGNydGNfc3RhdGUs IElOVEVMX09VVFBVVF9TRFZPKSkgeworCQlsaW1pdCA9ICZpbnRlbF9saW1pdHNfZzR4X3Nkdm87 CisJfSBlbHNlIHsKKwkJLyogVGhlIG9wdGlvbiBpcyBmb3Igb3RoZXIgb3V0cHV0cyAqLworCQls aW1pdCA9ICZpbnRlbF9saW1pdHNfaTl4eF9zZHZvOworCX0KKworCWlmICghY3J0Y19zdGF0ZS0+ Y2xvY2tfc2V0ICYmCisJICAgICFnNHhfZmluZF9iZXN0X2RwbGwobGltaXQsIGNydGNfc3RhdGUs IGNydGNfc3RhdGUtPnBvcnRfY2xvY2ssCisJCQkJcmVmY2xrLCBOVUxMLCAmY3J0Y19zdGF0ZS0+ ZHBsbCkpIHsKKwkJRFJNX0VSUk9SKCJDb3VsZG4ndCBmaW5kIFBMTCBzZXR0aW5ncyBmb3IgbW9k ZSFcbiIpOworCQlyZXR1cm4gLUVJTlZBTDsKKwl9CisKKwlpOXh4X2NvbXB1dGVfZHBsbChjcnRj LCBjcnRjX3N0YXRlLCBOVUxMKTsKKworCXJldHVybiAwOworfQorCiBzdGF0aWMgaW50IGk5eHhf Y3J0Y19jb21wdXRlX2Nsb2NrKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAogCQkJCSAgIHN0cnVj dCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQogewpAQCAtMTQ5MDYsOSArMTQ5MjUsNyBA QCBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9tb2RlX2NvbmZpZ19mdW5jcyBpbnRlbF9tb2RlX2Z1 bmNzID0gewogICovCiB2b2lkIGludGVsX2luaXRfZGlzcGxheV9ob29rcyhzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiB7Ci0JaWYgKEhBU19QQ0hfU1BMSVQoZGV2X3ByaXYpIHx8 IElTX0c0WChkZXZfcHJpdikpCi0JCWRldl9wcml2LT5kaXNwbGF5LmZpbmRfZHBsbCA9IGc0eF9m aW5kX2Jlc3RfZHBsbDsKLQllbHNlIGlmIChJU19QSU5FVklFVyhkZXZfcHJpdikpCisJaWYgKElT X1BJTkVWSUVXKGRldl9wcml2KSkKIAkJZGV2X3ByaXYtPmRpc3BsYXkuZmluZF9kcGxsID0gcG52 X2ZpbmRfYmVzdF9kcGxsOwogCWVsc2UKIAkJZGV2X3ByaXYtPmRpc3BsYXkuZmluZF9kcGxsID0g aTl4eF9maW5kX2Jlc3RfZHBsbDsKQEAgLTE0OTUxLDYgKzE0OTY4LDEzIEBAIHZvaWQgaW50ZWxf aW5pdF9kaXNwbGF5X2hvb2tzKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIAkJ ZGV2X3ByaXYtPmRpc3BsYXkuY3J0Y19jb21wdXRlX2Nsb2NrID0gdmx2X2NydGNfY29tcHV0ZV9j bG9jazsKIAkJZGV2X3ByaXYtPmRpc3BsYXkuY3J0Y19lbmFibGUgPSB2YWxsZXl2aWV3X2NydGNf ZW5hYmxlOwogCQlkZXZfcHJpdi0+ZGlzcGxheS5jcnRjX2Rpc2FibGUgPSBpOXh4X2NydGNfZGlz YWJsZTsKKwl9IGVsc2UgaWYgKElTX0c0WChkZXZfcHJpdikpIHsKKwkJZGV2X3ByaXYtPmRpc3Bs YXkuZ2V0X3BpcGVfY29uZmlnID0gaTl4eF9nZXRfcGlwZV9jb25maWc7CisJCWRldl9wcml2LT5k aXNwbGF5LmdldF9pbml0aWFsX3BsYW5lX2NvbmZpZyA9CisJCQlpOXh4X2dldF9pbml0aWFsX3Bs YW5lX2NvbmZpZzsKKwkJZGV2X3ByaXYtPmRpc3BsYXkuY3J0Y19jb21wdXRlX2Nsb2NrID0gZzR4 X2NydGNfY29tcHV0ZV9jbG9jazsKKwkJZGV2X3ByaXYtPmRpc3BsYXkuY3J0Y19lbmFibGUgPSBp OXh4X2NydGNfZW5hYmxlOworCQlkZXZfcHJpdi0+ZGlzcGxheS5jcnRjX2Rpc2FibGUgPSBpOXh4 X2NydGNfZGlzYWJsZTsKIAl9IGVsc2UgaWYgKCFJU19HRU4yKGRldl9wcml2KSkgewogCQlkZXZf cHJpdi0+ZGlzcGxheS5nZXRfcGlwZV9jb25maWcgPSBpOXh4X2dldF9waXBlX2NvbmZpZzsKIAkJ ZGV2X3ByaXYtPmRpc3BsYXkuZ2V0X2luaXRpYWxfcGxhbmVfY29uZmlnID0KLS0gCjIuNC4zCgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZngg bWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0 cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK