From mboxrd@z Thu Jan 1 00:00:00 1970 From: Imre Deak Subject: [PATCH v3 2/2] drm/i915/icl: Do read-modify-write as needed during MG PLL programming Date: Tue, 19 Jun 2018 19:41:15 +0300 Message-ID: <20180619164115.7835-1-imre.deak@intel.com> References: <20180619154455.302-1-imre.deak@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTPS id 057A06E5A1 for ; Tue, 19 Jun 2018 16:42:09 +0000 (UTC) In-Reply-To: <20180619154455.302-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: Vandita Kulkarni , Paulo Zanoni List-Id: intel-gfx@lists.freedesktop.org U29tZSBNRyBQTEwgcmVnaXN0ZXJzIGhhdmUgZmllbGRzIHRoYXQgbmVlZCB0byBiZSBwcmVzZXJ2 ZWQgYXQgdGhlaXIgSFcKZGVmYXVsdCBvciBCSU9TIHByb2dyYW1tZWQgdmFsdWVzLiBTbyBtYWtl IHN1cmUgd2UgcHJlc2VydmUgdGhlbS4KCnYyOgotIEFkZCBjb21tZW50IHRvIGljbF9tZ19wbGxf d3JpdGUoKSBleHBsYWluaW5nIHRoZSBuZWVkIGZvciByZWdpc3RlcgogIG1hc2tzLiAoVmFuZGl0 YSkKLSBGaXggcGF0Y2h3b3JrIGNoZWNrcGF0Y2ggd2FybmluZy4KCnYzOgotIFJlYmFzZSBvbiBk cm0tdGlwLgoKQ2M6IFZhbmRpdGEgS3Vsa2FybmkgPHZhbmRpdGEua3Vsa2FybmlAaW50ZWwuY29t PgpDYzogUGF1bG8gWmFub25pIDxwYXVsby5yLnphbm9uaUBpbnRlbC5jb20+CkNjOiBKYW1lcyBB dXNtdXMgPGphbWVzLmF1c211c0BpbnRlbC5jb20+ClNpZ25lZC1vZmYtYnk6IEltcmUgRGVhayA8 aW1yZS5kZWFrQGludGVsLmNvbT4KUmV2aWV3ZWQtYnk6IEphbWVzIEF1c211cyA8amFtZXMuYXVz bXVzQGludGVsLmNvbT4gKHYxKQotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmgg ICAgICAgfCAxMyArKysrKysrKysrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwbGxf bWdyLmMgfCAzOSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLQogMiBmaWxlcyBj aGFuZ2VkLCA0OCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X3JlZy5oCmluZGV4IDRiZmQ3YTliZDc1Zi4uNjViMjIyMjg3ZWU0IDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfcmVnLmgKQEAgLTkwNDcsNiArOTA0Nyw3IEBAIGVudW0gc2tsX3Bvd2VyX2dhdGUgewogI2Rl ZmluZSBfTUdfUkVGQ0xLSU5fQ1RMX1BPUlQzCQkJCTB4MTZBOTJDCiAjZGVmaW5lIF9NR19SRUZD TEtJTl9DVExfUE9SVDQJCQkJMHgxNkI5MkMKICNkZWZpbmUgICBNR19SRUZDTEtJTl9DVExfT0Rf Ml9NVVgoeCkJCQkoKHgpIDw8IDgpCisjZGVmaW5lICAgTUdfUkVGQ0xLSU5fQ1RMX09EXzJfTVVY X01BU0sJCQkoMHg3IDw8IDgpCiAjZGVmaW5lIE1HX1JFRkNMS0lOX0NUTChwb3J0KSBfTU1JT19Q T1JUKChwb3J0KSAtIFBPUlRfQywgXAogCQkJCQkgX01HX1JFRkNMS0lOX0NUTF9QT1JUMSwgXAog CQkJCQkgX01HX1JFRkNMS0lOX0NUTF9QT1JUMikKQEAgLTkwNTYsNyArOTA1Nyw5IEBAIGVudW0g c2tsX3Bvd2VyX2dhdGUgewogI2RlZmluZSBfTUdfQ0xLVE9QMl9DT1JFQ0xLQ1RMMV9QT1JUMwkJ CTB4MTZBOEQ4CiAjZGVmaW5lIF9NR19DTEtUT1AyX0NPUkVDTEtDVEwxX1BPUlQ0CQkJMHgxNkI4 RDgKICNkZWZpbmUgICBNR19DTEtUT1AyX0NPUkVDTEtDVEwxX0JfRElWUkFUSU8oeCkJCSgoeCkg PDwgMTYpCisjZGVmaW5lICAgTUdfQ0xLVE9QMl9DT1JFQ0xLQ1RMMV9CX0RJVlJBVElPX01BU0sJ KDB4ZmYgPDwgMTYpCiAjZGVmaW5lICAgTUdfQ0xLVE9QMl9DT1JFQ0xLQ1RMMV9BX0RJVlJBVElP KHgpCQkoKHgpIDw8IDgpCisjZGVmaW5lICAgTUdfQ0xLVE9QMl9DT1JFQ0xLQ1RMMV9BX0RJVlJB VElPX01BU0sJKDB4ZmYgPDwgOCkKICNkZWZpbmUgTUdfQ0xLVE9QMl9DT1JFQ0xLQ1RMMShwb3J0 KSBfTU1JT19QT1JUKChwb3J0KSAtIFBPUlRfQywgXAogCQkJCQkJX01HX0NMS1RPUDJfQ09SRUNM S0NUTDFfUE9SVDEsIFwKIAkJCQkJCV9NR19DTEtUT1AyX0NPUkVDTEtDVEwxX1BPUlQyKQpAQCAt OTA2Niw5ICs5MDY5LDEzIEBAIGVudW0gc2tsX3Bvd2VyX2dhdGUgewogI2RlZmluZSBfTUdfQ0xL VE9QMl9IU0NMS0NUTF9QT1JUMwkJCTB4MTZBOEQ0CiAjZGVmaW5lIF9NR19DTEtUT1AyX0hTQ0xL Q1RMX1BPUlQ0CQkJMHgxNkI4RDQKICNkZWZpbmUgICBNR19DTEtUT1AyX0hTQ0xLQ1RMX0NPUkVf SU5QVVRTRUwoeCkJCSgoeCkgPDwgMTYpCisjZGVmaW5lICAgTUdfQ0xLVE9QMl9IU0NMS0NUTF9D T1JFX0lOUFVUU0VMX01BU0sJKDB4MSA8PCAxNikKICNkZWZpbmUgICBNR19DTEtUT1AyX0hTQ0xL Q1RMX1RMSU5FRFJWX0NMS1NFTCh4KQkoKHgpIDw8IDE0KQorI2RlZmluZSAgIE1HX0NMS1RPUDJf SFNDTEtDVExfVExJTkVEUlZfQ0xLU0VMX01BU0sJKDB4MyA8PCAxNCkKICNkZWZpbmUgICBNR19D TEtUT1AyX0hTQ0xLQ1RMX0hTRElWX1JBVElPKHgpCQkoKHgpIDw8IDEyKQorI2RlZmluZSAgIE1H X0NMS1RPUDJfSFNDTEtDVExfSFNESVZfUkFUSU9fTUFTSwkJKDB4MyA8PCAxMikKICNkZWZpbmUg ICBNR19DTEtUT1AyX0hTQ0xLQ1RMX0RTRElWX1JBVElPKHgpCQkoKHgpIDw8IDgpCisjZGVmaW5l ICAgTUdfQ0xLVE9QMl9IU0NMS0NUTF9EU0RJVl9SQVRJT19NQVNLCQkoMHhmIDw8IDgpCiAjZGVm aW5lIE1HX0NMS1RPUDJfSFNDTEtDVEwocG9ydCkgX01NSU9fUE9SVCgocG9ydCkgLSBQT1JUX0Ms IFwKIAkJCQkJICAgICBfTUdfQ0xLVE9QMl9IU0NMS0NUTF9QT1JUMSwgXAogCQkJCQkgICAgIF9N R19DTEtUT1AyX0hTQ0xLQ1RMX1BPUlQyKQpAQCAtOTE0MiwxMiArOTE0OSwxOCBAQCBlbnVtIHNr bF9wb3dlcl9nYXRlIHsKICNkZWZpbmUgX01HX1BMTF9CSUFTX1BPUlQzCQkJCTB4MTZBQTE0CiAj ZGVmaW5lIF9NR19QTExfQklBU19QT1JUNAkJCQkweDE2QkExNAogI2RlZmluZSAgIE1HX1BMTF9C SUFTX0JJQVNfR0JfU0VMKHgpCQkJKCh4KSA8PCAzMCkKKyNkZWZpbmUgICBNR19QTExfQklBU19C SUFTX0dCX1NFTF9NQVNLCQkJKDB4MyA8PCAzMCkKICNkZWZpbmUgICBNR19QTExfQklBU19JTklU X0RDT0FNUCh4KQkJCSgoeCkgPDwgMjQpCisjZGVmaW5lICAgTUdfUExMX0JJQVNfSU5JVF9EQ09B TVBfTUFTSwkJCSgweDNmIDw8IDI0KQogI2RlZmluZSAgIE1HX1BMTF9CSUFTX0JJQVNfQk9OVVMo eCkJCQkoKHgpIDw8IDE2KQorI2RlZmluZSAgIE1HX1BMTF9CSUFTX0JJQVNfQk9OVVNfTUFTSwkJ CSgweGZmIDw8IDE2KQogI2RlZmluZSAgIE1HX1BMTF9CSUFTX0JJQVNDQUxfRU4JCQkoMSA8PCAx NSkKICNkZWZpbmUgICBNR19QTExfQklBU19DVFJJTSh4KQkJCQkoKHgpIDw8IDgpCisjZGVmaW5l ICAgTUdfUExMX0JJQVNfQ1RSSU1fTUFTSwkJCSgweDFmIDw8IDgpCiAjZGVmaW5lICAgTUdfUExM X0JJQVNfVlJFRl9SREFDKHgpCQkJKCh4KSA8PCA1KQorI2RlZmluZSAgIE1HX1BMTF9CSUFTX1ZS RUZfUkRBQ19NQVNLCQkJKDB4NyA8PCA1KQogI2RlZmluZSAgIE1HX1BMTF9CSUFTX0lSRUZUUklN KHgpCQkJKCh4KSA8PCAwKQorI2RlZmluZSAgIE1HX1BMTF9CSUFTX0lSRUZUUklNX01BU0sJCQko MHgxZiA8PCAwKQogI2RlZmluZSBNR19QTExfQklBUyhwb3J0KSBfTU1JT19QT1JUKChwb3J0KSAt IFBPUlRfQywgX01HX1BMTF9CSUFTX1BPUlQxLCBcCiAJCQkJICAgICBfTUdfUExMX0JJQVNfUE9S VDIpCiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwbGxfbWdyLmMg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcGxsX21nci5jCmluZGV4IGQ0YzdiYWNiZTgz ZS4uNTczNDIzNjRmZDMwIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9k cGxsX21nci5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwbGxfbWdyLmMKQEAg LTI5NDUsMTAgKzI5NDUsMjEgQEAgc3RhdGljIGJvb2wgaWNsX3BsbF9nZXRfaHdfc3RhdGUoc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCWNhc2UgRFBMTF9JRF9JQ0xfTUdQTEw0 OgogCQlwb3J0ID0gaWNsX21nX3BsbF9pZF90b19wb3J0KGlkKTsKIAkJaHdfc3RhdGUtPm1nX3Jl ZmNsa2luX2N0bCA9IEk5MTVfUkVBRChNR19SRUZDTEtJTl9DVEwocG9ydCkpOworCQlod19zdGF0 ZS0+bWdfcmVmY2xraW5fY3RsICY9IE1HX1JFRkNMS0lOX0NUTF9PRF8yX01VWF9NQVNLOworCiAJ CWh3X3N0YXRlLT5tZ19jbGt0b3AyX2NvcmVjbGtjdGwxID0KIAkJCUk5MTVfUkVBRChNR19DTEtU T1AyX0NPUkVDTEtDVEwxKHBvcnQpKTsKKwkJaHdfc3RhdGUtPm1nX2Nsa3RvcDJfY29yZWNsa2N0 bDEgJj0KKwkJCU1HX0NMS1RPUDJfQ09SRUNMS0NUTDFfQV9ESVZSQVRJT19NQVNLOworCiAJCWh3 X3N0YXRlLT5tZ19jbGt0b3AyX2hzY2xrY3RsID0KIAkJCUk5MTVfUkVBRChNR19DTEtUT1AyX0hT Q0xLQ1RMKHBvcnQpKTsKKwkJaHdfc3RhdGUtPm1nX2Nsa3RvcDJfaHNjbGtjdGwgJj0KKwkJCU1H X0NMS1RPUDJfSFNDTEtDVExfVExJTkVEUlZfQ0xLU0VMX01BU0sgfAorCQkJTUdfQ0xLVE9QMl9I U0NMS0NUTF9DT1JFX0lOUFVUU0VMX01BU0sgfAorCQkJTUdfQ0xLVE9QMl9IU0NMS0NUTF9IU0RJ Vl9SQVRJT19NQVNLIHwKKwkJCU1HX0NMS1RPUDJfSFNDTEtDVExfRFNESVZfUkFUSU9fTUFTSzsK KwogCQlod19zdGF0ZS0+bWdfcGxsX2RpdjAgPSBJOTE1X1JFQUQoTUdfUExMX0RJVjAocG9ydCkp OwogCQlod19zdGF0ZS0+bWdfcGxsX2RpdjEgPSBJOTE1X1JFQUQoTUdfUExMX0RJVjEocG9ydCkp OwogCQlod19zdGF0ZS0+bWdfcGxsX2xmID0gSTkxNV9SRUFEKE1HX1BMTF9MRihwb3J0KSk7CkBA IC0yOTk4LDEwICszMDA5LDMwIEBAIHN0YXRpYyB2b2lkIGljbF9tZ19wbGxfd3JpdGUoc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCWVudW0gcG9ydCBwb3J0ID0gaWNsX21nX3Bs bF9pZF90b19wb3J0KHBsbC0+aW5mby0+aWQpOwogCXUzMiB2YWw7CiAKLQlJOTE1X1dSSVRFKE1H X1JFRkNMS0lOX0NUTChwb3J0KSwgaHdfc3RhdGUtPm1nX3JlZmNsa2luX2N0bCk7Ci0JSTkxNV9X UklURShNR19DTEtUT1AyX0NPUkVDTEtDVEwxKHBvcnQpLAotCQkgICBod19zdGF0ZS0+bWdfY2xr dG9wMl9jb3JlY2xrY3RsMSk7Ci0JSTkxNV9XUklURShNR19DTEtUT1AyX0hTQ0xLQ1RMKHBvcnQp LCBod19zdGF0ZS0+bWdfY2xrdG9wMl9oc2Nsa2N0bCk7CisJLyoKKwkgKiBTb21lIG9mIHRoZSBm b2xsb3dpbmcgcmVnaXN0ZXJzIGhhdmUgcmVzZXJ2ZWQgZmllbGRzLCBzbyBwcm9ncmFtCisJICog dGhlc2Ugd2l0aCBSTVcgYmFzZWQgb24gYSBtYXNrLiBUaGUgbWFzayBjYW4gYmUgZml4ZWQgb3Ig Z2VuZXJhdGVkCisJICogZHVyaW5nIHRoZSBjYWxjL3JlYWRvdXQgcGhhc2UgaWYgdGhlIG1hc2sg ZGVwZW5kcyBvbiBzb21lIG90aGVyIEhXCisJICogc3RhdGUgbGlrZSByZWZjbGssIHNlZSBpY2xf Y2FsY19tZ19wbGxfc3RhdGUoKS4KKwkgKi8KKwl2YWwgPSBJOTE1X1JFQUQoTUdfUkVGQ0xLSU5f Q1RMKHBvcnQpKTsKKwl2YWwgJj0gfk1HX1JFRkNMS0lOX0NUTF9PRF8yX01VWF9NQVNLOworCXZh bCB8PSBod19zdGF0ZS0+bWdfcmVmY2xraW5fY3RsOworCUk5MTVfV1JJVEUoTUdfUkVGQ0xLSU5f Q1RMKHBvcnQpLCB2YWwpOworCisJdmFsID0gSTkxNV9SRUFEKE1HX0NMS1RPUDJfQ09SRUNMS0NU TDEocG9ydCkpOworCXZhbCAmPSB+TUdfQ0xLVE9QMl9DT1JFQ0xLQ1RMMV9BX0RJVlJBVElPX01B U0s7CisJdmFsIHw9IGh3X3N0YXRlLT5tZ19jbGt0b3AyX2NvcmVjbGtjdGwxOworCUk5MTVfV1JJ VEUoTUdfQ0xLVE9QMl9DT1JFQ0xLQ1RMMShwb3J0KSwgdmFsKTsKKworCXZhbCA9IEk5MTVfUkVB RChNR19DTEtUT1AyX0hTQ0xLQ1RMKHBvcnQpKTsKKwl2YWwgJj0gfihNR19DTEtUT1AyX0hTQ0xL Q1RMX1RMSU5FRFJWX0NMS1NFTF9NQVNLIHwKKwkJIE1HX0NMS1RPUDJfSFNDTEtDVExfQ09SRV9J TlBVVFNFTF9NQVNLIHwKKwkJIE1HX0NMS1RPUDJfSFNDTEtDVExfSFNESVZfUkFUSU9fTUFTSyB8 CisJCSBNR19DTEtUT1AyX0hTQ0xLQ1RMX0RTRElWX1JBVElPX01BU0spOworCXZhbCB8PSBod19z dGF0ZS0+bWdfY2xrdG9wMl9oc2Nsa2N0bDsKKwlJOTE1X1dSSVRFKE1HX0NMS1RPUDJfSFNDTEtD VEwocG9ydCksIHZhbCk7CisKIAlJOTE1X1dSSVRFKE1HX1BMTF9ESVYwKHBvcnQpLCBod19zdGF0 ZS0+bWdfcGxsX2RpdjApOwogCUk5MTVfV1JJVEUoTUdfUExMX0RJVjEocG9ydCksIGh3X3N0YXRl LT5tZ19wbGxfZGl2MSk7CiAJSTkxNV9XUklURShNR19QTExfTEYocG9ydCksIGh3X3N0YXRlLT5t Z19wbGxfbGYpOwotLSAKMi4xMy4yCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5m by9pbnRlbC1nZngK