From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: [RFC 3/7] drm/i915: Complete sw/hw split Date: Tue, 2 Jul 2019 21:42:01 +0200 Message-ID: <20190702194205.13366-4-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 B2AE96E03B 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 LmludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2F0b21p Yy5jICB8IDQ0ICsrKysrKysrKysrKysrKysrKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNw bGF5L2ludGVsX2F0b21pYy5oICB8ICAyICsKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkv aW50ZWxfZGlzcGxheS5jIHwgMzkgKysrKysrKysrKysrKystLS0KIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2Rydi5oICAgICAgICAgICAgIHwgIDggKystLQogNCBmaWxlcyBjaGFuZ2VkLCA4 NSBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfYXRvbWljLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9k aXNwbGF5L2ludGVsX2F0b21pYy5jCmluZGV4IGI5NTAxNWNmYTVkYy4uMmNjM2Q4N2JkYWZjIDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2F0b21pYy5jCisr KyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfYXRvbWljLmMKQEAgLTE5NSw2 ICsxOTUsMTQgQEAgaW50ZWxfY3J0Y19kdXBsaWNhdGVfc3RhdGUoc3RydWN0IGRybV9jcnRjICpj cnRjKQogCiAJX19kcm1fYXRvbWljX2hlbHBlcl9jcnRjX2R1cGxpY2F0ZV9zdGF0ZShjcnRjLCAm Y3J0Y19zdGF0ZS0+dWFwaSk7CiAKKwkvKiBjb3B5IGNvbG9yIGJsb2JzICovCisJaWYgKGNydGNf c3RhdGUtPmh3LmRlZ2FtbWFfbHV0KQorCQlkcm1fcHJvcGVydHlfYmxvYl9nZXQoY3J0Y19zdGF0 ZS0+aHcuZGVnYW1tYV9sdXQpOworCWlmIChjcnRjX3N0YXRlLT5ody5jdG0pCisJCWRybV9wcm9w ZXJ0eV9ibG9iX2dldChjcnRjX3N0YXRlLT5ody5jdG0pOworCWlmIChjcnRjX3N0YXRlLT5ody5n YW1tYV9sdXQpCisJCWRybV9wcm9wZXJ0eV9ibG9iX2dldChjcnRjX3N0YXRlLT5ody5nYW1tYV9s dXQpOworCiAJY3J0Y19zdGF0ZS0+dXBkYXRlX3BpcGUgPSBmYWxzZTsKIAljcnRjX3N0YXRlLT5k aXNhYmxlX2xwX3dtID0gZmFsc2U7CiAJY3J0Y19zdGF0ZS0+ZGlzYWJsZV9jeHNyID0gZmFsc2U7 CkBAIC0yMDksNiArMjE3LDQxIEBAIGludGVsX2NydGNfZHVwbGljYXRlX3N0YXRlKHN0cnVjdCBk cm1fY3J0YyAqY3J0YykKIAlyZXR1cm4gJmNydGNfc3RhdGUtPnVhcGk7CiB9CiAKK3N0YXRpYyB2 b2lkIGludGVsX2NydGNfcHV0X2NvbG9yX2Jsb2JzKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpj cnRjX3N0YXRlKQoreworCWRybV9wcm9wZXJ0eV9ibG9iX3B1dChjcnRjX3N0YXRlLT5ody5kZWdh bW1hX2x1dCk7CisJZHJtX3Byb3BlcnR5X2Jsb2JfcHV0KGNydGNfc3RhdGUtPmh3LmdhbW1hX2x1 dCk7CisJZHJtX3Byb3BlcnR5X2Jsb2JfcHV0KGNydGNfc3RhdGUtPmh3LmN0bSk7Cit9CisKK3Zv aWQgaW50ZWxfY3J0Y19mcmVlX2h3X3N0YXRlKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRj X3N0YXRlKQoreworCWludGVsX2NydGNfcHV0X2NvbG9yX2Jsb2JzKGNydGNfc3RhdGUpOworfQor Cit2b2lkIGludGVsX2NydGNfY29weV9jb2xvcl9ibG9icyhzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0 ZSAqY3J0Y19zdGF0ZSkKK3sKKwlpbnRlbF9jcnRjX3B1dF9jb2xvcl9ibG9icyhjcnRjX3N0YXRl KTsKKworCWlmIChjcnRjX3N0YXRlLT51YXBpLmRlZ2FtbWFfbHV0KQorCQljcnRjX3N0YXRlLT5o dy5kZWdhbW1hX2x1dCA9CisJCQlkcm1fcHJvcGVydHlfYmxvYl9nZXQoY3J0Y19zdGF0ZS0+dWFw aS5kZWdhbW1hX2x1dCk7CisJZWxzZQorCQljcnRjX3N0YXRlLT5ody5kZWdhbW1hX2x1dCA9IE5V TEw7CisKKwlpZiAoY3J0Y19zdGF0ZS0+dWFwaS5nYW1tYV9sdXQpCisJCWNydGNfc3RhdGUtPmh3 LmdhbW1hX2x1dCA9CisJCQlkcm1fcHJvcGVydHlfYmxvYl9nZXQoY3J0Y19zdGF0ZS0+dWFwaS5n YW1tYV9sdXQpOworCWVsc2UKKwkJY3J0Y19zdGF0ZS0+aHcuZ2FtbWFfbHV0ID0gTlVMTDsKKwor CWlmIChjcnRjX3N0YXRlLT51YXBpLmN0bSkKKwkJY3J0Y19zdGF0ZS0+aHcuY3RtID0KKwkJCWRy bV9wcm9wZXJ0eV9ibG9iX2dldChjcnRjX3N0YXRlLT51YXBpLmN0bSk7CisJZWxzZQorCQljcnRj X3N0YXRlLT5ody5jdG0gPSBOVUxMOworfQorCiAvKioKICAqIGludGVsX2NydGNfZGVzdHJveV9z dGF0ZSAtIGRlc3Ryb3kgY3J0YyBzdGF0ZQogICogQGNydGM6IGRybSBjcnRjCkBAIC0yMjQsNiAr MjY3LDcgQEAgaW50ZWxfY3J0Y19kZXN0cm95X3N0YXRlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywK IAlzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSA9IHRvX2ludGVsX2NydGNfc3Rh dGUoc3RhdGUpOwogCiAJX19kcm1fYXRvbWljX2hlbHBlcl9jcnRjX2Rlc3Ryb3lfc3RhdGUoJmNy dGNfc3RhdGUtPnVhcGkpOworCWludGVsX2NydGNfZnJlZV9od19zdGF0ZShjcnRjX3N0YXRlKTsK IAlrZnJlZShjcnRjX3N0YXRlKTsKIH0KIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvZGlzcGxheS9pbnRlbF9hdG9taWMuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkv aW50ZWxfYXRvbWljLmgKaW5kZXggNTgwNjVkMzE2MWEzLi40MmJlOTFlMDc3MmEgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfYXRvbWljLmgKKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9hdG9taWMuaApAQCAtMzUsNiArMzUsOCBA QCBpbnRlbF9kaWdpdGFsX2Nvbm5lY3Rvcl9kdXBsaWNhdGVfc3RhdGUoc3RydWN0IGRybV9jb25u ZWN0b3IgKmNvbm5lY3Rvcik7CiBzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKmludGVsX2NydGNfZHVw bGljYXRlX3N0YXRlKHN0cnVjdCBkcm1fY3J0YyAqY3J0Yyk7CiB2b2lkIGludGVsX2NydGNfZGVz dHJveV9zdGF0ZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiAJCQkgICAgICAgc3RydWN0IGRybV9j cnRjX3N0YXRlICpzdGF0ZSk7Cit2b2lkIGludGVsX2NydGNfZnJlZV9od19zdGF0ZShzdHJ1Y3Qg aW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSk7Cit2b2lkIGludGVsX2NydGNfY29weV9jb2xv cl9ibG9icyhzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSk7CiBzdHJ1Y3QgZHJt X2F0b21pY19zdGF0ZSAqaW50ZWxfYXRvbWljX3N0YXRlX2FsbG9jKHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYpOwogdm9pZCBpbnRlbF9hdG9taWNfc3RhdGVfY2xlYXIoc3RydWN0IGRybV9hdG9taWNf c3RhdGUgKnN0YXRlKTsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxh eS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rp c3BsYXkuYwppbmRleCAyYmJjZmY5YTRjNTQuLmQ4ZTYzZjEzM2E2MiAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMKQEAgLTExNCw2ICsxMTQsNyBAQCBz dGF0aWMgY29uc3QgdTY0IGN1cnNvcl9mb3JtYXRfbW9kaWZpZXJzW10gPSB7CiAJRFJNX0ZPUk1B VF9NT0RfSU5WQUxJRAogfTsKIAorc3RhdGljIHZvaWQgY29weV91YXBpX3RvX2h3X3N0YXRlKHN0 cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKTsKIHN0YXRpYyB2b2lkIGk5eHhfY3J0 Y19jbG9ja19nZXQoc3RydWN0IGludGVsX2NydGMgKmNydGMsCiAJCQkJc3RydWN0IGludGVsX2Ny dGNfc3RhdGUgKnBpcGVfY29uZmlnKTsKIHN0YXRpYyB2b2lkIGlyb25sYWtlX3BjaF9jbG9ja19n ZXQoc3RydWN0IGludGVsX2NydGMgKmNydGMsCkBAIC03MDM5LDYgKzcwNDAsNyBAQCBzdGF0aWMg dm9pZCBpbnRlbF9jcnRjX2Rpc2FibGVfbm9hdG9taWMoc3RydWN0IGRybV9jcnRjICpjcnRjLAog CWNydGMtPmVuYWJsZWQgPSBmYWxzZTsKIAljcnRjLT5zdGF0ZS0+Y29ubmVjdG9yX21hc2sgPSAw OwogCWNydGMtPnN0YXRlLT5lbmNvZGVyX21hc2sgPSAwOworCWNvcHlfdWFwaV90b19od19zdGF0 ZSh0b19pbnRlbF9jcnRjX3N0YXRlKGNydGMtPnN0YXRlKSk7CiAKIAlmb3JfZWFjaF9lbmNvZGVy X29uX2NydGMoY3J0Yy0+ZGV2LCBjcnRjLCBlbmNvZGVyKQogCQllbmNvZGVyLT5iYXNlLmNydGMg PSBOVUxMOwpAQCAtMTE3NDMsNiArMTE3NDUsOSBAQCBzdGF0aWMgaW50IGludGVsX2NydGNfYXRv bWljX2NoZWNrKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAogCWlmIChtb2RlX2NoYW5nZWQgfHwg cGlwZV9jb25maWctPnVwZGF0ZV9waXBlIHx8CiAJICAgIHBpcGVfY29uZmlnLT51YXBpLmNvbG9y X21nbXRfY2hhbmdlZCkgeworCQkvKiBDb3B5IGNvbG9yIGJsb2JzIHRvIGh3IHN0YXRlICovCisJ CWludGVsX2NydGNfY29weV9jb2xvcl9ibG9icyhwaXBlX2NvbmZpZyk7CisKIAkJcmV0ID0gaW50 ZWxfY29sb3JfY2hlY2socGlwZV9jb25maWcpOwogCQlpZiAocmV0KQogCQkJcmV0dXJuIHJldDsK QEAgLTEyMTgyLDYgKzEyMTg3LDIyIEBAIHN0YXRpYyBib29sIGNoZWNrX2RpZ2l0YWxfcG9ydF9j b25mbGljdHMoc3RydWN0IGludGVsX2F0b21pY19zdGF0ZSAqc3RhdGUpCiAJcmV0dXJuIHJldDsK IH0KIAorc3RhdGljIHZvaWQgY29weV91YXBpX3RvX2h3X3N0YXRlKHN0cnVjdCBpbnRlbF9jcnRj X3N0YXRlICpjcnRjX3N0YXRlKQoreworCWNydGNfc3RhdGUtPmh3LmVuYWJsZSA9IGNydGNfc3Rh dGUtPnVhcGkuZW5hYmxlOworCWNydGNfc3RhdGUtPmh3LmFjdGl2ZSA9IGNydGNfc3RhdGUtPnVh cGkuYWN0aXZlOworCWNydGNfc3RhdGUtPmh3Lm1vZGUgPSBjcnRjX3N0YXRlLT51YXBpLm1vZGU7 CisJY3J0Y19zdGF0ZS0+aHcuYWRqdXN0ZWRfbW9kZSA9IGNydGNfc3RhdGUtPnVhcGkuYWRqdXN0 ZWRfbW9kZTsKK30KKworc3RhdGljIHZvaWQgY29weV9od190b191YXBpX3N0YXRlKHN0cnVjdCBp bnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQoreworCWNydGNfc3RhdGUtPnVhcGkuZW5hYmxl ID0gY3J0Y19zdGF0ZS0+aHcuZW5hYmxlOworCWNydGNfc3RhdGUtPnVhcGkuYWN0aXZlID0gY3J0 Y19zdGF0ZS0+aHcuYWN0aXZlOworCWNydGNfc3RhdGUtPnVhcGkubW9kZSA9IGNydGNfc3RhdGUt Pmh3Lm1vZGU7CisJY3J0Y19zdGF0ZS0+dWFwaS5hZGp1c3RlZF9tb2RlID0gY3J0Y19zdGF0ZS0+ aHcuYWRqdXN0ZWRfbW9kZTsKK30KKwogc3RhdGljIGludAogY2xlYXJfaW50ZWxfY3J0Y19zdGF0 ZShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKIHsKQEAgLTEyMTk4LDYgKzEy MjE5LDcgQEAgY2xlYXJfaW50ZWxfY3J0Y19zdGF0ZShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAq Y3J0Y19zdGF0ZSkKIAkgKiBmaXhlZCwgc28gdGhhdCB0aGUgY3J0Y19zdGF0ZSBjYW4gYmUgc2Fm ZWx5IGR1cGxpY2F0ZWQuIEZvciBub3csCiAJICogb25seSBmaWVsZHMgdGhhdCBhcmUga25vdyB0 byBub3QgY2F1c2UgcHJvYmxlbXMgYXJlIHByZXNlcnZlZC4gKi8KIAorCXNhdmVkX3N0YXRlLT51 YXBpID0gY3J0Y19zdGF0ZS0+dWFwaTsKIAlzYXZlZF9zdGF0ZS0+c2NhbGVyX3N0YXRlID0gY3J0 Y19zdGF0ZS0+c2NhbGVyX3N0YXRlOwogCXNhdmVkX3N0YXRlLT5zaGFyZWRfZHBsbCA9IGNydGNf c3RhdGUtPnNoYXJlZF9kcGxsOwogCXNhdmVkX3N0YXRlLT5kcGxsX2h3X3N0YXRlID0gY3J0Y19z dGF0ZS0+ZHBsbF9od19zdGF0ZTsKQEAgLTEyMjA4LDExICsxMjIzMCw5IEBAIGNsZWFyX2ludGVs X2NydGNfc3RhdGUoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCiAJICAgIElT X1ZBTExFWVZJRVcoZGV2X3ByaXYpIHx8IElTX0NIRVJSWVZJRVcoZGV2X3ByaXYpKQogCQlzYXZl ZF9zdGF0ZS0+d20gPSBjcnRjX3N0YXRlLT53bTsKIAotCS8qIEtlZXAgYmFzZSBkcm1fY3J0Y19z dGF0ZSBpbnRhY3QsIG9ubHkgY2xlYXIgb3VyIGV4dGVuZGVkIHN0cnVjdCAqLwotCUJVSUxEX0JV R19PTihvZmZzZXRvZihzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSwgdWFwaSkpOwotCUJVSUxEX0JV R19PTihvZmZzZXRvZihzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSwgaHcpKTsKLQltZW1jcHkoJmNy dGNfc3RhdGUtPnVhcGkgKyAxLCAmc2F2ZWRfc3RhdGUtPnVhcGkgKyAxLAotCSAgICAgICBzaXpl b2YoKmNydGNfc3RhdGUpIC0gc2l6ZW9mKGNydGNfc3RhdGUtPnVhcGkpKTsKKwlpbnRlbF9jcnRj X2ZyZWVfaHdfc3RhdGUoY3J0Y19zdGF0ZSk7CisJbWVtY3B5KGNydGNfc3RhdGUsIHNhdmVkX3N0 YXRlLCBzaXplb2YoKmNydGNfc3RhdGUpKTsKKwljb3B5X3VhcGlfdG9faHdfc3RhdGUoY3J0Y19z dGF0ZSk7CiAKIAlrZnJlZShzYXZlZF9zdGF0ZSk7CiAJcmV0dXJuIDA7CkBAIC0xMjM1Miw2ICsx MjM3Miw5IEBAIGludGVsX21vZGVzZXRfcGlwZV9jb25maWcoc3RydWN0IGludGVsX2NydGNfc3Rh dGUgKnBpcGVfY29uZmlnKQogCURSTV9ERUJVR19LTVMoImh3IG1heCBicHA6ICVpLCBwaXBlIGJw cDogJWksIGRpdGhlcmluZzogJWlcbiIsCiAJCSAgICAgIGJhc2VfYnBwLCBwaXBlX2NvbmZpZy0+ cGlwZV9icHAsIHBpcGVfY29uZmlnLT5kaXRoZXIpOwogCisJLyogdWFwaSB3YW50cyBhIGNvcHkg b2YgdGhlIGFkanVzdGVkX21vZGUgZm9yIHZibGFuayBib29ra2VlcGluZyAqLworCXBpcGVfY29u ZmlnLT51YXBpLmFkanVzdGVkX21vZGUgPSBwaXBlX2NvbmZpZy0+aHcuYWRqdXN0ZWRfbW9kZTsK KwogCXJldHVybiAwOwogfQogCkBAIC0xMzA0Nyw2ICsxMzA3MCw4IEBAIHZlcmlmeV9jcnRjX3N0 YXRlKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAogCiAJc3RhdGUgPSBvbGRfY3J0Y19zdGF0ZS0+ dWFwaS5zdGF0ZTsKIAlfX2RybV9hdG9taWNfaGVscGVyX2NydGNfZGVzdHJveV9zdGF0ZSgmb2xk X2NydGNfc3RhdGUtPnVhcGkpOworCWludGVsX2NydGNfZnJlZV9od19zdGF0ZShvbGRfY3J0Y19z dGF0ZSk7CisKIAlwaXBlX2NvbmZpZyA9IG9sZF9jcnRjX3N0YXRlOwogCW1lbXNldChwaXBlX2Nv bmZpZywgMCwgc2l6ZW9mKCpwaXBlX2NvbmZpZykpOwogCXBpcGVfY29uZmlnLT51YXBpLmNydGMg PSAmY3J0Yy0+YmFzZTsKQEAgLTEzNTg2LDYgKzEzNjExLDcgQEAgc3RhdGljIGludCBpbnRlbF9h dG9taWNfY2hlY2soc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAogCQlpZiAoIW5ld19jcnRjX3N0 YXRlLT51YXBpLmVuYWJsZSkgewogCQkJYW55X21zID0gdHJ1ZTsKKwkJCWNsZWFyX2ludGVsX2Ny dGNfc3RhdGUobmV3X2NydGNfc3RhdGUpOwogCQkJY29udGludWU7CiAJCX0KIApAQCAtMTY2MzQs NiArMTY2NjAsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9tb2Rlc2V0X3JlYWRvdXRfaHdfc3RhdGUo c3RydWN0IGRybV9kZXZpY2UgKmRldikKIAkJCXRvX2ludGVsX2NydGNfc3RhdGUoY3J0Yy0+YmFz ZS5zdGF0ZSk7CiAKIAkJX19kcm1fYXRvbWljX2hlbHBlcl9jcnRjX2Rlc3Ryb3lfc3RhdGUoJmNy dGNfc3RhdGUtPnVhcGkpOworCQlpbnRlbF9jcnRjX2ZyZWVfaHdfc3RhdGUoY3J0Y19zdGF0ZSk7 CiAJCW1lbXNldChjcnRjX3N0YXRlLCAwLCBzaXplb2YoKmNydGNfc3RhdGUpKTsKIAkJX19kcm1f YXRvbWljX2hlbHBlcl9jcnRjX3Jlc2V0KCZjcnRjLT5iYXNlLCAmY3J0Y19zdGF0ZS0+dWFwaSk7 CiAKQEAgLTE2NzQzLDYgKzE2NzcwLDcgQEAgc3RhdGljIHZvaWQgaW50ZWxfbW9kZXNldF9yZWFk b3V0X2h3X3N0YXRlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJCQljcnRjLT5iYXNlLm1vZGUu dmRpc3BsYXkgPSBjcnRjX3N0YXRlLT5waXBlX3NyY19oOwogCQkJaW50ZWxfbW9kZV9mcm9tX3Bp cGVfY29uZmlnKCZjcnRjX3N0YXRlLT5ody5hZGp1c3RlZF9tb2RlLAogCQkJCQkJICAgIGNydGNf c3RhdGUpOworCQkJY3J0Y19zdGF0ZS0+aHcubW9kZSA9IGNydGMtPmJhc2UubW9kZTsKIAkJCVdB Uk5fT04oZHJtX2F0b21pY19zZXRfbW9kZV9mb3JfY3J0YyhjcnRjLT5iYXNlLnN0YXRlLCAmY3J0 Yy0+YmFzZS5tb2RlKSk7CiAKIAkJCS8qCkBAIC0xNjc4OCw2ICsxNjgxNiw3IEBAIHN0YXRpYyB2 b2lkIGludGVsX21vZGVzZXRfcmVhZG91dF9od19zdGF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 KQogCiAJCWludGVsX2J3X2NydGNfdXBkYXRlKGJ3X3N0YXRlLCBjcnRjX3N0YXRlKTsKIAorCQlj b3B5X2h3X3RvX3VhcGlfc3RhdGUoY3J0Y19zdGF0ZSk7CiAJCWludGVsX3BpcGVfY29uZmlnX3Nh bml0eV9jaGVjayhkZXZfcHJpdiwgY3J0Y19zdGF0ZSk7CiAJfQogfQpkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kcnYuaAppbmRleCA5Y2IzZjE4ZWY3MDEuLjhhOWYwODk4NDNiYyAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZHJ2LmgKQEAgLTcxOSw3ICs3MTksNiBAQCBlbnVtIGludGVsX291dHB1dF9mb3JtYXQg ewogfTsKIAogc3RydWN0IGludGVsX2NydGNfc3RhdGUgewotCXVuaW9uIHsKIAkvKgogCSAqIHVh cGkgKGRybSkgc3RhdGUuIFRoaXMgaXMgdGhlIHNvZnR3YXJlIHN0YXRlIHNob3duIHRvIHVzZXJz cGFjZS4KIAkgKiBJbiBwYXJ0aWN1bGFyLCB0aGUgZm9sbG93aW5nIG1lbWJlcnMgYXJlIHVzZWQg Zm9yIGJvb2trZWVwaW5nOgpAQCAtNzQyLDggKzc0MSwxMSBAQCBzdHJ1Y3QgaW50ZWxfY3J0Y19z dGF0ZSB7CiAJICoKIAkgKiBEdXJpbmcgaW5pdGlhbCBodyByZWFkb3V0LCB0aGV5IG5lZWQgdG8g YmUgY29waWVkIHRvIHVhcGkuCiAJICovCi0Jc3RydWN0IGRybV9jcnRjX3N0YXRlIGh3OwotCX07 CisJc3RydWN0IHsKKwkJYm9vbCBhY3RpdmUsIGVuYWJsZTsKKwkJc3RydWN0IGRybV9wcm9wZXJ0 eV9ibG9iICpkZWdhbW1hX2x1dCwgKmdhbW1hX2x1dCwgKmN0bTsKKwkJc3RydWN0IGRybV9kaXNw bGF5X21vZGUgbW9kZSwgYWRqdXN0ZWRfbW9kZTsKKwl9IGh3OwogCiAJLyoqCiAJICogcXVpcmtz IC0gYml0ZmllbGQgd2l0aCBodyBzdGF0ZSByZWFkb3V0IHF1aXJrcwotLSAKMi4yMC4xCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFp bGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZng=