From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Stone Subject: [PATCH 23/24] drm/radeon: radeon_framebuffer -> drm_framebuffer Date: Fri, 30 Mar 2018 15:11:37 +0100 Message-ID: <20180330141138.28987-23-daniels@collabora.com> References: <20180330141138.28987-1-daniels@collabora.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20180330141138.28987-1-daniels-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org> List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: Alex Deucher , David Zhou , =?UTF-8?q?Christian=20K=C3=B6nig?= , amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org U2luY2UgZHJtX2ZyYW1lYnVmZmVyIGNhbiBub3cgc3RvcmUgR0VNIG9iamVjdHMgZGlyZWN0bHks IHBsYWNlIHRoZW0KdGhlcmUgcmF0aGVyIHRoYW4gaW4gb3VyIG93biBzdWJjbGFzcy4gQXMgdGhp cyBtYWtlcyB0aGUgZnJhbWVidWZmZXIKY3JlYXRlX2hhbmRsZSBhbmQgZGVzdHJveSBmdW5jdGlv bnMgdGhlIHNhbWUgYXMgdGhlIEdFTSBmcmFtZWJ1ZmZlcgpoZWxwZXIsIHdlIGNhbiByZXVzZSB0 aG9zZS4KClNpZ25lZC1vZmYtYnk6IERhbmllbCBTdG9uZSA8ZGFuaWVsc0Bjb2xsYWJvcmEuY29t PgpDYzogQWxleCBEZXVjaGVyIDxhbGV4YW5kZXIuZGV1Y2hlckBhbWQuY29tPgpDYzogQ2hyaXN0 aWFuIEvDtm5pZyA8Y2hyaXN0aWFuLmtvZW5pZ0BhbWQuY29tPgpDYzogRGF2aWQgKENodW5NaW5n KSBaaG91IDxEYXZpZDEuWmhvdUBhbWQuY29tPgpDYzogYW1kLWdmeEBsaXN0cy5mcmVlZGVza3Rv cC5vcmcKLS0tCiBkcml2ZXJzL2dwdS9kcm0vcmFkZW9uL2F0b21iaW9zX2NydGMuYyAgICAgIHwg MzIgKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9yYWRlb24v cmFkZW9uX2RldmljZS5jICAgICAgfCAgNiArKystLS0KIGRyaXZlcnMvZ3B1L2RybS9yYWRlb24v cmFkZW9uX2Rpc3BsYXkuYyAgICAgfCAzMCArKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0KIGRy aXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2ZiLmMgICAgICAgICAgfCAyMCArKysrKysrKyst LS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2xlZ2FjeV9jcnRjLmMgfCAx MSArKystLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9tb2RlLmggICAgICAg IHwgIDcgKy0tLS0tLQogNiBmaWxlcyBjaGFuZ2VkLCAzOSBpbnNlcnRpb25zKCspLCA2NyBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL2F0b21iaW9zX2Ny dGMuYyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vYXRvbWJpb3NfY3J0Yy5jCmluZGV4IDAyOGE4 MTFjMTQ2Mi4uZWZiZDU4MTYwODJkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9u L2F0b21iaW9zX2NydGMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL2F0b21iaW9zX2Ny dGMuYwpAQCAtMTE0NSw3ICsxMTQ1LDYgQEAgc3RhdGljIGludCBkY2U0X2NydGNfZG9fc2V0X2Jh c2Uoc3RydWN0IGRybV9jcnRjICpjcnRjLAogCXN0cnVjdCByYWRlb25fY3J0YyAqcmFkZW9uX2Ny dGMgPSB0b19yYWRlb25fY3J0YyhjcnRjKTsKIAlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gY3J0 Yy0+ZGV2OwogCXN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2ID0gZGV2LT5kZXZfcHJpdmF0ZTsK LQlzdHJ1Y3QgcmFkZW9uX2ZyYW1lYnVmZmVyICpyYWRlb25fZmI7CiAJc3RydWN0IGRybV9mcmFt ZWJ1ZmZlciAqdGFyZ2V0X2ZiOwogCXN0cnVjdCBkcm1fZ2VtX29iamVjdCAqb2JqOwogCXN0cnVj dCByYWRlb25fYm8gKnJibzsKQEAgLTExNjQsMTkgKzExNjMsMTUgQEAgc3RhdGljIGludCBkY2U0 X2NydGNfZG9fc2V0X2Jhc2Uoc3RydWN0IGRybV9jcnRjICpjcnRjLAogCQlyZXR1cm4gMDsKIAl9 CiAKLQlpZiAoYXRvbWljKSB7Ci0JCXJhZGVvbl9mYiA9IHRvX3JhZGVvbl9mcmFtZWJ1ZmZlcihm Yik7CisJaWYgKGF0b21pYykKIAkJdGFyZ2V0X2ZiID0gZmI7Ci0JfQotCWVsc2UgewotCQlyYWRl b25fZmIgPSB0b19yYWRlb25fZnJhbWVidWZmZXIoY3J0Yy0+cHJpbWFyeS0+ZmIpOworCWVsc2UK IAkJdGFyZ2V0X2ZiID0gY3J0Yy0+cHJpbWFyeS0+ZmI7Ci0JfQogCiAJLyogSWYgYXRvbWljLCBh c3N1bWUgZmIgb2JqZWN0IGlzIHBpbm5lZCAmIGlkbGUgJiBmZW5jZWQgYW5kCiAJICoganVzdCB1 cGRhdGUgYmFzZSBwb2ludGVycwogCSAqLwotCW9iaiA9IHJhZGVvbl9mYi0+YmFzZS5vYmpbMF07 CisJb2JqID0gdGFyZ2V0X2ZiLT5vYmpbMF07CiAJcmJvID0gZ2VtX3RvX3JhZGVvbl9ibyhvYmop OwogCXIgPSByYWRlb25fYm9fcmVzZXJ2ZShyYm8sIGZhbHNlKTsKIAlpZiAodW5saWtlbHkociAh PSAwKSkKQEAgLTE0NDEsOCArMTQzNiw3IEBAIHN0YXRpYyBpbnQgZGNlNF9jcnRjX2RvX3NldF9i YXNlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAlXUkVHMzIoRVZFUkdSRUVOX01BU1RFUl9VUERB VEVfTU9ERSArIHJhZGVvbl9jcnRjLT5jcnRjX29mZnNldCwgMCk7CiAKIAlpZiAoIWF0b21pYyAm JiBmYiAmJiBmYiAhPSBjcnRjLT5wcmltYXJ5LT5mYikgewotCQlyYWRlb25fZmIgPSB0b19yYWRl b25fZnJhbWVidWZmZXIoZmIpOwotCQlyYm8gPSBnZW1fdG9fcmFkZW9uX2JvKHJhZGVvbl9mYi0+ YmFzZS5vYmpbMF0pOworCQlyYm8gPSBnZW1fdG9fcmFkZW9uX2JvKGZiLT5vYmpbMF0pOwogCQly ID0gcmFkZW9uX2JvX3Jlc2VydmUocmJvLCBmYWxzZSk7CiAJCWlmICh1bmxpa2VseShyICE9IDAp KQogCQkJcmV0dXJuIHI7CkBAIC0xNDYzLDcgKzE0NTcsNiBAQCBzdGF0aWMgaW50IGF2aXZvX2Ny dGNfZG9fc2V0X2Jhc2Uoc3RydWN0IGRybV9jcnRjICpjcnRjLAogCXN0cnVjdCByYWRlb25fY3J0 YyAqcmFkZW9uX2NydGMgPSB0b19yYWRlb25fY3J0YyhjcnRjKTsKIAlzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2ID0gY3J0Yy0+ZGV2OwogCXN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2ID0gZGV2LT5k ZXZfcHJpdmF0ZTsKLQlzdHJ1Y3QgcmFkZW9uX2ZyYW1lYnVmZmVyICpyYWRlb25fZmI7CiAJc3Ry dWN0IGRybV9nZW1fb2JqZWN0ICpvYmo7CiAJc3RydWN0IHJhZGVvbl9ibyAqcmJvOwogCXN0cnVj dCBkcm1fZnJhbWVidWZmZXIgKnRhcmdldF9mYjsKQEAgLTE0ODEsMTYgKzE0NzQsMTIgQEAgc3Rh dGljIGludCBhdml2b19jcnRjX2RvX3NldF9iYXNlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAkJ cmV0dXJuIDA7CiAJfQogCi0JaWYgKGF0b21pYykgewotCQlyYWRlb25fZmIgPSB0b19yYWRlb25f ZnJhbWVidWZmZXIoZmIpOworCWlmIChhdG9taWMpCiAJCXRhcmdldF9mYiA9IGZiOwotCX0KLQll bHNlIHsKLQkJcmFkZW9uX2ZiID0gdG9fcmFkZW9uX2ZyYW1lYnVmZmVyKGNydGMtPnByaW1hcnkt PmZiKTsKKwllbHNlCiAJCXRhcmdldF9mYiA9IGNydGMtPnByaW1hcnktPmZiOwotCX0KIAotCW9i aiA9IHJhZGVvbl9mYi0+YmFzZS5vYmpbMF07CisJb2JqID0gdGFyZ2V0X2ZiLT5vYmpbMF07CiAJ cmJvID0gZ2VtX3RvX3JhZGVvbl9ibyhvYmopOwogCXIgPSByYWRlb25fYm9fcmVzZXJ2ZShyYm8s IGZhbHNlKTsKIAlpZiAodW5saWtlbHkociAhPSAwKSkKQEAgLTE2NDEsOCArMTYzMCw3IEBAIHN0 YXRpYyBpbnQgYXZpdm9fY3J0Y19kb19zZXRfYmFzZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiAJ V1JFRzMyKEFWSVZPX0QxTU9ERV9NQVNURVJfVVBEQVRFX01PREUgKyByYWRlb25fY3J0Yy0+Y3J0 Y19vZmZzZXQsIDMpOwogCiAJaWYgKCFhdG9taWMgJiYgZmIgJiYgZmIgIT0gY3J0Yy0+cHJpbWFy eS0+ZmIpIHsKLQkJcmFkZW9uX2ZiID0gdG9fcmFkZW9uX2ZyYW1lYnVmZmVyKGZiKTsKLQkJcmJv ID0gZ2VtX3RvX3JhZGVvbl9ibyhyYWRlb25fZmItPmJhc2Uub2JqWzBdKTsKKwkJcmJvID0gZ2Vt X3RvX3JhZGVvbl9ibyhmYi0+b2JqWzBdKTsKIAkJciA9IHJhZGVvbl9ib19yZXNlcnZlKHJibywg ZmFsc2UpOwogCQlpZiAodW5saWtlbHkociAhPSAwKSkKIAkJCXJldHVybiByOwpAQCAtMjE0OSwx MSArMjEzNyw5IEBAIHN0YXRpYyB2b2lkIGF0b21iaW9zX2NydGNfZGlzYWJsZShzdHJ1Y3QgZHJt X2NydGMgKmNydGMpCiAJYXRvbWJpb3NfY3J0Y19kcG1zKGNydGMsIERSTV9NT0RFX0RQTVNfT0ZG KTsKIAlpZiAoY3J0Yy0+cHJpbWFyeS0+ZmIpIHsKIAkJaW50IHI7Ci0JCXN0cnVjdCByYWRlb25f ZnJhbWVidWZmZXIgKnJhZGVvbl9mYjsKIAkJc3RydWN0IHJhZGVvbl9ibyAqcmJvOwogCi0JCXJh ZGVvbl9mYiA9IHRvX3JhZGVvbl9mcmFtZWJ1ZmZlcihjcnRjLT5wcmltYXJ5LT5mYik7Ci0JCXJi byA9IGdlbV90b19yYWRlb25fYm8ocmFkZW9uX2ZiLT5iYXNlLm9ialswXSk7CisJCXJibyA9IGdl bV90b19yYWRlb25fYm8oY3J0Yy0+cHJpbWFyeS0+ZmItPm9ialswXSk7CiAJCXIgPSByYWRlb25f Ym9fcmVzZXJ2ZShyYm8sIGZhbHNlKTsKIAkJaWYgKHVubGlrZWx5KHIpKQogCQkJRFJNX0VSUk9S KCJmYWlsZWQgdG8gcmVzZXJ2ZSByYm8gYmVmb3JlIHVucGluXG4iKTsKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2RldmljZS5jIGIvZHJpdmVycy9ncHUvZHJtL3Jh ZGVvbi9yYWRlb25fZGV2aWNlLmMKaW5kZXggMzBjNWJjMjBhNjBiLi45MGUxN2UyOWUxMmEgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2RldmljZS5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2RldmljZS5jCkBAIC0xNTg3LDcgKzE1ODcsNyBA QCBpbnQgcmFkZW9uX3N1c3BlbmRfa21zKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGJvb2wgc3Vz cGVuZCwKIAkvKiB1bnBpbiB0aGUgZnJvbnQgYnVmZmVycyBhbmQgY3Vyc29ycyAqLwogCWxpc3Rf Zm9yX2VhY2hfZW50cnkoY3J0YywgJmRldi0+bW9kZV9jb25maWcuY3J0Y19saXN0LCBoZWFkKSB7 CiAJCXN0cnVjdCByYWRlb25fY3J0YyAqcmFkZW9uX2NydGMgPSB0b19yYWRlb25fY3J0YyhjcnRj KTsKLQkJc3RydWN0IHJhZGVvbl9mcmFtZWJ1ZmZlciAqcmZiID0gdG9fcmFkZW9uX2ZyYW1lYnVm ZmVyKGNydGMtPnByaW1hcnktPmZiKTsKKwkJc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIgPSBj cnRjLT5wcmltYXJ5LT5mYjsKIAkJc3RydWN0IHJhZGVvbl9ibyAqcm9iajsKIAogCQlpZiAocmFk ZW9uX2NydGMtPmN1cnNvcl9ibykgewpAQCAtMTU5OSwxMCArMTU5OSwxMCBAQCBpbnQgcmFkZW9u X3N1c3BlbmRfa21zKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGJvb2wgc3VzcGVuZCwKIAkJCX0K IAkJfQogCi0JCWlmIChyZmIgPT0gTlVMTCB8fCByZmItPmJhc2Uub2JqWzBdID09IE5VTEwpIHsK KwkJaWYgKGZiID09IE5VTEwgfHwgZmItPm9ialswXSA9PSBOVUxMKSB7CiAJCQljb250aW51ZTsK IAkJfQotCQlyb2JqID0gZ2VtX3RvX3JhZGVvbl9ibyhyZmItPmJhc2Uub2JqWzBdKTsKKwkJcm9i aiA9IGdlbV90b19yYWRlb25fYm8oZmItPm9ialswXSk7CiAJCS8qIGRvbid0IHVucGluIGtlcm5l bCBmYiBvYmplY3RzICovCiAJCWlmICghcmFkZW9uX2ZiZGV2X3JvYmpfaXNfZmIocmRldiwgcm9i aikpIHsKIAkJCXIgPSByYWRlb25fYm9fcmVzZXJ2ZShyb2JqLCBmYWxzZSk7CmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9k cm0vcmFkZW9uL3JhZGVvbl9kaXNwbGF5LmMKaW5kZXggZGMzMDAxMjgyODNkLi45ZDNhYzhiOTgx ZGEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2Rpc3BsYXkuYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9kaXNwbGF5LmMKQEAgLTQ3OSw4ICs0 NzksNiBAQCBzdGF0aWMgaW50IHJhZGVvbl9jcnRjX3BhZ2VfZmxpcF90YXJnZXQoc3RydWN0IGRy bV9jcnRjICpjcnRjLAogCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjcnRjLT5kZXY7CiAJc3Ry dWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYgPSBkZXYtPmRldl9wcml2YXRlOwogCXN0cnVjdCByYWRl b25fY3J0YyAqcmFkZW9uX2NydGMgPSB0b19yYWRlb25fY3J0YyhjcnRjKTsKLQlzdHJ1Y3QgcmFk ZW9uX2ZyYW1lYnVmZmVyICpvbGRfcmFkZW9uX2ZiOwotCXN0cnVjdCByYWRlb25fZnJhbWVidWZm ZXIgKm5ld19yYWRlb25fZmI7CiAJc3RydWN0IGRybV9nZW1fb2JqZWN0ICpvYmo7CiAJc3RydWN0 IHJhZGVvbl9mbGlwX3dvcmsgKndvcms7CiAJc3RydWN0IHJhZGVvbl9ibyAqbmV3X3JibzsKQEAg LTUwMiwxNSArNTAwLDEzIEBAIHN0YXRpYyBpbnQgcmFkZW9uX2NydGNfcGFnZV9mbGlwX3Rhcmdl dChzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiAJd29yay0+YXN5bmMgPSAocGFnZV9mbGlwX2ZsYWdz ICYgRFJNX01PREVfUEFHRV9GTElQX0FTWU5DKSAhPSAwOwogCiAJLyogc2NoZWR1bGUgdW5waW4g b2YgdGhlIG9sZCBidWZmZXIgKi8KLQlvbGRfcmFkZW9uX2ZiID0gdG9fcmFkZW9uX2ZyYW1lYnVm ZmVyKGNydGMtPnByaW1hcnktPmZiKTsKLQlvYmogPSBvbGRfcmFkZW9uX2ZiLT5iYXNlLm9ialsw XTsKKwlvYmogPSBjcnRjLT5wcmltYXJ5LT5mYi0+b2JqWzBdOwogCiAJLyogdGFrZSBhIHJlZmVy ZW5jZSB0byB0aGUgb2xkIG9iamVjdCAqLwogCWRybV9nZW1fb2JqZWN0X2dldChvYmopOwogCXdv cmstPm9sZF9yYm8gPSBnZW1fdG9fcmFkZW9uX2JvKG9iaik7CiAKLQluZXdfcmFkZW9uX2ZiID0g dG9fcmFkZW9uX2ZyYW1lYnVmZmVyKGZiKTsKLQlvYmogPSBuZXdfcmFkZW9uX2ZiLT5iYXNlLm9i alswXTsKKwlvYmogPSBmYi0+b2JqWzBdOwogCW5ld19yYm8gPSBnZW1fdG9fcmFkZW9uX2JvKG9i aik7CiAKIAkvKiBwaW4gdGhlIG5ldyBidWZmZXIgKi8KQEAgLTEyOTMsMTYgKzEyODksMTYgQEAg c3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fZnJhbWVidWZmZXJfZnVuY3MgcmFkZW9uX2ZiX2Z1bmNz ID0gewogCiBpbnQKIHJhZGVvbl9mcmFtZWJ1ZmZlcl9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsCi0JCQlzdHJ1Y3QgcmFkZW9uX2ZyYW1lYnVmZmVyICpyZmIsCisJCQlzdHJ1Y3QgZHJtX2Zy YW1lYnVmZmVyICpmYiwKIAkJCWNvbnN0IHN0cnVjdCBkcm1fbW9kZV9mYl9jbWQyICptb2RlX2Nt ZCwKIAkJCXN0cnVjdCBkcm1fZ2VtX29iamVjdCAqb2JqKQogewogCWludCByZXQ7Ci0JcmZiLT5i YXNlLm9ialswXSA9IG9iajsKLQlkcm1faGVscGVyX21vZGVfZmlsbF9mYl9zdHJ1Y3QoZGV2LCAm cmZiLT5iYXNlLCBtb2RlX2NtZCk7Ci0JcmV0ID0gZHJtX2ZyYW1lYnVmZmVyX2luaXQoZGV2LCAm cmZiLT5iYXNlLCAmcmFkZW9uX2ZiX2Z1bmNzKTsKKwlmYi0+b2JqWzBdID0gb2JqOworCWRybV9o ZWxwZXJfbW9kZV9maWxsX2ZiX3N0cnVjdChkZXYsIGZiLCBtb2RlX2NtZCk7CisJcmV0ID0gZHJt X2ZyYW1lYnVmZmVyX2luaXQoZGV2LCBmYiwgJnJhZGVvbl9mYl9mdW5jcyk7CiAJaWYgKHJldCkg ewotCQlyZmItPmJhc2Uub2JqWzBdID0gTlVMTDsKKwkJZmItPm9ialswXSA9IE5VTEw7CiAJCXJl dHVybiByZXQ7CiAJfQogCXJldHVybiAwOwpAQCAtMTMxNCw3ICsxMzEwLDcgQEAgcmFkZW9uX3Vz ZXJfZnJhbWVidWZmZXJfY3JlYXRlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJCQkgICAgICAg Y29uc3Qgc3RydWN0IGRybV9tb2RlX2ZiX2NtZDIgKm1vZGVfY21kKQogewogCXN0cnVjdCBkcm1f Z2VtX29iamVjdCAqb2JqOwotCXN0cnVjdCByYWRlb25fZnJhbWVidWZmZXIgKnJhZGVvbl9mYjsK KwlzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYjsKIAlpbnQgcmV0OwogCiAJb2JqID0gZHJtX2dl bV9vYmplY3RfbG9va3VwKGZpbGVfcHJpdiwgbW9kZV9jbWQtPmhhbmRsZXNbMF0pOwpAQCAtMTMz MCwyMCArMTMyNiwyMCBAQCByYWRlb25fdXNlcl9mcmFtZWJ1ZmZlcl9jcmVhdGUoc3RydWN0IGRy bV9kZXZpY2UgKmRldiwKIAkJcmV0dXJuIEVSUl9QVFIoLUVJTlZBTCk7CiAJfQogCi0JcmFkZW9u X2ZiID0ga3phbGxvYyhzaXplb2YoKnJhZGVvbl9mYiksIEdGUF9LRVJORUwpOwotCWlmIChyYWRl b25fZmIgPT0gTlVMTCkgeworCWZiID0ga3phbGxvYyhzaXplb2YoKmZiKSwgR0ZQX0tFUk5FTCk7 CisJaWYgKGZiID09IE5VTEwpIHsKIAkJZHJtX2dlbV9vYmplY3RfcHV0X3VubG9ja2VkKG9iaik7 CiAJCXJldHVybiBFUlJfUFRSKC1FTk9NRU0pOwogCX0KIAotCXJldCA9IHJhZGVvbl9mcmFtZWJ1 ZmZlcl9pbml0KGRldiwgcmFkZW9uX2ZiLCBtb2RlX2NtZCwgb2JqKTsKKwlyZXQgPSByYWRlb25f ZnJhbWVidWZmZXJfaW5pdChkZXYsIGZiLCBtb2RlX2NtZCwgb2JqKTsKIAlpZiAocmV0KSB7Ci0J CWtmcmVlKHJhZGVvbl9mYik7CisJCWtmcmVlKGZiKTsKIAkJZHJtX2dlbV9vYmplY3RfcHV0X3Vu bG9ja2VkKG9iaik7CiAJCXJldHVybiBFUlJfUFRSKHJldCk7CiAJfQogCi0JcmV0dXJuICZyYWRl b25fZmItPmJhc2U7CisJcmV0dXJuIGZiOwogfQogCiBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9t b2RlX2NvbmZpZ19mdW5jcyByYWRlb25fbW9kZV9mdW5jcyA9IHsKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2ZiLmMgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3Jh ZGVvbl9mYi5jCmluZGV4IDZjZDk5ZjZhNDMwNS4uMTE3OTAzNDAyNGFlIDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9mYi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9y YWRlb24vcmFkZW9uX2ZiLmMKQEAgLTQzLDcgKzQzLDcgQEAKICAqLwogc3RydWN0IHJhZGVvbl9m YmRldiB7CiAJc3RydWN0IGRybV9mYl9oZWxwZXIgaGVscGVyOwotCXN0cnVjdCByYWRlb25fZnJh bWVidWZmZXIgcmZiOworCXN0cnVjdCBkcm1fZnJhbWVidWZmZXIgZmI7CiAJc3RydWN0IHJhZGVv bl9kZXZpY2UgKnJkZXY7CiB9OwogCkBAIC0yNDYsMTMgKzI0NiwxMyBAQCBzdGF0aWMgaW50IHJh ZGVvbmZiX2NyZWF0ZShzdHJ1Y3QgZHJtX2ZiX2hlbHBlciAqaGVscGVyLAogCiAJaW5mby0+cGFy ID0gcmZiZGV2OwogCi0JcmV0ID0gcmFkZW9uX2ZyYW1lYnVmZmVyX2luaXQocmRldi0+ZGRldiwg JnJmYmRldi0+cmZiLCAmbW9kZV9jbWQsIGdvYmopOworCXJldCA9IHJhZGVvbl9mcmFtZWJ1ZmZl cl9pbml0KHJkZXYtPmRkZXYsICZyZmJkZXYtPmZiLCAmbW9kZV9jbWQsIGdvYmopOwogCWlmIChy ZXQpIHsKIAkJRFJNX0VSUk9SKCJmYWlsZWQgdG8gaW5pdGlhbGl6ZSBmcmFtZWJ1ZmZlciAlZFxu IiwgcmV0KTsKIAkJZ290byBvdXQ7CiAJfQogCi0JZmIgPSAmcmZiZGV2LT5yZmIuYmFzZTsKKwlm YiA9ICZyZmJkZXYtPmZiOwogCiAJLyogc2V0dXAgaGVscGVyICovCiAJcmZiZGV2LT5oZWxwZXIu ZmIgPSBmYjsKQEAgLTMwOCwxNSArMzA4LDE1IEBAIHN0YXRpYyBpbnQgcmFkZW9uZmJfY3JlYXRl KHN0cnVjdCBkcm1fZmJfaGVscGVyICpoZWxwZXIsCiAKIHN0YXRpYyBpbnQgcmFkZW9uX2ZiZGV2 X2Rlc3Ryb3koc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IHJhZGVvbl9mYmRldiAqcmZi ZGV2KQogewotCXN0cnVjdCByYWRlb25fZnJhbWVidWZmZXIgKnJmYiA9ICZyZmJkZXYtPnJmYjsK KwlzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiA9ICZyZmJkZXYtPmZiOwogCiAJZHJtX2ZiX2hl bHBlcl91bnJlZ2lzdGVyX2ZiaSgmcmZiZGV2LT5oZWxwZXIpOwogCi0JaWYgKHJmYi0+YmFzZS5v YmpbMF0pIHsKLQkJcmFkZW9uZmJfZGVzdHJveV9waW5uZWRfb2JqZWN0KHJmYi0+YmFzZS5vYmpb MF0pOwotCQlyZmItPmJhc2Uub2JqWzBdID0gTlVMTDsKLQkJZHJtX2ZyYW1lYnVmZmVyX3VucmVn aXN0ZXJfcHJpdmF0ZSgmcmZiLT5iYXNlKTsKLQkJZHJtX2ZyYW1lYnVmZmVyX2NsZWFudXAoJnJm Yi0+YmFzZSk7CisJaWYgKGZiLT5vYmpbMF0pIHsKKwkJcmFkZW9uZmJfZGVzdHJveV9waW5uZWRf b2JqZWN0KGZiLT5vYmpbMF0pOworCQlmYi0+b2JqWzBdID0gTlVMTDsKKwkJZHJtX2ZyYW1lYnVm ZmVyX3VucmVnaXN0ZXJfcHJpdmF0ZShmYik7CisJCWRybV9mcmFtZWJ1ZmZlcl9jbGVhbnVwKGZi KTsKIAl9CiAJZHJtX2ZiX2hlbHBlcl9maW5pKCZyZmJkZXYtPmhlbHBlcik7CiAKQEAgLTQwMCw3 ICs0MDAsNyBAQCBib29sIHJhZGVvbl9mYmRldl9yb2JqX2lzX2ZiKHN0cnVjdCByYWRlb25fZGV2 aWNlICpyZGV2LCBzdHJ1Y3QgcmFkZW9uX2JvICpyb2JqKQogCWlmICghcmRldi0+bW9kZV9pbmZv LnJmYmRldikKIAkJcmV0dXJuIGZhbHNlOwogCi0JaWYgKHJvYmogPT0gZ2VtX3RvX3JhZGVvbl9i byhyZGV2LT5tb2RlX2luZm8ucmZiZGV2LT5yZmIuYmFzZS5vYmpbMF0pKQorCWlmIChyb2JqID09 IGdlbV90b19yYWRlb25fYm8ocmRldi0+bW9kZV9pbmZvLnJmYmRldi0+ZmIub2JqWzBdKSkKIAkJ cmV0dXJuIHRydWU7CiAJcmV0dXJuIGZhbHNlOwogfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL3JhZGVvbi9yYWRlb25fbGVnYWN5X2NydGMuYyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24v cmFkZW9uX2xlZ2FjeV9jcnRjLmMKaW5kZXggNTBiM2Y1NTY4NDVhLi4zNWEyMDVhZTQzMTggMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2xlZ2FjeV9jcnRjLmMKKysr IGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fbGVnYWN5X2NydGMuYwpAQCAtMzc0LDcg KzM3NCw2IEBAIGludCByYWRlb25fY3J0Y19kb19zZXRfYmFzZShzdHJ1Y3QgZHJtX2NydGMgKmNy dGMsCiAJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGNydGMtPmRldjsKIAlzdHJ1Y3QgcmFkZW9u X2RldmljZSAqcmRldiA9IGRldi0+ZGV2X3ByaXZhdGU7CiAJc3RydWN0IHJhZGVvbl9jcnRjICpy YWRlb25fY3J0YyA9IHRvX3JhZGVvbl9jcnRjKGNydGMpOwotCXN0cnVjdCByYWRlb25fZnJhbWVi dWZmZXIgKnJhZGVvbl9mYjsKIAlzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICp0YXJnZXRfZmI7CiAJ c3RydWN0IGRybV9nZW1fb2JqZWN0ICpvYmo7CiAJc3RydWN0IHJhZGVvbl9ibyAqcmJvOwpAQCAt MzkzLDE0ICszOTIsMTAgQEAgaW50IHJhZGVvbl9jcnRjX2RvX3NldF9iYXNlKHN0cnVjdCBkcm1f Y3J0YyAqY3J0YywKIAkJcmV0dXJuIDA7CiAJfQogCi0JaWYgKGF0b21pYykgewotCQlyYWRlb25f ZmIgPSB0b19yYWRlb25fZnJhbWVidWZmZXIoZmIpOworCWlmIChhdG9taWMpCiAJCXRhcmdldF9m YiA9IGZiOwotCX0KLQllbHNlIHsKLQkJcmFkZW9uX2ZiID0gdG9fcmFkZW9uX2ZyYW1lYnVmZmVy KGNydGMtPnByaW1hcnktPmZiKTsKKwllbHNlCiAJCXRhcmdldF9mYiA9IGNydGMtPnByaW1hcnkt PmZiOwotCX0KIAogCXN3aXRjaCAodGFyZ2V0X2ZiLT5mb3JtYXQtPmNwcFswXSAqIDgpIHsKIAlj YXNlIDg6CkBAIC00MjMsNyArNDE4LDcgQEAgaW50IHJhZGVvbl9jcnRjX2RvX3NldF9iYXNlKHN0 cnVjdCBkcm1fY3J0YyAqY3J0YywKIAl9CiAKIAkvKiBQaW4gZnJhbWVidWZmZXIgJiBnZXQgdGls bGluZyBpbmZvcm1hdGlvbnMgKi8KLQlvYmogPSByYWRlb25fZmItPmJhc2Uub2JqWzBdOworCW9i aiA9IHRhcmdldF9mYi0+b2JqWzBdOwogCXJibyA9IGdlbV90b19yYWRlb25fYm8ob2JqKTsKIHJl dHJ5OgogCXIgPSByYWRlb25fYm9fcmVzZXJ2ZShyYm8sIGZhbHNlKTsKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX21vZGUuaCBiL2RyaXZlcnMvZ3B1L2RybS9yYWRl b24vcmFkZW9uX21vZGUuaAppbmRleCBjZDkzYzgwMzMyZjcuLmZkNDcwZDZiZjNmNCAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fbW9kZS5oCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9yYWRlb24vcmFkZW9uX21vZGUuaApAQCAtNDYsNyArNDYsNiBAQCBzdHJ1Y3QgcmFk ZW9uX2RldmljZTsKICNkZWZpbmUgdG9fcmFkZW9uX2NydGMoeCkgY29udGFpbmVyX29mKHgsIHN0 cnVjdCByYWRlb25fY3J0YywgYmFzZSkKICNkZWZpbmUgdG9fcmFkZW9uX2Nvbm5lY3Rvcih4KSBj b250YWluZXJfb2YoeCwgc3RydWN0IHJhZGVvbl9jb25uZWN0b3IsIGJhc2UpCiAjZGVmaW5lIHRv X3JhZGVvbl9lbmNvZGVyKHgpIGNvbnRhaW5lcl9vZih4LCBzdHJ1Y3QgcmFkZW9uX2VuY29kZXIs IGJhc2UpCi0jZGVmaW5lIHRvX3JhZGVvbl9mcmFtZWJ1ZmZlcih4KSBjb250YWluZXJfb2YoeCwg c3RydWN0IHJhZGVvbl9mcmFtZWJ1ZmZlciwgYmFzZSkKIAogI2RlZmluZSBSQURFT05fTUFYX0hQ RF9QSU5TIDcKICNkZWZpbmUgUkFERU9OX01BWF9DUlRDUyA2CkBAIC01NzQsMTAgKzU3Myw2IEBA IHN0cnVjdCByYWRlb25fY29ubmVjdG9yIHsKIAlpbnQgZW5hYmxlZF9hdHRyaWJzOwogfTsKIAot c3RydWN0IHJhZGVvbl9mcmFtZWJ1ZmZlciB7Ci0Jc3RydWN0IGRybV9mcmFtZWJ1ZmZlciBiYXNl OwotfTsKLQogI2RlZmluZSBFTkNPREVSX01PREVfSVNfRFAoZW0pICgoKGVtKSA9PSBBVE9NX0VO Q09ERVJfTU9ERV9EUCkgfHwgXAogCQkJCSgoZW0pID09IEFUT01fRU5DT0RFUl9NT0RFX0RQX01T VCkpCiAKQEAgLTkzMSw3ICs5MjYsNyBAQCByYWRlb25fY29tYmlvc19lbmNvZGVyX2NydGNfc2Ny YXRjaF9yZWdzKHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlciwgaW50IGNydGMpOwogZXh0ZXJu IHZvaWQKIHJhZGVvbl9jb21iaW9zX2VuY29kZXJfZHBtc19zY3JhdGNoX3JlZ3Moc3RydWN0IGRy bV9lbmNvZGVyICplbmNvZGVyLCBib29sIG9uKTsKIGludCByYWRlb25fZnJhbWVidWZmZXJfaW5p dChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAotCQkJICAgICBzdHJ1Y3QgcmFkZW9uX2ZyYW1lYnVm ZmVyICpyZmIsCisJCQkgICAgIHN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKnJmYiwKIAkJCSAgICAg Y29uc3Qgc3RydWN0IGRybV9tb2RlX2ZiX2NtZDIgKm1vZGVfY21kLAogCQkJICAgICBzdHJ1Y3Qg ZHJtX2dlbV9vYmplY3QgKm9iaik7CiAKLS0gCjIuMTYuMgoKX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KYW1kLWdmeCBtYWlsaW5nIGxpc3QKYW1kLWdmeEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1h bi9saXN0aW5mby9hbWQtZ2Z4Cg==