From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matthew Auld Subject: [PATCH v2 11/22] drm/i915: enumerate and init each supported region Date: Thu, 3 Oct 2019 20:24:33 +0100 Message-ID: <20191003192444.10113-12-matthew.auld@intel.com> References: <20191003192444.10113-1-matthew.auld@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by gabe.freedesktop.org (Postfix) with ESMTPS id 68F0B6EA5B for ; Thu, 3 Oct 2019 19:25:06 +0000 (UTC) In-Reply-To: <20191003192444.10113-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 List-Id: intel-gfx@lists.freedesktop.org RnJvbTogQWJkaWVsIEphbnVsZ3VlIDxhYmRpZWwuamFudWxndWVAbGludXguaW50ZWwuY29tPgoK Tm90aGluZyB0byBlbnVtZXJhdGUgeWV0Li4uCgpTaWduZWQtb2ZmLWJ5OiBBYmRpZWwgSmFudWxn dWUgPGFiZGllbC5qYW51bGd1ZUBsaW51eC5pbnRlbC5jb20+ClNpZ25lZC1vZmYtYnk6IE1hdHRo ZXcgQXVsZCA8bWF0dGhldy5hdWxkQGludGVsLmNvbT4KQ2M6IEpvb25hcyBMYWh0aW5lbiA8am9v bmFzLmxhaHRpbmVuQGxpbnV4LmludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5oICAgICAgICAgICAgICAgfCAgMyArCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2dlbV9ndHQuYyAgICAgICAgICAgfCA3MCArKysrKysrKysrKysrKysrKy0tCiAuLi4vZ3B1L2Ry bS9pOTE1L3NlbGZ0ZXN0cy9tb2NrX2dlbV9kZXZpY2UuYyAgfCAgNiArKwogMyBmaWxlcyBjaGFu Z2VkLCA3MiBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Ry di5oCmluZGV4IGEyNjczZjQxZDkzYi4uMjY5NjZiMzRjNzMxIDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf ZHJ2LmgKQEAgLTIzODcsNiArMjM4Nyw5IEBAIGludCBfX211c3RfY2hlY2sgaTkxNV9nZW1fZXZp Y3RfZm9yX25vZGUoc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0sCiAJCQkJCSB1bnNpZ25l ZCBpbnQgZmxhZ3MpOwogaW50IGk5MTVfZ2VtX2V2aWN0X3ZtKHN0cnVjdCBpOTE1X2FkZHJlc3Nf c3BhY2UgKnZtKTsKIAordm9pZCBpOTE1X2dlbV9jbGVhbnVwX21lbW9yeV9yZWdpb25zKHN0cnVj dCBkcm1faTkxNV9wcml2YXRlICppOTE1KTsKK2ludCBpOTE1X2dlbV9pbml0X21lbW9yeV9yZWdp b25zKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1KTsKKwogLyogaTkxNV9nZW1faW50ZXJu YWwuYyAqLwogc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKgogaTkxNV9nZW1fb2JqZWN0X2Ny ZWF0ZV9pbnRlcm5hbChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX2d0dC5jCmluZGV4IGU2MmU5ZDFhMTMwNy4uZjFlNDJjMmUxOGQ3IDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYworKysgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYwpAQCAtMjc0NCw2ICsyNzQ0LDY2IEBAIGlu dCBpOTE1X2luaXRfZ2d0dChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkKIAlyZXR1cm4g MDsKIH0KIAordm9pZCBpOTE1X2dlbV9jbGVhbnVwX21lbW9yeV9yZWdpb25zKHN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICppOTE1KQoreworCWludCBpOworCisJaTkxNV9nZW1fY2xlYW51cF9zdG9s ZW4oaTkxNSk7CisKKwlmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRShpOTE1LT5tbS5yZWdpb25z KTsgaSsrKSB7CisJCXN0cnVjdCBpbnRlbF9tZW1vcnlfcmVnaW9uICpyZWdpb24gPSBpOTE1LT5t bS5yZWdpb25zW2ldOworCisJCWlmIChyZWdpb24pCisJCQlpbnRlbF9tZW1vcnlfcmVnaW9uX3B1 dChyZWdpb24pOworCX0KK30KKworaW50IGk5MTVfZ2VtX2luaXRfbWVtb3J5X3JlZ2lvbnMoc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUpCit7CisJaW50IGVyciwgaTsKKworCS8qCisJICog SW5pdGlhbGlzZSBzdG9sZW4gZWFybHkgc28gdGhhdCB3ZSBtYXkgcmVzZXJ2ZSBwcmVhbGxvY2F0 ZWQKKwkgKiBvYmplY3RzIGZvciB0aGUgQklPUyB0byBLTVMgdHJhbnNpdGlvbi4KKwkgKi8KKwkv KiBYWFg6IHN0b2xlbiB3aWxsIGJlY29tZSBhIHJlZ2lvbiBhdCBzb21lIHBvaW50ICovCisJZXJy ID0gaTkxNV9nZW1faW5pdF9zdG9sZW4oaTkxNSk7CisJaWYgKGVycikKKwkJcmV0dXJuIGVycjsK KworCWZvciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKGk5MTUtPm1tLnJlZ2lvbnMpOyBpKyspIHsK KwkJc3RydWN0IGludGVsX21lbW9yeV9yZWdpb24gKm1lbSA9IE5VTEw7CisJCXUzMiB0eXBlOwor CisJCWlmICghSEFTX1JFR0lPTihpOTE1LCBCSVQoaSkpKQorCQkJY29udGludWU7CisKKwkJdHlw ZSA9IE1FTU9SWV9UWVBFX0ZST01fUkVHSU9OKGludGVsX3JlZ2lvbl9tYXBbaV0pOworCQlzd2l0 Y2ggKHR5cGUpIHsKKwkJZGVmYXVsdDoKKwkJCWJyZWFrOworCQl9CisKKwkJaWYgKElTX0VSUiht ZW0pKSB7CisJCQllcnIgPSBQVFJfRVJSKG1lbSk7CisJCQlEUk1fRVJST1IoIkZhaWxlZCB0byBz ZXR1cCByZWdpb24oJWQpIHR5cGU9JWRcbiIsIGVyciwgdHlwZSk7CisJCQlnb3RvIG91dF9jbGVh bnVwOworCQl9CisKKwkJbWVtLT5pZCA9IGludGVsX3JlZ2lvbl9tYXBbaV07CisJCW1lbS0+dHlw ZSA9IHR5cGU7CisJCW1lbS0+aW5zdGFuY2UgPSBNRU1PUllfSU5TVEFOQ0VfRlJPTV9SRUdJT04o aW50ZWxfcmVnaW9uX21hcFtpXSk7CisKKwkJaTkxNS0+bW0ucmVnaW9uc1tpXSA9IG1lbTsKKwl9 CisKKwlyZXR1cm4gMDsKKworb3V0X2NsZWFudXA6CisJaTkxNV9nZW1fY2xlYW51cF9tZW1vcnlf cmVnaW9ucyhpOTE1KTsKKwlyZXR1cm4gZXJyOworfQorCiBzdGF0aWMgdm9pZCBnZ3R0X2NsZWFu dXBfaHcoc3RydWN0IGk5MTVfZ2d0dCAqZ2d0dCkKIHsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqaTkxNSA9IGdndHQtPnZtLmk5MTU7CkBAIC0yNzg1LDYgKzI4NDUsOCBAQCB2b2lkIGk5MTVf Z2d0dF9kcml2ZXJfcmVsZWFzZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkKIHsKIAlz dHJ1Y3QgcGFnZXZlYyAqcHZlYzsKIAorCWk5MTVfZ2VtX2NsZWFudXBfbWVtb3J5X3JlZ2lvbnMo aTkxNSk7CisKIAlmaW5pX2FsaWFzaW5nX3BwZ3R0KCZpOTE1LT5nZ3R0KTsKIAogCWdndHRfY2xl YW51cF9odygmaTkxNS0+Z2d0dCk7CkBAIC0yNzk0LDggKzI4NTYsNiBAQCB2b2lkIGk5MTVfZ2d0 dF9kcml2ZXJfcmVsZWFzZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkKIAkJc2V0X3Bh Z2VzX2FycmF5X3diKHB2ZWMtPnBhZ2VzLCBwdmVjLT5ucik7CiAJCV9fcGFnZXZlY19yZWxlYXNl KHB2ZWMpOwogCX0KLQotCWk5MTVfZ2VtX2NsZWFudXBfc3RvbGVuKGk5MTUpOwogfQogCiBzdGF0 aWMgdW5zaWduZWQgaW50IGdlbjZfZ2V0X3RvdGFsX2d0dF9zaXplKHUxNiBzbmJfZ21jaF9jdGwp CkBAIC0zMjUxLDExICszMzExLDcgQEAgaW50IGk5MTVfZ2d0dF9pbml0X2h3KHN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICpkZXZfcHJpdikKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCi0JLyoK LQkgKiBJbml0aWFsaXNlIHN0b2xlbiBlYXJseSBzbyB0aGF0IHdlIG1heSByZXNlcnZlIHByZWFs bG9jYXRlZAotCSAqIG9iamVjdHMgZm9yIHRoZSBCSU9TIHRvIEtNUyB0cmFuc2l0aW9uLgotCSAq LwotCXJldCA9IGk5MTVfZ2VtX2luaXRfc3RvbGVuKGRldl9wcml2KTsKKwlyZXQgPSBpOTE1X2dl bV9pbml0X21lbW9yeV9yZWdpb25zKGRldl9wcml2KTsKIAlpZiAocmV0KQogCQlnb3RvIG91dF9n dHRfY2xlYW51cDsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvc2VsZnRlc3Rz L21vY2tfZ2VtX2RldmljZS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvc2VsZnRlc3RzL21vY2tf Z2VtX2RldmljZS5jCmluZGV4IDk4MDliMTcwODNkZS4uNGNlYWFhNTI5ZGE3IDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9zZWxmdGVzdHMvbW9ja19nZW1fZGV2aWNlLmMKKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvc2VsZnRlc3RzL21vY2tfZ2VtX2RldmljZS5jCkBAIC04Miw2 ICs4Miw4IEBAIHN0YXRpYyB2b2lkIG1vY2tfZGV2aWNlX3JlbGVhc2Uoc3RydWN0IGRybV9kZXZp Y2UgKmRldikKIAogCWk5MTVfZ2VtZnNfZmluaShpOTE1KTsKIAorCWk5MTVfZ2VtX2NsZWFudXBf bWVtb3J5X3JlZ2lvbnMoaTkxNSk7CisKIAlkcm1fbW9kZV9jb25maWdfY2xlYW51cCgmaTkxNS0+ ZHJtKTsKIAogCWRybV9kZXZfZmluaSgmaTkxNS0+ZHJtKTsKQEAgLTIxOCw2ICsyMjAsMTAgQEAg c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKm1vY2tfZ2VtX2RldmljZSh2b2lkKQogCiAJV0FSTl9P TihpOTE1X2dlbWZzX2luaXQoaTkxNSkpOwogCisJZXJyID0gaTkxNV9nZW1faW5pdF9tZW1vcnlf cmVnaW9ucyhpOTE1KTsKKwlpZiAoZXJyKQorCQlnb3RvIGVycl9jb250ZXh0OworCiAJcmV0dXJu IGk5MTU7CiAKIGVycl9jb250ZXh0OgotLSAKMi4yMC4xCgpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdm eEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFp bG1hbi9saXN0aW5mby9pbnRlbC1nZng=