From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: [PATCH 3/3] drm/i915: Disable all planes for load detection, v2. Date: Wed, 20 Dec 2017 10:35:45 +0100 Message-ID: <20171220093545.613-4-maarten.lankhorst@linux.intel.com> References: <20171220093545.613-1-maarten.lankhorst@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20171220093545.613-1-maarten.lankhorst@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KCldl IGRvbid0IG5lZWQgYW55IGFjdGl2ZSBwbGFuZXMgZHVyaW5nIGxvYWQgZGV0ZWN0aW9uLCBzbyBq dXN0IGRpc2FibGUKdGhlbSBhbGwuIFRoaXMgc2F2ZXMgdXMgZnJvbSBoYXZpbmcgdG8gY29tZSB1 cCB3aXRoIGEgc3VpdGFibGUKZnJhbWVidWZmZXIuIEFuZCB3ZSBhbHNvIGF2b2lkIGxlYXZpbmcg c3ByaXRlL2N1cnNvciBwbGFuZXMgb24gYW5kCnBvdGVudGlhbGx5IHByZXNlbnRpbmcgdGhlbSBh dCBhIHBlY3VsaWFyIGxvY2F0aW9uIGR1cmluZyB0aGUgbG9hZApkZXRlY3Rpb24uCgpDaGFuZ2Vz IHNpbmNlIHYxIChNYWFydGVuKToKLSBBZGQgbWlzc2luZyBjYWxsIHRvIGFkZF9hbGxfYWZmZWN0 ZWRfcGxhbmVzLgoKU2lnbmVkLW9mZi1ieTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxh QGxpbnV4LmludGVsLmNvbT4KU2lnbmVkLW9mZi1ieTogTWFhcnRlbiBMYW5raG9yc3QgPG1hYXJ0 ZW4ubGFua2hvcnN0QGxpbnV4LmludGVsLmNvbT4KQnVnemlsbGE6IGh0dHBzOi8vYnVncy5mcmVl ZGVza3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMjcwNwotLS0KIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2Rpc3BsYXkuYyB8IDE0NyArKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQogMSBmaWxlIGNoYW5nZWQsIDE4IGluc2VydGlvbnMoKyksIDEyOSBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKaW5kZXggN2U4MzMyNjhjOWRmLi5lZjYx ZjlhNzVjOTMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXku YworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKQEAgLTk2ODksMTEx ICs5Njg5LDI3IEBAIGludGVsX2ZyYW1lYnVmZmVyX2NyZWF0ZShzdHJ1Y3QgZHJtX2k5MTVfZ2Vt X29iamVjdCAqb2JqLAogCXJldHVybiBFUlJfUFRSKHJldCk7CiB9CiAKLXN0YXRpYyB1MzIKLWlu dGVsX2ZyYW1lYnVmZmVyX3BpdGNoX2Zvcl93aWR0aChpbnQgd2lkdGgsIGludCBicHApCi17Ci0J dTMyIHBpdGNoID0gRElWX1JPVU5EX1VQKHdpZHRoICogYnBwLCA4KTsKLQlyZXR1cm4gQUxJR04o cGl0Y2gsIDY0KTsKLX0KLQotc3RhdGljIHUzMgotaW50ZWxfZnJhbWVidWZmZXJfc2l6ZV9mb3Jf bW9kZShjb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSwgaW50IGJwcCkKLXsKLQl1 MzIgcGl0Y2ggPSBpbnRlbF9mcmFtZWJ1ZmZlcl9waXRjaF9mb3Jfd2lkdGgobW9kZS0+aGRpc3Bs YXksIGJwcCk7Ci0JcmV0dXJuIFBBR0VfQUxJR04ocGl0Y2ggKiBtb2RlLT52ZGlzcGxheSk7Ci19 Ci0KLXN0YXRpYyBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICoKLWludGVsX2ZyYW1lYnVmZmVyX2Ny ZWF0ZV9mb3JfbW9kZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAotCQkJCSAgY29uc3Qgc3RydWN0 IGRybV9kaXNwbGF5X21vZGUgKm1vZGUsCi0JCQkJICBpbnQgZGVwdGgsIGludCBicHApCi17Ci0J c3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmI7Ci0Jc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3Qg Km9iajsKLQlzdHJ1Y3QgZHJtX21vZGVfZmJfY21kMiBtb2RlX2NtZCA9IHsgMCB9OwotCi0Jb2Jq ID0gaTkxNV9nZW1fb2JqZWN0X2NyZWF0ZSh0b19pOTE1KGRldiksCi0JCQkJICAgIGludGVsX2Zy YW1lYnVmZmVyX3NpemVfZm9yX21vZGUobW9kZSwgYnBwKSk7Ci0JaWYgKElTX0VSUihvYmopKQot CQlyZXR1cm4gRVJSX0NBU1Qob2JqKTsKLQotCW1vZGVfY21kLndpZHRoID0gbW9kZS0+aGRpc3Bs YXk7Ci0JbW9kZV9jbWQuaGVpZ2h0ID0gbW9kZS0+dmRpc3BsYXk7Ci0JbW9kZV9jbWQucGl0Y2hl c1swXSA9IGludGVsX2ZyYW1lYnVmZmVyX3BpdGNoX2Zvcl93aWR0aChtb2RlX2NtZC53aWR0aCwK LQkJCQkJCQkJYnBwKTsKLQltb2RlX2NtZC5waXhlbF9mb3JtYXQgPSBkcm1fbW9kZV9sZWdhY3lf ZmJfZm9ybWF0KGJwcCwgZGVwdGgpOwotCi0JZmIgPSBpbnRlbF9mcmFtZWJ1ZmZlcl9jcmVhdGUo b2JqLCAmbW9kZV9jbWQpOwotCWlmIChJU19FUlIoZmIpKQotCQlpOTE1X2dlbV9vYmplY3RfcHV0 KG9iaik7Ci0KLQlyZXR1cm4gZmI7Ci19Ci0KLXN0YXRpYyBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVy ICoKLW1vZGVfZml0c19pbl9mYmRldihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAotCQkgICBjb25z dCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSkKLXsKLSNpZmRlZiBDT05GSUdfRFJNX0ZC REVWX0VNVUxBVElPTgotCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5 MTUoZGV2KTsKLQlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqOwotCXN0cnVjdCBkcm1f ZnJhbWVidWZmZXIgKmZiOwotCi0JaWYgKCFkZXZfcHJpdi0+ZmJkZXYpCi0JCXJldHVybiBOVUxM OwotCi0JaWYgKCFkZXZfcHJpdi0+ZmJkZXYtPmZiKQotCQlyZXR1cm4gTlVMTDsKLQotCW9iaiA9 IGRldl9wcml2LT5mYmRldi0+ZmItPm9iajsKLQlCVUdfT04oIW9iaik7Ci0KLQlmYiA9ICZkZXZf cHJpdi0+ZmJkZXYtPmZiLT5iYXNlOwotCWlmIChmYi0+cGl0Y2hlc1swXSA8IGludGVsX2ZyYW1l YnVmZmVyX3BpdGNoX2Zvcl93aWR0aChtb2RlLT5oZGlzcGxheSwKLQkJCQkJCQkgICAgICAgZmIt PmZvcm1hdC0+Y3BwWzBdICogOCkpCi0JCXJldHVybiBOVUxMOwotCi0JaWYgKG9iai0+YmFzZS5z aXplIDwgbW9kZS0+dmRpc3BsYXkgKiBmYi0+cGl0Y2hlc1swXSkKLQkJcmV0dXJuIE5VTEw7Ci0K LQlkcm1fZnJhbWVidWZmZXJfZ2V0KGZiKTsKLQlyZXR1cm4gZmI7Ci0jZWxzZQotCXJldHVybiBO VUxMOwotI2VuZGlmCi19Ci0KLXN0YXRpYyBpbnQgaW50ZWxfbW9kZXNldF9zZXR1cF9wbGFuZV9z dGF0ZShzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUsCi0JCQkJCSAgIHN0cnVjdCBkcm1f Y3J0YyAqY3J0YywKLQkJCQkJICAgY29uc3Qgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUs Ci0JCQkJCSAgIHN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKmZiLAotCQkJCQkgICBpbnQgeCwgaW50 IHkpCitzdGF0aWMgaW50IGludGVsX21vZGVzZXRfZGlzYWJsZV9wbGFuZXMoc3RydWN0IGRybV9h dG9taWNfc3RhdGUgKnN0YXRlLAorCQkJCQlzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCiB7CisJc3Ry dWN0IGRybV9wbGFuZSAqcGxhbmU7CiAJc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqcGxhbmVfc3Rh dGU7Ci0JaW50IGhkaXNwbGF5LCB2ZGlzcGxheTsKLQlpbnQgcmV0OwotCi0JcGxhbmVfc3RhdGUg PSBkcm1fYXRvbWljX2dldF9wbGFuZV9zdGF0ZShzdGF0ZSwgY3J0Yy0+cHJpbWFyeSk7Ci0JaWYg KElTX0VSUihwbGFuZV9zdGF0ZSkpCi0JCXJldHVybiBQVFJfRVJSKHBsYW5lX3N0YXRlKTsKLQot CWlmIChtb2RlKQotCQlkcm1fbW9kZV9nZXRfaHZfdGltaW5nKG1vZGUsICZoZGlzcGxheSwgJnZk aXNwbGF5KTsKLQllbHNlCi0JCWhkaXNwbGF5ID0gdmRpc3BsYXkgPSAwOworCWludCByZXQsIGk7 CiAKLQlyZXQgPSBkcm1fYXRvbWljX3NldF9jcnRjX2Zvcl9wbGFuZShwbGFuZV9zdGF0ZSwgZmIg PyBjcnRjIDogTlVMTCk7CisJcmV0ID0gZHJtX2F0b21pY19hZGRfYWZmZWN0ZWRfcGxhbmVzKHN0 YXRlLCBjcnRjKTsKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwotCWRybV9hdG9taWNfc2V0X2Zi X2Zvcl9wbGFuZShwbGFuZV9zdGF0ZSwgZmIpOwotCXBsYW5lX3N0YXRlLT5jcnRjX3ggPSAwOwot CXBsYW5lX3N0YXRlLT5jcnRjX3kgPSAwOwotCXBsYW5lX3N0YXRlLT5jcnRjX3cgPSBoZGlzcGxh eTsKLQlwbGFuZV9zdGF0ZS0+Y3J0Y19oID0gdmRpc3BsYXk7Ci0JcGxhbmVfc3RhdGUtPnNyY194 ID0geCA8PCAxNjsKLQlwbGFuZV9zdGF0ZS0+c3JjX3kgPSB5IDw8IDE2OwotCXBsYW5lX3N0YXRl LT5zcmNfdyA9IGhkaXNwbGF5IDw8IDE2OwotCXBsYW5lX3N0YXRlLT5zcmNfaCA9IHZkaXNwbGF5 IDw8IDE2OworCisJZm9yX2VhY2hfbmV3X3BsYW5lX2luX3N0YXRlKHN0YXRlLCBwbGFuZSwgcGxh bmVfc3RhdGUsIGkpIHsKKwkJaWYgKHBsYW5lX3N0YXRlLT5jcnRjICE9IGNydGMpCisJCQljb250 aW51ZTsKKworCQlyZXQgPSBkcm1fYXRvbWljX3NldF9jcnRjX2Zvcl9wbGFuZShwbGFuZV9zdGF0 ZSwgTlVMTCk7CisJCWlmIChyZXQpCisJCQlyZXR1cm4gcmV0OworCisJCWRybV9hdG9taWNfc2V0 X2ZiX2Zvcl9wbGFuZShwbGFuZV9zdGF0ZSwgTlVMTCk7CisJfQogCiAJcmV0dXJuIDA7CiB9CkBA IC05ODExLDcgKzk3MjcsNiBAQCBpbnQgaW50ZWxfZ2V0X2xvYWRfZGV0ZWN0X3BpcGUoc3RydWN0 IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKIAlzdHJ1Y3QgZHJtX2NydGMgKmNydGMgPSBOVUxM OwogCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBlbmNvZGVyLT5kZXY7CiAJc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShkZXYpOwotCXN0cnVjdCBkcm1fZnJhbWVi dWZmZXIgKmZiOwogCXN0cnVjdCBkcm1fbW9kZV9jb25maWcgKmNvbmZpZyA9ICZkZXYtPm1vZGVf Y29uZmlnOwogCXN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSA9IE5VTEwsICpyZXN0b3Jl X3N0YXRlID0gTlVMTDsKIAlzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9zdGF0ZSAqY29ubmVjdG9yX3N0 YXRlOwpAQCAtOTg3OSwxMCArOTc5NCw2IEBAIGludCBpbnRlbF9nZXRfbG9hZF9kZXRlY3RfcGlw ZShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAogZm91bmQ6CiAJaW50ZWxfY3J0YyA9 IHRvX2ludGVsX2NydGMoY3J0Yyk7CiAKLQlyZXQgPSBkcm1fbW9kZXNldF9sb2NrKCZjcnRjLT5w cmltYXJ5LT5tdXRleCwgY3R4KTsKLQlpZiAocmV0KQotCQlnb3RvIGZhaWw7Ci0KIAlzdGF0ZSA9 IGRybV9hdG9taWNfc3RhdGVfYWxsb2MoZGV2KTsKIAlyZXN0b3JlX3N0YXRlID0gZHJtX2F0b21p Y19zdGF0ZV9hbGxvYyhkZXYpOwogCWlmICghc3RhdGUgfHwgIXJlc3RvcmVfc3RhdGUpIHsKQEAg LTk5MTQsMzkgKzk4MjUsMTcgQEAgaW50IGludGVsX2dldF9sb2FkX2RldGVjdF9waXBlKHN0cnVj dCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCiAJaWYgKCFtb2RlKQogCQltb2RlID0gJmxvYWRf ZGV0ZWN0X21vZGU7CiAKLQkvKiBXZSBuZWVkIGEgZnJhbWVidWZmZXIgbGFyZ2UgZW5vdWdoIHRv IGFjY29tbW9kYXRlIGFsbCBhY2Nlc3NlcwotCSAqIHRoYXQgdGhlIHBsYW5lIG1heSBnZW5lcmF0 ZSB3aGlsc3Qgd2UgcGVyZm9ybSBsb2FkIGRldGVjdGlvbi4KLQkgKiBXZSBjYW4gbm90IHJlbHkg b24gdGhlIGZiY29uIGVpdGhlciBiZWluZyBwcmVzZW50ICh3ZSBnZXQgY2FsbGVkCi0JICogZHVy aW5nIGl0cyBpbml0aWFsaXNhdGlvbiB0byBkZXRlY3QgYWxsIGJvb3QgZGlzcGxheXMsIG9yIGl0 IG1heQotCSAqIG5vdCBldmVuIGV4aXN0KSBvciB0aGF0IGl0IGlzIGxhcmdlIGVub3VnaCB0byBz YXRpc2Z5IHRoZQotCSAqIHJlcXVlc3RlZCBtb2RlLgotCSAqLwotCWZiID0gbW9kZV9maXRzX2lu X2ZiZGV2KGRldiwgbW9kZSk7Ci0JaWYgKGZiID09IE5VTEwpIHsKLQkJRFJNX0RFQlVHX0tNUygi Y3JlYXRpbmcgdG1wIGZiIGZvciBsb2FkLWRldGVjdGlvblxuIik7Ci0JCWZiID0gaW50ZWxfZnJh bWVidWZmZXJfY3JlYXRlX2Zvcl9tb2RlKGRldiwgbW9kZSwgMjQsIDMyKTsKLQl9IGVsc2UKLQkJ RFJNX0RFQlVHX0tNUygicmV1c2luZyBmYmRldiBmb3IgbG9hZC1kZXRlY3Rpb24gZnJhbWVidWZm ZXJcbiIpOwotCWlmIChJU19FUlIoZmIpKSB7Ci0JCURSTV9ERUJVR19LTVMoImZhaWxlZCB0byBh bGxvY2F0ZSBmcmFtZWJ1ZmZlciBmb3IgbG9hZC1kZXRlY3Rpb25cbiIpOwotCQlyZXQgPSBQVFJf RVJSKGZiKTsKLQkJZ290byBmYWlsOwotCX0KLQotCXJldCA9IGludGVsX21vZGVzZXRfc2V0dXBf cGxhbmVfc3RhdGUoc3RhdGUsIGNydGMsIG1vZGUsIGZiLCAwLCAwKTsKLQlkcm1fZnJhbWVidWZm ZXJfcHV0KGZiKTsKKwlyZXQgPSBkcm1fYXRvbWljX3NldF9tb2RlX2Zvcl9jcnRjKCZjcnRjX3N0 YXRlLT5iYXNlLCBtb2RlKTsKIAlpZiAocmV0KQogCQlnb3RvIGZhaWw7CiAKLQlyZXQgPSBkcm1f YXRvbWljX3NldF9tb2RlX2Zvcl9jcnRjKCZjcnRjX3N0YXRlLT5iYXNlLCBtb2RlKTsKKwlyZXQg PSBpbnRlbF9tb2Rlc2V0X2Rpc2FibGVfcGxhbmVzKHN0YXRlLCBjcnRjKTsKIAlpZiAocmV0KQog CQlnb3RvIGZhaWw7CiAKIAlyZXQgPSBQVFJfRVJSX09SX1pFUk8oZHJtX2F0b21pY19nZXRfY29u bmVjdG9yX3N0YXRlKHJlc3RvcmVfc3RhdGUsIGNvbm5lY3RvcikpOwogCWlmICghcmV0KQogCQly ZXQgPSBQVFJfRVJSX09SX1pFUk8oZHJtX2F0b21pY19nZXRfY3J0Y19zdGF0ZShyZXN0b3JlX3N0 YXRlLCBjcnRjKSk7Ci0JaWYgKCFyZXQpCi0JCXJldCA9IFBUUl9FUlJfT1JfWkVSTyhkcm1fYXRv bWljX2dldF9wbGFuZV9zdGF0ZShyZXN0b3JlX3N0YXRlLCBjcnRjLT5wcmltYXJ5KSk7CiAJaWYg KHJldCkgewogCQlEUk1fREVCVUdfS01TKCJGYWlsZWQgdG8gY3JlYXRlIGEgY29weSBvZiBvbGQg c3RhdGUgdG8gcmVzdG9yZTogJWlcbiIsIHJldCk7CiAJCWdvdG8gZmFpbDsKLS0gCjIuMTUuMQoK X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==