From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: [RFC 2/7] drm/i915: Handle a few more cases for hw/sw split Date: Tue, 2 Jul 2019 21:42:00 +0200 Message-ID: <20190702194205.13366-3-maarten.lankhorst@linux.intel.com> References: <20190702194205.13366-1-maarten.lankhorst@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mblankhorst.nl (mblankhorst.nl [IPv6:2a02:2308::216:3eff:fe92:dfa3]) by gabe.freedesktop.org (Postfix) with ESMTPS id A18A96E038 for ; Tue, 2 Jul 2019 19:42:10 +0000 (UTC) In-Reply-To: <20190702194205.13366-1-maarten.lankhorst@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: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org U2lnbmVkLW9mZi1ieTogTWFhcnRlbiBMYW5raG9yc3QgPG1hYXJ0ZW4ubGFua2hvcnN0QGxpbnV4 LmludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3Bs YXkuYyB8IDM4ICsrKysrKysrKystLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNw bGF5L2ludGVsX2RwX21zdC5jICB8ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5 L2ludGVsX3Bzci5jICAgICB8ICA0ICstLQogMyBmaWxlcyBjaGFuZ2VkLCAyMiBpbnNlcnRpb25z KCspLCAyMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9k aXNwbGF5L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50 ZWxfZGlzcGxheS5jCmluZGV4IDczMDYwNjIzYjgzZi4uMmJiY2ZmOWE0YzU0IDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYworKysgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYwpAQCAtMTE3MjIsMTAgKzEx NzIyLDEwIEBAIHN0YXRpYyBpbnQgaW50ZWxfY3J0Y19hdG9taWNfY2hlY2soc3RydWN0IGRybV9j cnRjICpjcnRjLAogCWJvb2wgbW9kZV9jaGFuZ2VkID0gbmVlZHNfbW9kZXNldChwaXBlX2NvbmZp Zyk7CiAKIAlpZiAoSU5URUxfR0VOKGRldl9wcml2KSA8IDUgJiYgIUlTX0c0WChkZXZfcHJpdikg JiYKLQkgICAgbW9kZV9jaGFuZ2VkICYmICFjcnRjX3N0YXRlLT5hY3RpdmUpCisJICAgIG1vZGVf Y2hhbmdlZCAmJiAhcGlwZV9jb25maWctPmh3LmFjdGl2ZSkKIAkJcGlwZV9jb25maWctPnVwZGF0 ZV93bV9wb3N0ID0gdHJ1ZTsKIAotCWlmIChtb2RlX2NoYW5nZWQgJiYgY3J0Y19zdGF0ZS0+ZW5h YmxlICYmCisJaWYgKG1vZGVfY2hhbmdlZCAmJiBwaXBlX2NvbmZpZy0+aHcuZW5hYmxlICYmCiAJ ICAgIGRldl9wcml2LT5kaXNwbGF5LmNydGNfY29tcHV0ZV9jbG9jayAmJgogCSAgICAhV0FSTl9P TihwaXBlX2NvbmZpZy0+c2hhcmVkX2RwbGwpKSB7CiAJCXJldCA9IGRldl9wcml2LT5kaXNwbGF5 LmNydGNfY29tcHV0ZV9jbG9jayhpbnRlbF9jcnRjLApAQCAtMTE3MzksMTAgKzExNzM5LDEwIEBA IHN0YXRpYyBpbnQgaW50ZWxfY3J0Y19hdG9taWNfY2hlY2soc3RydWN0IGRybV9jcnRjICpjcnRj LAogCSAqIHdoZW4gQzggcGxhbmVzIGFyZSBnZXR0aW5nIGVuYWJsZWQvZGlzYWJsZWQuCiAJICov CiAJaWYgKGM4X3BsYW5lc19jaGFuZ2VkKHBpcGVfY29uZmlnKSkKLQkJY3J0Y19zdGF0ZS0+Y29s b3JfbWdtdF9jaGFuZ2VkID0gdHJ1ZTsKKwkJcGlwZV9jb25maWctPnVhcGkuY29sb3JfbWdtdF9j aGFuZ2VkID0gdHJ1ZTsKIAogCWlmIChtb2RlX2NoYW5nZWQgfHwgcGlwZV9jb25maWctPnVwZGF0 ZV9waXBlIHx8Ci0JICAgIGNydGNfc3RhdGUtPmNvbG9yX21nbXRfY2hhbmdlZCkgeworCSAgICBw aXBlX2NvbmZpZy0+dWFwaS5jb2xvcl9tZ210X2NoYW5nZWQpIHsKIAkJcmV0ID0gaW50ZWxfY29s b3JfY2hlY2socGlwZV9jb25maWcpOwogCQlpZiAocmV0KQogCQkJcmV0dXJuIHJldDsKQEAgLTEz Mzc0LDMwICsxMzM3NCwzMCBAQCBzdGF0aWMgaW50IGludGVsX2xvY2tfYWxsX3BpcGVzKHN0cnVj dCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKIAogc3RhdGljIGludCBpbnRlbF9tb2Rlc2V0X2Fs bF9waXBlcyhzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCiB7Ci0Jc3RydWN0IGRybV9j cnRjICpjcnRjOworCXN0cnVjdCBpbnRlbF9jcnRjICpjcnRjOwogCiAJLyoKIAkgKiBBZGQgYWxs IHBpcGVzIHRvIHRoZSBzdGF0ZSwgYW5kIGZvcmNlCiAJICogYSBtb2Rlc2V0IG9uIGFsbCB0aGUg YWN0aXZlIG9uZXMuCiAJICovCi0JZm9yX2VhY2hfY3J0YyhzdGF0ZS0+ZGV2LCBjcnRjKSB7Ci0J CXN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZTsKKwlmb3JfZWFjaF9pbnRlbF9jcnRj KHN0YXRlLT5kZXYsIGNydGMpIHsKKwkJc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3Rh dGU7CiAJCWludCByZXQ7CiAKLQkJY3J0Y19zdGF0ZSA9IGRybV9hdG9taWNfZ2V0X2NydGNfc3Rh dGUoc3RhdGUsIGNydGMpOworCQljcnRjX3N0YXRlID0gaW50ZWxfYXRvbWljX2dldF9jcnRjX3N0 YXRlKHN0YXRlLCBjcnRjKTsKIAkJaWYgKElTX0VSUihjcnRjX3N0YXRlKSkKIAkJCXJldHVybiBQ VFJfRVJSKGNydGNfc3RhdGUpOwogCi0JCWlmICghY3J0Y19zdGF0ZS0+YWN0aXZlIHx8IG5lZWRz X21vZGVzZXQodG9faW50ZWxfY3J0Y19zdGF0ZShjcnRjX3N0YXRlKSkpCisJCWlmICghY3J0Y19z dGF0ZS0+aHcuYWN0aXZlIHx8IG5lZWRzX21vZGVzZXQoY3J0Y19zdGF0ZSkpCiAJCQljb250aW51 ZTsKIAotCQljcnRjX3N0YXRlLT5tb2RlX2NoYW5nZWQgPSB0cnVlOworCQljcnRjX3N0YXRlLT51 YXBpLm1vZGVfY2hhbmdlZCA9IHRydWU7CiAKLQkJcmV0ID0gZHJtX2F0b21pY19hZGRfYWZmZWN0 ZWRfY29ubmVjdG9ycyhzdGF0ZSwgY3J0Yyk7CisJCXJldCA9IGRybV9hdG9taWNfYWRkX2FmZmVj dGVkX2Nvbm5lY3RvcnMoc3RhdGUsICZjcnRjLT5iYXNlKTsKIAkJaWYgKHJldCkKIAkJCXJldHVy biByZXQ7CiAKLQkJcmV0ID0gZHJtX2F0b21pY19hZGRfYWZmZWN0ZWRfcGxhbmVzKHN0YXRlLCBj cnRjKTsKKwkJcmV0ID0gZHJtX2F0b21pY19hZGRfYWZmZWN0ZWRfcGxhbmVzKHN0YXRlLCAmY3J0 Yy0+YmFzZSk7CiAJCWlmIChyZXQpCiAJCQlyZXR1cm4gcmV0OwogCX0KQEAgLTE2MDMwLDggKzE2 MDMwLDggQEAgc3RhdGljIGludCBpbnRlbF9pbml0aWFsX2NvbW1pdChzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2KQogewogCXN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSA9IE5VTEw7CiAJc3Ry dWN0IGRybV9tb2Rlc2V0X2FjcXVpcmVfY3R4IGN0eDsKLQlzdHJ1Y3QgZHJtX2NydGMgKmNydGM7 Ci0Jc3RydWN0IGRybV9jcnRjX3N0YXRlICpjcnRjX3N0YXRlOworCXN0cnVjdCBpbnRlbF9jcnRj ICpjcnRjOworCXN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlOwogCWludCByZXQg PSAwOwogCiAJc3RhdGUgPSBkcm1fYXRvbWljX3N0YXRlX2FsbG9jKGRldik7CkBAIC0xNjA0Mywx NSArMTYwNDMsMTUgQEAgc3RhdGljIGludCBpbnRlbF9pbml0aWFsX2NvbW1pdChzdHJ1Y3QgZHJt X2RldmljZSAqZGV2KQogcmV0cnk6CiAJc3RhdGUtPmFjcXVpcmVfY3R4ID0gJmN0eDsKIAotCWRy bV9mb3JfZWFjaF9jcnRjKGNydGMsIGRldikgewotCQljcnRjX3N0YXRlID0gZHJtX2F0b21pY19n ZXRfY3J0Y19zdGF0ZShzdGF0ZSwgY3J0Yyk7CisJZm9yX2VhY2hfaW50ZWxfY3J0YyhkZXYsIGNy dGMpIHsKKwkJY3J0Y19zdGF0ZSA9IGludGVsX2F0b21pY19nZXRfY3J0Y19zdGF0ZShzdGF0ZSwg Y3J0Yyk7CiAJCWlmIChJU19FUlIoY3J0Y19zdGF0ZSkpIHsKIAkJCXJldCA9IFBUUl9FUlIoY3J0 Y19zdGF0ZSk7CiAJCQlnb3RvIG91dDsKIAkJfQogCi0JCWlmIChjcnRjX3N0YXRlLT5hY3RpdmUp IHsKLQkJCXJldCA9IGRybV9hdG9taWNfYWRkX2FmZmVjdGVkX3BsYW5lcyhzdGF0ZSwgY3J0Yyk7 CisJCWlmIChjcnRjX3N0YXRlLT5ody5hY3RpdmUpIHsKKwkJCXJldCA9IGRybV9hdG9taWNfYWRk X2FmZmVjdGVkX3BsYW5lcyhzdGF0ZSwgJmNydGMtPmJhc2UpOwogCQkJaWYgKHJldCkKIAkJCQln b3RvIG91dDsKIApAQCAtMTYwNjEsNyArMTYwNjEsNyBAQCBzdGF0aWMgaW50IGludGVsX2luaXRp YWxfY29tbWl0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJCQkgKiBoYXZpbmcgYSBwcm9wZXIg TFVUIGxvYWRlZC4gUmVtb3ZlIG9uY2Ugd2UKIAkJCSAqIGhhdmUgcmVhZG91dCBmb3IgcGlwZSBn YW1tYSBlbmFibGUuCiAJCQkgKi8KLQkJCWNydGNfc3RhdGUtPmNvbG9yX21nbXRfY2hhbmdlZCA9 IHRydWU7CisJCQljcnRjX3N0YXRlLT51YXBpLmNvbG9yX21nbXRfY2hhbmdlZCA9IHRydWU7CiAJ CX0KIAl9CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxf ZHBfbXN0LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RwX21zdC5jCmlu ZGV4IDIzNmJmMDYxNDhhYi4uNTczOWE5NTM2OTI4IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9kaXNwbGF5L2ludGVsX2RwX21zdC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2Rpc3BsYXkvaW50ZWxfZHBfbXN0LmMKQEAgLTE3OSw3ICsxNzksNyBAQCBpbnRlbF9kcF9tc3Rf YXRvbWljX2NoZWNrKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCiAKIAkJaWYgKCFj cnRjX3N0YXRlIHx8CiAJCSAgICAhZHJtX2F0b21pY19jcnRjX25lZWRzX21vZGVzZXQoY3J0Y19z dGF0ZSkgfHwKLQkJICAgIGNydGNfc3RhdGUtPmVuYWJsZSkKKwkJICAgIHRvX2ludGVsX2NydGNf c3RhdGUoY3J0Y19zdGF0ZSktPmh3LmVuYWJsZSkKIAkJCXJldHVybiAwOwogCX0KIApkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9wc3IuYyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfcHNyLmMKaW5kZXggMTMzZDk1YTcyYWMwLi4zZGVh MDIyYjhlMzkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxf cHNyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9wc3IuYwpAQCAt MTAyNSw5ICsxMDI1LDkgQEAgc3RhdGljIGludCBpbnRlbF9wc3JfZmFzdHNldF9mb3JjZShzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAKIAkJaW50ZWxfY3J0Y19zdGF0ZSA9IHRv X2ludGVsX2NydGNfc3RhdGUoY3J0Y19zdGF0ZSk7CiAKLQkJaWYgKGNydGNfc3RhdGUtPmFjdGl2 ZSAmJiBpbnRlbF9jcnRjX3N0YXRlLT5oYXNfcHNyKSB7CisJCWlmIChpbnRlbF9jcnRjX3N0YXRl LT5ody5hY3RpdmUgJiYgaW50ZWxfY3J0Y19zdGF0ZS0+aGFzX3BzcikgewogCQkJLyogTWFyayBt b2RlIGFzIGNoYW5nZWQgdG8gdHJpZ2dlciBhIHBpcGUtPnVwZGF0ZSgpICovCi0JCQljcnRjX3N0 YXRlLT5tb2RlX2NoYW5nZWQgPSB0cnVlOworCQkJaW50ZWxfY3J0Y19zdGF0ZS0+dWFwaS5tb2Rl X2NoYW5nZWQgPSB0cnVlOwogCQkJYnJlYWs7CiAJCX0KIAl9Ci0tIAoyLjIwLjEKCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5n IGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVk ZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA==