From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: [PATCH v2] drm/atomic: Allow for holes in connector state, v2. Date: Wed, 17 Feb 2016 08:32:05 +0100 Message-ID: <1455694325-24989-1-git-send-email-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 [141.105.120.124]) by gabe.freedesktop.org (Postfix) with ESMTPS id 647A16E8FC for ; Wed, 17 Feb 2016 07:32:12 +0000 (UTC) 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 QmVjYXVzZSB3ZSByZWNvcmQgY29ubmVjdG9yX21hc2sgdXNpbmcgMSA8PCBkcm1fY29ubmVjdG9y X2luZGV4IG5vdwp0aGUgY29ubmVjdG9yX21hc2sgc2hvdWxkIHN0YXkgdGhlIHNhbWUgZXZlbiB3 aGVuIG90aGVyIGNvbm5lY3RvcnMKYXJlIHJlbW92ZWQuIFRoaXMgd2FzIG5vdCB0aGUgY2FzZSB3 aXRoIE1TVCwgaW4gdGhhdCBjYXNlIHdoZW4gcmVtb3ZpbmcKYSBjb25uZWN0b3IgYWxsIG90aGVy IGNvbm5lY3RvcnMgbWF5IGNoYW5nZSB0aGVpciBpbmRleC4KClRoaXMgaXMgZml4ZWQgYnkgd2Fp dGluZyB1bnRpbCB0aGUgZmlyc3QgZ2V0X2Nvbm5lY3Rvcl9zdGF0ZSB0byBhbGxvY2F0ZQpjb25u ZWN0b3Jfc3RhdGUsIGFuZCBmb3JjZSByZWFsbG9jYXRpb24gd2hlbiBzdGF0ZSBpcyB0b28gc21h bGwuCgpBcyBhIHNpZGUgZWZmZWN0IGNvbm5lY3RvciBhcnJheXMgbm8gbG9uZ2VyIGhhdmUgdG8g YmUgcHJlYWxsb2NhdGVkLAphbmQgY2FuIGJlIGFsbG9jYXRlZCBvbiBmaXJzdCB1c2Ugd2hpY2gg bWVhbnMgYSBsZXNzIGFsbG9jYXRpb25zIGluCnRoZSBwYWdlIGZsaXAgb25seSBwYXRoLgoKQ2hh bmdlcyBzaW5jZSB2MToKLSBXaGl0ZXNwYWNlLiAoVmlsbGUpCi0gQ2FsbCBpZGFfcmVtb3ZlIHdo ZW4gZGVzdHJveWluZyB0aGUgY29ubmVjdG9yLiAoVmlsbGUpCi0gdTMyIGFsbG9jIC0+IGludC4g KFZpbGxlKQoKRml4ZXM6IDE0ZGU2YzQ0ZDE0OSAoImRybS9hdG9taWM6IFJlbW92ZSBkcm1fYXRv bWljX2Nvbm5lY3RvcnNfZm9yX2NydGMuIikKU2lnbmVkLW9mZi1ieTogTWFhcnRlbiBMYW5raG9y c3QgPG1hYXJ0ZW4ubGFua2hvcnN0QGxpbnV4LmludGVsLmNvbT4KQ2M6IFZpbGxlIFN5cmrDpGzD pCA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2Ry bV9hdG9taWMuYyAgICAgICAgfCA0NCArKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0K IGRyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5jIHwgIDIgKy0KIGRyaXZlcnMvZ3B1 L2RybS9kcm1fY3J0Yy5jICAgICAgICAgIHwgNDkgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQogaW5jbHVkZS9kcm0vZHJtX2NydGMuaCAgICAgICAgICAgICAgfCAgOCArKysr Ky0KIDQgZmlsZXMgY2hhbmdlZCwgNDggaW5zZXJ0aW9ucygrKSwgNTUgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWMuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9kcm1fYXRvbWljLmMKaW5kZXggOGZiNDY5YzRlNGI4Li4wOTI2MjBjNmZmMzIgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2Ry bV9hdG9taWMuYwpAQCAtNjUsOCArNjUsNiBAQCBkcm1fYXRvbWljX3N0YXRlX2luaXQoc3RydWN0 IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKQogCSAqLwog CXN0YXRlLT5hbGxvd19tb2Rlc2V0ID0gdHJ1ZTsKIAotCXN0YXRlLT5udW1fY29ubmVjdG9yID0g QUNDRVNTX09OQ0UoZGV2LT5tb2RlX2NvbmZpZy5udW1fY29ubmVjdG9yKTsKLQogCXN0YXRlLT5j cnRjcyA9IGtjYWxsb2MoZGV2LT5tb2RlX2NvbmZpZy5udW1fY3J0YywKIAkJCSAgICAgICBzaXpl b2YoKnN0YXRlLT5jcnRjcyksIEdGUF9LRVJORUwpOwogCWlmICghc3RhdGUtPmNydGNzKQpAQCAt ODMsMTYgKzgxLDYgQEAgZHJtX2F0b21pY19zdGF0ZV9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsIHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKIAkJCQkgICAgICBzaXplb2YoKnN0 YXRlLT5wbGFuZV9zdGF0ZXMpLCBHRlBfS0VSTkVMKTsKIAlpZiAoIXN0YXRlLT5wbGFuZV9zdGF0 ZXMpCiAJCWdvdG8gZmFpbDsKLQlzdGF0ZS0+Y29ubmVjdG9ycyA9IGtjYWxsb2Moc3RhdGUtPm51 bV9jb25uZWN0b3IsCi0JCQkJICAgIHNpemVvZigqc3RhdGUtPmNvbm5lY3RvcnMpLAotCQkJCSAg ICBHRlBfS0VSTkVMKTsKLQlpZiAoIXN0YXRlLT5jb25uZWN0b3JzKQotCQlnb3RvIGZhaWw7Ci0J c3RhdGUtPmNvbm5lY3Rvcl9zdGF0ZXMgPSBrY2FsbG9jKHN0YXRlLT5udW1fY29ubmVjdG9yLAot CQkJCQkgIHNpemVvZigqc3RhdGUtPmNvbm5lY3Rvcl9zdGF0ZXMpLAotCQkJCQkgIEdGUF9LRVJO RUwpOwotCWlmICghc3RhdGUtPmNvbm5lY3Rvcl9zdGF0ZXMpCi0JCWdvdG8gZmFpbDsKIAogCXN0 YXRlLT5kZXYgPSBkZXY7CiAKQEAgLTgyMywxOSArODExLDI3IEBAIGRybV9hdG9taWNfZ2V0X2Nv bm5lY3Rvcl9zdGF0ZShzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUsCiAKIAlpbmRleCA9 IGRybV9jb25uZWN0b3JfaW5kZXgoY29ubmVjdG9yKTsKIAotCS8qCi0JICogQ29uc3RydWN0aW9u IG9mIGF0b21pYyBzdGF0ZSB1cGRhdGVzIGNhbiByYWNlIHdpdGggYSBjb25uZWN0b3IKLQkgKiBo b3QtYWRkIHdoaWNoIG1pZ2h0IG92ZXJmbG93LiBJbiB0aGlzIGNhc2UgZmxpcCB0aGUgdGFibGUg YW5kIGp1c3QKLQkgKiByZXN0YXJ0IHRoZSBlbnRpcmUgaW9jdGwgLSBubyBvbmUgaXMgZmFzdCBl bm91Z2ggdG8gbGl2ZWxvY2sgYSBjcHUKLQkgKiB3aXRoIHBoeXNpY2FsIGhvdHBsdWcgZXZlbnRz IGFueXdheS4KLQkgKgotCSAqIE5vdGUgdGhhdCB3ZSBvbmx5IGdyYWIgdGhlIGluZGV4ZXMgb25j ZSB3ZSBoYXZlIHRoZSByaWdodCBsb2NrIHRvCi0JICogcHJldmVudCBob3RwbHVnL3VucGx1Z2dp bmcgb2YgY29ubmVjdG9ycy4gU28gcmVtb3ZhbCBpcyBubyBwcm9ibGVtLAotCSAqIGF0IG1vc3Qg dGhlIGFycmF5IGlzIGEgYml0IHRvbyBsYXJnZS4KLQkgKi8KIAlpZiAoaW5kZXggPj0gc3RhdGUt Pm51bV9jb25uZWN0b3IpIHsKLQkJRFJNX0RFQlVHX0FUT01JQygiSG90LWFkZGVkIGNvbm5lY3Rv ciB3b3VsZCBvdmVyZmxvdyBzdGF0ZSBhcnJheSwgcmVzdGFydGluZ1xuIik7Ci0JCXJldHVybiBF UlJfUFRSKC1FQUdBSU4pOworCQlzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqKmM7CisJCXN0cnVjdCBk cm1fY29ubmVjdG9yX3N0YXRlICoqY3M7CisJCWludCBhbGxvYyA9IG1heChpbmRleCArIDEsIGNv bmZpZy0+bnVtX2Nvbm5lY3Rvcik7CisKKwkJYyA9IGtyZWFsbG9jKHN0YXRlLT5jb25uZWN0b3Jz LCBhbGxvYyAqIHNpemVvZigqc3RhdGUtPmNvbm5lY3RvcnMpLCBHRlBfS0VSTkVMKTsKKwkJaWYg KCFjKQorCQkJcmV0dXJuIEVSUl9QVFIoLUVOT01FTSk7CisKKwkJc3RhdGUtPmNvbm5lY3RvcnMg PSBjOworCQltZW1zZXQoJnN0YXRlLT5jb25uZWN0b3JzW3N0YXRlLT5udW1fY29ubmVjdG9yXSwg MCwKKwkJICAgICAgIHNpemVvZigqc3RhdGUtPmNvbm5lY3RvcnMpICogKGFsbG9jIC0gc3RhdGUt Pm51bV9jb25uZWN0b3IpKTsKKworCQljcyA9IGtyZWFsbG9jKHN0YXRlLT5jb25uZWN0b3Jfc3Rh dGVzLCBhbGxvYyAqIHNpemVvZigqc3RhdGUtPmNvbm5lY3Rvcl9zdGF0ZXMpLCBHRlBfS0VSTkVM KTsKKwkJaWYgKCFjcykKKwkJCXJldHVybiBFUlJfUFRSKC1FTk9NRU0pOworCisJCXN0YXRlLT5j b25uZWN0b3Jfc3RhdGVzID0gY3M7CisJCW1lbXNldCgmc3RhdGUtPmNvbm5lY3Rvcl9zdGF0ZXNb c3RhdGUtPm51bV9jb25uZWN0b3JdLCAwLAorCQkgICAgICAgc2l6ZW9mKCpzdGF0ZS0+Y29ubmVj dG9yX3N0YXRlcykgKiAoYWxsb2MgLSBzdGF0ZS0+bnVtX2Nvbm5lY3RvcikpOworCQlzdGF0ZS0+ bnVtX2Nvbm5lY3RvciA9IGFsbG9jOwogCX0KIAogCWlmIChzdGF0ZS0+Y29ubmVjdG9yX3N0YXRl c1tpbmRleF0pCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY19oZWxwZXIu YyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5jCmluZGV4IDJiNDMwYjA1ZjM1 ZC4uNGRhNGYyYTQ5MDc4IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY19o ZWxwZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY19oZWxwZXIuYwpAQCAtMTUz NSw3ICsxNTM1LDcgQEAgdm9pZCBkcm1fYXRvbWljX2hlbHBlcl9zd2FwX3N0YXRlKHN0cnVjdCBk cm1fZGV2aWNlICpkZXYsCiB7CiAJaW50IGk7CiAKLQlmb3IgKGkgPSAwOyBpIDwgZGV2LT5tb2Rl X2NvbmZpZy5udW1fY29ubmVjdG9yOyBpKyspIHsKKwlmb3IgKGkgPSAwOyBpIDwgc3RhdGUtPm51 bV9jb25uZWN0b3I7IGkrKykgewogCQlzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yID0g c3RhdGUtPmNvbm5lY3RvcnNbaV07CiAKIAkJaWYgKCFjb25uZWN0b3IpCmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vZHJtX2NydGMuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fY3J0Yy5jCmlu ZGV4IDY1MjU4YWNkZGI5MC4uODQ1MTQwMDFkY2VmIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vZHJtX2NydGMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2NydGMuYwpAQCAtOTE4LDEy ICs5MTgsMTkgQEAgaW50IGRybV9jb25uZWN0b3JfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 LAogCWNvbm5lY3Rvci0+YmFzZS5wcm9wZXJ0aWVzID0gJmNvbm5lY3Rvci0+cHJvcGVydGllczsK IAljb25uZWN0b3ItPmRldiA9IGRldjsKIAljb25uZWN0b3ItPmZ1bmNzID0gZnVuY3M7CisKKwlj b25uZWN0b3ItPmNvbm5lY3Rvcl9pZCA9IGlkYV9zaW1wbGVfZ2V0KCZjb25maWctPmNvbm5lY3Rv cl9pZGEsIDAsIDAsIEdGUF9LRVJORUwpOworCWlmIChjb25uZWN0b3ItPmNvbm5lY3Rvcl9pZCA8 IDApIHsKKwkJcmV0ID0gY29ubmVjdG9yLT5jb25uZWN0b3JfaWQ7CisJCWdvdG8gb3V0X3B1dDsK Kwl9CisKIAljb25uZWN0b3ItPmNvbm5lY3Rvcl90eXBlID0gY29ubmVjdG9yX3R5cGU7CiAJY29u bmVjdG9yLT5jb25uZWN0b3JfdHlwZV9pZCA9CiAJCWlkYV9zaW1wbGVfZ2V0KGNvbm5lY3Rvcl9p ZGEsIDEsIDAsIEdGUF9LRVJORUwpOwogCWlmIChjb25uZWN0b3ItPmNvbm5lY3Rvcl90eXBlX2lk IDwgMCkgewogCQlyZXQgPSBjb25uZWN0b3ItPmNvbm5lY3Rvcl90eXBlX2lkOwotCQlnb3RvIG91 dF9wdXQ7CisJCWdvdG8gb3V0X3B1dF9pZDsKIAl9CiAJY29ubmVjdG9yLT5uYW1lID0KIAkJa2Fz cHJpbnRmKEdGUF9LRVJORUwsICIlcy0lZCIsCkBAIC05MzEsNyArOTM4LDcgQEAgaW50IGRybV9j b25uZWN0b3JfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCQkJICBjb25uZWN0b3ItPmNv bm5lY3Rvcl90eXBlX2lkKTsKIAlpZiAoIWNvbm5lY3Rvci0+bmFtZSkgewogCQlyZXQgPSAtRU5P TUVNOwotCQlnb3RvIG91dF9wdXQ7CisJCWdvdG8gb3V0X3B1dF90eXBlX2lkOwogCX0KIAogCUlO SVRfTElTVF9IRUFEKCZjb25uZWN0b3ItPnByb2JlZF9tb2Rlcyk7CkBAIC05NTksNyArOTY2LDEy IEBAIGludCBkcm1fY29ubmVjdG9yX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAl9CiAK IAljb25uZWN0b3ItPmRlYnVnZnNfZW50cnkgPSBOVUxMOwotCitvdXRfcHV0X3R5cGVfaWQ6CisJ aWYgKHJldCkKKwkJaWRhX3JlbW92ZShjb25uZWN0b3JfaWRhLCBjb25uZWN0b3ItPmNvbm5lY3Rv cl90eXBlX2lkKTsKK291dF9wdXRfaWQ6CisJaWYgKHJldCkKKwkJaWRhX3JlbW92ZSgmY29uZmln LT5jb25uZWN0b3JfaWRhLCBjb25uZWN0b3ItPmNvbm5lY3Rvcl9pZCk7CiBvdXRfcHV0OgogCWlm IChyZXQpCiAJCWRybV9tb2RlX29iamVjdF9wdXQoZGV2LCAmY29ubmVjdG9yLT5iYXNlKTsKQEAg LTk5Niw2ICsxMDA4LDkgQEAgdm9pZCBkcm1fY29ubmVjdG9yX2NsZWFudXAoc3RydWN0IGRybV9j b25uZWN0b3IgKmNvbm5lY3RvcikKIAlpZGFfcmVtb3ZlKCZkcm1fY29ubmVjdG9yX2VudW1fbGlz dFtjb25uZWN0b3ItPmNvbm5lY3Rvcl90eXBlXS5pZGEsCiAJCSAgIGNvbm5lY3Rvci0+Y29ubmVj dG9yX3R5cGVfaWQpOwogCisJaWRhX3JlbW92ZSgmZGV2LT5tb2RlX2NvbmZpZy5jb25uZWN0b3Jf aWRhLAorCQkgICBjb25uZWN0b3ItPmNvbm5lY3Rvcl9pZCk7CisKIAlrZnJlZShjb25uZWN0b3It PmRpc3BsYXlfaW5mby5idXNfZm9ybWF0cyk7CiAJZHJtX21vZGVfb2JqZWN0X3B1dChkZXYsICZj b25uZWN0b3ItPmJhc2UpOwogCWtmcmVlKGNvbm5lY3Rvci0+bmFtZSk7CkBAIC0xMDEzLDMyICsx MDI4LDYgQEAgdm9pZCBkcm1fY29ubmVjdG9yX2NsZWFudXAoc3RydWN0IGRybV9jb25uZWN0b3Ig KmNvbm5lY3RvcikKIEVYUE9SVF9TWU1CT0woZHJtX2Nvbm5lY3Rvcl9jbGVhbnVwKTsKIAogLyoq Ci0gKiBkcm1fY29ubmVjdG9yX2luZGV4IC0gZmluZCB0aGUgaW5kZXggb2YgYSByZWdpc3RlcmVk IGNvbm5lY3RvcgotICogQGNvbm5lY3RvcjogY29ubmVjdG9yIHRvIGZpbmQgaW5kZXggZm9yCi0g KgotICogR2l2ZW4gYSByZWdpc3RlcmVkIGNvbm5lY3RvciwgcmV0dXJuIHRoZSBpbmRleCBvZiB0 aGF0IGNvbm5lY3RvciB3aXRoaW4gYSBEUk0KLSAqIGRldmljZSdzIGxpc3Qgb2YgY29ubmVjdG9y cy4KLSAqLwotdW5zaWduZWQgaW50IGRybV9jb25uZWN0b3JfaW5kZXgoc3RydWN0IGRybV9jb25u ZWN0b3IgKmNvbm5lY3RvcikKLXsKLQl1bnNpZ25lZCBpbnQgaW5kZXggPSAwOwotCXN0cnVjdCBk cm1fY29ubmVjdG9yICp0bXA7Ci0Jc3RydWN0IGRybV9tb2RlX2NvbmZpZyAqY29uZmlnID0gJmNv bm5lY3Rvci0+ZGV2LT5tb2RlX2NvbmZpZzsKLQotCVdBUk5fT04oIWRybV9tb2Rlc2V0X2lzX2xv Y2tlZCgmY29uZmlnLT5jb25uZWN0aW9uX211dGV4KSk7Ci0KLQlkcm1fZm9yX2VhY2hfY29ubmVj dG9yKHRtcCwgY29ubmVjdG9yLT5kZXYpIHsKLQkJaWYgKHRtcCA9PSBjb25uZWN0b3IpCi0JCQly ZXR1cm4gaW5kZXg7Ci0KLQkJaW5kZXgrKzsKLQl9Ci0KLQlCVUcoKTsKLX0KLUVYUE9SVF9TWU1C T0woZHJtX2Nvbm5lY3Rvcl9pbmRleCk7Ci0KLS8qKgogICogZHJtX2Nvbm5lY3Rvcl9yZWdpc3Rl ciAtIHJlZ2lzdGVyIGEgY29ubmVjdG9yCiAgKiBAY29ubmVjdG9yOiB0aGUgY29ubmVjdG9yIHRv IHJlZ2lzdGVyCiAgKgpAQCAtNTgzOCw2ICs1ODI3LDcgQEAgdm9pZCBkcm1fbW9kZV9jb25maWdf aW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCUlOSVRfTElTVF9IRUFEKCZkZXYtPm1vZGVf Y29uZmlnLnBsYW5lX2xpc3QpOwogCWlkcl9pbml0KCZkZXYtPm1vZGVfY29uZmlnLmNydGNfaWRy KTsKIAlpZHJfaW5pdCgmZGV2LT5tb2RlX2NvbmZpZy50aWxlX2lkcik7CisJaWRhX2luaXQoJmRl di0+bW9kZV9jb25maWcuY29ubmVjdG9yX2lkYSk7CiAKIAlkcm1fbW9kZXNldF9sb2NrX2FsbChk ZXYpOwogCWRybV9tb2RlX2NyZWF0ZV9zdGFuZGFyZF9wcm9wZXJ0aWVzKGRldik7CkBAIC01OTE4 LDYgKzU5MDgsNyBAQCB2b2lkIGRybV9tb2RlX2NvbmZpZ19jbGVhbnVwKHN0cnVjdCBkcm1fZGV2 aWNlICpkZXYpCiAJCWNydGMtPmZ1bmNzLT5kZXN0cm95KGNydGMpOwogCX0KIAorCWlkYV9kZXN0 cm95KCZkZXYtPm1vZGVfY29uZmlnLmNvbm5lY3Rvcl9pZGEpOwogCWlkcl9kZXN0cm95KCZkZXYt Pm1vZGVfY29uZmlnLnRpbGVfaWRyKTsKIAlpZHJfZGVzdHJveSgmZGV2LT5tb2RlX2NvbmZpZy5j cnRjX2lkcik7CiAJZHJtX21vZGVzZXRfbG9ja19maW5pKCZkZXYtPm1vZGVfY29uZmlnLmNvbm5l Y3Rpb25fbXV0ZXgpOwpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2NydGMuaCBiL2luY2x1 ZGUvZHJtL2RybV9jcnRjLmgKaW5kZXggOGM3ZmIzZDBmOWQwLi43ZmFkMTkzZGM2NDUgMTAwNjQ0 Ci0tLSBhL2luY2x1ZGUvZHJtL2RybV9jcnRjLmgKKysrIGIvaW5jbHVkZS9kcm0vZHJtX2NydGMu aApAQCAtMTE2OCw2ICsxMTY4LDcgQEAgc3RydWN0IGRybV9jb25uZWN0b3IgewogCXN0cnVjdCBk cm1fbW9kZV9vYmplY3QgYmFzZTsKIAogCWNoYXIgKm5hbWU7CisJaW50IGNvbm5lY3Rvcl9pZDsK IAlpbnQgY29ubmVjdG9yX3R5cGU7CiAJaW50IGNvbm5lY3Rvcl90eXBlX2lkOwogCWJvb2wgaW50 ZXJsYWNlX2FsbG93ZWQ7CkBAIC0yMDQ5LDYgKzIwNTAsNyBAQCBzdHJ1Y3QgZHJtX21vZGVfY29u ZmlnIHsKIAlzdHJ1Y3QgbGlzdF9oZWFkIGZiX2xpc3Q7CiAKIAlpbnQgbnVtX2Nvbm5lY3RvcjsK KwlzdHJ1Y3QgaWRhIGNvbm5lY3Rvcl9pZGE7CiAJc3RydWN0IGxpc3RfaGVhZCBjb25uZWN0b3Jf bGlzdDsKIAlpbnQgbnVtX2VuY29kZXI7CiAJc3RydWN0IGxpc3RfaGVhZCBlbmNvZGVyX2xpc3Q7 CkBAIC0yMjEzLDcgKzIyMTUsMTEgQEAgaW50IGRybV9jb25uZWN0b3JfcmVnaXN0ZXIoc3RydWN0 IGRybV9jb25uZWN0b3IgKmNvbm5lY3Rvcik7CiB2b2lkIGRybV9jb25uZWN0b3JfdW5yZWdpc3Rl cihzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKTsKIAogZXh0ZXJuIHZvaWQgZHJtX2Nv bm5lY3Rvcl9jbGVhbnVwKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpOwotZXh0ZXJu IHVuc2lnbmVkIGludCBkcm1fY29ubmVjdG9yX2luZGV4KHN0cnVjdCBkcm1fY29ubmVjdG9yICpj b25uZWN0b3IpOworc3RhdGljIGlubGluZSB1bnNpZ25lZCBkcm1fY29ubmVjdG9yX2luZGV4KHN0 cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCit7CisJcmV0dXJuIGNvbm5lY3Rvci0+Y29u bmVjdG9yX2lkOworfQorCiAvKiBoZWxwZXIgdG8gdW5wbHVnIGFsbCBjb25uZWN0b3JzIGZyb20g c3lzZnMgZm9yIGRldmljZSAqLwogZXh0ZXJuIHZvaWQgZHJtX2Nvbm5lY3Rvcl91bnBsdWdfYWxs KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwogCi0tIAoyLjEuMAoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRl bC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==