From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [PATCH 11/12] drm/i915: Extract DIMM info on cnl+ Date: Tue, 05 Mar 2019 18:16:57 +0200 Message-ID: <87woldb8jq.fsf@intel.com> References: <20190225202907.731-1-ville.syrjala@linux.intel.com> <20190225202907.731-12-ville.syrjala@linux.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 26ACA89EA6 for ; Tue, 5 Mar 2019 16:14:49 +0000 (UTC) In-Reply-To: <20190225202907.731-12-ville.syrjala@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: Ville Syrjala , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gTW9uLCAyNSBGZWIgMjAxOSwgVmlsbGUgU3lyamFsYSA8dmlsbGUuc3lyamFsYUBsaW51eC5p bnRlbC5jb20+IHdyb3RlOgo+IEZyb206IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBs aW51eC5pbnRlbC5jb20+Cj4KPiBXZSdsbCBuZWVkIGluZm9ybWF0aW9uIGFib3V0IHRoZSBtZW1v cnkgY29uZmlndXJhdGlvbiBvbiBjbmwrIHRvby4KPiBFeHRlbmQgdGhlIGNvZGUgdG8gcGFyc2Ug dGhlIHNsaWdodGx5IGNoYW5nZWQgcmVnaXN0ZXIgbGF5b3V0Lgo+Cj4gU2lnbmVkLW9mZi1ieTog VmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KPiAtLS0KPiAg ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuYyB8IDY5ICsrKysrKysrKysrKysrKysrKysr KysrKy0tLS0tLS0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oIHwgMTcgKysr KysrKy0KPiAgMiBmaWxlcyBjaGFuZ2VkLCA2NiBpbnNlcnRpb25zKCspLCAyMCBkZWxldGlvbnMo LSkKPgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5jIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuYwo+IGluZGV4IGUzYWFmZTJiZjNiNy4uOTUzNjE4 MTRiNTMxIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMKPiAr KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5jCj4gQEAgLTEwOTUsMTcgKzEwOTUs NDMgQEAgc3RhdGljIGludCBza2xfZ2V0X2RpbW1fcmFua3ModTE2IHZhbCkKPiAgCWlmIChza2xf Z2V0X2RpbW1fc2l6ZSh2YWwpID09IDApCj4gIAkJcmV0dXJuIDA7Cj4gIAo+IC0Jc3dpdGNoICh2 YWwgJiBTS0xfRFJBTV9SQU5LX01BU0spIHsKPiAtCWNhc2UgU0tMX0RSQU1fUkFOS19TSU5HTEU6 Cj4gLQljYXNlIFNLTF9EUkFNX1JBTktfRFVBTDoKPiAtCQl2YWwgPSAodmFsICYgU0tMX0RSQU1f UkFOS19NQVNLKSA+PiBTS0xfRFJBTV9SQU5LX1NISUZUOwo+IC0JCXJldHVybiB2YWwgKyAxOwo+ ICsJdmFsID0gKHZhbCAmIFNLTF9EUkFNX1JBTktfTUFTSykgPj4gU0tMX0RSQU1fUkFOS19TSElG VDsKPiArCj4gKwlyZXR1cm4gdmFsICsgMTsKClRoaXMgcGFydCBpcyBhIGJpdCBvdXQgb2YgcGxh Y2UuIFJlYmFzZSBmYWlsPwoKPiArfQo+ICsKPiArc3RhdGljIGludCBjbmxfZ2V0X2RpbW1fc2l6 ZSh1MTYgdmFsKQo+ICt7Cj4gKwlyZXR1cm4gKHZhbCAmIENOTF9EUkFNX1NJWkVfTUFTSykgLyAy OwoKTXVsdGlwbGVzIG9mIDAuNSBHQi4uLiB3aGF0IGFuIG9kZCB1bml0LiBXaGF0IGlmIHRoZXJl J3MgYW4gb2RkIHZhbHVlPwoKPiArfQo+ICsKPiArc3RhdGljIGludCBjbmxfZ2V0X2RpbW1fd2lk dGgodTE2IHZhbCkKPiArewo+ICsJaWYgKGNubF9nZXRfZGltbV9zaXplKHZhbCkgPT0gMCkKPiAr CQlyZXR1cm4gMDsKPiArCj4gKwlzd2l0Y2ggKHZhbCAmIENOTF9EUkFNX1dJRFRIX01BU0spIHsK PiArCWNhc2UgQ05MX0RSQU1fV0lEVEhfWDg6Cj4gKwljYXNlIENOTF9EUkFNX1dJRFRIX1gxNjoK PiArCWNhc2UgQ05MX0RSQU1fV0lEVEhfWDMyOgo+ICsJCXZhbCA9ICh2YWwgJiBDTkxfRFJBTV9X SURUSF9NQVNLKSA+PiBDTkxfRFJBTV9XSURUSF9TSElGVDsKPiArCQlyZXR1cm4gOCA8PCB2YWw7 Cj4gIAlkZWZhdWx0Ogo+ICAJCU1JU1NJTkdfQ0FTRSh2YWwpOwo+ICAJCXJldHVybiAwOwo+ICAJ fQo+ICB9Cj4gIAo+ICtzdGF0aWMgaW50IGNubF9nZXRfZGltbV9yYW5rcyh1MTYgdmFsKQo+ICt7 Cj4gKwlpZiAoY25sX2dldF9kaW1tX3NpemUodmFsKSA9PSAwKQo+ICsJCXJldHVybiAwOwo+ICsK PiArCXZhbCA9ICh2YWwgJiBDTkxfRFJBTV9SQU5LX01BU0spID4+IENOTF9EUkFNX1JBTktfU0hJ RlQ7Cj4gKwo+ICsJcmV0dXJuIHZhbCArIDE7Cj4gK30KPiArCj4gIHN0YXRpYyBib29sCj4gIHNr bF9pc18xNmdiX2RpbW0oY29uc3Qgc3RydWN0IGRyYW1fZGltbV9pbmZvICpkaW1tKQo+ICB7Cj4g QEAgLTExMTMsMTIgKzExMzksMTkgQEAgc2tsX2lzXzE2Z2JfZGltbShjb25zdCBzdHJ1Y3QgZHJh bV9kaW1tX2luZm8gKmRpbW0pCj4gIH0KPiAgCj4gIHN0YXRpYyB2b2lkCj4gLXNrbF9kcmFtX2dl dF9kaW1tX2luZm8oc3RydWN0IGRyYW1fZGltbV9pbmZvICpkaW1tLAo+ICtza2xfZHJhbV9nZXRf ZGltbV9pbmZvKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPiArCQkgICAgICAg c3RydWN0IGRyYW1fZGltbV9pbmZvICpkaW1tLAo+ICAJCSAgICAgICBpbnQgY2hhbm5lbCwgY2hh ciBkaW1tX25hbWUsIHUxNiB2YWwpCj4gIHsKPiAtCWRpbW0tPnNpemUgPSBza2xfZ2V0X2RpbW1f c2l6ZSh2YWwpOwo+IC0JZGltbS0+d2lkdGggPSBza2xfZ2V0X2RpbW1fd2lkdGgodmFsKTsKPiAt CWRpbW0tPnJhbmtzID0gc2tsX2dldF9kaW1tX3JhbmtzKHZhbCk7Cj4gKwlpZiAoSU5URUxfR0VO KGRldl9wcml2KSA+PSAxMCkgewo+ICsJCWRpbW0tPnNpemUgPSBjbmxfZ2V0X2RpbW1fc2l6ZSh2 YWwpOwo+ICsJCWRpbW0tPndpZHRoID0gY25sX2dldF9kaW1tX3dpZHRoKHZhbCk7Cj4gKwkJZGlt bS0+cmFua3MgPSBjbmxfZ2V0X2RpbW1fcmFua3ModmFsKTsKPiArCX0gZWxzZSB7Cj4gKwkJZGlt bS0+c2l6ZSA9IHNrbF9nZXRfZGltbV9zaXplKHZhbCk7Cj4gKwkJZGltbS0+d2lkdGggPSBza2xf Z2V0X2RpbW1fd2lkdGgodmFsKTsKPiArCQlkaW1tLT5yYW5rcyA9IHNrbF9nZXRfZGltbV9yYW5r cyh2YWwpOwo+ICsJfQo+ICAKPiAgCURSTV9ERUJVR19LTVMoIkNIJWQgRElNTSAlYyBzaXplOiAl ZCBHQiwgd2lkdGg6IFglZCwgcmFua3M6ICVkLCAxNkdiIERJTU1zOiAlc1xuIiwKPiAgCQkgICAg ICBjaGFubmVsLCBkaW1tX25hbWUsIGRpbW0tPnNpemUsIGRpbW0tPndpZHRoLCBkaW1tLT5yYW5r cywKPiBAQCAtMTEyNiwxMSArMTE1OSwxNCBAQCBza2xfZHJhbV9nZXRfZGltbV9pbmZvKHN0cnVj dCBkcmFtX2RpbW1faW5mbyAqZGltbSwKPiAgfQo+ICAKPiAgc3RhdGljIGludAo+IC1za2xfZHJh bV9nZXRfY2hhbm5lbF9pbmZvKHN0cnVjdCBkcmFtX2NoYW5uZWxfaW5mbyAqY2gsCj4gK3NrbF9k cmFtX2dldF9jaGFubmVsX2luZm8oc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+ ICsJCQkgIHN0cnVjdCBkcmFtX2NoYW5uZWxfaW5mbyAqY2gsCj4gIAkJCSAgaW50IGNoYW5uZWws IHUzMiB2YWwpCj4gIHsKPiAtCXNrbF9kcmFtX2dldF9kaW1tX2luZm8oJmNoLT5kaW1tX2wsIGNo YW5uZWwsICdMJywgdmFsICYgMHhmZmZmKTsKPiAtCXNrbF9kcmFtX2dldF9kaW1tX2luZm8oJmNo LT5kaW1tX3MsIGNoYW5uZWwsICdTJywgdmFsID4+IDE2KTsKPiArCXNrbF9kcmFtX2dldF9kaW1t X2luZm8oZGV2X3ByaXYsICZjaC0+ZGltbV9sLAo+ICsJCQkgICAgICAgY2hhbm5lbCwgJ0wnLCB2 YWwgJiAweGZmZmYpOwo+ICsJc2tsX2RyYW1fZ2V0X2RpbW1faW5mbyhkZXZfcHJpdiwgJmNoLT5k aW1tX3MsCj4gKwkJCSAgICAgICBjaGFubmVsLCAnUycsIHZhbCA+PiAxNik7Cj4gIAo+ICAJaWYg KGNoLT5kaW1tX2wuc2l6ZSA9PSAwICYmIGNoLT5kaW1tX3Muc2l6ZSA9PSAwKSB7Cj4gIAkJRFJN X0RFQlVHX0tNUygiQ0glZCBub3QgcG9wdWxhdGVkXG4iLCBjaGFubmVsKTsKPiBAQCAtMTE3Miwx MiArMTIwOCwxMiBAQCBza2xfZHJhbV9nZXRfY2hhbm5lbHNfaW5mbyhzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYpCj4gIAlpbnQgcmV0Owo+ICAKPiAgCXZhbCA9IEk5MTVfUkVBRChT S0xfTUFEX0RJTU1fQ0gwXzBfMF8wX01DSEJBUl9NQ01BSU4pOwo+IC0JcmV0ID0gc2tsX2RyYW1f Z2V0X2NoYW5uZWxfaW5mbygmY2gwLCAwLCB2YWwpOwo+ICsJcmV0ID0gc2tsX2RyYW1fZ2V0X2No YW5uZWxfaW5mbyhkZXZfcHJpdiwgJmNoMCwgMCwgdmFsKTsKPiAgCWlmIChyZXQgPT0gMCkKPiAg CQlkcmFtX2luZm8tPm51bV9jaGFubmVscysrOwo+ICAKPiAgCXZhbCA9IEk5MTVfUkVBRChTS0xf TUFEX0RJTU1fQ0gxXzBfMF8wX01DSEJBUl9NQ01BSU4pOwo+IC0JcmV0ID0gc2tsX2RyYW1fZ2V0 X2NoYW5uZWxfaW5mbygmY2gxLCAxLCB2YWwpOwo+ICsJcmV0ID0gc2tsX2RyYW1fZ2V0X2NoYW5u ZWxfaW5mbyhkZXZfcHJpdiwgJmNoMSwgMSwgdmFsKTsKPiAgCWlmIChyZXQgPT0gMCkKPiAgCQlk cmFtX2luZm8tPm51bV9jaGFubmVscysrOwo+ICAKPiBAQCAtMTM2OSwxMyArMTQwNSwxMCBAQCBp bnRlbF9nZXRfZHJhbV9pbmZvKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKPiAg CWlmIChJTlRFTF9HRU4oZGV2X3ByaXYpIDwgOSkKPiAgCQlyZXR1cm47Cj4gIAo+IC0JLyogTmVl ZCB0byBjYWxjdWxhdGUgYmFuZHdpZHRoIG9ubHkgZm9yIEdlbjkgKi8KPiAgCWlmIChJU19HRU45 X0xQKGRldl9wcml2KSkKPiAgCQlyZXQgPSBieHRfZ2V0X2RyYW1faW5mbyhkZXZfcHJpdik7Cj4g LQllbHNlIGlmIChJU19HRU4oZGV2X3ByaXYsIDkpKQo+IC0JCXJldCA9IHNrbF9nZXRfZHJhbV9p bmZvKGRldl9wcml2KTsKPiAgCWVsc2UKPiAtCQlyZXQgPSBza2xfZHJhbV9nZXRfY2hhbm5lbHNf aW5mbyhkZXZfcHJpdik7Cj4gKwkJcmV0ID0gc2tsX2dldF9kcmFtX2luZm8oZGV2X3ByaXYpOwoK VGhlIHBhcnQgdGhhdCdzIGhpZGRlbiBoZXJlIGlzIHRoZSB1c2Ugb2YgdGhlIGNvbW1vbiBwYXJ0 cyBpbgpza2xfZ2V0X2RyYW1faW5mbygpIGFuZCBpbiBwYXJ0aWN1bGFyClNLTF9NRU1PUllfRlJF UV9NVUxUSVBMSUVSX0haLiBTcGVjIHNheXMgIlRoZSB2YWx1ZSBpcyBnaXZlbiBpbiB1bml0cyBv ZgoxMzMuMzMgTUh6Ii4gQnV0IGl0IHNheXMgdGhlIHNhbWUgZm9yIFNLTCB0b28uIFdoYXQgYW0g SSBtaXNzaW5nPwoKVGVudGF0aXZlIFJldmlld2VkLWJ5OiBKYW5pIE5pa3VsYSA8amFuaS5uaWt1 bGFAaW50ZWwuY29tPgoKPiAgCWlmIChyZXQpCj4gIAkJcmV0dXJuOwo+ICAKPiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfcmVnLmgKPiBpbmRleCA3MzBiYjE5MTdmZDEuLmIzNWIwMjIwNzY0ZiAxMDA2NDQKPiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9yZWcuaAo+IEBAIC05ODc1LDggKzk4NzUsMjEgQEAgZW51bSBza2xfcG93 ZXJfZ2F0ZSB7Cj4gICNkZWZpbmUgIFNLTF9EUkFNX1dJRFRIX1gzMgkJCSgweDIgPDwgOCkKPiAg I2RlZmluZSAgU0tMX0RSQU1fUkFOS19NQVNLCQkJKDB4MSA8PCAxMCkKPiAgI2RlZmluZSAgU0tM X0RSQU1fUkFOS19TSElGVAkJCTEwCj4gLSNkZWZpbmUgIFNLTF9EUkFNX1JBTktfU0lOR0xFCQkJ KDB4MCA8PCAxMCkKPiAtI2RlZmluZSAgU0tMX0RSQU1fUkFOS19EVUFMCQkJKDB4MSA8PCAxMCkK PiArI2RlZmluZSAgU0tMX0RSQU1fUkFOS18xCQkJKDB4MCA8PCAxMCkKPiArI2RlZmluZSAgU0tM X0RSQU1fUkFOS18yCQkJKDB4MSA8PCAxMCkKPiArI2RlZmluZSAgU0tMX0RSQU1fUkFOS19NQVNL CQkJKDB4MSA8PCAxMCkKPiArI2RlZmluZSAgQ05MX0RSQU1fU0laRV9NQVNLCQkJMHg3Rgo+ICsj ZGVmaW5lICBDTkxfRFJBTV9XSURUSF9NQVNLCQkJKDB4MyA8PCA3KQo+ICsjZGVmaW5lICBDTkxf RFJBTV9XSURUSF9TSElGVAkJCTcKPiArI2RlZmluZSAgQ05MX0RSQU1fV0lEVEhfWDgJCQkoMHgw IDw8IDcpCj4gKyNkZWZpbmUgIENOTF9EUkFNX1dJRFRIX1gxNgkJCSgweDEgPDwgNykKPiArI2Rl ZmluZSAgQ05MX0RSQU1fV0lEVEhfWDMyCQkJKDB4MiA8PCA3KQo+ICsjZGVmaW5lICBDTkxfRFJB TV9SQU5LX01BU0sJCQkoMHgzIDw8IDkpCj4gKyNkZWZpbmUgIENOTF9EUkFNX1JBTktfU0hJRlQJ CQk5Cj4gKyNkZWZpbmUgIENOTF9EUkFNX1JBTktfMQkJCSgweDAgPDwgOSkKPiArI2RlZmluZSAg Q05MX0RSQU1fUkFOS18yCQkJKDB4MSA8PCA5KQo+ICsjZGVmaW5lICBDTkxfRFJBTV9SQU5LXzMJ CQkoMHgyIDw8IDkpCj4gKyNkZWZpbmUgIENOTF9EUkFNX1JBTktfNAkJCSgweDMgPDwgOSkKPiAg Cj4gIC8qIFBsZWFzZSBzZWUgaHN3X3JlYWRfZGNvbXAoKSBhbmQgaHN3X3dyaXRlX2Rjb21wKCkg YmVmb3JlIHVzaW5nIHRoaXMgcmVnaXN0ZXIsCj4gICAqIHNpbmNlIG9uIEhTVyB3ZSBjYW4ndCB3 cml0ZSB0byBpdCB1c2luZyBJOTE1X1dSSVRFLiAqLwoKLS0gCkphbmkgTmlrdWxhLCBJbnRlbCBP cGVuIFNvdXJjZSBHcmFwaGljcyBDZW50ZXIKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlz dGluZm8vaW50ZWwtZ2Z4