From mboxrd@z Thu Jan 1 00:00:00 1970 From: Russell King Subject: [PATCH 14/17] drm/armada: move CBSH properties into overlay plane state Date: Tue, 10 Jul 2018 11:33:20 +0100 Message-ID: References: <20180710103106.GI17271@n2100.armlinux.org.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from pandora.armlinux.org.uk (pandora.armlinux.org.uk [IPv6:2001:4d48:ad52:3201:214:fdff:fe10:1be6]) by gabe.freedesktop.org (Postfix) with ESMTPS id 665506E8FE for ; Tue, 10 Jul 2018 10:33:25 +0000 (UTC) In-Reply-To: <20180710103106.GI17271@n2100.armlinux.org.uk> Content-Disposition: inline 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: David Airlie List-Id: dri-devel@lists.freedesktop.org TW92ZSB0aGUgY29udHJhc3QsIGJyaWdodG5lc3MsIGFuZCBzYXR1cmF0aW9uIHByb3BlcnRpZXMg dG8gdGhlIG92ZXJsYXkKcGxhbmUgc3RhdGUgc3RydWN0dXJlLCBhbmQgY2FsbCBvdXIgb3Zlcmxh eSBjb21taXQgZnVuY3Rpb24gdG8gdXBkYXRlCnRoZSBoYXJkd2FyZSB2aWEgdGhlIHBsYW5lcyBh dG9taWNfdXBkYXRlKCkgbWV0aG9kLgoKU2lnbmVkLW9mZi1ieTogUnVzc2VsbCBLaW5nIDxybWsr a2VybmVsQGFybWxpbnV4Lm9yZy51az4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vYXJtYWRhL2FybWFk YV9jcnRjLmggICAgfCAgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9hcm1hZGEvYXJtYWRhX292ZXJs YXkuYyB8IDE2MyArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLQogMiBmaWxlcyBjaGFu Z2VkLCAxMzYgaW5zZXJ0aW9ucygrKSwgMjkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2FybWFkYS9hcm1hZGFfY3J0Yy5oIGIvZHJpdmVycy9ncHUvZHJtL2FybWFk YS9hcm1hZGFfY3J0Yy5oCmluZGV4IDczZGRkN2Q2MWViNC4uYzI3NDM1YTg3NzZhIDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vYXJtYWRhL2FybWFkYV9jcnRjLmgKKysrIGIvZHJpdmVycy9n cHUvZHJtL2FybWFkYS9hcm1hZGFfY3J0Yy5oCkBAIC00Miw3ICs0Miw3IEBAIHN0cnVjdCBhcm1h ZGFfcGxhbmVfd29yayB7CiAJc3RydWN0IGRybV9wbGFuZSAqcGxhbmU7CiAJc3RydWN0IGRybV9m cmFtZWJ1ZmZlciAqb2xkX2ZiOwogCXN0cnVjdCBkcm1fcGVuZGluZ192YmxhbmtfZXZlbnQgKmV2 ZW50OwotCXN0cnVjdCBhcm1hZGFfcmVncyByZWdzWzE0XTsKKwlzdHJ1Y3QgYXJtYWRhX3JlZ3Mg cmVnc1syNF07CiB9OwogCiBzdHJ1Y3QgYXJtYWRhX3BsYW5lIHsKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9hcm1hZGEvYXJtYWRhX292ZXJsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9hcm1h ZGEvYXJtYWRhX292ZXJsYXkuYwppbmRleCA0MDg2OGU0ODVhZTguLmVjM2NlMjhmMTYyZSAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FybWFkYS9hcm1hZGFfb3ZlcmxheS5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9hcm1hZGEvYXJtYWRhX292ZXJsYXkuYwpAQCAtMjAsNiArMjAsMTAgQEAK ICNpbmNsdWRlICJhcm1hZGFfcGxhbmUuaCIKICNpbmNsdWRlICJhcm1hZGFfdHJhY2UuaCIKIAor I2RlZmluZSBERUZBVUxUX0JSSUdIVE5FU1MJMAorI2RlZmluZSBERUZBVUxUX0NPTlRSQVNUCTB4 NDAwMAorI2RlZmluZSBERUZBVUxUX1NBVFVSQVRJT04JMHg0MDAwCisKIHN0cnVjdCBhcm1hZGFf b3ZsX3BsYW5lX3Byb3BlcnRpZXMgewogCXVpbnQzMl90IGNvbG9ya2V5X3lyOwogCXVpbnQzMl90 IGNvbG9ya2V5X3VnOwpAQCAtMjcsOSArMzEsNiBAQCBzdHJ1Y3QgYXJtYWRhX292bF9wbGFuZV9w cm9wZXJ0aWVzIHsKICNkZWZpbmUgSzJSKHZhbCkgKCgodmFsKSA+PiAwKSAmIDB4ZmYpCiAjZGVm aW5lIEsyRyh2YWwpICgoKHZhbCkgPj4gOCkgJiAweGZmKQogI2RlZmluZSBLMkIodmFsKSAoKCh2 YWwpID4+IDE2KSAmIDB4ZmYpCi0JaW50MTZfdCAgYnJpZ2h0bmVzczsKLQl1aW50MTZfdCBjb250 cmFzdDsKLQl1aW50MTZfdCBzYXR1cmF0aW9uOwogCXVpbnQzMl90IGNvbG9ya2V5X21vZGU7CiAJ dWludDMyX3QgY29sb3JrZXlfZW5hYmxlOwogfTsKQEAgLTQ0LDYgKzQ1LDI2IEBAIHN0cnVjdCBh cm1hZGFfb3ZsX3BsYW5lIHsKICNkZWZpbmUgZHJtX3RvX2FybWFkYV9vdmxfcGxhbmUocCkgXAog CWNvbnRhaW5lcl9vZihwLCBzdHJ1Y3QgYXJtYWRhX292bF9wbGFuZSwgYmFzZS5iYXNlKQogCitz dHJ1Y3QgYXJtYWRhX292ZXJsYXlfc3RhdGUgeworCXN0cnVjdCBkcm1fcGxhbmVfc3RhdGUgYmFz ZTsKKwlzMTYgYnJpZ2h0bmVzczsKKwl1MTYgY29udHJhc3Q7CisJdTE2IHNhdHVyYXRpb247Cit9 OworI2RlZmluZSBkcm1fdG9fb3ZlcmxheV9zdGF0ZShzKSBcCisJY29udGFpbmVyX29mKHMsIHN0 cnVjdCBhcm1hZGFfb3ZlcmxheV9zdGF0ZSwgYmFzZSkKKworc3RhdGljIGlubGluZSB1MzIgYXJt YWRhX3NwdV9jb250cmFzdChzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpzdGF0ZSkKK3sKKwlyZXR1 cm4gZHJtX3RvX292ZXJsYXlfc3RhdGUoc3RhdGUpLT5icmlnaHRuZXNzIDw8IDE2IHwKKwkgICAg ICAgZHJtX3RvX292ZXJsYXlfc3RhdGUoc3RhdGUpLT5jb250cmFzdDsKK30KKworc3RhdGljIGlu bGluZSB1MzIgYXJtYWRhX3NwdV9zYXR1cmF0aW9uKHN0cnVjdCBkcm1fcGxhbmVfc3RhdGUgKnN0 YXRlKQoreworCS8qIERvY3Mgc2F5IDE1OjAsIGJ1dCBpdCBzZWVtcyB0byBhY3R1YWxseSBiZSAz MToxNiBvbiBBcm1hZGEgNTEwICovCisJcmV0dXJuIGRybV90b19vdmVybGF5X3N0YXRlKHN0YXRl KS0+c2F0dXJhdGlvbiA8PCAxNjsKK30KIAogc3RhdGljIHZvaWQKIGFybWFkYV9vdmxfdXBkYXRl X2F0dHIoc3RydWN0IGFybWFkYV9vdmxfcGxhbmVfcHJvcGVydGllcyAqcHJvcCwKQEAgLTUzLDEz ICs3NCw2IEBAIGFybWFkYV9vdmxfdXBkYXRlX2F0dHIoc3RydWN0IGFybWFkYV9vdmxfcGxhbmVf cHJvcGVydGllcyAqcHJvcCwKIAl3cml0ZWxfcmVsYXhlZChwcm9wLT5jb2xvcmtleV91ZywgZGNy dGMtPmJhc2UgKyBMQ0RfU1BVX0NPTE9SS0VZX1UpOwogCXdyaXRlbF9yZWxheGVkKHByb3AtPmNv bG9ya2V5X3ZiLCBkY3J0Yy0+YmFzZSArIExDRF9TUFVfQ09MT1JLRVlfVik7CiAKLQl3cml0ZWxf cmVsYXhlZChwcm9wLT5icmlnaHRuZXNzIDw8IDE2IHwgcHJvcC0+Y29udHJhc3QsCi0JCSAgICAg ICBkY3J0Yy0+YmFzZSArIExDRF9TUFVfQ09OVFJBU1QpOwotCS8qIERvY3Mgc2F5IDE1OjAsIGJ1 dCBpdCBzZWVtcyB0byBhY3R1YWxseSBiZSAzMToxNiBvbiBBcm1hZGEgNTEwICovCi0Jd3JpdGVs X3JlbGF4ZWQocHJvcC0+c2F0dXJhdGlvbiA8PCAxNiwKLQkJICAgICAgIGRjcnRjLT5iYXNlICsg TENEX1NQVV9TQVRVUkFUSU9OKTsKLQl3cml0ZWxfcmVsYXhlZCgweDAwMDAyMDAwLCBkY3J0Yy0+ YmFzZSArIExDRF9TUFVfQ0JTSF9IVUUpOwotCiAJc3Bpbl9sb2NrX2lycSgmZGNydGMtPmlycV9s b2NrKTsKIAlhcm1hZGFfdXBkYXRlbChwcm9wLT5jb2xvcmtleV9tb2RlLAogCQkgICAgICAgQ0ZH X0NLTU9ERV9NQVNLIHwgQ0ZHX0FMUEhBTV9NQVNLIHwgQ0ZHX0FMUEhBX01BU0ssCkBAIC0xOTEs NiArMjA1LDE3IEBAIHN0YXRpYyB2b2lkIGFybWFkYV9kcm1fb3ZlcmxheV9wbGFuZV9hdG9taWNf dXBkYXRlKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLAogCQlhcm1hZGFfcmVnX3F1ZXVlX21vZChy ZWdzLCBpZHgsIGNmZywgY2ZnX21hc2ssCiAJCQkJICAgICBMQ0RfU1BVX0RNQV9DVFJMMCk7CiAK Kwl2YWwgPSBhcm1hZGFfc3B1X2NvbnRyYXN0KHN0YXRlKTsKKwlpZiAoKCFvbGRfc3RhdGUtPnZp c2libGUgJiYgc3RhdGUtPnZpc2libGUpIHx8CisJICAgIGFybWFkYV9zcHVfY29udHJhc3Qob2xk X3N0YXRlKSAhPSB2YWwpCisJCWFybWFkYV9yZWdfcXVldWVfc2V0KHJlZ3MsIGlkeCwgdmFsLCBM Q0RfU1BVX0NPTlRSQVNUKTsKKwl2YWwgPSBhcm1hZGFfc3B1X3NhdHVyYXRpb24oc3RhdGUpOwor CWlmICgoIW9sZF9zdGF0ZS0+dmlzaWJsZSAmJiBzdGF0ZS0+dmlzaWJsZSkgfHwKKwkgICAgYXJt YWRhX3NwdV9zYXR1cmF0aW9uKG9sZF9zdGF0ZSkgIT0gdmFsKQorCQlhcm1hZGFfcmVnX3F1ZXVl X3NldChyZWdzLCBpZHgsIHZhbCwgTENEX1NQVV9TQVRVUkFUSU9OKTsKKwlpZiAoIW9sZF9zdGF0 ZS0+dmlzaWJsZSAmJiBzdGF0ZS0+dmlzaWJsZSkKKwkJYXJtYWRhX3JlZ19xdWV1ZV9zZXQocmVn cywgaWR4LCAweDAwMDAyMDAwLCBMQ0RfU1BVX0NCU0hfSFVFKTsKKwogCWRjcnRjLT5yZWdzX2lk eCArPSBpZHg7CiB9CiAKQEAgLTI2NCw2ICsyODksMTAgQEAgc3RhdGljIGludCBhcm1hZGFfb3Zl cmxheV9jb21taXQoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCiAJLyogUG9pbnQgb2Ygbm8gcmV0 dXJuICovCiAJc3dhcChwbGFuZS0+c3RhdGUsIHN0YXRlKTsKIAorCS8qIE5vIENSVEMsIGNhbid0 IHVwZGF0ZSAqLworCWlmICghcGxhbmUtPnN0YXRlLT5jcnRjKQorCQlnb3RvIHB1dF9zdGF0ZTsK KwogCWRjcnRjLT5yZWdzX2lkeCA9IDA7CiAJZGNydGMtPnJlZ3MgPSB3b3JrLT5yZWdzOwogCkBA IC0zMDAsNyArMzI5LDcgQEAgc3RhdGljIGludCBhcm1hZGFfb3ZlcmxheV9jb21taXQoc3RydWN0 IGRybV9wbGFuZSAqcGxhbmUsCiAJZHBsYW5lLT5uZXh0X3dvcmsgPSAhZHBsYW5lLT5uZXh0X3dv cms7CiAKIHB1dF9zdGF0ZToKLQlkcm1fYXRvbWljX2hlbHBlcl9wbGFuZV9kZXN0cm95X3N0YXRl KHBsYW5lLCBzdGF0ZSk7CisJcGxhbmUtPmZ1bmNzLT5hdG9taWNfZGVzdHJveV9zdGF0ZShwbGFu ZSwgc3RhdGUpOwogCXJldHVybiByZXQ7CiB9CiAKQEAgLTMxOCw3ICszNDcsNyBAQCBhcm1hZGFf b3ZsX3BsYW5lX3VwZGF0ZShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwgc3RydWN0IGRybV9jcnRj ICpjcnRjLAogCQkJCSBzcmNfeCwgc3JjX3ksIHNyY193LCBzcmNfaCk7CiAKIAkvKiBDb25zdHJ1 Y3QgbmV3IHN0YXRlIGZvciB0aGUgb3ZlcmxheSBwbGFuZSAqLwotCXN0YXRlID0gZHJtX2F0b21p Y19oZWxwZXJfcGxhbmVfZHVwbGljYXRlX3N0YXRlKHBsYW5lKTsKKwlzdGF0ZSA9IHBsYW5lLT5m dW5jcy0+YXRvbWljX2R1cGxpY2F0ZV9zdGF0ZShwbGFuZSk7CiAJaWYgKCFzdGF0ZSkKIAkJcmV0 dXJuIC1FTk9NRU07CiAKQEAgLTQwNCwxNSArNDMzLDIyIEBAIHN0YXRpYyBpbnQgYXJtYWRhX292 bF9wbGFuZV9zZXRfcHJvcGVydHkoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCiAJCQlkcGxhbmUt PnByb3AuY29sb3JrZXlfZW5hYmxlID0gQURWX0dSQUNPTE9SS0VZOwogCQl9CiAJCXVwZGF0ZV9h dHRyID0gdHJ1ZTsKLQl9IGVsc2UgaWYgKHByb3BlcnR5ID09IHByaXYtPmJyaWdodG5lc3NfcHJv cCkgewotCQlkcGxhbmUtPnByb3AuYnJpZ2h0bmVzcyA9IHZhbCAtIDI1NjsKLQkJdXBkYXRlX2F0 dHIgPSB0cnVlOwotCX0gZWxzZSBpZiAocHJvcGVydHkgPT0gcHJpdi0+Y29udHJhc3RfcHJvcCkg ewotCQlkcGxhbmUtPnByb3AuY29udHJhc3QgPSB2YWw7Ci0JCXVwZGF0ZV9hdHRyID0gdHJ1ZTsK LQl9IGVsc2UgaWYgKHByb3BlcnR5ID09IHByaXYtPnNhdHVyYXRpb25fcHJvcCkgewotCQlkcGxh bmUtPnByb3Auc2F0dXJhdGlvbiA9IHZhbDsKLQkJdXBkYXRlX2F0dHIgPSB0cnVlOworCX0gZWxz ZSB7CisJCXN0cnVjdCBkcm1fcGxhbmVfc3RhdGUgKnN0YXRlOworCQlpbnQgcmV0OworCisJCXN0 YXRlID0gcGxhbmUtPmZ1bmNzLT5hdG9taWNfZHVwbGljYXRlX3N0YXRlKHBsYW5lKTsKKwkJaWYg KCFzdGF0ZSkKKwkJCXJldHVybiAtRU5PTUVNOworCisJCXJldCA9IHBsYW5lLT5mdW5jcy0+YXRv bWljX3NldF9wcm9wZXJ0eShwbGFuZSwgc3RhdGUsIHByb3BlcnR5LAorCQkJCQkJCXZhbCk7CisJ CWlmIChyZXQpIHsKKwkJCXBsYW5lLT5mdW5jcy0+YXRvbWljX2Rlc3Ryb3lfc3RhdGUocGxhbmUs IHN0YXRlKTsKKwkJCXJldHVybiByZXQ7CisJCX0KKworCQlyZXR1cm4gYXJtYWRhX292ZXJsYXlf Y29tbWl0KHBsYW5lLCBzdGF0ZSk7CiAJfQogCiAJaWYgKHVwZGF0ZV9hdHRyICYmIGRwbGFuZS0+ YmFzZS5iYXNlLmNydGMpCkBAIC00MjIsMTIgKzQ1OCw4NSBAQCBzdGF0aWMgaW50IGFybWFkYV9v dmxfcGxhbmVfc2V0X3Byb3BlcnR5KHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLAogCXJldHVybiAw OwogfQogCitzdGF0aWMgdm9pZCBhcm1hZGFfb3ZlcmxheV9yZXNldChzdHJ1Y3QgZHJtX3BsYW5l ICpwbGFuZSkKK3sKKwlzdHJ1Y3QgYXJtYWRhX292ZXJsYXlfc3RhdGUgKnN0YXRlOworCisJaWYg KHBsYW5lLT5zdGF0ZSkKKwkJX19kcm1fYXRvbWljX2hlbHBlcl9wbGFuZV9kZXN0cm95X3N0YXRl KHBsYW5lLT5zdGF0ZSk7CisJa2ZyZWUocGxhbmUtPnN0YXRlKTsKKworCXN0YXRlID0ga3phbGxv YyhzaXplb2YoKnN0YXRlKSwgR0ZQX0tFUk5FTCk7CisJaWYgKHN0YXRlKSB7CisJCXN0YXRlLT5i YXNlLnBsYW5lID0gcGxhbmU7CisJCXN0YXRlLT5iYXNlLnJvdGF0aW9uID0gRFJNX01PREVfUk9U QVRFXzA7CisJCXN0YXRlLT5icmlnaHRuZXNzID0gREVGQVVMVF9CUklHSFRORVNTOworCQlzdGF0 ZS0+Y29udHJhc3QgPSBERUZBVUxUX0NPTlRSQVNUOworCQlzdGF0ZS0+c2F0dXJhdGlvbiA9IERF RkFVTFRfU0FUVVJBVElPTjsKKwl9CisJcGxhbmUtPnN0YXRlID0gJnN0YXRlLT5iYXNlOworfQor CitzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICoKK2FybWFkYV9vdmVybGF5X2R1cGxpY2F0ZV9zdGF0 ZShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSkKK3sKKwlzdHJ1Y3QgYXJtYWRhX292ZXJsYXlfc3Rh dGUgKnN0YXRlOworCisJaWYgKFdBUk5fT04oIXBsYW5lLT5zdGF0ZSkpCisJCXJldHVybiBOVUxM OworCisJc3RhdGUgPSBrbWVtZHVwKHBsYW5lLT5zdGF0ZSwgc2l6ZW9mKCpzdGF0ZSksIEdGUF9L RVJORUwpOworCWlmIChzdGF0ZSkKKwkJX19kcm1fYXRvbWljX2hlbHBlcl9wbGFuZV9kdXBsaWNh dGVfc3RhdGUocGxhbmUsICZzdGF0ZS0+YmFzZSk7CisJcmV0dXJuICZzdGF0ZS0+YmFzZTsKK30K Kworc3RhdGljIGludCBhcm1hZGFfb3ZlcmxheV9zZXRfcHJvcGVydHkoc3RydWN0IGRybV9wbGFu ZSAqcGxhbmUsCisJc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqc3RhdGUsIHN0cnVjdCBkcm1fcHJv cGVydHkgKnByb3BlcnR5LAorCXVpbnQ2NF90IHZhbCkKK3sKKwlzdHJ1Y3QgYXJtYWRhX3ByaXZh dGUgKnByaXYgPSBwbGFuZS0+ZGV2LT5kZXZfcHJpdmF0ZTsKKworCWlmIChwcm9wZXJ0eSA9PSBw cml2LT5icmlnaHRuZXNzX3Byb3ApIHsKKwkJZHJtX3RvX292ZXJsYXlfc3RhdGUoc3RhdGUpLT5i cmlnaHRuZXNzID0gdmFsIC0gMjU2OworCX0gZWxzZSBpZiAocHJvcGVydHkgPT0gcHJpdi0+Y29u dHJhc3RfcHJvcCkgeworCQlkcm1fdG9fb3ZlcmxheV9zdGF0ZShzdGF0ZSktPmNvbnRyYXN0ID0g dmFsOworCX0gZWxzZSBpZiAocHJvcGVydHkgPT0gcHJpdi0+c2F0dXJhdGlvbl9wcm9wKSB7CisJ CWRybV90b19vdmVybGF5X3N0YXRlKHN0YXRlKS0+c2F0dXJhdGlvbiA9IHZhbDsKKwl9IGVsc2Ug eworCQlyZXR1cm4gLUVJTlZBTDsKKwl9CisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgYXJt YWRhX292ZXJsYXlfZ2V0X3Byb3BlcnR5KHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLAorCWNvbnN0 IHN0cnVjdCBkcm1fcGxhbmVfc3RhdGUgKnN0YXRlLCBzdHJ1Y3QgZHJtX3Byb3BlcnR5ICpwcm9w ZXJ0eSwKKwl1aW50NjRfdCAqdmFsKQoreworCXN0cnVjdCBhcm1hZGFfcHJpdmF0ZSAqcHJpdiA9 IHBsYW5lLT5kZXYtPmRldl9wcml2YXRlOworCisJaWYgKHByb3BlcnR5ID09IHByaXYtPmJyaWdo dG5lc3NfcHJvcCkgeworCQkqdmFsID0gZHJtX3RvX292ZXJsYXlfc3RhdGUoc3RhdGUpLT5icmln aHRuZXNzICsgMjU2OworCX0gZWxzZSBpZiAocHJvcGVydHkgPT0gcHJpdi0+Y29udHJhc3RfcHJv cCkgeworCQkqdmFsID0gZHJtX3RvX292ZXJsYXlfc3RhdGUoc3RhdGUpLT5jb250cmFzdDsKKwl9 IGVsc2UgaWYgKHByb3BlcnR5ID09IHByaXYtPnNhdHVyYXRpb25fcHJvcCkgeworCQkqdmFsID0g ZHJtX3RvX292ZXJsYXlfc3RhdGUoc3RhdGUpLT5zYXR1cmF0aW9uOworCX0gZWxzZSB7CisJCXJl dHVybiAtRUlOVkFMOworCX0KKwlyZXR1cm4gMDsKK30KKwogc3RhdGljIGNvbnN0IHN0cnVjdCBk cm1fcGxhbmVfZnVuY3MgYXJtYWRhX292bF9wbGFuZV9mdW5jcyA9IHsKIAkudXBkYXRlX3BsYW5l CT0gYXJtYWRhX292bF9wbGFuZV91cGRhdGUsCiAJLmRpc2FibGVfcGxhbmUJPSBkcm1fcGxhbmVf aGVscGVyX2Rpc2FibGUsCiAJLmRlc3Ryb3kJPSBhcm1hZGFfb3ZsX3BsYW5lX2Rlc3Ryb3ksCiAJ LnNldF9wcm9wZXJ0eQk9IGFybWFkYV9vdmxfcGxhbmVfc2V0X3Byb3BlcnR5LAotCS5yZXNldAkJ PSBkcm1fYXRvbWljX2hlbHBlcl9wbGFuZV9yZXNldCwKKwkucmVzZXQJCT0gYXJtYWRhX292ZXJs YXlfcmVzZXQsCisJLmF0b21pY19kdXBsaWNhdGVfc3RhdGUgPSBhcm1hZGFfb3ZlcmxheV9kdXBs aWNhdGVfc3RhdGUsCisJLmF0b21pY19kZXN0cm95X3N0YXRlID0gZHJtX2F0b21pY19oZWxwZXJf cGxhbmVfZGVzdHJveV9zdGF0ZSwKKwkuYXRvbWljX3NldF9wcm9wZXJ0eSA9IGFybWFkYV9vdmVy bGF5X3NldF9wcm9wZXJ0eSwKKwkuYXRvbWljX2dldF9wcm9wZXJ0eSA9IGFybWFkYV9vdmVybGF5 X2dldF9wcm9wZXJ0eSwKIH07CiAKIHN0YXRpYyBjb25zdCB1aW50MzJfdCBhcm1hZGFfb3ZsX2Zv cm1hdHNbXSA9IHsKQEAgLTU0Miw5ICs2NTEsNiBAQCBpbnQgYXJtYWRhX292ZXJsYXlfcGxhbmVf Y3JlYXRlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHVuc2lnbmVkIGxvbmcgY3J0Y3MpCiAJZHBs YW5lLT5wcm9wLmNvbG9ya2V5X21vZGUgPSBDRkdfQ0tNT0RFKENLTU9ERV9SR0IpIHwKIAkJCQkg ICAgIENGR19BTFBIQU1fR1JBIHwgQ0ZHX0FMUEhBKDApOwogCWRwbGFuZS0+cHJvcC5jb2xvcmtl eV9lbmFibGUgPSBBRFZfR1JBQ09MT1JLRVk7Ci0JZHBsYW5lLT5wcm9wLmJyaWdodG5lc3MgPSAw OwotCWRwbGFuZS0+cHJvcC5jb250cmFzdCA9IDB4NDAwMDsKLQlkcGxhbmUtPnByb3Auc2F0dXJh dGlvbiA9IDB4NDAwMDsKIAogCW1vYmogPSAmZHBsYW5lLT5iYXNlLmJhc2UuYmFzZTsKIAlkcm1f b2JqZWN0X2F0dGFjaF9wcm9wZXJ0eShtb2JqLCBwcml2LT5jb2xvcmtleV9wcm9wLApAQCAtNTU5 LDExICs2NjUsMTIgQEAgaW50IGFybWFkYV9vdmVybGF5X3BsYW5lX2NyZWF0ZShzdHJ1Y3QgZHJt X2RldmljZSAqZGV2LCB1bnNpZ25lZCBsb25nIGNydGNzKQogCQkJCSAgIDB4MDAwMDAwKTsKIAlk cm1fb2JqZWN0X2F0dGFjaF9wcm9wZXJ0eShtb2JqLCBwcml2LT5jb2xvcmtleV9tb2RlX3Byb3As CiAJCQkJICAgQ0tNT0RFX1JHQik7Ci0JZHJtX29iamVjdF9hdHRhY2hfcHJvcGVydHkobW9iaiwg cHJpdi0+YnJpZ2h0bmVzc19wcm9wLCAyNTYpOworCWRybV9vYmplY3RfYXR0YWNoX3Byb3BlcnR5 KG1vYmosIHByaXYtPmJyaWdodG5lc3NfcHJvcCwKKwkJCQkgICAyNTYgKyBERUZBVUxUX0JSSUdI VE5FU1MpOwogCWRybV9vYmplY3RfYXR0YWNoX3Byb3BlcnR5KG1vYmosIHByaXYtPmNvbnRyYXN0 X3Byb3AsCi0JCQkJICAgZHBsYW5lLT5wcm9wLmNvbnRyYXN0KTsKKwkJCQkgICBERUZBVUxUX0NP TlRSQVNUKTsKIAlkcm1fb2JqZWN0X2F0dGFjaF9wcm9wZXJ0eShtb2JqLCBwcml2LT5zYXR1cmF0 aW9uX3Byb3AsCi0JCQkJICAgZHBsYW5lLT5wcm9wLnNhdHVyYXRpb24pOworCQkJCSAgIERFRkFV TFRfU0FUVVJBVElPTik7CiAKIAlyZXR1cm4gMDsKIH0KLS0gCjIuNy40CgpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0 CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3Rv cC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK