From mboxrd@z Thu Jan 1 00:00:00 1970 From: Laurent Pinchart Subject: [PATCH v2 3/4] drm/panel: Add and fill drm_panel type field Date: Fri, 23 Aug 2019 22:32:44 +0300 Message-ID: <20190823193245.23876-4-laurent.pinchart@ideasonboard.com> References: <20190823193245.23876-1-laurent.pinchart@ideasonboard.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4F14A6E051 for ; Fri, 23 Aug 2019 19:33:05 +0000 (UTC) In-Reply-To: <20190823193245.23876-1-laurent.pinchart@ideasonboard.com> 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: Alexandre Belloni , Neil Armstrong , Maxime Ripard , =?UTF-8?q?Guido=20G=C3=BCnther?= , Philippe Cornu , Paul Cercueil , Thierry Reding , Sam Ravnborg , Yannick Fertre , Stefan Mavrodiev , Tomi Valkeinen , Ludovic Desroches , Jagan Teki , Robert Chiras , Jonas Karlman , Jyri Sarha , Sean Paul , Jernej Skrabec , Purism Kernel Team , Boris Brezillon , Nicolas Ferre , Vincent Abriou List-Id: dri-devel@lists.freedesktop.org QWRkIGEgdHlwZSBmaWVsZCB0byB0aGUgZHJtX3BhbmVsIHN0cnVjdHVyZSB0byByZXBvcnQgdGhl IHBhbmVsIHR5cGUsCnVzaW5nIERSTV9NT0RFX0NPTk5FQ1RPUl8qIG1hY3JvcyAodGhlIHZhbHVl cyB0aGF0IG1ha2Ugc2Vuc2UgYXJlIExWRFMsCmVEUCwgRFNJIGFuZCBEUEkpLiBUaGlzIHdpbGwg YmUgdXNlZCB0byBpbml0aWFsaXNlIHRoZSBjb3JyZXNwb25kaW5nCmNvbm5lY3RvciB0eXBlLgoK VXBkYXRlIGFsbCBwYW5lbCBkcml2ZXJzIGFjY29yZGluZ2x5LiBUaGUgcGFuZWwtc2ltcGxlIGRy aXZlciBvbmx5CnNwZWNpZmllcyB0aGUgdHlwZSBmb3IgdGhlIGtub3duIHRvIGJlIExWRFMgcGFu ZWxzLCB3aGlsZSBhbGwgb3RoZXIKcGFuZWxzIGFyZSBsZWZ0IGFzIHVua25vd24gYW5kIHdpbGwg YmUgY29udmVydGVkIG9uIGEgY2FzZS1ieS1jYXNlCmJhc2lzIGFzIHRoZXkgYWxsIG5lZWQgdG8g YmUgY2FyZWZ1bGx5IHJldmlld2VkLgoKU2lnbmVkLW9mZi1ieTogTGF1cmVudCBQaW5jaGFydCA8 bGF1cmVudC5waW5jaGFydEBpZGVhc29uYm9hcmQuY29tPgotLS0KQ2hhbmdlcyBzaW5jZSB2MToK Ci0gUmVuYW1lIHRoZSB0eXBlIGZpZWxkIHRvIGNvbm5lY3Rvcl90eXBlCi0gUGFzcyB0aGUgdHlw ZSB0byB0aGUgZHJtX3BhbmVsX2luaXQoKSBmdW5jdGlvbgotIEtlZXAgY29ubmVjdG9yIHR5cGUg YXMgdW5rbm93biBmb3Igbm9uLUxWRFMgcGFuZWxzIGluIHBhbmVsLXNpbXBsZQotIEZsYWcgdGhl IHRvc2hpYmFfbHQwODlhYzI5MDAwIHBhbmVsIGFzIExWRFMgYXMgcmVwb3J0ZWQgYnkgQm9yaXMK LS0tCiBkcml2ZXJzL2dwdS9kcm0vZHJtX3BhbmVsLmMgICAgICAgICAgICAgICAgICAgfCAgNSAr KystCiBkcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtYXJtLXZlcnNhdGlsZS5jICAgfCAgMyAr Ky0KIC4uLi9kcm0vcGFuZWwvcGFuZWwtZmVpeWFuZy1meTA3MDI0ZGkyNmEzMGQuYyB8ICAzICsr LQogZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLWlsaXRlay1pbGk5MzIyLmMgIHwgIDMgKyst CiBkcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtaWxpdGVrLWlsaTk4ODFjLmMgfCAgMyArKy0K IGRyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1pbm5vbHV4LXAwNzl6Y2EuYyB8ICAzICsrLQog Li4uL2dwdS9kcm0vcGFuZWwvcGFuZWwtamRpLWx0MDcwbWUwNTAwMC5jICAgIHwgIDMgKystCiAu Li4vZHJtL3BhbmVsL3BhbmVsLWtpbmdkaXNwbGF5LWtkMDk3ZDA0LmMgICAgfCAgMiArLQogZHJp dmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLWxnLWxiMDM1cTAyLmMgICAgIHwgIDMgKystCiBkcml2 ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtbGctbGc0NTczLmMgICAgICAgfCAgMyArKy0KIGRyaXZl cnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1sdmRzLmMgICAgICAgICAgICB8ICAzICsrLQogZHJpdmVy cy9ncHUvZHJtL3BhbmVsL3BhbmVsLW5lYy1ubDgwNDhobDExLmMgIHwgIDMgKystCiBkcml2ZXJz L2dwdS9kcm0vcGFuZWwvcGFuZWwtbm92YXRlay1udDM5MDE2LmMgfCAgMyArKy0KIC4uLi9kcm0v cGFuZWwvcGFuZWwtb2xpbWV4LWxjZC1vbGludXhpbm8uYyAgICB8ICAzICsrLQogLi4uL2dwdS9k cm0vcGFuZWwvcGFuZWwtb3Jpc2V0ZWNoLW90bTgwMDlhLmMgIHwgIDMgKystCiAuLi4vZHJtL3Bh bmVsL3BhbmVsLW9zZC1vc2QxMDF0MjU4Ny01M3RzLmMgICAgfCAgMiArLQogLi4uL2RybS9wYW5l bC9wYW5lbC1wYW5hc29uaWMtdnZ4MTBmMDM0bjAwLmMgIHwgIDIgKy0KIC4uLi9kcm0vcGFuZWwv cGFuZWwtcmFzcGJlcnJ5cGktdG91Y2hzY3JlZW4uYyB8ICAzICsrLQogZHJpdmVycy9ncHUvZHJt L3BhbmVsL3BhbmVsLXJheWRpdW0tcm02NzE5MS5jIHwgIDMgKystCiBkcml2ZXJzL2dwdS9kcm0v cGFuZWwvcGFuZWwtcmF5ZGl1bS1ybTY4MjAwLmMgfCAgMyArKy0KIC4uLi9kcm0vcGFuZWwvcGFu ZWwtcm9ja3RlY2gtamgwNTduMDA5MDAuYyAgICB8ICAzICsrLQogZHJpdmVycy9ncHUvZHJtL3Bh bmVsL3BhbmVsLXJvbmJvLXJiMDcwZDMwLmMgIHwgIDMgKystCiBkcml2ZXJzL2dwdS9kcm0vcGFu ZWwvcGFuZWwtc2Ftc3VuZy1sZDkwNDAuYyAgfCAgMyArKy0KIGRyaXZlcnMvZ3B1L2RybS9wYW5l bC9wYW5lbC1zYW1zdW5nLXM2ZDE2ZDAuYyB8ICAzICsrLQogZHJpdmVycy9ncHUvZHJtL3BhbmVs L3BhbmVsLXNhbXN1bmctczZlM2hhMi5jIHwgIDMgKystCiAuLi4vZ3B1L2RybS9wYW5lbC9wYW5l bC1zYW1zdW5nLXM2ZTYzajB4MDMuYyAgfCAgMyArKy0KIGRyaXZlcnMvZ3B1L2RybS9wYW5lbC9w YW5lbC1zYW1zdW5nLXM2ZTYzbTAuYyB8ICAzICsrLQogZHJpdmVycy9ncHUvZHJtL3BhbmVsL3Bh bmVsLXNhbXN1bmctczZlOGFhMC5jIHwgIDMgKystCiBkcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFu ZWwtc2Vpa28tNDN3dmYxZy5jICAgfCAgMyArKy0KIC4uLi9ncHUvZHJtL3BhbmVsL3BhbmVsLXNo YXJwLWxxMTAxcjFzeDAxLmMgICB8ICAzICsrLQogLi4uL2dwdS9kcm0vcGFuZWwvcGFuZWwtc2hh cnAtbHMwMzd2N2R3MDEuYyAgIHwgIDMgKystCiAuLi4vZ3B1L2RybS9wYW5lbC9wYW5lbC1zaGFy cC1sczA0M3QxbGUwMS5jICAgfCAgMiArLQogZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLXNp bXBsZS5jICAgICAgICAgIHwgMjYgKysrKysrKysrKysrKysrKysrLQogZHJpdmVycy9ncHUvZHJt L3BhbmVsL3BhbmVsLXNpdHJvbml4LXN0NzcwMS5jIHwgIDMgKystCiAuLi4vZ3B1L2RybS9wYW5l bC9wYW5lbC1zaXRyb25peC1zdDc3ODl2LmMgICAgfCAgMyArKy0KIGRyaXZlcnMvZ3B1L2RybS9w YW5lbC9wYW5lbC1zb255LWFjeDU2NWFrbS5jICB8ICAzICsrLQogZHJpdmVycy9ncHUvZHJtL3Bh bmVsL3BhbmVsLXRwby10ZDAyOHR0ZWMxLmMgIHwgIDMgKystCiBkcml2ZXJzL2dwdS9kcm0vcGFu ZWwvcGFuZWwtdHBvLXRkMDQzbXRlYTEuYyAgfCAgMyArKy0KIGRyaXZlcnMvZ3B1L2RybS9wYW5l bC9wYW5lbC10cG8tdHBnMTEwLmMgICAgICB8ICAzICsrLQogZHJpdmVycy9ncHUvZHJtL3BhbmVs L3BhbmVsLXRydWx5LW50MzU1OTcuYyAgIHwgIDMgKystCiBpbmNsdWRlL2RybS9kcm1fcGFuZWwu aCAgICAgICAgICAgICAgICAgICAgICAgfCAxMiArKysrKysrKy0KIDQxIGZpbGVzIGNoYW5nZWQs IDExMiBpbnNlcnRpb25zKCspLCA0MSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vZHJtX3BhbmVsLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX3BhbmVsLmMKaW5kZXgg YmEyZmFkNGM5NjQ4Li5lZDc5ODVjMDUzNWEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9k cm1fcGFuZWwuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX3BhbmVsLmMKQEAgLTQ2LDE2ICs0 NiwxOSBAQCBzdGF0aWMgTElTVF9IRUFEKHBhbmVsX2xpc3QpOwogICogQHBhbmVsOiBEUk0gcGFu ZWwKICAqIEBkZXY6IHBhcmVudCBkZXZpY2Ugb2YgdGhlIHBhbmVsCiAgKiBAZnVuY3M6IHBhbmVs IG9wZXJhdGlvbnMKKyAqIEBjb25uZWN0b3JfdHlwZTogdGhlIGNvbm5lY3RvciB0eXBlIChEUk1f TU9ERV9DT05ORUNUT1JfKikgY29ycmVzcG9uZGluZyB0bworICoJdGhlIHBhbmVsIGludGVyZmFj ZQogICoKICAqIEluaXRpYWxpemUgdGhlIHBhbmVsIHN0cnVjdHVyZSBmb3Igc3Vic2VxdWVudCBy ZWdpc3RyYXRpb24gd2l0aAogICogZHJtX3BhbmVsX2FkZCgpLgogICovCiB2b2lkIGRybV9wYW5l bF9pbml0KHN0cnVjdCBkcm1fcGFuZWwgKnBhbmVsLCBzdHJ1Y3QgZGV2aWNlICpkZXYsCi0JCSAg ICBjb25zdCBzdHJ1Y3QgZHJtX3BhbmVsX2Z1bmNzICpmdW5jcykKKwkJICAgIGNvbnN0IHN0cnVj dCBkcm1fcGFuZWxfZnVuY3MgKmZ1bmNzLCBpbnQgY29ubmVjdG9yX3R5cGUpCiB7CiAJSU5JVF9M SVNUX0hFQUQoJnBhbmVsLT5saXN0KTsKIAlwYW5lbC0+ZGV2ID0gZGV2OwogCXBhbmVsLT5mdW5j cyA9IGZ1bmNzOworCXBhbmVsLT5jb25uZWN0b3JfdHlwZSA9IGNvbm5lY3Rvcl90eXBlOwogfQog RVhQT1JUX1NZTUJPTChkcm1fcGFuZWxfaW5pdCk7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9wYW5lbC9wYW5lbC1hcm0tdmVyc2F0aWxlLmMgYi9kcml2ZXJzL2dwdS9kcm0vcGFuZWwv cGFuZWwtYXJtLXZlcnNhdGlsZS5jCmluZGV4IGE0MzMzZWQwZjIwYy4uYTA1NzRkYzAzZTE2IDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtYXJtLXZlcnNhdGlsZS5jCisr KyBiL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1hcm0tdmVyc2F0aWxlLmMKQEAgLTM1MCw3 ICszNTAsOCBAQCBzdGF0aWMgaW50IHZlcnNhdGlsZV9wYW5lbF9wcm9iZShzdHJ1Y3QgcGxhdGZv cm1fZGV2aWNlICpwZGV2KQogCQkJZGV2X2luZm8oZGV2LCAicGFuZWwgbW91bnRlZCBvbiBJQjIg ZGF1Z2h0ZXJib2FyZFxuIik7CiAJfQogCi0JZHJtX3BhbmVsX2luaXQoJnZwYW5lbC0+cGFuZWws IGRldiwgJnZlcnNhdGlsZV9wYW5lbF9kcm1fZnVuY3MpOworCWRybV9wYW5lbF9pbml0KCZ2cGFu ZWwtPnBhbmVsLCBkZXYsICZ2ZXJzYXRpbGVfcGFuZWxfZHJtX2Z1bmNzLAorCQkgICAgICAgRFJN X01PREVfQ09OTkVDVE9SX0RQSSk7CiAKIAlyZXR1cm4gZHJtX3BhbmVsX2FkZCgmdnBhbmVsLT5w YW5lbCk7CiB9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtZmVpeWFu Zy1meTA3MDI0ZGkyNmEzMGQuYyBiL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1mZWl5YW5n LWZ5MDcwMjRkaTI2YTMwZC5jCmluZGV4IDdkNWQ3NDU1YmMwMS4uOThmMTg0YjgxMTg3IDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtZmVpeWFuZy1meTA3MDI0ZGkyNmEz MGQuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtZmVpeWFuZy1meTA3MDI0ZGky NmEzMGQuYwpAQCAtMjA0LDcgKzIwNCw4IEBAIHN0YXRpYyBpbnQgZmVpeWFuZ19kc2lfcHJvYmUo c3RydWN0IG1pcGlfZHNpX2RldmljZSAqZHNpKQogCW1pcGlfZHNpX3NldF9kcnZkYXRhKGRzaSwg Y3R4KTsKIAljdHgtPmRzaSA9IGRzaTsKIAotCWRybV9wYW5lbF9pbml0KCZjdHgtPnBhbmVsLCAm ZHNpLT5kZXYsICZmZWl5YW5nX2Z1bmNzKTsKKwlkcm1fcGFuZWxfaW5pdCgmY3R4LT5wYW5lbCwg JmRzaS0+ZGV2LCAmZmVpeWFuZ19mdW5jcywKKwkJICAgICAgIERSTV9NT0RFX0NPTk5FQ1RPUl9E U0kpOwogCiAJY3R4LT5kdmRkID0gZGV2bV9yZWd1bGF0b3JfZ2V0KCZkc2ktPmRldiwgImR2ZGQi KTsKIAlpZiAoSVNfRVJSKGN0eC0+ZHZkZCkpIHsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9wYW5lbC9wYW5lbC1pbGl0ZWstaWxpOTMyMi5jIGIvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3Bh bmVsLWlsaXRlay1pbGk5MzIyLmMKaW5kZXggYWQyNDA1YmFhMGFjLi4yNDk1NWJlYzE5NTggMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1pbGl0ZWstaWxpOTMyMi5jCisr KyBiL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1pbGl0ZWstaWxpOTMyMi5jCkBAIC04OTUs NyArODk1LDggQEAgc3RhdGljIGludCBpbGk5MzIyX3Byb2JlKHN0cnVjdCBzcGlfZGV2aWNlICpz cGkpCiAJCWlsaS0+aW5wdXQgPSBpbGktPmNvbmYtPmlucHV0OwogCX0KIAotCWRybV9wYW5lbF9p bml0KCZpbGktPnBhbmVsLCBkZXYsICZpbGk5MzIyX2RybV9mdW5jcyk7CisJZHJtX3BhbmVsX2lu aXQoJmlsaS0+cGFuZWwsIGRldiwgJmlsaTkzMjJfZHJtX2Z1bmNzLAorCQkgICAgICAgRFJNX01P REVfQ09OTkVDVE9SX0RQSSk7CiAKIAlyZXR1cm4gZHJtX3BhbmVsX2FkZCgmaWxpLT5wYW5lbCk7 CiB9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtaWxpdGVrLWlsaTk4 ODFjLmMgYi9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtaWxpdGVrLWlsaTk4ODFjLmMKaW5k ZXggMWQ3MTRmOTYxYzAwLi5lODc4OWU0NjBhMTYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9wYW5lbC9wYW5lbC1pbGl0ZWstaWxpOTg4MWMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcGFu ZWwvcGFuZWwtaWxpdGVrLWlsaTk4ODFjLmMKQEAgLTQzMyw3ICs0MzMsOCBAQCBzdGF0aWMgaW50 IGlsaTk4ODFjX2RzaV9wcm9iZShzdHJ1Y3QgbWlwaV9kc2lfZGV2aWNlICpkc2kpCiAJbWlwaV9k c2lfc2V0X2RydmRhdGEoZHNpLCBjdHgpOwogCWN0eC0+ZHNpID0gZHNpOwogCi0JZHJtX3BhbmVs X2luaXQoJmN0eC0+cGFuZWwsICZkc2ktPmRldiwgJmlsaTk4ODFjX2Z1bmNzKTsKKwlkcm1fcGFu ZWxfaW5pdCgmY3R4LT5wYW5lbCwgJmRzaS0+ZGV2LCAmaWxpOTg4MWNfZnVuY3MsCisJCSAgICAg ICBEUk1fTU9ERV9DT05ORUNUT1JfRFNJKTsKIAogCWN0eC0+cG93ZXIgPSBkZXZtX3JlZ3VsYXRv cl9nZXQoJmRzaS0+ZGV2LCAicG93ZXIiKTsKIAlpZiAoSVNfRVJSKGN0eC0+cG93ZXIpKSB7CmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtaW5ub2x1eC1wMDc5emNhLmMg Yi9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtaW5ub2x1eC1wMDc5emNhLmMKaW5kZXggMjA1 NGFmYzMxZjIwLi40NmJmZWI5ODJiMDYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9wYW5l bC9wYW5lbC1pbm5vbHV4LXAwNzl6Y2EuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFu ZWwtaW5ub2x1eC1wMDc5emNhLmMKQEAgLTQ4Nyw3ICs0ODcsOCBAQCBzdGF0aWMgaW50IGlubm9s dXhfcGFuZWxfYWRkKHN0cnVjdCBtaXBpX2RzaV9kZXZpY2UgKmRzaSwKIAlpZiAoSVNfRVJSKGlu bm9sdXgtPmJhY2tsaWdodCkpCiAJCXJldHVybiBQVFJfRVJSKGlubm9sdXgtPmJhY2tsaWdodCk7 CiAKLQlkcm1fcGFuZWxfaW5pdCgmaW5ub2x1eC0+YmFzZSwgZGV2LCAmaW5ub2x1eF9wYW5lbF9m dW5jcyk7CisJZHJtX3BhbmVsX2luaXQoJmlubm9sdXgtPmJhc2UsIGRldiwgJmlubm9sdXhfcGFu ZWxfZnVuY3MKKwkJICAgICAgIERSTV9NT0RFX0NPTk5FQ1RPUl9EU0kpOwogCiAJZXJyID0gZHJt X3BhbmVsX2FkZCgmaW5ub2x1eC0+YmFzZSk7CiAJaWYgKGVyciA8IDApCmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtamRpLWx0MDcwbWUwNTAwMC5jIGIvZHJpdmVycy9n cHUvZHJtL3BhbmVsL3BhbmVsLWpkaS1sdDA3MG1lMDUwMDAuYwppbmRleCA3YmZkYmZiYzg2OGUu LjU2MzY0YTkzZjBiOCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLWpk aS1sdDA3MG1lMDUwMDAuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtamRpLWx0 MDcwbWUwNTAwMC5jCkBAIC00MzcsNyArNDM3LDggQEAgc3RhdGljIGludCBqZGlfcGFuZWxfYWRk KHN0cnVjdCBqZGlfcGFuZWwgKmpkaSkKIAkJcmV0dXJuIHJldDsKIAl9CiAKLQlkcm1fcGFuZWxf aW5pdCgmamRpLT5iYXNlLCAmamRpLT5kc2ktPmRldiwgJmpkaV9wYW5lbF9mdW5jcyk7CisJZHJt X3BhbmVsX2luaXQoJmpkaS0+YmFzZSwgJmpkaS0+ZHNpLT5kZXYsICZqZGlfcGFuZWxfZnVuY3Ms CisJCSAgICAgICBEUk1fTU9ERV9DT05ORUNUT1JfRFNJKTsKIAogCXJldCA9IGRybV9wYW5lbF9h ZGQoJmpkaS0+YmFzZSk7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5l bC1raW5nZGlzcGxheS1rZDA5N2QwNC5jIGIvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLWtp bmdkaXNwbGF5LWtkMDk3ZDA0LmMKaW5kZXggYTQ3ODg1YTFhOGFhLi40NWY5NjU1NmVjOGMgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1raW5nZGlzcGxheS1rZDA5N2Qw NC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1raW5nZGlzcGxheS1rZDA5N2Qw NC5jCkBAIC0zOTIsNyArMzkyLDcgQEAgc3RhdGljIGludCBraW5nZGlzcGxheV9wYW5lbF9hZGQo c3RydWN0IGtpbmdkaXNwbGF5X3BhbmVsICpraW5nZGlzcGxheSkKIAkJcmV0dXJuIFBUUl9FUlIo a2luZ2Rpc3BsYXktPmJhY2tsaWdodCk7CiAKIAlkcm1fcGFuZWxfaW5pdCgma2luZ2Rpc3BsYXkt PmJhc2UsICZraW5nZGlzcGxheS0+bGluay0+ZGV2LAotCQkgICAgICAgJmtpbmdkaXNwbGF5X3Bh bmVsX2Z1bmNzKTsKKwkJICAgICAgICZraW5nZGlzcGxheV9wYW5lbF9mdW5jcywgRFJNX01PREVf Q09OTkVDVE9SX0RTSSk7CiAKIAlyZXR1cm4gZHJtX3BhbmVsX2FkZCgma2luZ2Rpc3BsYXktPmJh c2UpOwogfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLWxnLWxiMDM1 cTAyLmMgYi9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtbGctbGIwMzVxMDIuYwppbmRleCAy OGMzMjA1ZGY0ODIuLmY5ODRhNTE4OWZiZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3Bh bmVsL3BhbmVsLWxnLWxiMDM1cTAyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVs LWxnLWxiMDM1cTAyLmMKQEAgLTE5Niw3ICsxOTYsOCBAQCBzdGF0aWMgaW50IGxiMDM1cTAyX3By b2JlKHN0cnVjdCBzcGlfZGV2aWNlICpzcGkpCiAJaWYgKHJldCA8IDApCiAJCXJldHVybiByZXQ7 CiAKLQlkcm1fcGFuZWxfaW5pdCgmbGNkLT5wYW5lbCwgJmxjZC0+c3BpLT5kZXYsICZsYjAzNXEw Ml9mdW5jcyk7CisJZHJtX3BhbmVsX2luaXQoJmxjZC0+cGFuZWwsICZsY2QtPnNwaS0+ZGV2LCAm bGIwMzVxMDJfZnVuY3MsCisJCSAgICAgICBEUk1fTU9ERV9DT05ORUNUT1JfRFBJKTsKIAogCXJl dHVybiBkcm1fcGFuZWxfYWRkKCZsY2QtPnBhbmVsKTsKIH0KZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9wYW5lbC9wYW5lbC1sZy1sZzQ1NzMuYyBiL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9w YW5lbC1sZy1sZzQ1NzMuYwppbmRleCA2MDhmMmRlOTE2NjIuLmRiNDg2NWE0YzJiOSAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLWxnLWxnNDU3My5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1sZy1sZzQ1NzMuYwpAQCAtMjU5LDcgKzI1OSw4IEBAIHN0 YXRpYyBpbnQgbGc0NTczX3Byb2JlKHN0cnVjdCBzcGlfZGV2aWNlICpzcGkpCiAJCXJldHVybiBy ZXQ7CiAJfQogCi0JZHJtX3BhbmVsX2luaXQoJmN0eC0+cGFuZWwsICZzcGktPmRldiwgJmxnNDU3 M19kcm1fZnVuY3MpOworCWRybV9wYW5lbF9pbml0KCZjdHgtPnBhbmVsLCAmc3BpLT5kZXYsICZs ZzQ1NzNfZHJtX2Z1bmNzLAorCQkgICAgICAgRFJNX01PREVfQ09OTkVDVE9SX0RQSSk7CiAKIAly ZXR1cm4gZHJtX3BhbmVsX2FkZCgmY3R4LT5wYW5lbCk7CiB9CmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vcGFuZWwvcGFuZWwtbHZkcy5jIGIvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVs LWx2ZHMuYwppbmRleCAzZGMxYWMyYTZiMDMuLmNhYjNmYjQxNzdlMyAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLWx2ZHMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcGFu ZWwvcGFuZWwtbHZkcy5jCkBAIC0yNjAsNyArMjYwLDggQEAgc3RhdGljIGludCBwYW5lbF9sdmRz X3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpCiAJICovCiAKIAkvKiBSZWdpc3Rl ciB0aGUgcGFuZWwuICovCi0JZHJtX3BhbmVsX2luaXQoJmx2ZHMtPnBhbmVsLCBsdmRzLT5kZXYs ICZwYW5lbF9sdmRzX2Z1bmNzKTsKKwlkcm1fcGFuZWxfaW5pdCgmbHZkcy0+cGFuZWwsIGx2ZHMt PmRldiwgJnBhbmVsX2x2ZHNfZnVuY3MsCisJCSAgICAgICBEUk1fTU9ERV9DT05ORUNUT1JfTFZE Uyk7CiAKIAlyZXQgPSBkcm1fcGFuZWxfYWRkKCZsdmRzLT5wYW5lbCk7CiAJaWYgKHJldCA8IDAp CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtbmVjLW5sODA0OGhsMTEu YyBiL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1uZWMtbmw4MDQ4aGwxMS5jCmluZGV4IGI2 NzYzNmZkYmMyMS4uYzRiYzdmYTg1ZmFkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vcGFu ZWwvcGFuZWwtbmVjLW5sODA0OGhsMTEuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFu ZWwtbmVjLW5sODA0OGhsMTEuYwpAQCAtMjA1LDcgKzIwNSw4IEBAIHN0YXRpYyBpbnQgbmw4MDQ4 X3Byb2JlKHN0cnVjdCBzcGlfZGV2aWNlICpzcGkpCiAJaWYgKHJldCA8IDApCiAJCXJldHVybiBy ZXQ7CiAKLQlkcm1fcGFuZWxfaW5pdCgmbGNkLT5wYW5lbCwgJmxjZC0+c3BpLT5kZXYsICZubDgw NDhfZnVuY3MpOworCWRybV9wYW5lbF9pbml0KCZsY2QtPnBhbmVsLCAmbGNkLT5zcGktPmRldiwg Jm5sODA0OF9mdW5jcywKKwkJICAgICAgIERSTV9NT0RFX0NPTk5FQ1RPUl9EUEkpOwogCiAJcmV0 dXJuIGRybV9wYW5lbF9hZGQoJmxjZC0+cGFuZWwpOwogfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL3BhbmVsL3BhbmVsLW5vdmF0ZWstbnQzOTAxNi5jIGIvZHJpdmVycy9ncHUvZHJtL3Bh bmVsL3BhbmVsLW5vdmF0ZWstbnQzOTAxNi5jCmluZGV4IDY0Y2ZlMTExYWFhZC4uNjBjY2VkY2U1 MzBjIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtbm92YXRlay1udDM5 MDE2LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLW5vdmF0ZWstbnQzOTAxNi5j CkBAIC0yOTIsNyArMjkyLDggQEAgc3RhdGljIGludCBudDM5MDE2X3Byb2JlKHN0cnVjdCBzcGlf ZGV2aWNlICpzcGkpCiAJCXJldHVybiBlcnI7CiAJfQogCi0JZHJtX3BhbmVsX2luaXQoJnBhbmVs LT5kcm1fcGFuZWwsIGRldiwgJm50MzkwMTZfZnVuY3MpOworCWRybV9wYW5lbF9pbml0KCZwYW5l bC0+ZHJtX3BhbmVsLCBkZXYsICZudDM5MDE2X2Z1bmNzLAorCQkgICAgICAgRFJNX01PREVfQ09O TkVDVE9SX0RQSSk7CiAKIAllcnIgPSBkcm1fcGFuZWxfYWRkKCZwYW5lbC0+ZHJtX3BhbmVsKTsK IAlpZiAoZXJyIDwgMCkgewpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVs LW9saW1leC1sY2Qtb2xpbnV4aW5vLmMgYi9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtb2xp bWV4LWxjZC1vbGludXhpbm8uYwppbmRleCBmMmQ2YTRlYzAwNDYuLmYyYTcyZWU2ZWUwNyAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLW9saW1leC1sY2Qtb2xpbnV4aW5v LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLW9saW1leC1sY2Qtb2xpbnV4aW5v LmMKQEAgLTI4OCw3ICsyODgsOCBAQCBzdGF0aWMgaW50IGxjZF9vbGludXhpbm9fcHJvYmUoc3Ry dWN0IGkyY19jbGllbnQgKmNsaWVudCwKIAlpZiAoSVNfRVJSKGxjZC0+YmFja2xpZ2h0KSkKIAkJ cmV0dXJuIFBUUl9FUlIobGNkLT5iYWNrbGlnaHQpOwogCi0JZHJtX3BhbmVsX2luaXQoJmxjZC0+ cGFuZWwsIGRldiwgJmxjZF9vbGludXhpbm9fZnVuY3MpOworCWRybV9wYW5lbF9pbml0KCZsY2Qt PnBhbmVsLCBkZXYsICZsY2Rfb2xpbnV4aW5vX2Z1bmNzLAorCQkgICAgICAgRFJNX01PREVfQ09O TkVDVE9SX0RQSSk7CiAKIAlyZXR1cm4gZHJtX3BhbmVsX2FkZCgmbGNkLT5wYW5lbCk7CiB9CmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtb3Jpc2V0ZWNoLW90bTgwMDlh LmMgYi9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtb3Jpc2V0ZWNoLW90bTgwMDlhLmMKaW5k ZXggOGI2MGQ1ZTRkNzc1Li5iZjFmOTI4YjIxNWYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9wYW5lbC9wYW5lbC1vcmlzZXRlY2gtb3RtODAwOWEuYworKysgYi9kcml2ZXJzL2dwdS9kcm0v cGFuZWwvcGFuZWwtb3Jpc2V0ZWNoLW90bTgwMDlhLmMKQEAgLTQ1NSw3ICs0NTUsOCBAQCBzdGF0 aWMgaW50IG90bTgwMDlhX3Byb2JlKHN0cnVjdCBtaXBpX2RzaV9kZXZpY2UgKmRzaSkKIAlkc2kt Pm1vZGVfZmxhZ3MgPSBNSVBJX0RTSV9NT0RFX1ZJREVPIHwgTUlQSV9EU0lfTU9ERV9WSURFT19C VVJTVCB8CiAJCQkgIE1JUElfRFNJX01PREVfTFBNOwogCi0JZHJtX3BhbmVsX2luaXQoJmN0eC0+ cGFuZWwsIGRldiwgJm90bTgwMDlhX2RybV9mdW5jcyk7CisJZHJtX3BhbmVsX2luaXQoJmN0eC0+ cGFuZWwsIGRldiwgJm90bTgwMDlhX2RybV9mdW5jcywKKwkJICAgICAgIERSTV9NT0RFX0NPTk5F Q1RPUl9EU0kpOwogCiAJY3R4LT5ibF9kZXYgPSBkZXZtX2JhY2tsaWdodF9kZXZpY2VfcmVnaXN0 ZXIoZGV2LCBkZXZfbmFtZShkZXYpLAogCQkJCQkJICAgICBkc2ktPmhvc3QtPmRldiwgY3R4LApk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLW9zZC1vc2QxMDF0MjU4Ny01 M3RzLmMgYi9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtb3NkLW9zZDEwMXQyNTg3LTUzdHMu YwppbmRleCAzOGYxMTRiMDNiODkuLjJiNDA5MTM4OTlkOCAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL3BhbmVsL3BhbmVsLW9zZC1vc2QxMDF0MjU4Ny01M3RzLmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL3BhbmVsL3BhbmVsLW9zZC1vc2QxMDF0MjU4Ny01M3RzLmMKQEAgLTE2Nyw3ICsxNjcs NyBAQCBzdGF0aWMgaW50IG9zZDEwMXQyNTg3X3BhbmVsX2FkZChzdHJ1Y3Qgb3NkMTAxdDI1ODdf cGFuZWwgKm9zZDEwMXQyNTg3KQogCQlyZXR1cm4gUFRSX0VSUihvc2QxMDF0MjU4Ny0+YmFja2xp Z2h0KTsKIAogCWRybV9wYW5lbF9pbml0KCZvc2QxMDF0MjU4Ny0+YmFzZSwgJm9zZDEwMXQyNTg3 LT5kc2ktPmRldiwKLQkJICAgICAgICZvc2QxMDF0MjU4N19wYW5lbF9mdW5jcyk7CisJCSAgICAg ICAmb3NkMTAxdDI1ODdfcGFuZWxfZnVuY3MsIERSTV9NT0RFX0NPTk5FQ1RPUl9EU0kpOwogCiAJ cmV0dXJuIGRybV9wYW5lbF9hZGQoJm9zZDEwMXQyNTg3LT5iYXNlKTsKIH0KZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1wYW5hc29uaWMtdnZ4MTBmMDM0bjAwLmMgYi9k cml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtcGFuYXNvbmljLXZ2eDEwZjAzNG4wMC5jCmluZGV4 IDYwMzViZjQ1ODA3NC4uNjY0NjA1MDcxZDM0IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v cGFuZWwvcGFuZWwtcGFuYXNvbmljLXZ2eDEwZjAzNG4wMC5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9wYW5lbC9wYW5lbC1wYW5hc29uaWMtdnZ4MTBmMDM0bjAwLmMKQEAgLTIyNCw3ICsyMjQsNyBA QCBzdGF0aWMgaW50IHd1eGdhX250X3BhbmVsX2FkZChzdHJ1Y3Qgd3V4Z2FfbnRfcGFuZWwgKnd1 eGdhX250KQogCX0KIAogCWRybV9wYW5lbF9pbml0KCZ3dXhnYV9udC0+YmFzZSwgJnd1eGdhX250 LT5kc2ktPmRldiwKLQkJICAgICAgICZ3dXhnYV9udF9wYW5lbF9mdW5jcyk7CisJCSAgICAgICAm d3V4Z2FfbnRfcGFuZWxfZnVuY3MsIERSTV9NT0RFX0NPTk5FQ1RPUl9EU0kpOwogCiAJcmV0ID0g ZHJtX3BhbmVsX2FkZCgmd3V4Z2FfbnQtPmJhc2UpOwogCWlmIChyZXQgPCAwKQpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLXJhc3BiZXJyeXBpLXRvdWNoc2NyZWVuLmMg Yi9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtcmFzcGJlcnJ5cGktdG91Y2hzY3JlZW4uYwpp bmRleCAyM2E4MDE0MjdlNDIuLjA5ODI0ZTkyZmM3OCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL3BhbmVsL3BhbmVsLXJhc3BiZXJyeXBpLXRvdWNoc2NyZWVuLmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL3BhbmVsL3BhbmVsLXJhc3BiZXJyeXBpLXRvdWNoc2NyZWVuLmMKQEAgLTQyNiw3ICs0 MjYsOCBAQCBzdGF0aWMgaW50IHJwaV90b3VjaHNjcmVlbl9wcm9iZShzdHJ1Y3QgaTJjX2NsaWVu dCAqaTJjLAogCQlyZXR1cm4gUFRSX0VSUih0cy0+ZHNpKTsKIAl9CiAKLQlkcm1fcGFuZWxfaW5p dCgmdHMtPmJhc2UsIGRldiwgJnJwaV90b3VjaHNjcmVlbl9mdW5jcyk7CisJZHJtX3BhbmVsX2lu aXQoJnRzLT5iYXNlLCBkZXYsICZycGlfdG91Y2hzY3JlZW5fZnVuY3MsCisJCSAgICAgICBEUk1f TU9ERV9DT05ORUNUT1JfRFNJKTsKIAogCS8qIFRoaXMgYXBwZWFycyBsYXN0LCBhcyBpdCdzIHdo YXQgd2lsbCB1bmJsb2NrIHRoZSBEU0kgaG9zdAogCSAqIGRyaXZlcidzIGNvbXBvbmVudCBiaW5k IGZ1bmN0aW9uLgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLXJheWRp dW0tcm02NzE5MS5jIGIvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLXJheWRpdW0tcm02NzE5 MS5jCmluZGV4IGY4MmExZjY5ZjEzYi4uZmQ2N2ZjNjE4NWM0IDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vcGFuZWwvcGFuZWwtcmF5ZGl1bS1ybTY3MTkxLmMKKysrIGIvZHJpdmVycy9ncHUv ZHJtL3BhbmVsL3BhbmVsLXJheWRpdW0tcm02NzE5MS5jCkBAIC02MDYsNyArNjA2LDggQEAgc3Rh dGljIGludCByYWRfcGFuZWxfcHJvYmUoc3RydWN0IG1pcGlfZHNpX2RldmljZSAqZHNpKQogCWlm IChyZXQpCiAJCXJldHVybiByZXQ7CiAKLQlkcm1fcGFuZWxfaW5pdCgmcGFuZWwtPnBhbmVsLCBk ZXYsICZyYWRfcGFuZWxfZnVuY3MpOworCWRybV9wYW5lbF9pbml0KCZwYW5lbC0+cGFuZWwsIGRl diwgJnJhZF9wYW5lbF9mdW5jcywKKwkJICAgICAgIERSTV9NT0RFX0NPTk5FQ1RPUl9EU0kpOwog CWRldl9zZXRfZHJ2ZGF0YShkZXYsIHBhbmVsKTsKIAogCXJldCA9IGRybV9wYW5lbF9hZGQoJnBh bmVsLT5wYW5lbCk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtcmF5 ZGl1bS1ybTY4MjAwLmMgYi9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtcmF5ZGl1bS1ybTY4 MjAwLmMKaW5kZXggZjAwNGI3OGZiOGJjLi45OTRlODU1NzIxZjQgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1yYXlkaXVtLXJtNjgyMDAuYworKysgYi9kcml2ZXJzL2dw dS9kcm0vcGFuZWwvcGFuZWwtcmF5ZGl1bS1ybTY4MjAwLmMKQEAgLTQwNCw3ICs0MDQsOCBAQCBz dGF0aWMgaW50IHJtNjgyMDBfcHJvYmUoc3RydWN0IG1pcGlfZHNpX2RldmljZSAqZHNpKQogCWRz aS0+bW9kZV9mbGFncyA9IE1JUElfRFNJX01PREVfVklERU8gfCBNSVBJX0RTSV9NT0RFX1ZJREVP X0JVUlNUIHwKIAkJCSAgTUlQSV9EU0lfTU9ERV9MUE07CiAKLQlkcm1fcGFuZWxfaW5pdCgmY3R4 LT5wYW5lbCwgZGV2LCAmcm02ODIwMF9kcm1fZnVuY3MpOworCWRybV9wYW5lbF9pbml0KCZjdHgt PnBhbmVsLCBkZXYsICZybTY4MjAwX2RybV9mdW5jcywKKwkJICAgICAgIERSTV9NT0RFX0NPTk5F Q1RPUl9EU0kpOwogCiAJZHJtX3BhbmVsX2FkZCgmY3R4LT5wYW5lbCk7CiAKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1yb2NrdGVjaC1qaDA1N24wMDkwMC5jIGIvZHJp dmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLXJvY2t0ZWNoLWpoMDU3bjAwOTAwLmMKaW5kZXggZDdm NTYzNzRmMmYxLi4zMTIzNGI3OWQzYjEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9wYW5l bC9wYW5lbC1yb2NrdGVjaC1qaDA1N24wMDkwMC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9wYW5l bC9wYW5lbC1yb2NrdGVjaC1qaDA1N24wMDkwMC5jCkBAIC0zNDMsNyArMzQzLDggQEAgc3RhdGlj IGludCBqaDA1N25fcHJvYmUoc3RydWN0IG1pcGlfZHNpX2RldmljZSAqZHNpKQogCQlyZXR1cm4g cmV0OwogCX0KIAotCWRybV9wYW5lbF9pbml0KCZjdHgtPnBhbmVsLCBkZXYsICZqaDA1N25fZHJt X2Z1bmNzKTsKKwlkcm1fcGFuZWxfaW5pdCgmY3R4LT5wYW5lbCwgZGV2LCAmamgwNTduX2RybV9m dW5jcywKKwkJICAgICAgIERSTV9NT0RFX0NPTk5FQ1RPUl9EU0kpOwogCiAJZHJtX3BhbmVsX2Fk ZCgmY3R4LT5wYW5lbCk7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5l bC1yb25iby1yYjA3MGQzMC5jIGIvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLXJvbmJvLXJi MDcwZDMwLmMKaW5kZXggODcwOGZiYmU3NjM3Li4xNzBhNWNkYTIxYjkgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1yb25iby1yYjA3MGQzMC5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9wYW5lbC9wYW5lbC1yb25iby1yYjA3MGQzMC5jCkBAIC0xNzMsNyArMTczLDggQEAg c3RhdGljIGludCByYjA3MGQzMF9wYW5lbF9kc2lfcHJvYmUoc3RydWN0IG1pcGlfZHNpX2Rldmlj ZSAqZHNpKQogCW1pcGlfZHNpX3NldF9kcnZkYXRhKGRzaSwgY3R4KTsKIAljdHgtPmRzaSA9IGRz aTsKIAotCWRybV9wYW5lbF9pbml0KCZjdHgtPnBhbmVsLCAmZHNpLT5kZXYsICZyYjA3MGQzMF9w YW5lbF9mdW5jcyk7CisJZHJtX3BhbmVsX2luaXQoJmN0eC0+cGFuZWwsICZkc2ktPmRldiwgJnJi MDcwZDMwX3BhbmVsX2Z1bmNzLAorCQkgICAgICAgRFJNX01PREVfQ09OTkVDVE9SX0RTSSk7CiAK IAljdHgtPmdwaW9zLnJlc2V0ID0gZGV2bV9ncGlvZF9nZXQoJmRzaS0+ZGV2LCAicmVzZXQiLCBH UElPRF9PVVRfTE9XKTsKIAlpZiAoSVNfRVJSKGN0eC0+Z3Bpb3MucmVzZXQpKSB7CmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtc2Ftc3VuZy1sZDkwNDAuYyBiL2RyaXZl cnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1zYW1zdW5nLWxkOTA0MC5jCmluZGV4IDcxYTI5MmRiZWM0 Ny4uMjUwODA5YmEzN2M3IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwt c2Ftc3VuZy1sZDkwNDAuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtc2Ftc3Vu Zy1sZDkwNDAuYwpAQCAtMzUxLDcgKzM1MSw4IEBAIHN0YXRpYyBpbnQgbGQ5MDQwX3Byb2JlKHN0 cnVjdCBzcGlfZGV2aWNlICpzcGkpCiAJCXJldHVybiByZXQ7CiAJfQogCi0JZHJtX3BhbmVsX2lu aXQoJmN0eC0+cGFuZWwsIGRldiwgJmxkOTA0MF9kcm1fZnVuY3MpOworCWRybV9wYW5lbF9pbml0 KCZjdHgtPnBhbmVsLCBkZXYsICZsZDkwNDBfZHJtX2Z1bmNzLAorCQkgICAgICAgRFJNX01PREVf Q09OTkVDVE9SX0RQSSk7CiAKIAlyZXR1cm4gZHJtX3BhbmVsX2FkZCgmY3R4LT5wYW5lbCk7CiB9 CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtc2Ftc3VuZy1zNmQxNmQw LmMgYi9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtc2Ftc3VuZy1zNmQxNmQwLmMKaW5kZXgg NGQyNWM5NmU4NDJjLi5lM2EwMzk3ZTk1M2UgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9w YW5lbC9wYW5lbC1zYW1zdW5nLXM2ZDE2ZDAuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcGFuZWwv cGFuZWwtc2Ftc3VuZy1zNmQxNmQwLmMKQEAgLTIxNSw3ICsyMTUsOCBAQCBzdGF0aWMgaW50IHM2 ZDE2ZDBfcHJvYmUoc3RydWN0IG1pcGlfZHNpX2RldmljZSAqZHNpKQogCQlyZXR1cm4gcmV0Owog CX0KIAotCWRybV9wYW5lbF9pbml0KCZzNi0+cGFuZWwsIGRldiwgJnM2ZDE2ZDBfZHJtX2Z1bmNz KTsKKwlkcm1fcGFuZWxfaW5pdCgmczYtPnBhbmVsLCBkZXYsICZzNmQxNmQwX2RybV9mdW5jcywK KwkJICAgICAgIERSTV9NT0RFX0NPTk5FQ1RPUl9EU0kpOwogCiAJcmV0ID0gZHJtX3BhbmVsX2Fk ZCgmczYtPnBhbmVsKTsKIAlpZiAocmV0IDwgMCkKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9wYW5lbC9wYW5lbC1zYW1zdW5nLXM2ZTNoYTIuYyBiL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9w YW5lbC1zYW1zdW5nLXM2ZTNoYTIuYwppbmRleCA0MmEzYWFhYjQ5ZWIuLjkzOGFiNzJjNTU0MCAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLXNhbXN1bmctczZlM2hhMi5j CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1zYW1zdW5nLXM2ZTNoYTIuYwpAQCAt NzMyLDcgKzczMiw4IEBAIHN0YXRpYyBpbnQgczZlM2hhMl9wcm9iZShzdHJ1Y3QgbWlwaV9kc2lf ZGV2aWNlICpkc2kpCiAJY3R4LT5ibF9kZXYtPnByb3BzLmJyaWdodG5lc3MgPSBTNkUzSEEyX0RF RkFVTFRfQlJJR0hUTkVTUzsKIAljdHgtPmJsX2Rldi0+cHJvcHMucG93ZXIgPSBGQl9CTEFOS19Q T1dFUkRPV047CiAKLQlkcm1fcGFuZWxfaW5pdCgmY3R4LT5wYW5lbCwgZGV2LCAmczZlM2hhMl9k cm1fZnVuY3MpOworCWRybV9wYW5lbF9pbml0KCZjdHgtPnBhbmVsLCBkZXYsICZzNmUzaGEyX2Ry bV9mdW5jcywKKwkJICAgICAgIERSTV9NT0RFX0NPTk5FQ1RPUl9EU0kpOwogCiAJcmV0ID0gZHJt X3BhbmVsX2FkZCgmY3R4LT5wYW5lbCk7CiAJaWYgKHJldCA8IDApCmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtc2Ftc3VuZy1zNmU2M2oweDAzLmMgYi9kcml2ZXJzL2dw dS9kcm0vcGFuZWwvcGFuZWwtc2Ftc3VuZy1zNmU2M2oweDAzLmMKaW5kZXggYjRkODc5YmY0ZDAz Li5hNjA2MzVlOTIyNmQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1z YW1zdW5nLXM2ZTYzajB4MDMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtc2Ft c3VuZy1zNmU2M2oweDAzLmMKQEAgLTQ2Niw3ICs0NjYsOCBAQCBzdGF0aWMgaW50IHM2ZTYzajB4 MDNfcHJvYmUoc3RydWN0IG1pcGlfZHNpX2RldmljZSAqZHNpKQogCQlyZXR1cm4gUFRSX0VSUihj dHgtPnJlc2V0X2dwaW8pOwogCX0KIAotCWRybV9wYW5lbF9pbml0KCZjdHgtPnBhbmVsLCBkZXYs ICZzNmU2M2oweDAzX2Z1bmNzKTsKKwlkcm1fcGFuZWxfaW5pdCgmY3R4LT5wYW5lbCwgZGV2LCAm czZlNjNqMHgwM19mdW5jcywKKwkJICAgICAgIERSTV9NT0RFX0NPTk5FQ1RPUl9EU0kpOwogCiAJ Y3R4LT5ibF9kZXYgPSBiYWNrbGlnaHRfZGV2aWNlX3JlZ2lzdGVyKCJzNmU2M2oweDAzIiwgZGV2 LCBjdHgsCiAJCQkJCQkmczZlNjNqMHgwM19ibF9vcHMsIE5VTEwpOwpkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLXNhbXN1bmctczZlNjNtMC5jIGIvZHJpdmVycy9ncHUv ZHJtL3BhbmVsL3BhbmVsLXNhbXN1bmctczZlNjNtMC5jCmluZGV4IDYxMjU5YzI4MzNhYi4uYmEw MWFmMGIxNGZkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtc2Ftc3Vu Zy1zNmU2M20wLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLXNhbXN1bmctczZl NjNtMC5jCkBAIC00NzMsNyArNDczLDggQEAgc3RhdGljIGludCBzNmU2M20wX3Byb2JlKHN0cnVj dCBzcGlfZGV2aWNlICpzcGkpCiAJCXJldHVybiByZXQ7CiAJfQogCi0JZHJtX3BhbmVsX2luaXQo JmN0eC0+cGFuZWwsIGRldiwgJnM2ZTYzbTBfZHJtX2Z1bmNzKTsKKwlkcm1fcGFuZWxfaW5pdCgm Y3R4LT5wYW5lbCwgZGV2LCAmczZlNjNtMF9kcm1fZnVuY3MsCisJCSAgICAgICBEUk1fTU9ERV9D T05ORUNUT1JfRFBJKTsKIAogCXJldCA9IHM2ZTYzbTBfYmFja2xpZ2h0X3JlZ2lzdGVyKGN0eCk7 CiAJaWYgKHJldCA8IDApCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwt c2Ftc3VuZy1zNmU4YWEwLmMgYi9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtc2Ftc3VuZy1z NmU4YWEwLmMKaW5kZXggMzVkYmZmYWJkNTI2Li5kYmNlZDY1MDEyMDQgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1zYW1zdW5nLXM2ZThhYTAuYworKysgYi9kcml2ZXJz L2dwdS9kcm0vcGFuZWwvcGFuZWwtc2Ftc3VuZy1zNmU4YWEwLmMKQEAgLTEwMTcsNyArMTAxNyw4 IEBAIHN0YXRpYyBpbnQgczZlOGFhMF9wcm9iZShzdHJ1Y3QgbWlwaV9kc2lfZGV2aWNlICpkc2kp CiAKIAljdHgtPmJyaWdodG5lc3MgPSBHQU1NQV9MRVZFTF9OVU0gLSAxOwogCi0JZHJtX3BhbmVs X2luaXQoJmN0eC0+cGFuZWwsIGRldiwgJnM2ZThhYTBfZHJtX2Z1bmNzKTsKKwlkcm1fcGFuZWxf aW5pdCgmY3R4LT5wYW5lbCwgZGV2LCAmczZlOGFhMF9kcm1fZnVuY3MsCisJCSAgICAgICBEUk1f TU9ERV9DT05ORUNUT1JfRFNJKTsKIAogCXJldCA9IGRybV9wYW5lbF9hZGQoJmN0eC0+cGFuZWwp OwogCWlmIChyZXQgPCAwKQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVs LXNlaWtvLTQzd3ZmMWcuYyBiL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1zZWlrby00M3d2 ZjFnLmMKaW5kZXggMDgzM2QwYzAzYWRjLi5iMzYxOWJhNDQzYmQgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1zZWlrby00M3d2ZjFnLmMKKysrIGIvZHJpdmVycy9ncHUv ZHJtL3BhbmVsL3BhbmVsLXNlaWtvLTQzd3ZmMWcuYwpAQCAtMjc0LDcgKzI3NCw4IEBAIHN0YXRp YyBpbnQgc2Vpa29fcGFuZWxfcHJvYmUoc3RydWN0IGRldmljZSAqZGV2LAogCQkJcmV0dXJuIC1F UFJPQkVfREVGRVI7CiAJfQogCi0JZHJtX3BhbmVsX2luaXQoJnBhbmVsLT5iYXNlLCBkZXYsICZz ZWlrb19wYW5lbF9mdW5jcyk7CisJZHJtX3BhbmVsX2luaXQoJnBhbmVsLT5iYXNlLCBkZXYsICZz ZWlrb19wYW5lbF9mdW5jcywKKwkJICAgICAgIERSTV9NT0RFX0NPTk5FQ1RPUl9EUEkpOwogCiAJ ZXJyID0gZHJtX3BhbmVsX2FkZCgmcGFuZWwtPmJhc2UpOwogCWlmIChlcnIgPCAwKQpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLXNoYXJwLWxxMTAxcjFzeDAxLmMgYi9k cml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtc2hhcnAtbHExMDFyMXN4MDEuYwppbmRleCA4N2E1 OGNiNGQ5NDUuLjVlMTM2YzNiYTE4NSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3BhbmVs L3BhbmVsLXNoYXJwLWxxMTAxcjFzeDAxLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3Bh bmVsLXNoYXJwLWxxMTAxcjFzeDAxLmMKQEAgLTMyOSw3ICszMjksOCBAQCBzdGF0aWMgaW50IHNo YXJwX3BhbmVsX2FkZChzdHJ1Y3Qgc2hhcnBfcGFuZWwgKnNoYXJwKQogCWlmIChJU19FUlIoc2hh cnAtPmJhY2tsaWdodCkpCiAJCXJldHVybiBQVFJfRVJSKHNoYXJwLT5iYWNrbGlnaHQpOwogCi0J ZHJtX3BhbmVsX2luaXQoJnNoYXJwLT5iYXNlLCAmc2hhcnAtPmxpbmsxLT5kZXYsICZzaGFycF9w YW5lbF9mdW5jcyk7CisJZHJtX3BhbmVsX2luaXQoJnNoYXJwLT5iYXNlLCAmc2hhcnAtPmxpbmsx LT5kZXYsICZzaGFycF9wYW5lbF9mdW5jcywKKwkJICAgICAgIERSTV9NT0RFX0NPTk5FQ1RPUl9E U0kpOwogCiAJcmV0dXJuIGRybV9wYW5lbF9hZGQoJnNoYXJwLT5iYXNlKTsKIH0KZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1zaGFycC1sczAzN3Y3ZHcwMS5jIGIvZHJp dmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLXNoYXJwLWxzMDM3djdkdzAxLmMKaW5kZXggOTZlM2Rl YjBlMzA1Li5lZWFiNzk5OGM3ZGUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9w YW5lbC1zaGFycC1sczAzN3Y3ZHcwMS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5l bC1zaGFycC1sczAzN3Y3ZHcwMS5jCkBAIC0xODUsNyArMTg1LDggQEAgc3RhdGljIGludCBsczAz N3Y3ZHcwMV9wcm9iZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2KQogCQlyZXR1cm4gUFRS X0VSUihsY2QtPnVkX2dwaW8pOwogCX0KIAotCWRybV9wYW5lbF9pbml0KCZsY2QtPnBhbmVsLCAm cGRldi0+ZGV2LCAmbHMwMzd2N2R3MDFfZnVuY3MpOworCWRybV9wYW5lbF9pbml0KCZsY2QtPnBh bmVsLCAmcGRldi0+ZGV2LCAmbHMwMzd2N2R3MDFfZnVuY3MsCisJCSAgICAgICBEUk1fTU9ERV9D T05ORUNUT1JfRFBJKTsKIAogCXJldHVybiBkcm1fcGFuZWxfYWRkKCZsY2QtPnBhbmVsKTsKIH0K ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1zaGFycC1sczA0M3QxbGUw MS5jIGIvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLXNoYXJwLWxzMDQzdDFsZTAxLmMKaW5k ZXggZmZhODQ0ZWU4MmFkLi5iOTYzYmE0YWI1ODkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9wYW5lbC9wYW5lbC1zaGFycC1sczA0M3QxbGUwMS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9w YW5lbC9wYW5lbC1zaGFycC1sczA0M3QxbGUwMS5jCkBAIC0yNjUsNyArMjY1LDcgQEAgc3RhdGlj IGludCBzaGFycF9udF9wYW5lbF9hZGQoc3RydWN0IHNoYXJwX250X3BhbmVsICpzaGFycF9udCkK IAkJcmV0dXJuIFBUUl9FUlIoc2hhcnBfbnQtPmJhY2tsaWdodCk7CiAKIAlkcm1fcGFuZWxfaW5p dCgmc2hhcnBfbnQtPmJhc2UsICZzaGFycF9udC0+ZHNpLT5kZXYsCi0JCSAgICAgICAmc2hhcnBf bnRfcGFuZWxfZnVuY3MpOworCQkgICAgICAgJnNoYXJwX250X3BhbmVsX2Z1bmNzLCBEUk1fTU9E RV9DT05ORUNUT1JfRFNJKTsKIAogCXJldHVybiBkcm1fcGFuZWxfYWRkKCZzaGFycF9udC0+YmFz ZSk7CiB9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtc2ltcGxlLmMg Yi9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtc2ltcGxlLmMKaW5kZXggYjM2YzEzMGQ1Y2Yw Li40YjkyYjI3ZWJhODYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1z aW1wbGUuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtc2ltcGxlLmMKQEAgLTk0 LDYgKzk0LDcgQEAgc3RydWN0IHBhbmVsX2Rlc2MgewogCiAJdTMyIGJ1c19mb3JtYXQ7CiAJdTMy IGJ1c19mbGFnczsKKwlpbnQgY29ubmVjdG9yX3R5cGU7CiB9OwogCiBzdHJ1Y3QgcGFuZWxfc2lt cGxlIHsKQEAgLTQ2NCw3ICs0NjUsOCBAQCBzdGF0aWMgaW50IHBhbmVsX3NpbXBsZV9wcm9iZShz dHJ1Y3QgZGV2aWNlICpkZXYsIGNvbnN0IHN0cnVjdCBwYW5lbF9kZXNjICpkZXNjKQogCWlmICgh b2ZfZ2V0X2Rpc3BsYXlfdGltaW5nKGRldi0+b2Zfbm9kZSwgInBhbmVsLXRpbWluZyIsICZkdCkp CiAJCXBhbmVsX3NpbXBsZV9wYXJzZV9wYW5lbF90aW1pbmdfbm9kZShkZXYsIHBhbmVsLCAmZHQp OwogCi0JZHJtX3BhbmVsX2luaXQoJnBhbmVsLT5iYXNlLCBkZXYsICZwYW5lbF9zaW1wbGVfZnVu Y3MpOworCWRybV9wYW5lbF9pbml0KCZwYW5lbC0+YmFzZSwgZGV2LCAmcGFuZWxfc2ltcGxlX2Z1 bmNzLAorCQkgICAgICAgZGVzYy0+Y29ubmVjdG9yX3R5cGUpOwogCiAJZXJyID0gZHJtX3BhbmVs X2FkZCgmcGFuZWwtPmJhc2UpOwogCWlmIChlcnIgPCAwKQpAQCAtODMxLDYgKzgzMyw3IEBAIHN0 YXRpYyBjb25zdCBzdHJ1Y3QgcGFuZWxfZGVzYyBhdW9fZzEzM2hhbjAxID0gewogCQkudW5wcmVw YXJlID0gMTAwMCwKIAl9LAogCS5idXNfZm9ybWF0ID0gTUVESUFfQlVTX0ZNVF9SR0I4ODhfMVg3 WDRfSkVJREEsCisJLmNvbm5lY3Rvcl90eXBlID0gRFJNX01PREVfQ09OTkVDVE9SX0xWRFMsCiB9 OwogCiBzdGF0aWMgY29uc3Qgc3RydWN0IGRpc3BsYXlfdGltaW5nIGF1b19nMTg1aGFuMDFfdGlt aW5ncyA9IHsKQEAgLTg2MCw2ICs4NjMsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IHBhbmVsX2Rl c2MgYXVvX2cxODVoYW4wMSA9IHsKIAkJLnVucHJlcGFyZSA9IDEwMDAsCiAJfSwKIAkuYnVzX2Zv cm1hdCA9IE1FRElBX0JVU19GTVRfUkdCODg4XzFYN1g0X1NQV0csCisJLmNvbm5lY3Rvcl90eXBl ID0gRFJNX01PREVfQ09OTkVDVE9SX0xWRFMsCiB9OwogCiBzdGF0aWMgY29uc3Qgc3RydWN0IGRp c3BsYXlfdGltaW5nIGF1b19wMzIwaHZuMDNfdGltaW5ncyA9IHsKQEAgLTg4OCw2ICs4OTIsNyBA QCBzdGF0aWMgY29uc3Qgc3RydWN0IHBhbmVsX2Rlc2MgYXVvX3AzMjBodm4wMyA9IHsKIAkJLnVu cHJlcGFyZSA9IDUwMCwKIAl9LAogCS5idXNfZm9ybWF0ID0gTUVESUFfQlVTX0ZNVF9SR0I4ODhf MVg3WDRfU1BXRywKKwkuY29ubmVjdG9yX3R5cGUgPSBEUk1fTU9ERV9DT05ORUNUT1JfTFZEUywK IH07CiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSBhdW9fdDIxNWh2bjAx X21vZGUgPSB7CkBAIC0xMjAzLDYgKzEyMDgsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IHBhbmVs X2Rlc2MgZGxjX2RsYzA3MDB5emdfMSA9IHsKIAkJLmRpc2FibGUgPSAyMDAsCiAJfSwKIAkuYnVz X2Zvcm1hdCA9IE1FRElBX0JVU19GTVRfUkdCNjY2XzFYN1gzX1NQV0csCisJLmNvbm5lY3Rvcl90 eXBlID0gRFJNX01PREVfQ09OTkVDVE9SX0xWRFMsCiB9OwogCiBzdGF0aWMgY29uc3Qgc3RydWN0 IGRpc3BsYXlfdGltaW5nIGRsY19kbGMxMDEwZ2lnX3RpbWluZyA9IHsKQEAgLTEyMzMsNiArMTIz OSw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgcGFuZWxfZGVzYyBkbGNfZGxjMTAxMGdpZyA9IHsK IAkJLnVucHJlcGFyZSA9IDYwLAogCX0sCiAJLmJ1c19mb3JtYXQgPSBNRURJQV9CVVNfRk1UX1JH Qjg4OF8xWDdYNF9TUFdHLAorCS5jb25uZWN0b3JfdHlwZSA9IERSTV9NT0RFX0NPTk5FQ1RPUl9M VkRTLAogfTsKIAogc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlIGVkdF9ldDAz NTAxMmRtNl9tb2RlID0gewpAQCAtMTQ5OSw2ICsxNTA2LDcgQEAgc3RhdGljIGNvbnN0IHN0cnVj dCBwYW5lbF9kZXNjIGhhbm5zdGFyX2hzZDA3MHB3dzEgPSB7CiAJCS5oZWlnaHQgPSA5NCwKIAl9 LAogCS5idXNfZm9ybWF0ID0gTUVESUFfQlVTX0ZNVF9SR0I2NjZfMVg3WDNfU1BXRywKKwkuY29u bmVjdG9yX3R5cGUgPSBEUk1fTU9ERV9DT05ORUNUT1JfTFZEUywKIH07CiAKIHN0YXRpYyBjb25z dCBzdHJ1Y3QgZGlzcGxheV90aW1pbmcgaGFubnN0YXJfaHNkMTAwcHhuMV90aW1pbmcgPSB7CkBA IC0xNTIzLDYgKzE1MzEsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IHBhbmVsX2Rlc2MgaGFubnN0 YXJfaHNkMTAwcHhuMSA9IHsKIAkJLmhlaWdodCA9IDE1MiwKIAl9LAogCS5idXNfZm9ybWF0ID0g TUVESUFfQlVTX0ZNVF9SR0I2NjZfMVg3WDNfU1BXRywKKwkuY29ubmVjdG9yX3R5cGUgPSBEUk1f TU9ERV9DT05ORUNUT1JfTFZEUywKIH07CiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2Rpc3Bs YXlfbW9kZSBoaXRhY2hpX3R4MjNkMzh2bTBjYWFfbW9kZSA9IHsKQEAgLTE2MjksNiArMTYzOCw3 IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgcGFuZWxfZGVzYyBpbm5vbHV4X2cwNzB5Ml9sMDEgPSB7 CiAJCS51bnByZXBhcmUgPSA4MDAsCiAJfSwKIAkuYnVzX2Zvcm1hdCA9IE1FRElBX0JVU19GTVRf UkdCODg4XzFYN1g0X1NQV0csCisJLmNvbm5lY3Rvcl90eXBlID0gRFJNX01PREVfQ09OTkVDVE9S X0xWRFMsCiB9OwogCiBzdGF0aWMgY29uc3Qgc3RydWN0IGRpc3BsYXlfdGltaW5nIGlubm9sdXhf ZzEwMWljZV9sMDFfdGltaW5nID0gewpAQCAtMTY1Nyw2ICsxNjY3LDcgQEAgc3RhdGljIGNvbnN0 IHN0cnVjdCBwYW5lbF9kZXNjIGlubm9sdXhfZzEwMWljZV9sMDEgPSB7CiAJCS5kaXNhYmxlID0g MjAwLAogCX0sCiAJLmJ1c19mb3JtYXQgPSBNRURJQV9CVVNfRk1UX1JHQjg4OF8xWDdYNF9TUFdH LAorCS5jb25uZWN0b3JfdHlwZSA9IERSTV9NT0RFX0NPTk5FQ1RPUl9MVkRTLAogfTsKIAogc3Rh dGljIGNvbnN0IHN0cnVjdCBkaXNwbGF5X3RpbWluZyBpbm5vbHV4X2cxMjFpMV9sMDFfdGltaW5n ID0gewpAQCAtMTY4NCw2ICsxNjk1LDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBwYW5lbF9kZXNj IGlubm9sdXhfZzEyMWkxX2wwMSA9IHsKIAkJLmRpc2FibGUgPSAyMCwKIAl9LAogCS5idXNfZm9y bWF0ID0gTUVESUFfQlVTX0ZNVF9SR0I4ODhfMVg3WDRfU1BXRywKKwkuY29ubmVjdG9yX3R5cGUg PSBEUk1fTU9ERV9DT05ORUNUT1JfTFZEUywKIH07CiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJt X2Rpc3BsYXlfbW9kZSBpbm5vbHV4X2cxMjF4MV9sMDNfbW9kZSA9IHsKQEAgLTE4NjcsNiArMTg3 OSw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgcGFuZWxfZGVzYyBrb2VfdHgzMWQyMDB2bTBiYWEg PSB7CiAJCS5oZWlnaHQgPSAxMDksCiAJfSwKIAkuYnVzX2Zvcm1hdCA9IE1FRElBX0JVU19GTVRf UkdCNjY2XzFYN1gzX1NQV0csCisJLmNvbm5lY3Rvcl90eXBlID0gRFJNX01PREVfQ09OTkVDVE9S X0xWRFMsCiB9OwogCiBzdGF0aWMgY29uc3Qgc3RydWN0IGRpc3BsYXlfdGltaW5nIGt5b190Y2cx MjF4Z2xwX3RpbWluZyA9IHsKQEAgLTE4OTEsNiArMTkwNCw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1 Y3QgcGFuZWxfZGVzYyBreW9fdGNnMTIxeGdscCA9IHsKIAkJLmhlaWdodCA9IDE4NCwKIAl9LAog CS5idXNfZm9ybWF0ID0gTUVESUFfQlVTX0ZNVF9SR0I4ODhfMVg3WDRfU1BXRywKKwkuY29ubmVj dG9yX3R5cGUgPSBEUk1fTU9ERV9DT05ORUNUT1JfTFZEUywKIH07CiAKIHN0YXRpYyBjb25zdCBz dHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSBsZW1ha2VyX2JsMDM1X3JnYl8wMDJfbW9kZSA9IHsKQEAg LTE5MzksNiArMTk1Myw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgcGFuZWxfZGVzYyBsZ19sYjA3 MHd2OCA9IHsKIAkJLmhlaWdodCA9IDkxLAogCX0sCiAJLmJ1c19mb3JtYXQgPSBNRURJQV9CVVNf Rk1UX1JHQjg4OF8xWDdYNF9TUFdHLAorCS5jb25uZWN0b3JfdHlwZSA9IERSTV9NT0RFX0NPTk5F Q1RPUl9MVkRTLAogfTsKIAogc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlIGxn X2xwMDc5cXgxX3NwMHZfbW9kZSA9IHsKQEAgLTIwNjEsNiArMjA3Niw3IEBAIHN0YXRpYyBjb25z dCBzdHJ1Y3QgcGFuZWxfZGVzYyBtaXRzdWJpc2hpX2FhMDcwbWMwMSA9IHsKIAkJLmRpc2FibGUg PSA0MDAsCiAJfSwKIAkuYnVzX2Zvcm1hdCA9IE1FRElBX0JVU19GTVRfUkdCODg4XzFYN1g0X1NQ V0csCisJLmNvbm5lY3Rvcl90eXBlID0gRFJNX01PREVfQ09OTkVDVE9SX0xWRFMsCiAJLmJ1c19m bGFncyA9IERSTV9CVVNfRkxBR19ERV9ISUdILAogfTsKIApAQCAtMjA4OSw2ICsyMTA1LDcgQEAg c3RhdGljIGNvbnN0IHN0cnVjdCBwYW5lbF9kZXNjIG5lY19ubDEyODgwYmMyMF8wNSA9IHsKIAkJ LmRpc2FibGUgPSA1MCwKIAl9LAogCS5idXNfZm9ybWF0ID0gTUVESUFfQlVTX0ZNVF9SR0I4ODhf MVg3WDRfU1BXRywKKwkuY29ubmVjdG9yX3R5cGUgPSBEUk1fTU9ERV9DT05ORUNUT1JfTFZEUywK IH07CiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSBuZWNfbmw0ODI3aGMx OV8wNWJfbW9kZSA9IHsKQEAgLTIxOTEsNiArMjIwOCw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3Qg cGFuZWxfZGVzYyBubHRfbmwxOTIxMDhhYzE4XzAyZCA9IHsKIAkJLnVucHJlcGFyZSA9IDUwMCwK IAl9LAogCS5idXNfZm9ybWF0ID0gTUVESUFfQlVTX0ZNVF9SR0I4ODhfMVg3WDRfU1BXRywKKwku Y29ubmVjdG9yX3R5cGUgPSBEUk1fTU9ERV9DT05ORUNUT1JfTFZEUywKIH07CiAKIHN0YXRpYyBj b25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSBudmRfOTEyOF9tb2RlID0gewpAQCAtMjIxNCw2 ICsyMjMyLDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBwYW5lbF9kZXNjIG52ZF85MTI4ID0gewog CQkuaGVpZ2h0ID0gODgsCiAJfSwKIAkuYnVzX2Zvcm1hdCA9IE1FRElBX0JVU19GTVRfUkdCODg4 XzFYN1g0X1NQV0csCisJLmNvbm5lY3Rvcl90eXBlID0gRFJNX01PREVfQ09OTkVDVE9SX0xWRFMs CiB9OwogCiBzdGF0aWMgY29uc3Qgc3RydWN0IGRpc3BsYXlfdGltaW5nIG9rYXlhX3JzODAwNDgw dF83eDBncF90aW1pbmcgPSB7CkBAIC0yNjI2LDYgKzI2NDUsNyBAQCBzdGF0aWMgY29uc3Qgc3Ry dWN0IHBhbmVsX2Rlc2Mgc2hhcnBfbHExMDFrMWx5MDQgPSB7CiAJCS5oZWlnaHQgPSAxMzYsCiAJ fSwKIAkuYnVzX2Zvcm1hdCA9IE1FRElBX0JVU19GTVRfUkdCODg4XzFYN1g0X0pFSURBLAorCS5j b25uZWN0b3JfdHlwZSA9IERSTV9NT0RFX0NPTk5FQ1RPUl9MVkRTLAogfTsKIAogc3RhdGljIGNv bnN0IHN0cnVjdCBkaXNwbGF5X3RpbWluZyBzaGFycF9scTEyM3AxangzMV90aW1pbmcgPSB7CkBA IC0yODA1LDYgKzI4MjUsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IHBhbmVsX2Rlc2MgdGlhbm1h X3RtMDcwamRoZzMwID0gewogCQkuaGVpZ2h0ID0gOTUsCiAJfSwKIAkuYnVzX2Zvcm1hdCA9IE1F RElBX0JVU19GTVRfUkdCODg4XzFYN1g0X1NQV0csCisJLmNvbm5lY3Rvcl90eXBlID0gRFJNX01P REVfQ09OTkVDVE9SX0xWRFMsCiB9OwogCiBzdGF0aWMgY29uc3Qgc3RydWN0IGRpc3BsYXlfdGlt aW5nIHRpYW5tYV90bTA3MHJ2aGc3MV90aW1pbmcgPSB7CkBAIC0yODI5LDYgKzI4NTAsNyBAQCBz dGF0aWMgY29uc3Qgc3RydWN0IHBhbmVsX2Rlc2MgdGlhbm1hX3RtMDcwcnZoZzcxID0gewogCQku aGVpZ2h0ID0gODYsCiAJfSwKIAkuYnVzX2Zvcm1hdCA9IE1FRElBX0JVU19GTVRfUkdCODg4XzFY N1g0X1NQV0csCisJLmNvbm5lY3Rvcl90eXBlID0gRFJNX01PREVfQ09OTkVDVE9SX0xWRFMsCiB9 OwogCiBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgdGlfbnNwaXJlX2N4X2xj ZF9tb2RlW10gPSB7CkBAIC0yOTExLDYgKzI5MzMsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IHBh bmVsX2Rlc2MgdG9zaGliYV9sdDA4OWFjMjkwMDAgPSB7CiAJfSwKIAkuYnVzX2Zvcm1hdCA9IE1F RElBX0JVU19GTVRfUkdCODg4XzFYMjQsCiAJLmJ1c19mbGFncyA9IERSTV9CVVNfRkxBR19ERV9I SUdIIHwgRFJNX0JVU19GTEFHX1BJWERBVEFfRFJJVkVfUE9TRURHRSwKKwkuY29ubmVjdG9yX3R5 cGUgPSBEUk1fTU9ERV9DT05ORUNUT1JfTFZEUywKIH07CiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3Qg ZHJtX2Rpc3BsYXlfbW9kZSB0cGtfZjA3YV8wMTAyX21vZGUgPSB7CkBAIC0yOTgxLDYgKzMwMDQs NyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IHBhbmVsX2Rlc2MgdXJ0X3Vtc2hfODU5Nm1kX2x2ZHMg PSB7CiAJCS5oZWlnaHQgPSA5MSwKIAl9LAogCS5idXNfZm9ybWF0ID0gTUVESUFfQlVTX0ZNVF9S R0I2NjZfMVg3WDNfU1BXRywKKwkuY29ubmVjdG9yX3R5cGUgPSBEUk1fTU9ERV9DT05ORUNUT1Jf TFZEUywKIH07CiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgcGFuZWxfZGVzYyB1cnRfdW1zaF84NTk2 bWRfcGFyYWxsZWwgPSB7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwt c2l0cm9uaXgtc3Q3NzAxLmMgYi9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtc2l0cm9uaXgt c3Q3NzAxLmMKaW5kZXggM2Y3YmNkMjRhYTgxLi5lZTNmMjNmNDU3NTUgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1zaXRyb25peC1zdDc3MDEuYworKysgYi9kcml2ZXJz L2dwdS9kcm0vcGFuZWwvcGFuZWwtc2l0cm9uaXgtc3Q3NzAxLmMKQEAgLTM2OSw3ICszNjksOCBA QCBzdGF0aWMgaW50IHN0NzcwMV9kc2lfcHJvYmUoc3RydWN0IG1pcGlfZHNpX2RldmljZSAqZHNp KQogCWlmIChJU19FUlIoc3Q3NzAxLT5iYWNrbGlnaHQpKQogCQlyZXR1cm4gUFRSX0VSUihzdDc3 MDEtPmJhY2tsaWdodCk7CiAKLQlkcm1fcGFuZWxfaW5pdCgmc3Q3NzAxLT5wYW5lbCwgJmRzaS0+ ZGV2LCAmc3Q3NzAxX2Z1bmNzKTsKKwlkcm1fcGFuZWxfaW5pdCgmc3Q3NzAxLT5wYW5lbCwgJmRz aS0+ZGV2LCAmc3Q3NzAxX2Z1bmNzLAorCQkgICAgICAgRFJNX01PREVfQ09OTkVDVE9SX0RTSSk7 CiAKIAkvKioKIAkgKiBPbmNlIHNsZWVwIG91dCBoYXMgYmVlbiBpc3N1ZWQsIFNUNzcwMSBJQyBy ZXF1aXJlZCB0byB3YWl0IDEyMG1zCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcGFuZWwv cGFuZWwtc2l0cm9uaXgtc3Q3Nzg5di5jIGIvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLXNp dHJvbml4LXN0Nzc4OXYuYwppbmRleCAyZWVhZWVlMGRkN2YuLjEwOGE4NWJiNjY2NyAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLXNpdHJvbml4LXN0Nzc4OXYuYworKysg Yi9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtc2l0cm9uaXgtc3Q3Nzg5di5jCkBAIC0zODEs NyArMzgxLDggQEAgc3RhdGljIGludCBzdDc3ODl2X3Byb2JlKHN0cnVjdCBzcGlfZGV2aWNlICpz cGkpCiAJc3BpX3NldF9kcnZkYXRhKHNwaSwgY3R4KTsKIAljdHgtPnNwaSA9IHNwaTsKIAotCWRy bV9wYW5lbF9pbml0KCZjdHgtPnBhbmVsLCAmc3BpLT5kZXYsICZzdDc3ODl2X2RybV9mdW5jcyk7 CisJZHJtX3BhbmVsX2luaXQoJmN0eC0+cGFuZWwsICZzcGktPmRldiwgJnN0Nzc4OXZfZHJtX2Z1 bmNzLAorCQkgICAgICAgRFJNX01PREVfQ09OTkVDVE9SX0RQSSk7CiAKIAljdHgtPnBvd2VyID0g ZGV2bV9yZWd1bGF0b3JfZ2V0KCZzcGktPmRldiwgInBvd2VyIik7CiAJaWYgKElTX0VSUihjdHgt PnBvd2VyKSkKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1zb255LWFj eDU2NWFrbS5jIGIvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLXNvbnktYWN4NTY1YWttLmMK aW5kZXggNWEyNzcyYjA0Yjc1Li42ZjVjZTU4NjdmZjkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9wYW5lbC9wYW5lbC1zb255LWFjeDU2NWFrbS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9w YW5lbC9wYW5lbC1zb255LWFjeDU2NWFrbS5jCkBAIC02NDgsNyArNjQ4LDggQEAgc3RhdGljIGlu dCBhY3g1NjVha21fcHJvYmUoc3RydWN0IHNwaV9kZXZpY2UgKnNwaSkKIAkJCXJldHVybiByZXQ7 CiAJfQogCi0JZHJtX3BhbmVsX2luaXQoJmxjZC0+cGFuZWwsICZsY2QtPnNwaS0+ZGV2LCAmYWN4 NTY1YWttX2Z1bmNzKTsKKwlkcm1fcGFuZWxfaW5pdCgmbGNkLT5wYW5lbCwgJmxjZC0+c3BpLT5k ZXYsICZhY3g1NjVha21fZnVuY3MsCisJCSAgICAgICBEUk1fTU9ERV9DT05ORUNUT1JfRFBJKTsK IAogCXJldCA9IGRybV9wYW5lbF9hZGQoJmxjZC0+cGFuZWwpOwogCWlmIChyZXQgPCAwKSB7CmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtdHBvLXRkMDI4dHRlYzEuYyBi L2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC10cG8tdGQwMjh0dGVjMS5jCmluZGV4IDhiMTE0 OGQ3NGU3Yi4uMWQwOGQwM2Y1MDlkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vcGFuZWwv cGFuZWwtdHBvLXRkMDI4dHRlYzEuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwt dHBvLXRkMDI4dHRlYzEuYwpAQCAtMzQ3LDcgKzM0Nyw4IEBAIHN0YXRpYyBpbnQgdGQwMjh0dGVj MV9wcm9iZShzdHJ1Y3Qgc3BpX2RldmljZSAqc3BpKQogCQlyZXR1cm4gcmV0OwogCX0KIAotCWRy bV9wYW5lbF9pbml0KCZsY2QtPnBhbmVsLCAmbGNkLT5zcGktPmRldiwgJnRkMDI4dHRlYzFfZnVu Y3MpOworCWRybV9wYW5lbF9pbml0KCZsY2QtPnBhbmVsLCAmbGNkLT5zcGktPmRldiwgJnRkMDI4 dHRlYzFfZnVuY3MsCisJCSAgICAgICBEUk1fTU9ERV9DT05ORUNUT1JfRFBJKTsKIAogCXJldHVy biBkcm1fcGFuZWxfYWRkKCZsY2QtPnBhbmVsKTsKIH0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9wYW5lbC9wYW5lbC10cG8tdGQwNDNtdGVhMS5jIGIvZHJpdmVycy9ncHUvZHJtL3BhbmVs L3BhbmVsLXRwby10ZDA0M210ZWExLmMKaW5kZXggYmJmMGMyZTFjOTBmLi40MTZhZWJkMjNiNmEg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC10cG8tdGQwNDNtdGVhMS5j CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC10cG8tdGQwNDNtdGVhMS5jCkBAIC00 NTgsNyArNDU4LDggQEAgc3RhdGljIGludCB0ZDA0M210ZWExX3Byb2JlKHN0cnVjdCBzcGlfZGV2 aWNlICpzcGkpCiAJCXJldHVybiByZXQ7CiAJfQogCi0JZHJtX3BhbmVsX2luaXQoJmxjZC0+cGFu ZWwsICZsY2QtPnNwaS0+ZGV2LCAmdGQwNDNtdGVhMV9mdW5jcyk7CisJZHJtX3BhbmVsX2luaXQo JmxjZC0+cGFuZWwsICZsY2QtPnNwaS0+ZGV2LCAmdGQwNDNtdGVhMV9mdW5jcywKKwkJICAgICAg IERSTV9NT0RFX0NPTk5FQ1RPUl9EUEkpOwogCiAJcmV0ID0gZHJtX3BhbmVsX2FkZCgmbGNkLT5w YW5lbCk7CiAJaWYgKHJldCA8IDApIHsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9wYW5l bC9wYW5lbC10cG8tdHBnMTEwLmMgYi9kcml2ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtdHBvLXRw ZzExMC5jCmluZGV4IDI1NTI0YzI2YjI0MS4uMWE1NDE4YWUyY2NmIDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vcGFuZWwvcGFuZWwtdHBvLXRwZzExMC5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9wYW5lbC9wYW5lbC10cG8tdHBnMTEwLmMKQEAgLTQ1Nyw3ICs0NTcsOCBAQCBzdGF0aWMgaW50 IHRwZzExMF9wcm9iZShzdHJ1Y3Qgc3BpX2RldmljZSAqc3BpKQogCWlmIChyZXQpCiAJCXJldHVy biByZXQ7CiAKLQlkcm1fcGFuZWxfaW5pdCgmdHBnLT5wYW5lbCwgZGV2LCAmdHBnMTEwX2RybV9m dW5jcyk7CisJZHJtX3BhbmVsX2luaXQoJnRwZy0+cGFuZWwsIGRldiwgJnRwZzExMF9kcm1fZnVu Y3MsCisJCSAgICAgICBEUk1fTU9ERV9DT05ORUNUT1JfRFBJKTsKIAlzcGlfc2V0X2RydmRhdGEo c3BpLCB0cGcpOwogCiAJcmV0dXJuIGRybV9wYW5lbF9hZGQoJnRwZy0+cGFuZWwpOwpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLXRydWx5LW50MzU1OTcuYyBiL2RyaXZl cnMvZ3B1L2RybS9wYW5lbC9wYW5lbC10cnVseS1udDM1NTk3LmMKaW5kZXggYzM3MTRiZTc4ODM3 Li4wZmVlYTI0NTZlMTQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC10 cnVseS1udDM1NTk3LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLXRydWx5LW50 MzU1OTcuYwpAQCAtNTE4LDcgKzUxOCw4IEBAIHN0YXRpYyBpbnQgdHJ1bHlfbnQzNTU5N19wYW5l bF9hZGQoc3RydWN0IHRydWx5X250MzU1OTcgKmN0eCkKIAkvKiBkdWFsIHBvcnQgKi8KIAlncGlv ZF9zZXRfdmFsdWUoY3R4LT5tb2RlX2dwaW8sIDApOwogCi0JZHJtX3BhbmVsX2luaXQoJmN0eC0+ cGFuZWwsIGRldiwgJnRydWx5X250MzU1OTdfZHJtX2Z1bmNzKTsKKwlkcm1fcGFuZWxfaW5pdCgm Y3R4LT5wYW5lbCwgZGV2LCAmdHJ1bHlfbnQzNTU5N19kcm1fZnVuY3MsCisJCSAgICAgICBEUk1f TU9ERV9DT05ORUNUT1JfRFNJKTsKIAlkcm1fcGFuZWxfYWRkKCZjdHgtPnBhbmVsKTsKIAogCXJl dHVybiAwOwpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX3BhbmVsLmggYi9pbmNsdWRlL2Ry bS9kcm1fcGFuZWwuaAppbmRleCA0YjljNjU2ZGMxNWUuLmNlOGRhNjQwMjJiNCAxMDA2NDQKLS0t IGEvaW5jbHVkZS9kcm0vZHJtX3BhbmVsLmgKKysrIGIvaW5jbHVkZS9kcm0vZHJtX3BhbmVsLmgK QEAgLTEzOSw2ICsxMzksMTUgQEAgc3RydWN0IGRybV9wYW5lbCB7CiAJICovCiAJY29uc3Qgc3Ry dWN0IGRybV9wYW5lbF9mdW5jcyAqZnVuY3M7CiAKKwkvKioKKwkgKiBAY29ubmVjdG9yX3R5cGU6 CisJICoKKwkgKiBUeXBlIG9mIHRoZSBwYW5lbCBhcyBhIERSTV9NT0RFX0NPTk5FQ1RPUl8qIHZh bHVlLiBUaGlzIGlzIHVzZWQgdG8KKwkgKiBpbml0aWFsaXNlIHRoZSBkcm1fY29ubmVjdG9yIGNv cnJlc3BvbmRpbmcgdG8gdGhlIHBhbmVsIHdpdGggdGhlCisJICogY29ycmVjdCBjb25uZWN0b3Ig dHlwZS4KKwkgKi8KKwlpbnQgY29ubmVjdG9yX3R5cGU7CisKIAkvKioKIAkgKiBAbGlzdDoKIAkg KgpAQCAtMTQ4LDcgKzE1Nyw4IEBAIHN0cnVjdCBkcm1fcGFuZWwgewogfTsKIAogdm9pZCBkcm1f cGFuZWxfaW5pdChzdHJ1Y3QgZHJtX3BhbmVsICpwYW5lbCwgc3RydWN0IGRldmljZSAqZGV2LAot CQkgICAgY29uc3Qgc3RydWN0IGRybV9wYW5lbF9mdW5jcyAqZnVuY3MpOworCQkgICAgY29uc3Qg c3RydWN0IGRybV9wYW5lbF9mdW5jcyAqZnVuY3MsCisJCSAgICBpbnQgY29ubmVjdG9yX3R5cGUp OwogCiBpbnQgZHJtX3BhbmVsX2FkZChzdHJ1Y3QgZHJtX3BhbmVsICpwYW5lbCk7CiB2b2lkIGRy bV9wYW5lbF9yZW1vdmUoc3RydWN0IGRybV9wYW5lbCAqcGFuZWwpOwotLSAKUmVnYXJkcywKCkxh dXJlbnQgUGluY2hhcnQKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9w Lm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1k ZXZlbA==