From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matthew Auld Subject: [PATCH v3 19/37] drm/i915: enumerate and init each supported region Date: Fri, 9 Aug 2019 23:26:25 +0100 Message-ID: <20190809222643.23142-20-matthew.auld@intel.com> References: <20190809222643.23142-1-matthew.auld@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190809222643.23142-1-matthew.auld@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: dri-devel@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogQWJkaWVsIEphbnVsZ3VlIDxhYmRpZWwuamFudWxndWVAbGludXguaW50ZWwuY29tPgoK Tm90aGluZyB0byBlbnVtZXJhdGUgeWV0Li4uCgpTaWduZWQtb2ZmLWJ5OiBBYmRpZWwgSmFudWxn dWUgPGFiZGllbC5qYW51bGd1ZUBsaW51eC5pbnRlbC5jb20+ClNpZ25lZC1vZmYtYnk6IE1hdHRo ZXcgQXVsZCA8bWF0dGhldy5hdWxkQGludGVsLmNvbT4KQ2M6IEpvb25hcyBMYWh0aW5lbiA8am9v bmFzLmxhaHRpbmVuQGxpbnV4LmludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5oICAgICAgICAgICAgICAgfCAgMyArCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2dlbV9ndHQuYyAgICAgICAgICAgfCA3MCArKysrKysrKysrKysrKysrKy0tCiAuLi4vZ3B1L2Ry bS9pOTE1L3NlbGZ0ZXN0cy9tb2NrX2dlbV9kZXZpY2UuYyAgfCAgNiArKwogMyBmaWxlcyBjaGFu Z2VkLCA3MiBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Ry di5oCmluZGV4IGY3YmU4Y2VlNDcwOS4uM2Q3ZGE2OWYwZDFiIDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf ZHJ2LmgKQEAgLTI0MzYsNiArMjQzNiw5IEBAIGludCBfX211c3RfY2hlY2sgaTkxNV9nZW1fZXZp Y3RfZm9yX25vZGUoc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0sCiAJCQkJCSB1bnNpZ25l ZCBpbnQgZmxhZ3MpOwogaW50IGk5MTVfZ2VtX2V2aWN0X3ZtKHN0cnVjdCBpOTE1X2FkZHJlc3Nf c3BhY2UgKnZtKTsKIAordm9pZCBpOTE1X2dlbV9jbGVhbnVwX21lbW9yeV9yZWdpb25zKHN0cnVj dCBkcm1faTkxNV9wcml2YXRlICppOTE1KTsKK2ludCBpOTE1X2dlbV9pbml0X21lbW9yeV9yZWdp b25zKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1KTsKKwogLyogaTkxNV9nZW1faW50ZXJu YWwuYyAqLwogc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKgogaTkxNV9nZW1fb2JqZWN0X2Ny ZWF0ZV9pbnRlcm5hbChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX2d0dC5jCmluZGV4IDgzYTAyZTc3M2M1OC4uYTFkZDNlN2UxYWQ5IDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYworKysgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYwpAQCAtMjcxMyw2ICsyNzEzLDY2IEBAIGlu dCBpOTE1X2luaXRfZ2d0dChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkKIAlyZXR1cm4g MDsKIH0KIAordm9pZCBpOTE1X2dlbV9jbGVhbnVwX21lbW9yeV9yZWdpb25zKHN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICppOTE1KQoreworCWludCBpOworCisJaTkxNV9nZW1fY2xlYW51cF9zdG9s ZW4oaTkxNSk7CisKKwlmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRShpOTE1LT5yZWdpb25zKTsg KytpKQl7CisJCXN0cnVjdCBpbnRlbF9tZW1vcnlfcmVnaW9uICpyZWdpb24gPSBpOTE1LT5yZWdp b25zW2ldOworCisJCWlmIChyZWdpb24pCisJCQlpbnRlbF9tZW1vcnlfcmVnaW9uX2Rlc3Ryb3ko cmVnaW9uKTsKKwl9Cit9CisKK2ludCBpOTE1X2dlbV9pbml0X21lbW9yeV9yZWdpb25zKHN0cnVj dCBkcm1faTkxNV9wcml2YXRlICppOTE1KQoreworCWludCBlcnIsIGk7CisKKwkvKgorCSAqIElu aXRpYWxpc2Ugc3RvbGVuIGVhcmx5IHNvIHRoYXQgd2UgbWF5IHJlc2VydmUgcHJlYWxsb2NhdGVk CisJICogb2JqZWN0cyBmb3IgdGhlIEJJT1MgdG8gS01TIHRyYW5zaXRpb24uCisJICovCisJLyog WFhYOiBzdG9sZW4gd2lsbCBiZWNvbWUgYSByZWdpb24gYXQgc29tZSBwb2ludCAqLworCWVyciA9 IGk5MTVfZ2VtX2luaXRfc3RvbGVuKGk5MTUpOworCWlmIChlcnIpCisJCXJldHVybiBlcnI7CisK Kwlmb3IgKGkgPSAwOyBpIDwgSU5URUxfTUVNT1JZX1VLTk9XTjsgaSsrKSB7CisJCXN0cnVjdCBp bnRlbF9tZW1vcnlfcmVnaW9uICptZW0gPSBOVUxMOworCQl1MzIgdHlwZTsKKworCQlpZiAoIUhB U19SRUdJT04oaTkxNSwgQklUKGkpKSkKKwkJCWNvbnRpbnVlOworCisJCXR5cGUgPSBNRU1PUllf VFlQRV9GUk9NX1JFR0lPTihpbnRlbF9yZWdpb25fbWFwW2ldKTsKKwkJc3dpdGNoICh0eXBlKSB7 CisJCWRlZmF1bHQ6CisJCQlicmVhazsKKwkJfQorCisJCWlmIChJU19FUlIobWVtKSkgeworCQkJ ZXJyID0gUFRSX0VSUihtZW0pOworCQkJRFJNX0VSUk9SKCJGYWlsZWQgdG8gc2V0dXAgcmVnaW9u KCVkKSB0eXBlPSVkXG4iLCBlcnIsIHR5cGUpOworCQkJZ290byBvdXRfY2xlYW51cDsKKwkJfQor CisJCW1lbS0+aWQgPSBpbnRlbF9yZWdpb25fbWFwW2ldOworCQltZW0tPnR5cGUgPSB0eXBlOwor CQltZW0tPmluc3RhbmNlID0gTUVNT1JZX0lOU1RBTkNFX0ZST01fUkVHSU9OKGludGVsX3JlZ2lv bl9tYXBbaV0pOworCisJCWk5MTUtPnJlZ2lvbnNbaV0gPSBtZW07CisJfQorCisJcmV0dXJuIDA7 CisKK291dF9jbGVhbnVwOgorCWk5MTVfZ2VtX2NsZWFudXBfbWVtb3J5X3JlZ2lvbnMoaTkxNSk7 CisJcmV0dXJuIGVycjsKK30KKwogc3RhdGljIHZvaWQgZ2d0dF9jbGVhbnVwX2h3KHN0cnVjdCBp OTE1X2dndHQgKmdndHQpCiB7CiAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUgPSBnZ3R0 LT52bS5pOTE1OwpAQCAtMjc1NCw2ICsyODE0LDggQEAgdm9pZCBpOTE1X2dndHRfZHJpdmVyX3Jl bGVhc2Uoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUpCiB7CiAJc3RydWN0IHBhZ2V2ZWMg KnB2ZWM7CiAKKwlpOTE1X2dlbV9jbGVhbnVwX21lbW9yeV9yZWdpb25zKGk5MTUpOworCiAJZmlu aV9hbGlhc2luZ19wcGd0dCgmaTkxNS0+Z2d0dCk7CiAKIAlnZ3R0X2NsZWFudXBfaHcoJmk5MTUt PmdndHQpOwpAQCAtMjc2Myw4ICsyODI1LDYgQEAgdm9pZCBpOTE1X2dndHRfZHJpdmVyX3JlbGVh c2Uoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUpCiAJCXNldF9wYWdlc19hcnJheV93Yihw dmVjLT5wYWdlcywgcHZlYy0+bnIpOwogCQlfX3BhZ2V2ZWNfcmVsZWFzZShwdmVjKTsKIAl9Ci0K LQlpOTE1X2dlbV9jbGVhbnVwX3N0b2xlbihpOTE1KTsKIH0KIAogc3RhdGljIHVuc2lnbmVkIGlu dCBnZW42X2dldF90b3RhbF9ndHRfc2l6ZSh1MTYgc25iX2dtY2hfY3RsKQpAQCAtMzIwNCwxMSAr MzI2NCw3IEBAIGludCBpOTE1X2dndHRfaW5pdF9odyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYpCiAJaWYgKHJldCkKIAkJcmV0dXJuIHJldDsKIAotCS8qCi0JICogSW5pdGlhbGlz ZSBzdG9sZW4gZWFybHkgc28gdGhhdCB3ZSBtYXkgcmVzZXJ2ZSBwcmVhbGxvY2F0ZWQKLQkgKiBv YmplY3RzIGZvciB0aGUgQklPUyB0byBLTVMgdHJhbnNpdGlvbi4KLQkgKi8KLQlyZXQgPSBpOTE1 X2dlbV9pbml0X3N0b2xlbihkZXZfcHJpdik7CisJcmV0ID0gaTkxNV9nZW1faW5pdF9tZW1vcnlf cmVnaW9ucyhkZXZfcHJpdik7CiAJaWYgKHJldCkKIAkJZ290byBvdXRfZ3R0X2NsZWFudXA7CiAK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L3NlbGZ0ZXN0cy9tb2NrX2dlbV9kZXZp Y2UuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L3NlbGZ0ZXN0cy9tb2NrX2dlbV9kZXZpY2UuYwpp bmRleCBjYzBmZTBhNzkzMzAuLmM2OTQ0ZTE3YTJjNSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvc2VsZnRlc3RzL21vY2tfZ2VtX2RldmljZS5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L3NlbGZ0ZXN0cy9tb2NrX2dlbV9kZXZpY2UuYwpAQCAtODIsNiArODIsOCBAQCBzdGF0 aWMgdm9pZCBtb2NrX2RldmljZV9yZWxlYXNlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAKIAlp OTE1X2dlbWZzX2ZpbmkoaTkxNSk7CiAKKwlpOTE1X2dlbV9jbGVhbnVwX21lbW9yeV9yZWdpb25z KGk5MTUpOworCiAJZHJtX21vZGVfY29uZmlnX2NsZWFudXAoJmk5MTUtPmRybSk7CiAKIAlkcm1f ZGV2X2ZpbmkoJmk5MTUtPmRybSk7CkBAIC0yMTksNiArMjIxLDEwIEBAIHN0cnVjdCBkcm1faTkx NV9wcml2YXRlICptb2NrX2dlbV9kZXZpY2Uodm9pZCkKIAogCVdBUk5fT04oaTkxNV9nZW1mc19p bml0KGk5MTUpKTsKIAorCWVyciA9IGk5MTVfZ2VtX2luaXRfbWVtb3J5X3JlZ2lvbnMoaTkxNSk7 CisJaWYgKGVycikKKwkJZ290byBlcnJfY29udGV4dDsKKwogCXJldHVybiBpOTE1OwogCiBlcnJf Y29udGV4dDoKLS0gCjIuMjAuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRl c2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8v aW50ZWwtZ2Z4