From mboxrd@z Thu Jan 1 00:00:00 1970 From: Imre Deak Subject: [PATCH 18/23] drm/i915/icl: Split getting the DPLLs to port type specific functions Date: Tue, 4 Jun 2019 17:58:21 +0300 Message-ID: <20190604145826.16424-19-imre.deak@intel.com> References: <20190604145826.16424-1-imre.deak@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id DEEFE8999C for ; Tue, 4 Jun 2019 14:59:44 +0000 (UTC) In-Reply-To: <20190604145826.16424-1-imre.deak@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: Daniel Vetter List-Id: intel-gfx@lists.freedesktop.org Rm9yIGNsYXJpdHkgZmFjdG9yIG91dCB0aGUgY29tYm8gUEhZIGFuZCBUeXBlQyBQSFkgc3BlY2lm aWMgY29kZSBmcm9tCmljbF9nZXRfZHBsbHMoKSBpbnRvIHRoZWlyIG93biBmdW5jdGlvbnMuCgpO byBmdW5jdGlvbmFsIGNoYW5nZXMuCgpDYzogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxh QGxpbnV4LmludGVsLmNvbT4KQ2M6IERhbmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0ZXJAZmZ3bGwu Y2g+CkNjOiBNYWFydGVuIExhbmtob3JzdCA8bWFhcnRlbi5sYW5raG9yc3RAbGludXguaW50ZWwu Y29tPgpTaWduZWQtb2ZmLWJ5OiBJbXJlIERlYWsgPGltcmUuZGVha0BpbnRlbC5jb20+Ci0tLQog ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHBsbF9tZ3IuYyB8IDEwMCArKysrKysrKysrKysr KysrKy0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDY2IGluc2VydGlvbnMoKyksIDM0IGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwbGxfbWdy LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcGxsX21nci5jCmluZGV4IDllOGRjMDI1 ZDhmNy4uZDJjYTJjNjc2ZjAzIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kcGxsX21nci5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwbGxfbWdyLmMK QEAgLTI4NTYsNTEgKzI4NTYsNjYgQEAgc3RhdGljIGJvb2wgaWNsX2NhbGNfbWdfcGxsX3N0YXRl KHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlLAogCXJldHVybiB0cnVlOwogfQog Ci1zdGF0aWMgYm9vbCBpY2xfZ2V0X2RwbGxzKHN0cnVjdCBpbnRlbF9hdG9taWNfc3RhdGUgKnN0 YXRlLAotCQkJICBzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YywKLQkJCSAgc3RydWN0IGludGVsX2Vu Y29kZXIgKmVuY29kZXIpCitzdGF0aWMgYm9vbCBpY2xfZ2V0X2NvbWJvX3BoeV9kcGxsKHN0cnVj dCBpbnRlbF9hdG9taWNfc3RhdGUgKnN0YXRlLAorCQkJCSAgIHN0cnVjdCBpbnRlbF9jcnRjICpj cnRjLAorCQkJCSAgIHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyKQoreworCXN0cnVjdCBp bnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlID0KKwkJaW50ZWxfYXRvbWljX2dldF9uZXdfY3J0 Y19zdGF0ZShzdGF0ZSwgY3J0Yyk7CisJc3RydWN0IGludGVsX3NoYXJlZF9kcGxsICpwbGw7CisK KwlpZiAoIWljbF9jYWxjX2RwbGxfc3RhdGUoY3J0Y19zdGF0ZSwgZW5jb2RlciwKKwkJCQkgJmNy dGNfc3RhdGUtPmRwbGxfaHdfc3RhdGUpKSB7CisJCURSTV9ERUJVR19LTVMoIkNvdWxkIG5vdCBj YWxjdWxhdGUgY29tYm8gUEhZIFBMTCBzdGF0ZS5cbiIpOworCisJCXJldHVybiBmYWxzZTsKKwl9 CisKKwlwbGwgPSBpbnRlbF9maW5kX3NoYXJlZF9kcGxsKHN0YXRlLCBjcnRjLCAmY3J0Y19zdGF0 ZS0+ZHBsbF9od19zdGF0ZSwKKwkJCQkgICAgIERQTExfSURfSUNMX0RQTEwwLAorCQkJCSAgICAg RFBMTF9JRF9JQ0xfRFBMTDEpOworCWlmICghcGxsKSB7CisJCURSTV9ERUJVR19LTVMoIk5vIGNv bWJvIFBIWSBQTEwgZm91bmQgZm9yIHBvcnQgJWNcbiIsCisJCQkgICAgICBwb3J0X25hbWUoZW5j b2Rlci0+cG9ydCkpOworCQlyZXR1cm4gZmFsc2U7CisJfQorCisJaW50ZWxfcmVmZXJlbmNlX3No YXJlZF9kcGxsKHN0YXRlLCBjcnRjLAorCQkJCSAgICBwbGwsICZjcnRjX3N0YXRlLT5kcGxsX2h3 X3N0YXRlKTsKKworCWNydGNfc3RhdGUtPnNoYXJlZF9kcGxsID0gcGxsOworCisJcmV0dXJuIHRy dWU7Cit9CisKK3N0YXRpYyBib29sIGljbF9nZXRfdGNfcGh5X2RwbGxzKHN0cnVjdCBpbnRlbF9h dG9taWNfc3RhdGUgKnN0YXRlLAorCQkJCSBzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YywKKwkJCQkg c3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIpCiB7CiAJc3RydWN0IGRybV9pOTE1X3ByaXZh dGUgKmRldl9wcml2ID0gdG9faTkxNShzdGF0ZS0+YmFzZS5kZXYpOwogCXN0cnVjdCBpbnRlbF9j cnRjX3N0YXRlICpjcnRjX3N0YXRlID0KIAkJaW50ZWxfYXRvbWljX2dldF9uZXdfY3J0Y19zdGF0 ZShzdGF0ZSwgY3J0Yyk7Ci0Jc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqaW50ZWxfZGlnX3Bv cnQ7CisJZW51bSB0Y19wb3J0IHRjX3BvcnQgPSBpbnRlbF9wb3J0X3RvX3RjKGRldl9wcml2LCBl bmNvZGVyLT5wb3J0KTsKKwlzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICpkaWdfcG9ydDsKIAlz dHJ1Y3QgaW50ZWxfc2hhcmVkX2RwbGwgKnBsbDsKLQllbnVtIHBvcnQgcG9ydCA9IGVuY29kZXIt PnBvcnQ7CiAJZW51bSBpbnRlbF9kcGxsX2lkIG1pbiwgbWF4OwogCWJvb2wgcmV0OwogCi0JaWYg KGludGVsX3BvcnRfaXNfY29tYm9waHkoZGV2X3ByaXYsIHBvcnQpKSB7Ci0JCW1pbiA9IERQTExf SURfSUNMX0RQTEwwOwotCQltYXggPSBEUExMX0lEX0lDTF9EUExMMTsKKwlpZiAoZW5jb2Rlci0+ dHlwZSA9PSBJTlRFTF9PVVRQVVRfRFBfTVNUKQorCQlkaWdfcG9ydCA9IGVuY190b19tc3QoJmVu Y29kZXItPmJhc2UpLT5wcmltYXJ5OworCWVsc2UKKwkJZGlnX3BvcnQgPSBlbmNfdG9fZGlnX3Bv cnQoJmVuY29kZXItPmJhc2UpOworCisJaWYgKGRpZ19wb3J0LT50Y19tb2RlID09IFRDX1BPUlRf VEJUX0FMVCkgeworCQltaW4gPSBEUExMX0lEX0lDTF9UQlRQTEw7CisJCW1heCA9IG1pbjsKIAkJ cmV0ID0gaWNsX2NhbGNfZHBsbF9zdGF0ZShjcnRjX3N0YXRlLCBlbmNvZGVyLAogCQkJCQkgICZj cnRjX3N0YXRlLT5kcGxsX2h3X3N0YXRlKTsKLQl9IGVsc2UgaWYgKGludGVsX3BvcnRfaXNfdGMo ZGV2X3ByaXYsIHBvcnQpKSB7Ci0JCWlmIChlbmNvZGVyLT50eXBlID09IElOVEVMX09VVFBVVF9E UF9NU1QpIHsKLQkJCXN0cnVjdCBpbnRlbF9kcF9tc3RfZW5jb2RlciAqbXN0X2VuY29kZXI7Ci0K LQkJCW1zdF9lbmNvZGVyID0gZW5jX3RvX21zdCgmZW5jb2Rlci0+YmFzZSk7Ci0JCQlpbnRlbF9k aWdfcG9ydCA9IG1zdF9lbmNvZGVyLT5wcmltYXJ5OwotCQl9IGVsc2UgewotCQkJaW50ZWxfZGln X3BvcnQgPSBlbmNfdG9fZGlnX3BvcnQoJmVuY29kZXItPmJhc2UpOwotCQl9Ci0KLQkJaWYgKGlu dGVsX2RpZ19wb3J0LT50Y19tb2RlID09IFRDX1BPUlRfVEJUX0FMVCkgewotCQkJbWluID0gRFBM TF9JRF9JQ0xfVEJUUExMOwotCQkJbWF4ID0gbWluOwotCQkJcmV0ID0gaWNsX2NhbGNfZHBsbF9z dGF0ZShjcnRjX3N0YXRlLCBlbmNvZGVyLAotCQkJCQkJICAmY3J0Y19zdGF0ZS0+ZHBsbF9od19z dGF0ZSk7Ci0JCX0gZWxzZSB7Ci0JCQllbnVtIHRjX3BvcnQgdGNfcG9ydDsKLQotCQkJdGNfcG9y dCA9IGludGVsX3BvcnRfdG9fdGMoZGV2X3ByaXYsIHBvcnQpOwotCQkJbWluID0gaWNsX3RjX3Bv cnRfdG9fcGxsX2lkKHRjX3BvcnQpOwotCQkJbWF4ID0gbWluOwotCQkJcmV0ID0gaWNsX2NhbGNf bWdfcGxsX3N0YXRlKGNydGNfc3RhdGUsCi0JCQkJCQkgICAgJmNydGNfc3RhdGUtPmRwbGxfaHdf c3RhdGUpOwotCQl9CiAJfSBlbHNlIHsKLQkJTUlTU0lOR19DQVNFKHBvcnQpOwotCQlyZXR1cm4g ZmFsc2U7CisJCW1pbiA9IGljbF90Y19wb3J0X3RvX3BsbF9pZCh0Y19wb3J0KTsKKwkJbWF4ID0g bWluOworCQlyZXQgPSBpY2xfY2FsY19tZ19wbGxfc3RhdGUoY3J0Y19zdGF0ZSwKKwkJCQkJICAg ICZjcnRjX3N0YXRlLT5kcGxsX2h3X3N0YXRlKTsKIAl9CiAKIAlpZiAoIXJldCkgewpAQCAtMjky NSw2ICsyOTQwLDIzIEBAIHN0YXRpYyBib29sIGljbF9nZXRfZHBsbHMoc3RydWN0IGludGVsX2F0 b21pY19zdGF0ZSAqc3RhdGUsCiAJcmV0dXJuIHRydWU7CiB9CiAKK3N0YXRpYyBib29sIGljbF9n ZXRfZHBsbHMoc3RydWN0IGludGVsX2F0b21pY19zdGF0ZSAqc3RhdGUsCisJCQkgIHN0cnVjdCBp bnRlbF9jcnRjICpjcnRjLAorCQkJICBzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlcikKK3sK KwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KHN0YXRlLT5iYXNl LmRldik7CisJZW51bSBwb3J0IHBvcnQgPSBlbmNvZGVyLT5wb3J0OworCisJaWYgKGludGVsX3Bv cnRfaXNfY29tYm9waHkoZGV2X3ByaXYsIHBvcnQpKQorCQlyZXR1cm4gaWNsX2dldF9jb21ib19w aHlfZHBsbChzdGF0ZSwgY3J0YywgZW5jb2Rlcik7CisJZWxzZSBpZiAoaW50ZWxfcG9ydF9pc190 YyhkZXZfcHJpdiwgcG9ydCkpCisJCXJldHVybiBpY2xfZ2V0X3RjX3BoeV9kcGxscyhzdGF0ZSwg Y3J0YywgZW5jb2Rlcik7CisKKwlNSVNTSU5HX0NBU0UocG9ydCk7CisKKwlyZXR1cm4gZmFsc2U7 Cit9CisKIHN0YXRpYyBib29sIG1nX3BsbF9nZXRfaHdfc3RhdGUoc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2LAogCQkJCXN0cnVjdCBpbnRlbF9zaGFyZWRfZHBsbCAqcGxsLAogCQkJ CXN0cnVjdCBpbnRlbF9kcGxsX2h3X3N0YXRlICpod19zdGF0ZSkKLS0gCjIuMTcuMQoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxp bmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4