From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Zimmermann Subject: [PATCH 2/7] drm/udl: Convert to struct drm_simple_display_pipe Date: Tue, 26 Nov 2019 14:47:02 +0100 Message-ID: <20191126134707.22385-3-tzimmermann@suse.de> References: <20191126134707.22385-1-tzimmermann@suse.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mx1.suse.de (mx2.suse.de [195.135.220.15]) by gabe.freedesktop.org (Postfix) with ESMTPS id A6D896E3E7 for ; Tue, 26 Nov 2019 13:47:11 +0000 (UTC) In-Reply-To: <20191126134707.22385-1-tzimmermann@suse.de> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: airlied@redhat.com, daniel@ffwll.ch, sam@ravnborg.org, kraxel@redhat.com, emil.velikov@collabora.com, noralf@tronnes.org, zboszor@pr.hu Cc: Thomas Zimmermann , dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org VWRsIGhhcyBhIHNpbmdsZSBkaXNwbGF5IHBpcGVsaW5lIHdpdGggYXByaW1hcnkgcGxhbmU7IHBl cmZlY3QgZm9yCnNpbXBsZS1waXBlIGhlbHBlcnMuIENvbnZlcnQgaXQgb3Zlci4gVGhlIG9sZCBl bmNvZGVyIGFuZCBDUlRDIGNvZGUKYmVjb21lcyB1bnVzZWQgYW5kIG9ic29sZXRlLgoKRXhwb3J0 ZWQgZm9ybWF0cyBmb3IgdGhlIHByaW1hcnkgcGxhbmUgYXJlIFJHQjU2NSBhbmQgWFJHQjg4ODgs IHdpdGgKdGhlIGxhdHRlciBiZWluZyBlbXVsYXRlZC4gVGhlIDE2LWJpdCBmb3JtYXQgaXMgdGhl IGRlZmF1bHQgYW5kIHdoYXQKaXMgdXNlZCB3aGVuIGNvbW11bmljYXRpbmcgd2l0aCB0aGUgZGV2 aWNlLgoKVGhpcyBwYXRjaCBlbmFibGVzIGF0b21pYyBtb2Rlc2V0dGluZyBmb3IgdWRsIGRldmlj ZXMuCgpTaWduZWQtb2ZmLWJ5OiBUaG9tYXMgWmltbWVybWFubiA8dHppbW1lcm1hbm5Ac3VzZS5k ZT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vdWRsL3VkbF9jb25uZWN0b3IuYyB8ICAxMiArLS0KIGRy aXZlcnMvZ3B1L2RybS91ZGwvdWRsX2Rydi5jICAgICAgIHwgICA5ICstCiBkcml2ZXJzL2dwdS9k cm0vdWRsL3VkbF9kcnYuaCAgICAgICB8ICAgNCArLQogZHJpdmVycy9ncHUvZHJtL3VkbC91ZGxf bW9kZXNldC5jICAgfCAxNDIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLQogNCBmaWxlcyBj aGFuZ2VkLCAxMzYgaW5zZXJ0aW9ucygrKSwgMzEgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL3VkbC91ZGxfY29ubmVjdG9yLmMgYi9kcml2ZXJzL2dwdS9kcm0vdWRs L3VkbF9jb25uZWN0b3IuYwppbmRleCA2OGUxMTNhZTQ0ZjcuLjQ3YWI4ZDE1MGYxYSAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL3VkbC91ZGxfY29ubmVjdG9yLmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL3VkbC91ZGxfY29ubmVjdG9yLmMKQEAgLTcsNiArNyw3IEBACiAgKiBDb3B5cmlnaHQg KEMpIDIwMDkgQmVybmllIFRob21wc29uIDxiZXJuaWVAcGx1Z2FibGUuY29tPgogICovCiAKKyNp bmNsdWRlIDxkcm0vZHJtX2F0b21pY19zdGF0ZV9oZWxwZXIuaD4KICNpbmNsdWRlIDxkcm0vZHJt X2NydGNfaGVscGVyLmg+CiAjaW5jbHVkZSA8ZHJtL2RybV9wcm9iZV9oZWxwZXIuaD4KIApAQCAt OTAsMTMgKzkxLDYgQEAgdWRsX2RldGVjdChzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9y LCBib29sIGZvcmNlKQogCXJldHVybiBjb25uZWN0b3Jfc3RhdHVzX2Nvbm5lY3RlZDsKIH0KIAot c3RhdGljIGludCB1ZGxfY29ubmVjdG9yX3NldF9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2Nvbm5lY3Rv ciAqY29ubmVjdG9yLAotCQkJCSAgICAgIHN0cnVjdCBkcm1fcHJvcGVydHkgKnByb3BlcnR5LAot CQkJCSAgICAgIHVpbnQ2NF90IHZhbCkKLXsKLQlyZXR1cm4gMDsKLX0KLQogc3RhdGljIHZvaWQg dWRsX2Nvbm5lY3Rvcl9kZXN0cm95KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCiB7 CiAJc3RydWN0IHVkbF9kcm1fY29ubmVjdG9yICp1ZGxfY29ubmVjdG9yID0KQEAgLTExNywxMCAr MTExLDEyIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9oZWxwZXJfZnVuY3Mg dWRsX2Nvbm5lY3Rvcl9oZWxwZXJfZnVuY3MgPSB7CiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJt X2Nvbm5lY3Rvcl9mdW5jcyB1ZGxfY29ubmVjdG9yX2Z1bmNzID0gewogCS5kcG1zID0gZHJtX2hl bHBlcl9jb25uZWN0b3JfZHBtcywKKwkucmVzZXQgPSBkcm1fYXRvbWljX2hlbHBlcl9jb25uZWN0 b3JfcmVzZXQsCiAJLmRldGVjdCA9IHVkbF9kZXRlY3QsCiAJLmZpbGxfbW9kZXMgPSBkcm1faGVs cGVyX3Byb2JlX3NpbmdsZV9jb25uZWN0b3JfbW9kZXMsCiAJLmRlc3Ryb3kgPSB1ZGxfY29ubmVj dG9yX2Rlc3Ryb3ksCi0JLnNldF9wcm9wZXJ0eSA9IHVkbF9jb25uZWN0b3Jfc2V0X3Byb3BlcnR5 LAorCS5hdG9taWNfZHVwbGljYXRlX3N0YXRlID0gZHJtX2F0b21pY19oZWxwZXJfY29ubmVjdG9y X2R1cGxpY2F0ZV9zdGF0ZSwKKwkuYXRvbWljX2Rlc3Ryb3lfc3RhdGUgICA9IGRybV9hdG9taWNf aGVscGVyX2Nvbm5lY3Rvcl9kZXN0cm95X3N0YXRlLAogfTsKIAogc3RydWN0IGRybV9jb25uZWN0 b3IgKnVkbF9jb25uZWN0b3JfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL3VkbC91ZGxfZHJ2LmMgYi9kcml2ZXJzL2dwdS9kcm0vdWRsL3Vk bF9kcnYuYwppbmRleCBkNTc4M2ZhMzJjNWIuLmIzZmE2YmY0MWFjYyAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL3VkbC91ZGxfZHJ2LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3VkbC91ZGxf ZHJ2LmMKQEAgLTIxLDE3ICsyMSwxNCBAQCBzdGF0aWMgaW50IHVkbF91c2Jfc3VzcGVuZChzdHJ1 Y3QgdXNiX2ludGVyZmFjZSAqaW50ZXJmYWNlLAogewogCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYg PSB1c2JfZ2V0X2ludGZkYXRhKGludGVyZmFjZSk7CiAKLQlkcm1fa21zX2hlbHBlcl9wb2xsX2Rp c2FibGUoZGV2KTsKLQlyZXR1cm4gMDsKKwlyZXR1cm4gZHJtX21vZGVfY29uZmlnX2hlbHBlcl9z dXNwZW5kKGRldik7CiB9CiAKIHN0YXRpYyBpbnQgdWRsX3VzYl9yZXN1bWUoc3RydWN0IHVzYl9p bnRlcmZhY2UgKmludGVyZmFjZSkKIHsKIAlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gdXNiX2dl dF9pbnRmZGF0YShpbnRlcmZhY2UpOwogCi0JZHJtX2ttc19oZWxwZXJfcG9sbF9lbmFibGUoZGV2 KTsKLQl1ZGxfbW9kZXNldF9yZXN0b3JlKGRldik7Ci0JcmV0dXJuIDA7CisJcmV0dXJuIGRybV9t b2RlX2NvbmZpZ19oZWxwZXJfcmVzdW1lKGRldik7CiB9CiAKIERFRklORV9EUk1fR0VNX0ZPUFMo dWRsX2RyaXZlcl9mb3BzKTsKQEAgLTQ1LDcgKzQyLDcgQEAgc3RhdGljIHZvaWQgdWRsX2RyaXZl cl9yZWxlYXNlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiB9CiAKIHN0YXRpYyBzdHJ1Y3QgZHJt X2RyaXZlciBkcml2ZXIgPSB7Ci0JLmRyaXZlcl9mZWF0dXJlcyA9IERSSVZFUl9NT0RFU0VUIHwg RFJJVkVSX0dFTSwKKwkuZHJpdmVyX2ZlYXR1cmVzID0gRFJJVkVSX0FUT01JQyB8IERSSVZFUl9H RU0gfCBEUklWRVJfTU9ERVNFVCwKIAkucmVsZWFzZSA9IHVkbF9kcml2ZXJfcmVsZWFzZSwKIAog CS8qIGdlbSBob29rcyAqLwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3VkbC91ZGxfZHJ2 LmggYi9kcml2ZXJzL2dwdS9kcm0vdWRsL3VkbF9kcnYuaAppbmRleCA4ZGMwNDcxN2FiYWMuLjIz MzQ2YmRjNzRiYyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3VkbC91ZGxfZHJ2LmgKKysr IGIvZHJpdmVycy9ncHUvZHJtL3VkbC91ZGxfZHJ2LmgKQEAgLTE3LDYgKzE3LDcgQEAKICNpbmNs dWRlIDxkcm0vZHJtX2RldmljZS5oPgogI2luY2x1ZGUgPGRybS9kcm1fZnJhbWVidWZmZXIuaD4K ICNpbmNsdWRlIDxkcm0vZHJtX2dlbS5oPgorI2luY2x1ZGUgPGRybS9kcm1fc2ltcGxlX2ttc19o ZWxwZXIuaD4KIAogc3RydWN0IGRybV9lbmNvZGVyOwogc3RydWN0IGRybV9tb2RlX2NyZWF0ZV9k dW1iOwpAQCAtNTMsNiArNTQsOCBAQCBzdHJ1Y3QgdWRsX2RldmljZSB7CiAJc3RydWN0IHVzYl9k ZXZpY2UgKnVkZXY7CiAJc3RydWN0IGRybV9jcnRjICpjcnRjOwogCisJc3RydWN0IGRybV9zaW1w bGVfZGlzcGxheV9waXBlIGRpc3BsYXlfcGlwZTsKKwogCS8qIGFjdGl2ZSBmcmFtZWJ1ZmZlciBv biB0aGUgMTYtYml0IGNoYW5uZWwgKi8KIAljb25zdCBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICph Y3RpdmVfZmJfMTY7CiAJc3BpbmxvY2tfdCBhY3RpdmVfZmJfMTZfbG9jazsKQEAgLTc2LDcgKzc5 LDYgQEAgc3RydWN0IHVkbF9kZXZpY2UgewogCiAvKiBtb2Rlc2V0ICovCiBpbnQgdWRsX21vZGVz ZXRfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKLXZvaWQgdWRsX21vZGVzZXRfcmVzdG9y ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKIHZvaWQgdWRsX21vZGVzZXRfY2xlYW51cChzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2KTsKIHN0cnVjdCBkcm1fY29ubmVjdG9yICp1ZGxfY29ubmVjdG9y X2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldik7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS91ZGwvdWRsX21vZGVzZXQuYyBiL2RyaXZlcnMvZ3B1L2RybS91ZGwvdWRsX21vZGVzZXQu YwppbmRleCA1YmIxNTIyMDM2YzcuLmM4YmQ0MzhkZTZlOSAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL3VkbC91ZGxfbW9kZXNldC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS91ZGwvdWRsX21v ZGVzZXQuYwpAQCAtOSwxMiArOSwxNiBAQAogCiAgKi8KIAorI2luY2x1ZGUgPGRybS9kcm1fYXRv bWljX2hlbHBlci5oPgogI2luY2x1ZGUgPGRybS9kcm1fY3J0Y19oZWxwZXIuaD4KKyNpbmNsdWRl IDxkcm0vZHJtX2dlbV9mcmFtZWJ1ZmZlcl9oZWxwZXIuaD4KICNpbmNsdWRlIDxkcm0vZHJtX21v ZGVzZXRfaGVscGVyX3Z0YWJsZXMuaD4KICNpbmNsdWRlIDxkcm0vZHJtX3ZibGFuay5oPgogCiAj aW5jbHVkZSAidWRsX2Rydi5oIgogCisjZGVmaW5lIFVETF9DT0xPUl9ERVBUSF8xNkJQUAkwCisK IC8qCiAgKiBBbGwgRGlzcGxheUxpbmsgYnVsayBvcGVyYXRpb25zIHN0YXJ0IHdpdGggMHhBRiwg Zm9sbG93ZWQgYnkgc3BlY2lmaWMgY29kZQogICogQWxsIG9wZXJhdGlvbnMgYXJlIHdyaXR0ZW4g dG8gYnVmZmVycyB3aGljaCB0aGVuIGxhdGVyIGdldCBzZW50IHRvIGRldmljZQpAQCAtNDE1LDE0 ICs0MTksMTI2IEBAIHN0YXRpYyBpbnQgdWRsX2NydGNfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2KQogCXJldHVybiAwOwogfQogCisvKgorICogU2ltcGxlIGRpc3BsYXkgcGlwZWxpbmUKKyAq LworCitzdGF0aWMgY29uc3QgdWludDMyX3QgdWRsX3NpbXBsZV9kaXNwbGF5X3BpcGVfZm9ybWF0 c1tdID0geworCURSTV9GT1JNQVRfUkdCNTY1LAorCURSTV9GT1JNQVRfWFJHQjg4ODgsCit9Owor CitzdGF0aWMgZW51bSBkcm1fbW9kZV9zdGF0dXMKK3VkbF9zaW1wbGVfZGlzcGxheV9waXBlX21v ZGVfdmFsaWQoc3RydWN0IGRybV9zaW1wbGVfZGlzcGxheV9waXBlICpwaXBlLAorCQkJCSAgIGNv bnN0IHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICptb2RlKQoreworCXJldHVybiBNT0RFX09LOwor fQorCitzdGF0aWMgdm9pZAordWRsX3NpbXBsZV9kaXNwbGF5X3BpcGVfZW5hYmxlKHN0cnVjdCBk cm1fc2ltcGxlX2Rpc3BsYXlfcGlwZSAqcGlwZSwKKwkJCSAgICAgICBzdHJ1Y3QgZHJtX2NydGNf c3RhdGUgKmNydGNfc3RhdGUsCisJCQkgICAgICAgc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqcGxh bmVfc3RhdGUpCit7CisJc3RydWN0IGRybV9jcnRjICpjcnRjID0gJnBpcGUtPmNydGM7CisJc3Ry dWN0IGRybV9kZXZpY2UgKmRldiA9IGNydGMtPmRldjsKKwlzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVy ICpmYiA9IHBsYW5lX3N0YXRlLT5mYjsKKwlzdHJ1Y3QgdWRsX2RldmljZSAqdWRsID0gZGV2LT5k ZXZfcHJpdmF0ZTsKKwlzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSA9ICZjcnRjX3N0YXRl LT5tb2RlOworCWNoYXIgKmJ1ZjsKKwljaGFyICp3cnB0cjsKKwlpbnQgY29sb3JfZGVwdGggPSBV RExfQ09MT1JfREVQVEhfMTZCUFA7CisKKwl1ZGwtPmNydGMgPSBjcnRjOworCisJYnVmID0gKGNo YXIgKil1ZGwtPm1vZGVfYnVmOworCisJLyogVGhpcyBmaXJzdCBzZWN0aW9uIGhhcyB0byBkbyB3 aXRoIHNldHRpbmcgdGhlIGJhc2UgYWRkcmVzcyBvbiB0aGUKKwkgKiBjb250cm9sbGVyIGFzc29j aWF0ZWQgd2l0aCB0aGUgZGlzcGxheS4gVGhlcmUgYXJlIDIgYmFzZQorCSAqIHBvaW50ZXJzLCBj dXJyZW50bHksIHdlIG9ubHkgdXNlIHRoZSAxNiBicHAgc2VnbWVudC4KKwkgKi8KKwl3cnB0ciA9 IHVkbF92aWRyZWdfbG9jayhidWYpOworCXdycHRyID0gdWRsX3NldF9jb2xvcl9kZXB0aCh3cnB0 ciwgY29sb3JfZGVwdGgpOworCS8qIHNldCBiYXNlIGZvciAxNmJwcCBzZWdtZW50IHRvIDAgKi8K Kwl3cnB0ciA9IHVkbF9zZXRfYmFzZTE2YnBwKHdycHRyLCAwKTsKKwkvKiBzZXQgYmFzZSBmb3Ig OGJwcCBzZWdtZW50IHRvIGVuZCBvZiBmYiAqLworCXdycHRyID0gdWRsX3NldF9iYXNlOGJwcCh3 cnB0ciwgMiAqIG1vZGUtPnZkaXNwbGF5ICogbW9kZS0+aGRpc3BsYXkpOworCisJd3JwdHIgPSB1 ZGxfc2V0X3ZpZF9jbWRzKHdycHRyLCBtb2RlKTsKKwl3cnB0ciA9IHVkbF9zZXRfYmxhbmsod3Jw dHIsIERSTV9NT0RFX0RQTVNfT04pOworCXdycHRyID0gdWRsX3ZpZHJlZ191bmxvY2sod3JwdHIp OworCisJd3JwdHIgPSB1ZGxfZHVtbXlfcmVuZGVyKHdycHRyKTsKKworCXNwaW5fbG9jaygmdWRs LT5hY3RpdmVfZmJfMTZfbG9jayk7CisJdWRsLT5hY3RpdmVfZmJfMTYgPSBmYjsKKwlzcGluX3Vu bG9jaygmdWRsLT5hY3RpdmVfZmJfMTZfbG9jayk7CisJdWRsLT5tb2RlX2J1Zl9sZW4gPSB3cnB0 ciAtIGJ1ZjsKKworCXVkbF9oYW5kbGVfZGFtYWdlKGZiLCAwLCAwLCBmYi0+d2lkdGgsIGZiLT5o ZWlnaHQpOworCisJdWRsX2NydGNfZHBtcygmcGlwZS0+Y3J0YywgRFJNX01PREVfRFBNU19PTik7 CisKKwljcnRjX3N0YXRlLT5ub192YmxhbmsgPSB0cnVlOworfQorCitzdGF0aWMgdm9pZAordWRs X3NpbXBsZV9kaXNwbGF5X3BpcGVfZGlzYWJsZShzdHJ1Y3QgZHJtX3NpbXBsZV9kaXNwbGF5X3Bp cGUgKnBpcGUpCit7CisJdWRsX2NydGNfZHBtcygmcGlwZS0+Y3J0YywgRFJNX01PREVfRFBNU19P RkYpOworfQorCitzdGF0aWMgaW50Cit1ZGxfc2ltcGxlX2Rpc3BsYXlfcGlwZV9jaGVjayhzdHJ1 Y3QgZHJtX3NpbXBsZV9kaXNwbGF5X3BpcGUgKnBpcGUsCisJCQkgICAgICBzdHJ1Y3QgZHJtX3Bs YW5lX3N0YXRlICpwbGFuZV9zdGF0ZSwKKwkJCSAgICAgIHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAq Y3J0Y19zdGF0ZSkKK3sKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIHZvaWQKK3VkbF9zaW1wbGVf ZGlzcGxheV9waXBlX3VwZGF0ZShzdHJ1Y3QgZHJtX3NpbXBsZV9kaXNwbGF5X3BpcGUgKnBpcGUs CisJCQkgICAgICAgc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqb2xkX3BsYW5lX3N0YXRlKQorewor CXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBwaXBlLT5jcnRjLmRldjsKKwlzdHJ1Y3QgdWRsX2Rl dmljZSAqdWRsID0gZGV2LT5kZXZfcHJpdmF0ZTsKKwlzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpm YiA9IHBpcGUtPnBsYW5lLnN0YXRlLT5mYjsKKworCXNwaW5fbG9jaygmdWRsLT5hY3RpdmVfZmJf MTZfbG9jayk7CisJdWRsLT5hY3RpdmVfZmJfMTYgPSBmYjsKKwlzcGluX3VubG9jaygmdWRsLT5h Y3RpdmVfZmJfMTZfbG9jayk7CisKKwlpZiAoIWZiKQorCQlyZXR1cm47CisKKwl1ZGxfaGFuZGxl X2RhbWFnZShmYiwgMCwgMCwgZmItPndpZHRoLCBmYi0+aGVpZ2h0KTsKK30KKworc3RhdGljIGNv bnN0CitzdHJ1Y3QgZHJtX3NpbXBsZV9kaXNwbGF5X3BpcGVfZnVuY3MgdWRsX3NpbXBsZV9kaXNw bGF5X3BpcGVfZnVuY3MgPSB7CisJLm1vZGVfdmFsaWQgPSB1ZGxfc2ltcGxlX2Rpc3BsYXlfcGlw ZV9tb2RlX3ZhbGlkLAorCS5lbmFibGUgPSB1ZGxfc2ltcGxlX2Rpc3BsYXlfcGlwZV9lbmFibGUs CisJLmRpc2FibGUgPSB1ZGxfc2ltcGxlX2Rpc3BsYXlfcGlwZV9kaXNhYmxlLAorCS5jaGVjayA9 IHVkbF9zaW1wbGVfZGlzcGxheV9waXBlX2NoZWNrLAorCS51cGRhdGUgPSB1ZGxfc2ltcGxlX2Rp c3BsYXlfcGlwZV91cGRhdGUsCisJLnByZXBhcmVfZmIgPSBkcm1fZ2VtX2ZiX3NpbXBsZV9kaXNw bGF5X3BpcGVfcHJlcGFyZV9mYiwKK307CisKKy8qCisgKiBNb2Rlc2V0dGluZworICovCisKIHN0 YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX21vZGVfY29uZmlnX2Z1bmNzIHVkbF9tb2RlX2Z1bmNzID0g ewogCS5mYl9jcmVhdGUgPSB1ZGxfZmJfdXNlcl9mYl9jcmVhdGUsCisJLmF0b21pY19jaGVjayAg PSBkcm1fYXRvbWljX2hlbHBlcl9jaGVjaywKKwkuYXRvbWljX2NvbW1pdCA9IGRybV9hdG9taWNf aGVscGVyX2NvbW1pdCwKIH07CiAKIGludCB1ZGxfbW9kZXNldF9pbml0KHN0cnVjdCBkcm1fZGV2 aWNlICpkZXYpCiB7CisJc2l6ZV90IGZvcm1hdF9jb3VudCA9IEFSUkFZX1NJWkUodWRsX3NpbXBs ZV9kaXNwbGF5X3BpcGVfZm9ybWF0cyk7CisJc3RydWN0IHVkbF9kZXZpY2UgKnVkbCA9IGRldi0+ ZGV2X3ByaXZhdGU7CiAJc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcjsKLQlzdHJ1Y3Qg ZHJtX2VuY29kZXIgKmVuY29kZXI7CiAJaW50IHJldDsKIAogCWRybV9tb2RlX2NvbmZpZ19pbml0 KGRldik7CkBAIC00NDQsMTAgKzU2MCwxNiBAQCBpbnQgdWRsX21vZGVzZXRfaW5pdChzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2KQogCQlnb3RvIGVycl9kcm1fbW9kZV9jb25maWdfY2xlYW51cDsKIAl9 CiAKLQl1ZGxfY3J0Y19pbml0KGRldik7CisJZm9ybWF0X2NvdW50ID0gQVJSQVlfU0laRSh1ZGxf c2ltcGxlX2Rpc3BsYXlfcGlwZV9mb3JtYXRzKTsKIAotCWVuY29kZXIgPSB1ZGxfZW5jb2Rlcl9p bml0KGRldik7Ci0JZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0b3IsIGVuY29k ZXIpOworCXJldCA9IGRybV9zaW1wbGVfZGlzcGxheV9waXBlX2luaXQoZGV2LCAmdWRsLT5kaXNw bGF5X3BpcGUsCisJCQkJCSAgICZ1ZGxfc2ltcGxlX2Rpc3BsYXlfcGlwZV9mdW5jcywKKwkJCQkJ ICAgdWRsX3NpbXBsZV9kaXNwbGF5X3BpcGVfZm9ybWF0cywKKwkJCQkJICAgZm9ybWF0X2NvdW50 LCBOVUxMLCBjb25uZWN0b3IpOworCWlmIChyZXQpCisJCWdvdG8gZXJyX2RybV9tb2RlX2NvbmZp Z19jbGVhbnVwOworCisJZHJtX21vZGVfY29uZmlnX3Jlc2V0KGRldik7CiAKIAlyZXR1cm4gMDsK IApAQCAtNDU2LDE4ICs1NzgsNiBAQCBpbnQgdWRsX21vZGVzZXRfaW5pdChzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2KQogCXJldHVybiByZXQ7CiB9CiAKLXZvaWQgdWRsX21vZGVzZXRfcmVzdG9yZShz dHJ1Y3QgZHJtX2RldmljZSAqZGV2KQotewotCXN0cnVjdCB1ZGxfZGV2aWNlICp1ZGwgPSBkZXYt PmRldl9wcml2YXRlOwotCXN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKmZiOwotCi0JaWYgKCF1ZGwt PmNydGMgfHwgIXVkbC0+Y3J0Yy0+cHJpbWFyeS0+ZmIpCi0JCXJldHVybjsKLQl1ZGxfY3J0Y19j b21taXQodWRsLT5jcnRjKTsKLQlmYiA9IHVkbC0+Y3J0Yy0+cHJpbWFyeS0+ZmI7Ci0JdWRsX2hh bmRsZV9kYW1hZ2UoZmIsIDAsIDAsIGZiLT53aWR0aCwgZmItPmhlaWdodCk7Ci19Ci0KIHZvaWQg dWRsX21vZGVzZXRfY2xlYW51cChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogewogCWRybV9tb2Rl X2NvbmZpZ19jbGVhbnVwKGRldik7Ci0tIAoyLjIzLjAKCl9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVs QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWls bWFuL2xpc3RpbmZvL2RyaS1kZXZlbA==