From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= Subject: [PATCH 5/5] drm/tinydrm: Use DRM_GEM_CMA_VMAP_DRIVER_OPS Date: Sat, 10 Nov 2018 15:56:47 +0100 Message-ID: <20181110145647.17580-6-noralf@tronnes.org> References: <20181110145647.17580-1-noralf@tronnes.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20181110145647.17580-1-noralf@tronnes.org> 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@lechnology.com, intel-gfx@lists.freedesktop.org, sam@ravnborg.org, christian.koenig@amd.com List-Id: intel-gfx@lists.freedesktop.org VGhlIENNQSBoZWxwZXIgbm93IGhhcyB0aGUgZnVuY3Rpb25hbGl0eSB0byBlbnN1cmUgYSB2aXJ0 dWFsIGFkZHJlc3Mgb24KaW1wb3J0ZWQgYnVmZmVyIHNvIHVzZSB0aGF0LgoKV2hpbGUgdG91Y2hp bmcgYWxsIHRpbnlkcm0gZHJpdmVycywgcmVtb3ZlIHRoZSB1bm5lY2Vzc2FyeSBpbmNsdXNpb24g b2YKZHJtX2ZiX2hlbHBlci5oIGluIHNvbWUgZHJpdmVycy4KCkNjOiBEYXZpZCBMZWNobmVyIDxk YXZpZEBsZWNobm9sb2d5LmNvbT4KQ2M6IEVyaWMgQW5ob2x0IDxlcmljQGFuaG9sdC5uZXQ+ClNp Z25lZC1vZmYtYnk6IE5vcmFsZiBUcsO4bm5lcyA8bm9yYWxmQHRyb25uZXMub3JnPgotLS0KIGRy aXZlcnMvZ3B1L2RybS90aW55ZHJtL2NvcmUvdGlueWRybS1jb3JlLmMgICAgfCA3MSAtLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL3Rpbnlkcm0vY29yZS90aW55ZHJt LWhlbHBlcnMuYyB8ICA2ICsrKwogZHJpdmVycy9ncHUvZHJtL3Rpbnlkcm0vaHg4MzU3ZC5jICAg ICAgICAgICAgICB8ICA0ICstCiBkcml2ZXJzL2dwdS9kcm0vdGlueWRybS9pbGk5MjI1LmMgICAg ICAgICAgICAgIHwgIDUgKy0KIGRyaXZlcnMvZ3B1L2RybS90aW55ZHJtL2lsaTkzNDEuYyAgICAg ICAgICAgICAgfCAgNCArLQogZHJpdmVycy9ncHUvZHJtL3Rpbnlkcm0vbWkwMjgzcXQuYyAgICAg ICAgICAgICB8ICA2ICstLQogZHJpdmVycy9ncHUvZHJtL3Rpbnlkcm0vbWlwaS1kYmkuYyAgICAg ICAgICAgICB8IDEwICsrLS0KIGRyaXZlcnMvZ3B1L2RybS90aW55ZHJtL3JlcGFwZXIuYyAgICAg ICAgICAgICAgfCAgNCArLQogZHJpdmVycy9ncHUvZHJtL3Rpbnlkcm0vc3Q3NTg2LmMgICAgICAg ICAgICAgICB8ICA1ICstCiBkcml2ZXJzL2dwdS9kcm0vdGlueWRybS9zdDc3MzVyLmMgICAgICAg ICAgICAgIHwgIDQgKy0KIGluY2x1ZGUvZHJtL3Rpbnlkcm0vdGlueWRybS5oICAgICAgICAgICAg ICAgICAgfCAzNSArKystLS0tLS0tLS0tCiAxMSBmaWxlcyBjaGFuZ2VkLCAzOCBpbnNlcnRpb25z KCspLCAxMTYgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3Rpbnlk cm0vY29yZS90aW55ZHJtLWNvcmUuYyBiL2RyaXZlcnMvZ3B1L2RybS90aW55ZHJtL2NvcmUvdGlu eWRybS1jb3JlLmMKaW5kZXggOWFmNTFkOTgyYTMzLi4wMWE2ZjJkNDI0NDAgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS90aW55ZHJtL2NvcmUvdGlueWRybS1jb3JlLmMKKysrIGIvZHJpdmVy cy9ncHUvZHJtL3Rpbnlkcm0vY29yZS90aW55ZHJtLWNvcmUuYwpAQCAtMzYsNzcgKzM2LDYgQEAK ICAqIGFuZCByZWdpc3RlcnMgdGhlIERSTSBkZXZpY2UgdXNpbmcgZGV2bV90aW55ZHJtX3JlZ2lz dGVyKCkuCiAgKi8KIAotLyoqCi0gKiB0aW55ZHJtX2dlbV9jbWFfcHJpbWVfaW1wb3J0X3NnX3Rh YmxlIC0gUHJvZHVjZSBhIENNQSBHRU0gb2JqZWN0IGZyb20KLSAqICAgICBhbm90aGVyIGRyaXZl cidzIHNjYXR0ZXIvZ2F0aGVyIHRhYmxlIG9mIHBpbm5lZCBwYWdlcwotICogQGRybTogRFJNIGRl dmljZSB0byBpbXBvcnQgaW50bwotICogQGF0dGFjaDogRE1BLUJVRiBhdHRhY2htZW50Ci0gKiBA c2d0OiBTY2F0dGVyL2dhdGhlciB0YWJsZSBvZiBwaW5uZWQgcGFnZXMKLSAqCi0gKiBUaGlzIGZ1 bmN0aW9uIGltcG9ydHMgYSBzY2F0dGVyL2dhdGhlciB0YWJsZSBleHBvcnRlZCB2aWEgRE1BLUJV RiBieQotICogYW5vdGhlciBkcml2ZXIgdXNpbmcgZHJtX2dlbV9jbWFfcHJpbWVfaW1wb3J0X3Nn X3RhYmxlKCkuIEl0IHNldHMgdGhlCi0gKiBrZXJuZWwgdmlydHVhbCBhZGRyZXNzIG9uIHRoZSBD TUEgb2JqZWN0LiBEcml2ZXJzIHNob3VsZCB1c2UgdGhpcyBhcyB0aGVpcgotICogJmRybV9kcml2 ZXItPmdlbV9wcmltZV9pbXBvcnRfc2dfdGFibGUgY2FsbGJhY2sgaWYgdGhleSBuZWVkIHRoZSB2 aXJ0dWFsCi0gKiBhZGRyZXNzLiB0aW55ZHJtX2dlbV9jbWFfZnJlZV9vYmplY3QoKSBzaG91bGQg YmUgdXNlZCBpbiBjb21iaW5hdGlvbiB3aXRoCi0gKiB0aGlzIGZ1bmN0aW9uLgotICoKLSAqIFJl dHVybnM6Ci0gKiBBIHBvaW50ZXIgdG8gYSBuZXdseSBjcmVhdGVkIEdFTSBvYmplY3Qgb3IgYW4g RVJSX1BUUi1lbmNvZGVkIG5lZ2F0aXZlCi0gKiBlcnJvciBjb2RlIG9uIGZhaWx1cmUuCi0gKi8K LXN0cnVjdCBkcm1fZ2VtX29iamVjdCAqCi10aW55ZHJtX2dlbV9jbWFfcHJpbWVfaW1wb3J0X3Nn X3RhYmxlKHN0cnVjdCBkcm1fZGV2aWNlICpkcm0sCi0JCQkJICAgICAgc3RydWN0IGRtYV9idWZf YXR0YWNobWVudCAqYXR0YWNoLAotCQkJCSAgICAgIHN0cnVjdCBzZ190YWJsZSAqc2d0KQotewot CXN0cnVjdCBkcm1fZ2VtX2NtYV9vYmplY3QgKmNtYV9vYmo7Ci0Jc3RydWN0IGRybV9nZW1fb2Jq ZWN0ICpvYmo7Ci0Jdm9pZCAqdmFkZHI7Ci0KLQl2YWRkciA9IGRtYV9idWZfdm1hcChhdHRhY2gt PmRtYWJ1Zik7Ci0JaWYgKCF2YWRkcikgewotCQlEUk1fRVJST1IoIkZhaWxlZCB0byB2bWFwIFBS SU1FIGJ1ZmZlclxuIik7Ci0JCXJldHVybiBFUlJfUFRSKC1FTk9NRU0pOwotCX0KLQotCW9iaiA9 IGRybV9nZW1fY21hX3ByaW1lX2ltcG9ydF9zZ190YWJsZShkcm0sIGF0dGFjaCwgc2d0KTsKLQlp ZiAoSVNfRVJSKG9iaikpIHsKLQkJZG1hX2J1Zl92dW5tYXAoYXR0YWNoLT5kbWFidWYsIHZhZGRy KTsKLQkJcmV0dXJuIG9iajsKLQl9Ci0KLQljbWFfb2JqID0gdG9fZHJtX2dlbV9jbWFfb2JqKG9i aik7Ci0JY21hX29iai0+dmFkZHIgPSB2YWRkcjsKLQotCXJldHVybiBvYmo7Ci19Ci1FWFBPUlRf U1lNQk9MKHRpbnlkcm1fZ2VtX2NtYV9wcmltZV9pbXBvcnRfc2dfdGFibGUpOwotCi0vKioKLSAq IHRpbnlkcm1fZ2VtX2NtYV9mcmVlX29iamVjdCAtIEZyZWUgcmVzb3VyY2VzIGFzc29jaWF0ZWQg d2l0aCBhIENNQSBHRU0KLSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9iamVjdAot ICogQGdlbV9vYmo6IEdFTSBvYmplY3QgdG8gZnJlZQotICoKLSAqIFRoaXMgZnVuY3Rpb24gZnJl ZXMgdGhlIGJhY2tpbmcgbWVtb3J5IG9mIHRoZSBDTUEgR0VNIG9iamVjdCwgY2xlYW5zIHVwIHRo ZQotICogR0VNIG9iamVjdCBzdGF0ZSBhbmQgZnJlZXMgdGhlIG1lbW9yeSB1c2VkIHRvIHN0b3Jl IHRoZSBvYmplY3QgaXRzZWxmIHVzaW5nCi0gKiBkcm1fZ2VtX2NtYV9mcmVlX29iamVjdCgpLiBJ dCBhbHNvIGhhbmRsZXMgUFJJTUUgYnVmZmVycyB3aGljaCBoYXMgdGhlIGtlcm5lbAotICogdmly dHVhbCBhZGRyZXNzIHNldCBieSB0aW55ZHJtX2dlbV9jbWFfcHJpbWVfaW1wb3J0X3NnX3RhYmxl KCkuIERyaXZlcnMKLSAqIGNhbiB1c2UgdGhpcyBhcyB0aGVpciAmZHJtX2RyaXZlci0+Z2VtX2Zy ZWVfb2JqZWN0X3VubG9ja2VkIGNhbGxiYWNrLgotICovCi12b2lkIHRpbnlkcm1fZ2VtX2NtYV9m cmVlX29iamVjdChzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKmdlbV9vYmopCi17Ci0JaWYgKGdlbV9v YmotPmltcG9ydF9hdHRhY2gpIHsKLQkJc3RydWN0IGRybV9nZW1fY21hX29iamVjdCAqY21hX29i ajsKLQotCQljbWFfb2JqID0gdG9fZHJtX2dlbV9jbWFfb2JqKGdlbV9vYmopOwotCQlkbWFfYnVm X3Z1bm1hcChnZW1fb2JqLT5pbXBvcnRfYXR0YWNoLT5kbWFidWYsIGNtYV9vYmotPnZhZGRyKTsK LQkJY21hX29iai0+dmFkZHIgPSBOVUxMOwotCX0KLQotCWRybV9nZW1fY21hX2ZyZWVfb2JqZWN0 KGdlbV9vYmopOwotfQotRVhQT1JUX1NZTUJPTF9HUEwodGlueWRybV9nZW1fY21hX2ZyZWVfb2Jq ZWN0KTsKLQogc3RhdGljIHN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKgogdGlueWRybV9mYl9jcmVh dGUoc3RydWN0IGRybV9kZXZpY2UgKmRybSwgc3RydWN0IGRybV9maWxlICpmaWxlX3ByaXYsCiAJ CSAgY29uc3Qgc3RydWN0IGRybV9tb2RlX2ZiX2NtZDIgKm1vZGVfY21kKQpkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL3Rpbnlkcm0vY29yZS90aW55ZHJtLWhlbHBlcnMuYyBiL2RyaXZlcnMv Z3B1L2RybS90aW55ZHJtL2NvcmUvdGlueWRybS1oZWxwZXJzLmMKaW5kZXggZGNkMzkwMTYzYTRh Li5iZjZiZmJjNWQ0MTIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS90aW55ZHJtL2NvcmUv dGlueWRybS1oZWxwZXJzLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3Rpbnlkcm0vY29yZS90aW55 ZHJtLWhlbHBlcnMuYwpAQCAtOSwxMiArOSwxOCBAQAogCiAjaW5jbHVkZSA8bGludXgvYmFja2xp Z2h0Lmg+CiAjaW5jbHVkZSA8bGludXgvZG1hLWJ1Zi5oPgorI2luY2x1ZGUgPGxpbnV4L21vZHVs ZS5oPgogI2luY2x1ZGUgPGxpbnV4L3BtLmg+CiAjaW5jbHVkZSA8bGludXgvc3BpL3NwaS5oPgog I2luY2x1ZGUgPGxpbnV4L3N3YWIuaD4KIAorI2luY2x1ZGUgPGRybS9kcm1fZGV2aWNlLmg+Cisj aW5jbHVkZSA8ZHJtL2RybV9kcnYuaD4KKyNpbmNsdWRlIDxkcm0vZHJtX2ZvdXJjYy5oPgorI2lu Y2x1ZGUgPGRybS9kcm1fcHJpbnQuaD4KICNpbmNsdWRlIDxkcm0vdGlueWRybS90aW55ZHJtLmg+ CiAjaW5jbHVkZSA8ZHJtL3Rpbnlkcm0vdGlueWRybS1oZWxwZXJzLmg+CisjaW5jbHVkZSA8dWFw aS9kcm0vZHJtLmg+CiAKIHN0YXRpYyB1bnNpZ25lZCBpbnQgc3BpX21heDsKIG1vZHVsZV9wYXJh bShzcGlfbWF4LCB1aW50LCAwNDAwKTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS90aW55 ZHJtL2h4ODM1N2QuYyBiL2RyaXZlcnMvZ3B1L2RybS90aW55ZHJtL2h4ODM1N2QuYwppbmRleCBj M2U1MWMyYmFlYmMuLjgxYTJiYmViMjVkNCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3Rp bnlkcm0vaHg4MzU3ZC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS90aW55ZHJtL2h4ODM1N2QuYwpA QCAtMTYsNyArMTYsNyBAQAogI2luY2x1ZGUgPGxpbnV4L3Byb3BlcnR5Lmg+CiAjaW5jbHVkZSA8 bGludXgvc3BpL3NwaS5oPgogCi0jaW5jbHVkZSA8ZHJtL2RybV9mYl9oZWxwZXIuaD4KKyNpbmNs dWRlIDxkcm0vZHJtX2dlbV9jbWFfaGVscGVyLmg+CiAjaW5jbHVkZSA8ZHJtL2RybV9nZW1fZnJh bWVidWZmZXJfaGVscGVyLmg+CiAjaW5jbHVkZSA8ZHJtL2RybV9tb2Rlc2V0X2hlbHBlci5oPgog I2luY2x1ZGUgPGRybS90aW55ZHJtL21pcGktZGJpLmg+CkBAIC0xODgsNyArMTg4LDcgQEAgREVG SU5FX0RSTV9HRU1fQ01BX0ZPUFMoaHg4MzU3ZF9mb3BzKTsKIHN0YXRpYyBzdHJ1Y3QgZHJtX2Ry aXZlciBoeDgzNTdkX2RyaXZlciA9IHsKIAkuZHJpdmVyX2ZlYXR1cmVzCT0gRFJJVkVSX0dFTSB8 IERSSVZFUl9NT0RFU0VUIHwgRFJJVkVSX1BSSU1FIHwgRFJJVkVSX0FUT01JQywKIAkuZm9wcwkJ CT0gJmh4ODM1N2RfZm9wcywKLQlUSU5ZRFJNX0dFTV9EUklWRVJfT1BTLAorCURSTV9HRU1fQ01B X1ZNQVBfRFJJVkVSX09QUywKIAkuZGVidWdmc19pbml0CQk9IG1pcGlfZGJpX2RlYnVnZnNfaW5p dCwKIAkubmFtZQkJCT0gImh4ODM1N2QiLAogCS5kZXNjCQkJPSAiSFg4MzU3RCIsCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vdGlueWRybS9pbGk5MjI1LmMgYi9kcml2ZXJzL2dwdS9kcm0v dGlueWRybS9pbGk5MjI1LmMKaW5kZXggNDU1ZmVmZTAxMmY1Li43OGY3YzJkMWI0NDkgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS90aW55ZHJtL2lsaTkyMjUuYworKysgYi9kcml2ZXJzL2dw dS9kcm0vdGlueWRybS9pbGk5MjI1LmMKQEAgLTIwLDcgKzIwLDggQEAKICNpbmNsdWRlIDxsaW51 eC9zcGkvc3BpLmg+CiAjaW5jbHVkZSA8dmlkZW8vbWlwaV9kaXNwbGF5Lmg+CiAKLSNpbmNsdWRl IDxkcm0vZHJtX2ZiX2hlbHBlci5oPgorI2luY2x1ZGUgPGRybS9kcm1fZmJfY21hX2hlbHBlci5o PgorI2luY2x1ZGUgPGRybS9kcm1fZ2VtX2NtYV9oZWxwZXIuaD4KICNpbmNsdWRlIDxkcm0vZHJt X2dlbV9mcmFtZWJ1ZmZlcl9oZWxwZXIuaD4KICNpbmNsdWRlIDxkcm0vdGlueWRybS9taXBpLWRi aS5oPgogI2luY2x1ZGUgPGRybS90aW55ZHJtL3Rpbnlkcm0taGVscGVycy5oPgpAQCAtMzY3LDcg KzM2OCw3IEBAIHN0YXRpYyBzdHJ1Y3QgZHJtX2RyaXZlciBpbGk5MjI1X2RyaXZlciA9IHsKIAku ZHJpdmVyX2ZlYXR1cmVzCT0gRFJJVkVSX0dFTSB8IERSSVZFUl9NT0RFU0VUIHwgRFJJVkVSX1BS SU1FIHwKIAkJCQkgIERSSVZFUl9BVE9NSUMsCiAJLmZvcHMJCQk9ICZpbGk5MjI1X2ZvcHMsCi0J VElOWURSTV9HRU1fRFJJVkVSX09QUywKKwlEUk1fR0VNX0NNQV9WTUFQX0RSSVZFUl9PUFMsCiAJ Lm5hbWUJCQk9ICJpbGk5MjI1IiwKIAkuZGVzYwkJCT0gIklsaXRlayBJTEk5MjI1IiwKIAkuZGF0 ZQkJCT0gIjIwMTcxMTA2IiwKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS90aW55ZHJtL2ls aTkzNDEuYyBiL2RyaXZlcnMvZ3B1L2RybS90aW55ZHJtL2lsaTkzNDEuYwppbmRleCA2NzAxMDM3 NzQ5YTcuLjUxMzk1YmRjNmNhMiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3Rpbnlkcm0v aWxpOTM0MS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS90aW55ZHJtL2lsaTkzNDEuYwpAQCAtMTUs NyArMTUsNyBAQAogI2luY2x1ZGUgPGxpbnV4L3Byb3BlcnR5Lmg+CiAjaW5jbHVkZSA8bGludXgv c3BpL3NwaS5oPgogCi0jaW5jbHVkZSA8ZHJtL2RybV9mYl9oZWxwZXIuaD4KKyNpbmNsdWRlIDxk cm0vZHJtX2dlbV9jbWFfaGVscGVyLmg+CiAjaW5jbHVkZSA8ZHJtL2RybV9nZW1fZnJhbWVidWZm ZXJfaGVscGVyLmg+CiAjaW5jbHVkZSA8ZHJtL2RybV9tb2Rlc2V0X2hlbHBlci5oPgogI2luY2x1 ZGUgPGRybS90aW55ZHJtL21pcGktZGJpLmg+CkBAIC0xNDQsNyArMTQ0LDcgQEAgREVGSU5FX0RS TV9HRU1fQ01BX0ZPUFMoaWxpOTM0MV9mb3BzKTsKIHN0YXRpYyBzdHJ1Y3QgZHJtX2RyaXZlciBp bGk5MzQxX2RyaXZlciA9IHsKIAkuZHJpdmVyX2ZlYXR1cmVzCT0gRFJJVkVSX0dFTSB8IERSSVZF Ul9NT0RFU0VUIHwgRFJJVkVSX1BSSU1FIHwgRFJJVkVSX0FUT01JQywKIAkuZm9wcwkJCT0gJmls aTkzNDFfZm9wcywKLQlUSU5ZRFJNX0dFTV9EUklWRVJfT1BTLAorCURSTV9HRU1fQ01BX1ZNQVBf RFJJVkVSX09QUywKIAkuZGVidWdmc19pbml0CQk9IG1pcGlfZGJpX2RlYnVnZnNfaW5pdCwKIAku bmFtZQkJCT0gImlsaTkzNDEiLAogCS5kZXNjCQkJPSAiSWxpdGVrIElMSTkzNDEiLApkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL3Rpbnlkcm0vbWkwMjgzcXQuYyBiL2RyaXZlcnMvZ3B1L2Ry bS90aW55ZHJtL21pMDI4M3F0LmMKaW5kZXggZDdiYjRjNWU2NjU3Li4zZmE2MmU3N2MzMGIgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS90aW55ZHJtL21pMDI4M3F0LmMKKysrIGIvZHJpdmVy cy9ncHUvZHJtL3Rpbnlkcm0vbWkwMjgzcXQuYwpAQCAtMTcsOSArMTcsOSBAQAogI2luY2x1ZGUg PGxpbnV4L3JlZ3VsYXRvci9jb25zdW1lci5oPgogI2luY2x1ZGUgPGxpbnV4L3NwaS9zcGkuaD4K IAotI2luY2x1ZGUgPGRybS9kcm1fZmJfaGVscGVyLmg+Ci0jaW5jbHVkZSA8ZHJtL2RybV9tb2Rl c2V0X2hlbHBlci5oPgorI2luY2x1ZGUgPGRybS9kcm1fZ2VtX2NtYV9oZWxwZXIuaD4KICNpbmNs dWRlIDxkcm0vZHJtX2dlbV9mcmFtZWJ1ZmZlcl9oZWxwZXIuaD4KKyNpbmNsdWRlIDxkcm0vZHJt X21vZGVzZXRfaGVscGVyLmg+CiAjaW5jbHVkZSA8ZHJtL3Rpbnlkcm0vbWlwaS1kYmkuaD4KICNp bmNsdWRlIDxkcm0vdGlueWRybS90aW55ZHJtLWhlbHBlcnMuaD4KICNpbmNsdWRlIDx2aWRlby9t aXBpX2Rpc3BsYXkuaD4KQEAgLTE1Myw3ICsxNTMsNyBAQCBzdGF0aWMgc3RydWN0IGRybV9kcml2 ZXIgbWkwMjgzcXRfZHJpdmVyID0gewogCS5kcml2ZXJfZmVhdHVyZXMJPSBEUklWRVJfR0VNIHwg RFJJVkVSX01PREVTRVQgfCBEUklWRVJfUFJJTUUgfAogCQkJCSAgRFJJVkVSX0FUT01JQywKIAku Zm9wcwkJCT0gJm1pMDI4M3F0X2ZvcHMsCi0JVElOWURSTV9HRU1fRFJJVkVSX09QUywKKwlEUk1f R0VNX0NNQV9WTUFQX0RSSVZFUl9PUFMsCiAJLmRlYnVnZnNfaW5pdAkJPSBtaXBpX2RiaV9kZWJ1 Z2ZzX2luaXQsCiAJLm5hbWUJCQk9ICJtaTAyODNxdCIsCiAJLmRlc2MJCQk9ICJNdWx0aS1Jbm5v IE1JMDI4M1FUIiwKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS90aW55ZHJtL21pcGktZGJp LmMgYi9kcml2ZXJzL2dwdS9kcm0vdGlueWRybS9taXBpLWRiaS5jCmluZGV4IDFiYjg3MDAyMWY2 ZS4uM2EwNWU1NmY5YjBkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vdGlueWRybS9taXBp LWRiaS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS90aW55ZHJtL21pcGktZGJpLmMKQEAgLTksMTUg KzksMTkgQEAKICAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAgKi8KIAot I2luY2x1ZGUgPGRybS9kcm1fZ2VtX2ZyYW1lYnVmZmVyX2hlbHBlci5oPgotI2luY2x1ZGUgPGRy bS90aW55ZHJtL21pcGktZGJpLmg+Ci0jaW5jbHVkZSA8ZHJtL3Rpbnlkcm0vdGlueWRybS1oZWxw ZXJzLmg+CiAjaW5jbHVkZSA8bGludXgvZGVidWdmcy5oPgogI2luY2x1ZGUgPGxpbnV4L2RtYS1i dWYuaD4KICNpbmNsdWRlIDxsaW51eC9ncGlvL2NvbnN1bWVyLmg+CiAjaW5jbHVkZSA8bGludXgv bW9kdWxlLmg+CiAjaW5jbHVkZSA8bGludXgvcmVndWxhdG9yL2NvbnN1bWVyLmg+CiAjaW5jbHVk ZSA8bGludXgvc3BpL3NwaS5oPgorCisjaW5jbHVkZSA8ZHJtL2RybV9mYl9jbWFfaGVscGVyLmg+ CisjaW5jbHVkZSA8ZHJtL2RybV9nZW1fY21hX2hlbHBlci5oPgorI2luY2x1ZGUgPGRybS9kcm1f Z2VtX2ZyYW1lYnVmZmVyX2hlbHBlci5oPgorI2luY2x1ZGUgPGRybS90aW55ZHJtL21pcGktZGJp Lmg+CisjaW5jbHVkZSA8ZHJtL3Rpbnlkcm0vdGlueWRybS1oZWxwZXJzLmg+CisjaW5jbHVkZSA8 dWFwaS9kcm0vZHJtLmg+CiAjaW5jbHVkZSA8dmlkZW8vbWlwaV9kaXNwbGF5Lmg+CiAKICNkZWZp bmUgTUlQSV9EQklfTUFYX1NQSV9SRUFEX1NQRUVEIDIwMDAwMDAgLyogMk1IeiAqLwpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL3Rpbnlkcm0vcmVwYXBlci5jIGIvZHJpdmVycy9ncHUvZHJt L3Rpbnlkcm0vcmVwYXBlci5jCmluZGV4IDUwYTFkNDIxNmNlNy4uMDdmNDVhMDA4YTBmIDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vdGlueWRybS9yZXBhcGVyLmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL3Rpbnlkcm0vcmVwYXBlci5jCkBAIC0yNiw2ICsyNiw4IEBACiAjaW5jbHVkZSA8bGlu dXgvc3BpL3NwaS5oPgogI2luY2x1ZGUgPGxpbnV4L3RoZXJtYWwuaD4KIAorI2luY2x1ZGUgPGRy bS9kcm1fZmJfY21hX2hlbHBlci5oPgorI2luY2x1ZGUgPGRybS9kcm1fZ2VtX2NtYV9oZWxwZXIu aD4KICNpbmNsdWRlIDxkcm0vZHJtX2dlbV9mcmFtZWJ1ZmZlcl9oZWxwZXIuaD4KICNpbmNsdWRl IDxkcm0vdGlueWRybS90aW55ZHJtLmg+CiAjaW5jbHVkZSA8ZHJtL3Rpbnlkcm0vdGlueWRybS1o ZWxwZXJzLmg+CkBAIC04ODIsNyArODg0LDcgQEAgc3RhdGljIHN0cnVjdCBkcm1fZHJpdmVyIHJl cGFwZXJfZHJpdmVyID0gewogCS5kcml2ZXJfZmVhdHVyZXMJPSBEUklWRVJfR0VNIHwgRFJJVkVS X01PREVTRVQgfCBEUklWRVJfUFJJTUUgfAogCQkJCSAgRFJJVkVSX0FUT01JQywKIAkuZm9wcwkJ CT0gJnJlcGFwZXJfZm9wcywKLQlUSU5ZRFJNX0dFTV9EUklWRVJfT1BTLAorCURSTV9HRU1fQ01B X1ZNQVBfRFJJVkVSX09QUywKIAkubmFtZQkJCT0gInJlcGFwZXIiLAogCS5kZXNjCQkJPSAiUGVy dmFzaXZlIERpc3BsYXlzIFJlUGFwZXIgZS1pbmsgcGFuZWxzIiwKIAkuZGF0ZQkJCT0gIjIwMTcw NDA1IiwKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS90aW55ZHJtL3N0NzU4Ni5jIGIvZHJp dmVycy9ncHUvZHJtL3Rpbnlkcm0vc3Q3NTg2LmMKaW5kZXggMmZjYmMzMDY3ZDcxLi5hNmE4YTEw ODFiNzMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS90aW55ZHJtL3N0NzU4Ni5jCisrKyBi L2RyaXZlcnMvZ3B1L2RybS90aW55ZHJtL3N0NzU4Ni5jCkBAIC0xNyw3ICsxNyw4IEBACiAjaW5j bHVkZSA8bGludXgvc3BpL3NwaS5oPgogI2luY2x1ZGUgPHZpZGVvL21pcGlfZGlzcGxheS5oPgog Ci0jaW5jbHVkZSA8ZHJtL2RybV9mYl9oZWxwZXIuaD4KKyNpbmNsdWRlIDxkcm0vZHJtX2ZiX2Nt YV9oZWxwZXIuaD4KKyNpbmNsdWRlIDxkcm0vZHJtX2dlbV9jbWFfaGVscGVyLmg+CiAjaW5jbHVk ZSA8ZHJtL2RybV9nZW1fZnJhbWVidWZmZXJfaGVscGVyLmg+CiAjaW5jbHVkZSA8ZHJtL3Rpbnlk cm0vbWlwaS1kYmkuaD4KICNpbmNsdWRlIDxkcm0vdGlueWRybS90aW55ZHJtLWhlbHBlcnMuaD4K QEAgLTMwMyw3ICszMDQsNyBAQCBzdGF0aWMgc3RydWN0IGRybV9kcml2ZXIgc3Q3NTg2X2RyaXZl ciA9IHsKIAkuZHJpdmVyX2ZlYXR1cmVzCT0gRFJJVkVSX0dFTSB8IERSSVZFUl9NT0RFU0VUIHwg RFJJVkVSX1BSSU1FIHwKIAkJCQkgIERSSVZFUl9BVE9NSUMsCiAJLmZvcHMJCQk9ICZzdDc1ODZf Zm9wcywKLQlUSU5ZRFJNX0dFTV9EUklWRVJfT1BTLAorCURSTV9HRU1fQ01BX1ZNQVBfRFJJVkVS X09QUywKIAkuZGVidWdmc19pbml0CQk9IG1pcGlfZGJpX2RlYnVnZnNfaW5pdCwKIAkubmFtZQkJ CT0gInN0NzU4NiIsCiAJLmRlc2MJCQk9ICJTaXRyb25peCBTVDc1ODYiLApkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL3Rpbnlkcm0vc3Q3NzM1ci5jIGIvZHJpdmVycy9ncHUvZHJtL3Rpbnlk cm0vc3Q3NzM1ci5jCmluZGV4IDMwODFiYzU3YzExNi4uYjM5Nzc5ZTBkY2Q4IDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vdGlueWRybS9zdDc3MzVyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJt L3Rpbnlkcm0vc3Q3NzM1ci5jCkBAIC0xNCw3ICsxNCw3IEBACiAjaW5jbHVkZSA8bGludXgvc3Bp L3NwaS5oPgogI2luY2x1ZGUgPHZpZGVvL21pcGlfZGlzcGxheS5oPgogCi0jaW5jbHVkZSA8ZHJt L2RybV9mYl9oZWxwZXIuaD4KKyNpbmNsdWRlIDxkcm0vZHJtX2dlbV9jbWFfaGVscGVyLmg+CiAj aW5jbHVkZSA8ZHJtL2RybV9nZW1fZnJhbWVidWZmZXJfaGVscGVyLmg+CiAjaW5jbHVkZSA8ZHJt L3Rpbnlkcm0vbWlwaS1kYmkuaD4KICNpbmNsdWRlIDxkcm0vdGlueWRybS90aW55ZHJtLWhlbHBl cnMuaD4KQEAgLTExOSw3ICsxMTksNyBAQCBzdGF0aWMgc3RydWN0IGRybV9kcml2ZXIgc3Q3NzM1 cl9kcml2ZXIgPSB7CiAJLmRyaXZlcl9mZWF0dXJlcwk9IERSSVZFUl9HRU0gfCBEUklWRVJfTU9E RVNFVCB8IERSSVZFUl9QUklNRSB8CiAJCQkJICBEUklWRVJfQVRPTUlDLAogCS5mb3BzCQkJPSAm c3Q3NzM1cl9mb3BzLAotCVRJTllEUk1fR0VNX0RSSVZFUl9PUFMsCisJRFJNX0dFTV9DTUFfVk1B UF9EUklWRVJfT1BTLAogCS5kZWJ1Z2ZzX2luaXQJCT0gbWlwaV9kYmlfZGVidWdmc19pbml0LAog CS5uYW1lCQkJPSAic3Q3NzM1ciIsCiAJLmRlc2MJCQk9ICJTaXRyb25peCBTVDc3MzVSIiwKZGlm ZiAtLWdpdCBhL2luY2x1ZGUvZHJtL3Rpbnlkcm0vdGlueWRybS5oIGIvaW5jbHVkZS9kcm0vdGlu eWRybS90aW55ZHJtLmgKaW5kZXggZmU5ODI3ZDBjYThhLi40NDhhYTVlYTQ3MjIgMTAwNjQ0Ci0t LSBhL2luY2x1ZGUvZHJtL3Rpbnlkcm0vdGlueWRybS5oCisrKyBiL2luY2x1ZGUvZHJtL3Rpbnlk cm0vdGlueWRybS5oCkBAIC0xMCwxMCArMTAsMTUgQEAKICNpZm5kZWYgX19MSU5VWF9USU5ZRFJN X0gKICNkZWZpbmUgX19MSU5VWF9USU5ZRFJNX0gKIAotI2luY2x1ZGUgPGRybS9kcm1fZ2VtX2Nt YV9oZWxwZXIuaD4KLSNpbmNsdWRlIDxkcm0vZHJtX2ZiX2NtYV9oZWxwZXIuaD4KKyNpbmNsdWRl IDxsaW51eC9tdXRleC5oPgogI2luY2x1ZGUgPGRybS9kcm1fc2ltcGxlX2ttc19oZWxwZXIuaD4K IAorc3RydWN0IGRybV9jbGlwX3JlY3Q7CitzdHJ1Y3QgZHJtX2RyaXZlcjsKK3N0cnVjdCBkcm1f ZmlsZTsKK3N0cnVjdCBkcm1fZnJhbWVidWZmZXI7CitzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyX2Z1 bmNzOworCiAvKioKICAqIHN0cnVjdCB0aW55ZHJtX2RldmljZSAtIHRpbnlkcm0gZGV2aWNlCiAg Ki8KQEAgLTUzLDI3ICs1OCw2IEBAIHBpcGVfdG9fdGlueWRybShzdHJ1Y3QgZHJtX3NpbXBsZV9k aXNwbGF5X3BpcGUgKnBpcGUpCiAJcmV0dXJuIGNvbnRhaW5lcl9vZihwaXBlLCBzdHJ1Y3QgdGlu eWRybV9kZXZpY2UsIHBpcGUpOwogfQogCi0vKioKLSAqIFRJTllEUk1fR0VNX0RSSVZFUl9PUFMg LSBkZWZhdWx0IHRpbnlkcm0gZ2VtIG9wZXJhdGlvbnMKLSAqCi0gKiBUaGlzIG1hY3JvIHByb3Zp ZGVzIGEgc2hvcnRjdXQgZm9yIHNldHRpbmcgdGhlIHRpbnlkcm0gR0VNIG9wZXJhdGlvbnMgaW4K LSAqIHRoZSAmZHJtX2RyaXZlciBzdHJ1Y3R1cmUuCi0gKi8KLSNkZWZpbmUgVElOWURSTV9HRU1f RFJJVkVSX09QUyBcCi0JLmdlbV9mcmVlX29iamVjdF91bmxvY2tlZCA9IHRpbnlkcm1fZ2VtX2Nt YV9mcmVlX29iamVjdCwgXAotCS5nZW1fcHJpbnRfaW5mbwkJPSBkcm1fZ2VtX2NtYV9wcmludF9p bmZvLCBcCi0JLmdlbV92bV9vcHMJCT0gJmRybV9nZW1fY21hX3ZtX29wcywgXAotCS5wcmltZV9o YW5kbGVfdG9fZmQJPSBkcm1fZ2VtX3ByaW1lX2hhbmRsZV90b19mZCwgXAotCS5wcmltZV9mZF90 b19oYW5kbGUJPSBkcm1fZ2VtX3ByaW1lX2ZkX3RvX2hhbmRsZSwgXAotCS5nZW1fcHJpbWVfaW1w b3J0CT0gZHJtX2dlbV9wcmltZV9pbXBvcnQsIFwKLQkuZ2VtX3ByaW1lX2V4cG9ydAk9IGRybV9n ZW1fcHJpbWVfZXhwb3J0LCBcCi0JLmdlbV9wcmltZV9nZXRfc2dfdGFibGUJPSBkcm1fZ2VtX2Nt YV9wcmltZV9nZXRfc2dfdGFibGUsIFwKLQkuZ2VtX3ByaW1lX2ltcG9ydF9zZ190YWJsZSA9IHRp bnlkcm1fZ2VtX2NtYV9wcmltZV9pbXBvcnRfc2dfdGFibGUsIFwKLQkuZ2VtX3ByaW1lX3ZtYXAJ CT0gZHJtX2dlbV9jbWFfcHJpbWVfdm1hcCwgXAotCS5nZW1fcHJpbWVfdnVubWFwCT0gZHJtX2dl bV9jbWFfcHJpbWVfdnVubWFwLCBcCi0JLmdlbV9wcmltZV9tbWFwCQk9IGRybV9nZW1fY21hX3By aW1lX21tYXAsIFwKLQkuZHVtYl9jcmVhdGUJCT0gZHJtX2dlbV9jbWFfZHVtYl9jcmVhdGUKLQog LyoqCiAgKiBUSU5ZRFJNX01PREUgLSB0aW55ZHJtIGRpc3BsYXkgbW9kZQogICogQGhkOiBIb3Jp em9udGFsIHJlc29sdXRpb24sIHdpZHRoCkBAIC05NywxMSArODEsNiBAQCBwaXBlX3RvX3Rpbnlk cm0oc3RydWN0IGRybV9zaW1wbGVfZGlzcGxheV9waXBlICpwaXBlKQogCS50eXBlID0gRFJNX01P REVfVFlQRV9EUklWRVIsIFwKIAkuY2xvY2sgPSAxIC8qIHBhc3MgdmFsaWRhdGlvbiAqLwogCi12 b2lkIHRpbnlkcm1fZ2VtX2NtYV9mcmVlX29iamVjdChzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKmdl bV9vYmopOwotc3RydWN0IGRybV9nZW1fb2JqZWN0ICoKLXRpbnlkcm1fZ2VtX2NtYV9wcmltZV9p bXBvcnRfc2dfdGFibGUoc3RydWN0IGRybV9kZXZpY2UgKmRybSwKLQkJCQkgICAgICBzdHJ1Y3Qg ZG1hX2J1Zl9hdHRhY2htZW50ICphdHRhY2gsCi0JCQkJICAgICAgc3RydWN0IHNnX3RhYmxlICpz Z3QpOwogaW50IGRldm1fdGlueWRybV9pbml0KHN0cnVjdCBkZXZpY2UgKnBhcmVudCwgc3RydWN0 IHRpbnlkcm1fZGV2aWNlICp0ZGV2LAogCQkgICAgICBjb25zdCBzdHJ1Y3QgZHJtX2ZyYW1lYnVm ZmVyX2Z1bmNzICpmYl9mdW5jcywKIAkJICAgICAgc3RydWN0IGRybV9kcml2ZXIgKmRyaXZlcik7 Ci0tIAoyLjE1LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9y ZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZl bAo=