From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-17.5 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 54B5EC00143 for ; Fri, 30 Jul 2021 19:40:31 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 16FAE600CD for ; Fri, 30 Jul 2021 19:40:31 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 16FAE600CD Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=pengutronix.de Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=zjiZgFV8DdhdabT7zFR8o1kpqDiFutBMMNLm5NxPInI=; b=lAw8A2fwbTsBEC 2yKkCI36R2yVlebH3KPbuOCfTpil3hTSjO2dGkvo3q93Ifw2sghNQvJvhl1hV0xwkpnz2uZl2cRyQ KpzJcEvbHkhldvN3g8U3B3j8cE+rv6Vj9e12MG72bKwEke9I7Lm1T+yDoCYlDhPP5f05sNbAt9c3e Pmi2FhzsBHEqjVfww3mTLtFtwW8rPPnnej1TvMRmeECKpN/ryidSn3uBwCEzRq0txFCPBnX2b0ZME mWz/hm8sN9ndDmVi2uQtYAOeR8VhI8HdgxR7KIcQPfzgTRUxgsveH5pGR6gJdKm0cXmdRLAPGtbPF yYWL7xazy3yoyEjKUGFw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1m9YMv-00A8TB-TO; Fri, 30 Jul 2021 19:40:29 +0000 Received: from metis.ext.pengutronix.de ([85.220.165.71]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1m0nSA-00CCC0-I1 for linux-i3c@lists.infradead.org; Tue, 06 Jul 2021 15:57:47 +0000 Received: from ptx.hi.pengutronix.de ([2001:67c:670:100:1d::c0]) by metis.ext.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1m0nLR-0007mb-Ei; Tue, 06 Jul 2021 17:50:45 +0200 Received: from ukl by ptx.hi.pengutronix.de with local (Exim 4.92) (envelope-from ) id 1m0nL6-0005Sx-So; Tue, 06 Jul 2021 17:50:25 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Greg Kroah-Hartman Cc: kernel@pengutronix.de, Cornelia Huck , linux-kernel@vger.kernel.org, Russell King , Thomas Bogendoerfer , "James E.J. Bottomley" , Helge Deller , Geoff Levand , Michael Ellerman , Benjamin Herrenschmidt , Paul Mackerras , "Rafael J. Wysocki" , Len Brown , William Breathitt Gray , =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= , Maxime Ripard , Chen-Yu Tsai , Jernej Skrabec , Alison Schofield , Vishal Verma , Ira Weiny , Ben Widawsky , Dan Williams , Dave Jiang , Vinod Koul , Stefan Richter , Sudeep Holla , Cristian Marussi , Wu Hao , Tom Rix , Moritz Fischer , Jiri Kosina , Benjamin Tissoires , Srinivas Pandruvada , "K. Y. Srinivasan" , Haiyang Zhang , Stephen Hemminger , Wei Liu , Dexuan Cui , Alexander Shishkin , Wolfram Sang , Alexandre Belloni , Dmitry Torokhov , Samuel Iglesias Gonsalvez , Jens Taprogge , Johannes Thumshirn , Mauro Carvalho Chehab , Maxim Levitsky , Alex Dubov , Ulf Hansson , Lee Jones , Tomas Winkler , Arnd Bergmann , Jakub Kicinski , "David S. Miller" , Jon Mason , Allen Hubbe , Kishon Vijay Abraham I , Lorenzo Pieralisi , =?UTF-8?q?Krzysztof=20Wilczy=C5=84ski?= , Bjorn Helgaas , Dominik Brodowski , Maximilian Luz , Hans de Goede , Mark Gross , Matt Porter , Alexandre Bounine , Ohad Ben-Cohen , Bjorn Andersson , Mathieu Poirier , "Martin K. Petersen" , Thorsten Scherer , Srinivas Kandagatla , Andy Gross , Mark Brown , Stephen Boyd , Michael Buesch , Sven Van Asbroeck , Johan Hovold , Alex Elder , Andreas Noever , Michael Jamet , Mika Westerberg , Yehezkel Bernat , Rob Herring , Jiri Slaby , Heikki Krogerus , "Michael S. Tsirkin" , Jason Wang , Kirti Wankhede , Alex Williamson , Martyn Welch , Manohar Vanga , Boris Ostrovsky , Juergen Gross , Stefano Stabellini , Johannes Berg , Jaroslav Kysela , Takashi Iwai , Marc Zyngier , Tyrel Datwyler , Vladimir Zapolskiy , Samuel Holland , Qinglang Miao , Alexey Kardashevskiy , Kai-Heng Feng , Joey Pabalan , =?UTF-8?q?Pali=20Roh=C3=A1r?= , Adrian Hunter , Frank Li , Mike Christie , Bodo Stroesser , Hannes Reinecke , David Woodhouse , SeongJae Park , Julien Grall , linux-arm-kernel@lists.infradead.org, linux-mips@vger.kernel.org, linux-parisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-acpi@vger.kernel.org, linux-wireless@vger.kernel.org, linux-sunxi@lists.linux.dev, linux-cxl@vger.kernel.org, nvdimm@lists.linux.dev, dmaengine@vger.kernel.org, linux1394-devel@lists.sourceforge.net, linux-fpga@vger.kernel.org, linux-input@vger.kernel.org, linux-hyperv@vger.kernel.org, linux-i2c@vger.kernel.org, linux-i3c@lists.infradead.org, industrypack-devel@lists.sourceforge.net, linux-media@vger.kernel.org, linux-mmc@vger.kernel.org, netdev@vger.kernel.org, linux-ntb@googlegroups.com, linux-pci@vger.kernel.org, platform-driver-x86@vger.kernel.org, linux-remoteproc@vger.kernel.org, linux-scsi@vger.kernel.org, alsa-devel@alsa-project.org, linux-arm-msm@vger.kernel.org, linux-spi@vger.kernel.org, linux-staging@lists.linux.dev, greybus-dev@lists.linaro.org, target-devel@vger.kernel.org, linux-usb@vger.kernel.org, linux-serial@vger.kernel.org, virtualization@lists.linux-foundation.org, kvm@vger.kernel.org, xen-devel@lists.xenproject.org, Russell King , Johannes Thumshirn Subject: [PATCH v2 4/4] bus: Make remove callback return void Date: Tue, 6 Jul 2021 17:48:03 +0200 Message-Id: <20210706154803.1631813-5-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20210706154803.1631813-1-u.kleine-koenig@pengutronix.de> References: <20210706154803.1631813-1-u.kleine-koenig@pengutronix.de> MIME-Version: 1.0 X-SA-Exim-Connect-IP: 2001:67c:670:100:1d::c0 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-i3c@lists.infradead.org X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210706_085743_194850_AB7D799A X-CRM114-Status: GOOD ( 21.03 ) X-Mailman-Approved-At: Fri, 30 Jul 2021 12:40:21 -0700 X-BeenThere: linux-i3c@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-i3c" Errors-To: linux-i3c-bounces+linux-i3c=archiver.kernel.org@lists.infradead.org VGhlIGRyaXZlciBjb3JlIGlnbm9yZXMgdGhlIHJldHVybiB2YWx1ZSBvZiB0aGlzIGNhbGxiYWNr IGJlY2F1c2UgdGhlcmUKaXMgb25seSBsaXR0bGUgaXQgY2FuIGRvIHdoZW4gYSBkZXZpY2UgZGlz YXBwZWFycy4KClRoaXMgaXMgdGhlIGZpbmFsIGJpdCBvZiBhIGxvbmcgbGFzdGluZyBjbGVhbnVw IHF1ZXN0IHdoZXJlIHNldmVyYWwKYnVzZXMgd2VyZSBjb252ZXJ0ZWQgdG8gYWxzbyByZXR1cm4g dm9pZCBmcm9tIHRoZWlyIHJlbW92ZSBjYWxsYmFjay4KQWRkaXRpb25hbGx5IHNvbWUgcmVzb3Vy Y2UgbGVha3Mgd2VyZSBmaXhlZCB0aGF0IHdlcmUgY2F1c2VkIGJ5IGRyaXZlcnMKcmV0dXJuaW5n IGFuIGVycm9yIGNvZGUgaW4gdGhlIGV4cGVjdGF0aW9uIHRoYXQgdGhlIGRyaXZlciB3b24ndCBn bwphd2F5LgoKV2l0aCBzdHJ1Y3QgYnVzX3R5cGU6OnJlbW92ZSByZXR1cm5pbmcgdm9pZCBpdCdz IHByZXZlbnRlZCB0aGF0IG5ld2x5CmltcGxlbWVudGVkIGJ1c2VzIHJldHVybiBhbiBpZ25vcmVk IGVycm9yIGNvZGUgYW5kIHNvIGRvbid0IGFudGljaXBhdGUKd3JvbmcgZXhwZWN0YXRpb25zIGZv ciBkcml2ZXIgYXV0aG9ycy4KCkFja2VkLWJ5OiBSdXNzZWxsIEtpbmcgKE9yYWNsZSkgPHJtaytr ZXJuZWxAYXJtbGludXgub3JnLnVrPiAoRm9yIEFSTSwgQW1iYSBhbmQgcmVsYXRlZCBwYXJ0cykK QWNrZWQtYnk6IE1hcmsgQnJvd24gPGJyb29uaWVAa2VybmVsLm9yZz4KQWNrZWQtYnk6IENoZW4t WXUgVHNhaSA8d2Vuc0Bjc2llLm9yZz4gKGZvciBkcml2ZXJzL2J1cy9zdW54aS1yc2IuYykKQWNr ZWQtYnk6IFBhbGkgUm9ow6FyIDxwYWxpQGtlcm5lbC5vcmc+CkFja2VkLWJ5OiBNYXVybyBDYXJ2 YWxobyBDaGVoYWIgPG1jaGVoYWJAa2VybmVsLm9yZz4gKGZvciBkcml2ZXJzL21lZGlhKQpBY2tl ZC1ieTogSGFucyBkZSBHb2VkZSA8aGRlZ29lZGVAcmVkaGF0LmNvbT4gKEZvciBkcml2ZXJzL3Bs YXRmb3JtKQpBY2tlZC1ieTogQWxleGFuZHJlIEJlbGxvbmkgPGFsZXhhbmRyZS5iZWxsb25pQGJv b3RsaW4uY29tPgpBY2tlZC1CeTogVmlub2QgS291bCA8dmtvdWxAa2VybmVsLm9yZz4KQWNrZWQt Ynk6IEp1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT4gKEZvciBYZW4pCkFja2VkLWJ5OiBM ZWUgSm9uZXMgPGxlZS5qb25lc0BsaW5hcm8ub3JnPiAoRm9yIGRyaXZlcnMvbWZkKQpBY2tlZC1i eTogSm9oYW5uZXMgVGh1bXNoaXJuIDxqdGhAa2VybmVsLm9yZz4gKEZvciBkcml2ZXJzL21jYikK QWNrZWQtYnk6IEpvaGFuIEhvdm9sZCA8am9oYW5Aa2VybmVsLm9yZz4KQWNrZWQtYnk6IFNyaW5p dmFzIEthbmRhZ2F0bGEgPHNyaW5pdmFzLmthbmRhZ2F0bGFAbGluYXJvLm9yZz4gKEZvciBkcml2 ZXJzL3NsaW1idXMpCkFja2VkLWJ5OiBLaXJ0aSBXYW5raGVkZSA8a3dhbmtoZWRlQG52aWRpYS5j b20+IChGb3IgZHJpdmVycy92ZmlvKQpBY2tlZC1ieTogTWF4aW1pbGlhbiBMdXogPGx1em1heGlt aWxpYW5AZ21haWwuY29tPgpBY2tlZC1ieTogSGVpa2tpIEtyb2dlcnVzIDxoZWlra2kua3JvZ2Vy dXNAbGludXguaW50ZWwuY29tPiAoRm9yIHVscGkgYW5kIHR5cGVjKQpBY2tlZC1ieTogU2FtdWVs IElnbGVzaWFzIEdvbnPDoWx2ZXogPHNpZ2xlc2lhc0BpZ2FsaWEuY29tPiAoRm9yIGlwYWNrKQpS ZXZpZXdlZC1ieTogVG9tIFJpeCA8dHJpeEByZWRoYXQuY29tPiAoRm9yIGZwZ2EpCkFja2VkLWJ5 OiBHZW9mZiBMZXZhbmQgPGdlb2ZmQGluZnJhZGVhZC5vcmc+IChGb3IgcHMzKQpTaWduZWQtb2Zm LWJ5OiBVd2UgS2xlaW5lLUvDtm5pZyA8dS5rbGVpbmUta29lbmlnQHBlbmd1dHJvbml4LmRlPgot LS0KCiBhcmNoL2FybS9jb21tb24vbG9jb21vLmMgICAgICAgICAgICAgICAgICB8IDMgKy0tCiBh cmNoL2FybS9jb21tb24vc2ExMTExLmMgICAgICAgICAgICAgICAgICB8IDQgKy0tLQogYXJjaC9h cm0vbWFjaC1ycGMvZWNhcmQuYyAgICAgICAgICAgICAgICAgfCA0ICstLS0KIGFyY2gvbWlwcy9z Z2ktaXAyMi9pcDIyLWdpby5jICAgICAgICAgICAgIHwgMyArLS0KIGFyY2gvcGFyaXNjL2tlcm5l bC9kcml2ZXJzLmMgICAgICAgICAgICAgIHwgNSArKy0tLQogYXJjaC9wb3dlcnBjL3BsYXRmb3Jt cy9wczMvc3lzdGVtLWJ1cy5jICAgfCAzICstLQogYXJjaC9wb3dlcnBjL3BsYXRmb3Jtcy9wc2Vy aWVzL2libWVidXMuYyAgfCAzICstLQogYXJjaC9wb3dlcnBjL3BsYXRmb3Jtcy9wc2VyaWVzL3Zp by5jICAgICAgfCAzICstLQogZHJpdmVycy9hY3BpL2J1cy5jICAgICAgICAgICAgICAgICAgICAg ICAgfCAzICstLQogZHJpdmVycy9hbWJhL2J1cy5jICAgICAgICAgICAgICAgICAgICAgICAgfCA0 ICstLS0KIGRyaXZlcnMvYmFzZS9hdXhpbGlhcnkuYyAgICAgICAgICAgICAgICAgIHwgNCArLS0t CiBkcml2ZXJzL2Jhc2UvaXNhLmMgICAgICAgICAgICAgICAgICAgICAgICB8IDQgKy0tLQogZHJp dmVycy9iYXNlL3BsYXRmb3JtLmMgICAgICAgICAgICAgICAgICAgfCA0ICstLS0KIGRyaXZlcnMv YmNtYS9tYWluLmMgICAgICAgICAgICAgICAgICAgICAgIHwgNiArKy0tLS0KIGRyaXZlcnMvYnVz L3N1bnhpLXJzYi5jICAgICAgICAgICAgICAgICAgIHwgNCArLS0tCiBkcml2ZXJzL2N4bC9jb3Jl LmMgICAgICAgICAgICAgICAgICAgICAgICB8IDMgKy0tCiBkcml2ZXJzL2RheC9idXMuYyAgICAg ICAgICAgICAgICAgICAgICAgICB8IDQgKy0tLQogZHJpdmVycy9kbWEvaWR4ZC9zeXNmcy5jICAg ICAgICAgICAgICAgICAgfCA0ICstLS0KIGRyaXZlcnMvZmlyZXdpcmUvY29yZS1kZXZpY2UuYyAg ICAgICAgICAgIHwgNCArLS0tCiBkcml2ZXJzL2Zpcm13YXJlL2FybV9zY21pL2J1cy5jICAgICAg ICAgICB8IDQgKy0tLQogZHJpdmVycy9maXJtd2FyZS9nb29nbGUvY29yZWJvb3RfdGFibGUuYyAg fCA0ICstLS0KIGRyaXZlcnMvZnBnYS9kZmwuYyAgICAgICAgICAgICAgICAgICAgICAgIHwgNCAr LS0tCiBkcml2ZXJzL2hpZC9oaWQtY29yZS5jICAgICAgICAgICAgICAgICAgICB8IDQgKy0tLQog ZHJpdmVycy9oaWQvaW50ZWwtaXNoLWhpZC9pc2h0cC9idXMuYyAgICAgfCA0ICstLS0KIGRyaXZl cnMvaHYvdm1idXNfZHJ2LmMgICAgICAgICAgICAgICAgICAgIHwgNSArLS0tLQogZHJpdmVycy9o d3RyYWNpbmcvaW50ZWxfdGgvY29yZS5jICAgICAgICAgfCA0ICstLS0KIGRyaXZlcnMvaTJjL2ky Yy1jb3JlLWJhc2UuYyAgICAgICAgICAgICAgIHwgNSArLS0tLQogZHJpdmVycy9pM2MvbWFzdGVy LmMgICAgICAgICAgICAgICAgICAgICAgfCA0ICstLS0KIGRyaXZlcnMvaW5wdXQvZ2FtZXBvcnQv Z2FtZXBvcnQuYyAgICAgICAgIHwgMyArLS0KIGRyaXZlcnMvaW5wdXQvc2VyaW8vc2VyaW8uYyAg ICAgICAgICAgICAgIHwgMyArLS0KIGRyaXZlcnMvaXBhY2svaXBhY2suYyAgICAgICAgICAgICAg ICAgICAgIHwgNCArLS0tCiBkcml2ZXJzL21hY2ludG9zaC9tYWNpb19hc2ljLmMgICAgICAgICAg ICB8IDQgKy0tLQogZHJpdmVycy9tY2IvbWNiLWNvcmUuYyAgICAgICAgICAgICAgICAgICAgfCA0 ICstLS0KIGRyaXZlcnMvbWVkaWEvcGNpL2J0OHh4L2J0dHYtZ3Bpby5jICAgICAgIHwgMyArLS0K IGRyaXZlcnMvbWVtc3RpY2svY29yZS9tZW1zdGljay5jICAgICAgICAgIHwgMyArLS0KIGRyaXZl cnMvbWZkL21jcC1jb3JlLmMgICAgICAgICAgICAgICAgICAgIHwgMyArLS0KIGRyaXZlcnMvbWlz Yy9tZWkvYnVzLmMgICAgICAgICAgICAgICAgICAgIHwgNCArLS0tCiBkcml2ZXJzL21pc2MvdGlm bV9jb3JlLmMgICAgICAgICAgICAgICAgICB8IDMgKy0tCiBkcml2ZXJzL21tYy9jb3JlL2J1cy5j ICAgICAgICAgICAgICAgICAgICB8IDQgKy0tLQogZHJpdmVycy9tbWMvY29yZS9zZGlvX2J1cy5j ICAgICAgICAgICAgICAgfCA0ICstLS0KIGRyaXZlcnMvbmV0L25ldGRldnNpbS9idXMuYyAgICAg ICAgICAgICAgIHwgMyArLS0KIGRyaXZlcnMvbnRiL2NvcmUuYyAgICAgICAgICAgICAgICAgICAg ICAgIHwgNCArLS0tCiBkcml2ZXJzL250Yi9udGJfdHJhbnNwb3J0LmMgICAgICAgICAgICAgICB8 IDQgKy0tLQogZHJpdmVycy9udmRpbW0vYnVzLmMgICAgICAgICAgICAgICAgICAgICAgfCAzICst LQogZHJpdmVycy9wY2kvZW5kcG9pbnQvcGNpLWVwZi1jb3JlLmMgICAgICAgfCA0ICstLS0KIGRy aXZlcnMvcGNpL3BjaS1kcml2ZXIuYyAgICAgICAgICAgICAgICAgIHwgMyArLS0KIGRyaXZlcnMv cGNtY2lhL2RzLmMgICAgICAgICAgICAgICAgICAgICAgIHwgNCArLS0tCiBkcml2ZXJzL3BsYXRm b3JtL3N1cmZhY2UvYWdncmVnYXRvci9idXMuYyB8IDQgKy0tLQogZHJpdmVycy9wbGF0Zm9ybS94 ODYvd21pLmMgICAgICAgICAgICAgICAgfCA0ICstLS0KIGRyaXZlcnMvcG5wL2RyaXZlci5jICAg ICAgICAgICAgICAgICAgICAgIHwgMyArLS0KIGRyaXZlcnMvcmFwaWRpby9yaW8tZHJpdmVyLmMg ICAgICAgICAgICAgIHwgNCArLS0tCiBkcml2ZXJzL3JwbXNnL3JwbXNnX2NvcmUuYyAgICAgICAg ICAgICAgICB8IDQgKy0tLQogZHJpdmVycy9zMzkwL2Npby9jY3dncm91cC5jICAgICAgICAgICAg ICAgfCA0ICstLS0KIGRyaXZlcnMvczM5MC9jaW8vY3NzLmMgICAgICAgICAgICAgICAgICAgIHwg NCArLS0tCiBkcml2ZXJzL3MzOTAvY2lvL2RldmljZS5jICAgICAgICAgICAgICAgICB8IDQgKy0t LQogZHJpdmVycy9zMzkwL2Npby9zY20uYyAgICAgICAgICAgICAgICAgICAgfCA0ICstLS0KIGRy aXZlcnMvczM5MC9jcnlwdG8vYXBfYnVzLmMgICAgICAgICAgICAgIHwgNCArLS0tCiBkcml2ZXJz L3Njc2kvc2NzaV9kZWJ1Zy5jICAgICAgICAgICAgICAgICB8IDMgKy0tCiBkcml2ZXJzL3Npb3gv c2lveC1jb3JlLmMgICAgICAgICAgICAgICAgICB8IDQgKy0tLQogZHJpdmVycy9zbGltYnVzL2Nv cmUuYyAgICAgICAgICAgICAgICAgICAgfCA0ICstLS0KIGRyaXZlcnMvc29jL3Fjb20vYXByLmMg ICAgICAgICAgICAgICAgICAgIHwgNCArLS0tCiBkcml2ZXJzL3NwaS9zcGkuYyAgICAgICAgICAg ICAgICAgICAgICAgICB8IDQgKy0tLQogZHJpdmVycy9zcG1pL3NwbWkuYyAgICAgICAgICAgICAg ICAgICAgICAgfCAzICstLQogZHJpdmVycy9zc2IvbWFpbi5jICAgICAgICAgICAgICAgICAgICAg ICAgfCA0ICstLS0KIGRyaXZlcnMvc3RhZ2luZy9maWVsZGJ1cy9hbnlidXNzL2hvc3QuYyAgIHwg NCArLS0tCiBkcml2ZXJzL3N0YWdpbmcvZ3JleWJ1cy9nYnBoeS5jICAgICAgICAgICB8IDQgKy0t LQogZHJpdmVycy90YXJnZXQvbG9vcGJhY2svdGNtX2xvb3AuYyAgICAgICAgfCA1ICsrLS0tCiBk cml2ZXJzL3RodW5kZXJib2x0L2RvbWFpbi5jICAgICAgICAgICAgICB8IDQgKy0tLQogZHJpdmVy cy90dHkvc2VyZGV2L2NvcmUuYyAgICAgICAgICAgICAgICAgfCA0ICstLS0KIGRyaXZlcnMvdXNi L2NvbW1vbi91bHBpLmMgICAgICAgICAgICAgICAgIHwgNCArLS0tCiBkcml2ZXJzL3VzYi9zZXJp YWwvYnVzLmMgICAgICAgICAgICAgICAgICB8IDQgKy0tLQogZHJpdmVycy91c2IvdHlwZWMvYnVz LmMgICAgICAgICAgICAgICAgICAgfCA0ICstLS0KIGRyaXZlcnMvdmRwYS92ZHBhLmMgICAgICAg ICAgICAgICAgICAgICAgIHwgNCArLS0tCiBkcml2ZXJzL3ZmaW8vbWRldi9tZGV2X2RyaXZlci5j ICAgICAgICAgICB8IDQgKy0tLQogZHJpdmVycy92aXJ0aW8vdmlydGlvLmMgICAgICAgICAgICAg ICAgICAgfCAzICstLQogZHJpdmVycy92bWUvdm1lLmMgICAgICAgICAgICAgICAgICAgICAgICAg fCA0ICstLS0KIGRyaXZlcnMveGVuL3hlbmJ1cy94ZW5idXMuaCAgICAgICAgICAgICAgIHwgMiAr LQogZHJpdmVycy94ZW4veGVuYnVzL3hlbmJ1c19wcm9iZS5jICAgICAgICAgfCA0ICstLS0KIGlu Y2x1ZGUvbGludXgvZGV2aWNlL2J1cy5oICAgICAgICAgICAgICAgIHwgMiArLQogc291bmQvYW9h L3NvdW5kYnVzL2NvcmUuYyAgICAgICAgICAgICAgICAgfCA0ICstLS0KIDgwIGZpbGVzIGNoYW5n ZWQsIDgzIGluc2VydGlvbnMoKyksIDIxOSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9hcmNo L2FybS9jb21tb24vbG9jb21vLmMgYi9hcmNoL2FybS9jb21tb24vbG9jb21vLmMKaW5kZXggZTQ1 ZjRlNGUwNmI2Li4yNGQyMWJhNjMwMzAgMTAwNjQ0Ci0tLSBhL2FyY2gvYXJtL2NvbW1vbi9sb2Nv bW8uYworKysgYi9hcmNoL2FybS9jb21tb24vbG9jb21vLmMKQEAgLTgzNCwxNCArODM0LDEzIEBA IHN0YXRpYyBpbnQgbG9jb21vX2J1c19wcm9iZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJcmV0dXJu IHJldDsKIH0KIAotc3RhdGljIGludCBsb2NvbW9fYnVzX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpk ZXYpCitzdGF0aWMgdm9pZCBsb2NvbW9fYnVzX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiB7 CiAJc3RydWN0IGxvY29tb19kZXYgKmxkZXYgPSBMT0NPTU9fREVWKGRldik7CiAJc3RydWN0IGxv Y29tb19kcml2ZXIgKmRydiA9IExPQ09NT19EUlYoZGV2LT5kcml2ZXIpOwogCiAJaWYgKGRydi0+ cmVtb3ZlKQogCQlkcnYtPnJlbW92ZShsZGV2KTsKLQlyZXR1cm4gMDsKIH0KIAogc3RydWN0IGJ1 c190eXBlIGxvY29tb19idXNfdHlwZSA9IHsKZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2NvbW1vbi9z YTExMTEuYyBiL2FyY2gvYXJtL2NvbW1vbi9zYTExMTEuYwppbmRleCBmZjVlMGQwNGNiODkuLjA5 MmEyZWJjMGMyOCAxMDA2NDQKLS0tIGEvYXJjaC9hcm0vY29tbW9uL3NhMTExMS5jCisrKyBiL2Fy Y2gvYXJtL2NvbW1vbi9zYTExMTEuYwpAQCAtMTM2NCwxNSArMTM2NCwxMyBAQCBzdGF0aWMgaW50 IHNhMTExMV9idXNfcHJvYmUoc3RydWN0IGRldmljZSAqZGV2KQogCXJldHVybiByZXQ7CiB9CiAK LXN0YXRpYyBpbnQgc2ExMTExX2J1c19yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQorc3RhdGlj IHZvaWQgc2ExMTExX2J1c19yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogewogCXN0cnVjdCBz YTExMTFfZGV2ICpzYWRldiA9IHRvX3NhMTExMV9kZXZpY2UoZGV2KTsKIAlzdHJ1Y3Qgc2ExMTEx X2RyaXZlciAqZHJ2ID0gU0ExMTExX0RSVihkZXYtPmRyaXZlcik7CiAKIAlpZiAoZHJ2LT5yZW1v dmUpCiAJCWRydi0+cmVtb3ZlKHNhZGV2KTsKLQotCXJldHVybiAwOwogfQogCiBzdHJ1Y3QgYnVz X3R5cGUgc2ExMTExX2J1c190eXBlID0gewpkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vbWFjaC1ycGMv ZWNhcmQuYyBiL2FyY2gvYXJtL21hY2gtcnBjL2VjYXJkLmMKaW5kZXggODI3YjUwZjFjNzNlLi41 MzgxM2Y5NDY0YTIgMTAwNjQ0Ci0tLSBhL2FyY2gvYXJtL21hY2gtcnBjL2VjYXJkLmMKKysrIGIv YXJjaC9hcm0vbWFjaC1ycGMvZWNhcmQuYwpAQCAtMTA1Miw3ICsxMDUyLDcgQEAgc3RhdGljIGlu dCBlY2FyZF9kcnZfcHJvYmUoc3RydWN0IGRldmljZSAqZGV2KQogCXJldHVybiByZXQ7CiB9CiAK LXN0YXRpYyBpbnQgZWNhcmRfZHJ2X3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCitzdGF0aWMg dm9pZCBlY2FyZF9kcnZfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKIHsKIAlzdHJ1Y3QgZXhw YW5zaW9uX2NhcmQgKmVjID0gRUNBUkRfREVWKGRldik7CiAJc3RydWN0IGVjYXJkX2RyaXZlciAq ZHJ2ID0gRUNBUkRfRFJWKGRldi0+ZHJpdmVyKTsKQEAgLTEwNjcsOCArMTA2Nyw2IEBAIHN0YXRp YyBpbnQgZWNhcmRfZHJ2X3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJZWMtPm9wcyA9ICZl Y2FyZF9kZWZhdWx0X29wczsKIAliYXJyaWVyKCk7CiAJZWMtPmlycV9kYXRhID0gTlVMTDsKLQot CXJldHVybiAwOwogfQogCiAvKgpkaWZmIC0tZ2l0IGEvYXJjaC9taXBzL3NnaS1pcDIyL2lwMjIt Z2lvLmMgYi9hcmNoL21pcHMvc2dpLWlwMjIvaXAyMi1naW8uYwppbmRleCBkZTA3NjhhNDllZTgu LmRmYzUyZjY2MWFkMCAxMDA2NDQKLS0tIGEvYXJjaC9taXBzL3NnaS1pcDIyL2lwMjItZ2lvLmMK KysrIGIvYXJjaC9taXBzL3NnaS1pcDIyL2lwMjItZ2lvLmMKQEAgLTE0MywxNCArMTQzLDEzIEBA IHN0YXRpYyBpbnQgZ2lvX2RldmljZV9wcm9iZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJcmV0dXJu IGVycm9yOwogfQogCi1zdGF0aWMgaW50IGdpb19kZXZpY2VfcmVtb3ZlKHN0cnVjdCBkZXZpY2Ug KmRldikKK3N0YXRpYyB2b2lkIGdpb19kZXZpY2VfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikK IHsKIAlzdHJ1Y3QgZ2lvX2RldmljZSAqZ2lvX2RldiA9IHRvX2dpb19kZXZpY2UoZGV2KTsKIAlz dHJ1Y3QgZ2lvX2RyaXZlciAqZHJ2ID0gdG9fZ2lvX2RyaXZlcihkZXYtPmRyaXZlcik7CiAKIAlp ZiAoZGV2LT5kcml2ZXIgJiYgZHJ2LT5yZW1vdmUpCiAJCWRydi0+cmVtb3ZlKGdpb19kZXYpOwot CXJldHVybiAwOwogfQogCiBzdGF0aWMgdm9pZCBnaW9fZGV2aWNlX3NodXRkb3duKHN0cnVjdCBk ZXZpY2UgKmRldikKZGlmZiAtLWdpdCBhL2FyY2gvcGFyaXNjL2tlcm5lbC9kcml2ZXJzLmMgYi9h cmNoL3BhcmlzYy9rZXJuZWwvZHJpdmVycy5jCmluZGV4IDgwZmEwNjUwNzM2Yi4uNzc2ZDYyNGE3 MjA3IDEwMDY0NAotLS0gYS9hcmNoL3BhcmlzYy9rZXJuZWwvZHJpdmVycy5jCisrKyBiL2FyY2gv cGFyaXNjL2tlcm5lbC9kcml2ZXJzLmMKQEAgLTEzMywxNCArMTMzLDEzIEBAIHN0YXRpYyBpbnQg cGFyaXNjX2RyaXZlcl9wcm9iZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJcmV0dXJuIHJjOwogfQog Ci1zdGF0aWMgaW50IF9fZXhpdCBwYXJpc2NfZHJpdmVyX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpk ZXYpCitzdGF0aWMgdm9pZCBfX2V4aXQgcGFyaXNjX2RyaXZlcl9yZW1vdmUoc3RydWN0IGRldmlj ZSAqZGV2KQogewogCXN0cnVjdCBwYXJpc2NfZGV2aWNlICpwYV9kZXYgPSB0b19wYXJpc2NfZGV2 aWNlKGRldik7CiAJc3RydWN0IHBhcmlzY19kcml2ZXIgKnBhX2RydiA9IHRvX3BhcmlzY19kcml2 ZXIoZGV2LT5kcml2ZXIpOworCiAJaWYgKHBhX2Rydi0+cmVtb3ZlKQogCQlwYV9kcnYtPnJlbW92 ZShwYV9kZXYpOwotCi0JcmV0dXJuIDA7CiB9CiAJCiAKZGlmZiAtLWdpdCBhL2FyY2gvcG93ZXJw Yy9wbGF0Zm9ybXMvcHMzL3N5c3RlbS1idXMuYyBiL2FyY2gvcG93ZXJwYy9wbGF0Zm9ybXMvcHMz L3N5c3RlbS1idXMuYwppbmRleCAxYTU2NjU4NzUxNjUuLmNjNTc3NGM2NGZhZSAxMDA2NDQKLS0t IGEvYXJjaC9wb3dlcnBjL3BsYXRmb3Jtcy9wczMvc3lzdGVtLWJ1cy5jCisrKyBiL2FyY2gvcG93 ZXJwYy9wbGF0Zm9ybXMvcHMzL3N5c3RlbS1idXMuYwpAQCAtMzgxLDcgKzM4MSw3IEBAIHN0YXRp YyBpbnQgcHMzX3N5c3RlbV9idXNfcHJvYmUoc3RydWN0IGRldmljZSAqX2RldikKIAlyZXR1cm4g cmVzdWx0OwogfQogCi1zdGF0aWMgaW50IHBzM19zeXN0ZW1fYnVzX3JlbW92ZShzdHJ1Y3QgZGV2 aWNlICpfZGV2KQorc3RhdGljIHZvaWQgcHMzX3N5c3RlbV9idXNfcmVtb3ZlKHN0cnVjdCBkZXZp Y2UgKl9kZXYpCiB7CiAJc3RydWN0IHBzM19zeXN0ZW1fYnVzX2RldmljZSAqZGV2ID0gcHMzX2Rl dl90b19zeXN0ZW1fYnVzX2RldihfZGV2KTsKIAlzdHJ1Y3QgcHMzX3N5c3RlbV9idXNfZHJpdmVy ICpkcnY7CkBAIC0zOTksNyArMzk5LDYgQEAgc3RhdGljIGludCBwczNfc3lzdGVtX2J1c19yZW1v dmUoc3RydWN0IGRldmljZSAqX2RldikKIAkJCV9fZnVuY19fLCBfX0xJTkVfXywgZHJ2LT5jb3Jl Lm5hbWUpOwogCiAJcHJfZGVidWcoIiA8LSAlczolZDogJXNcbiIsIF9fZnVuY19fLCBfX0xJTkVf XywgZGV2X25hbWUoJmRldi0+Y29yZSkpOwotCXJldHVybiAwOwogfQogCiBzdGF0aWMgdm9pZCBw czNfc3lzdGVtX2J1c19zaHV0ZG93bihzdHJ1Y3QgZGV2aWNlICpfZGV2KQpkaWZmIC0tZ2l0IGEv YXJjaC9wb3dlcnBjL3BsYXRmb3Jtcy9wc2VyaWVzL2libWVidXMuYyBiL2FyY2gvcG93ZXJwYy9w bGF0Zm9ybXMvcHNlcmllcy9pYm1lYnVzLmMKaW5kZXggYzZjNzllZjU1ZTEzLi43ZWUzZWQ3ZDZj YzIgMTAwNjQ0Ci0tLSBhL2FyY2gvcG93ZXJwYy9wbGF0Zm9ybXMvcHNlcmllcy9pYm1lYnVzLmMK KysrIGIvYXJjaC9wb3dlcnBjL3BsYXRmb3Jtcy9wc2VyaWVzL2libWVidXMuYwpAQCAtMzY2LDE0 ICszNjYsMTMgQEAgc3RhdGljIGludCBpYm1lYnVzX2J1c19kZXZpY2VfcHJvYmUoc3RydWN0IGRl dmljZSAqZGV2KQogCXJldHVybiBlcnJvcjsKIH0KIAotc3RhdGljIGludCBpYm1lYnVzX2J1c19k ZXZpY2VfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKK3N0YXRpYyB2b2lkIGlibWVidXNfYnVz X2RldmljZV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogewogCXN0cnVjdCBwbGF0Zm9ybV9k ZXZpY2UgKm9mX2RldiA9IHRvX3BsYXRmb3JtX2RldmljZShkZXYpOwogCXN0cnVjdCBwbGF0Zm9y bV9kcml2ZXIgKmRydiA9IHRvX3BsYXRmb3JtX2RyaXZlcihkZXYtPmRyaXZlcik7CiAKIAlpZiAo ZGV2LT5kcml2ZXIgJiYgZHJ2LT5yZW1vdmUpCiAJCWRydi0+cmVtb3ZlKG9mX2Rldik7Ci0JcmV0 dXJuIDA7CiB9CiAKIHN0YXRpYyB2b2lkIGlibWVidXNfYnVzX2RldmljZV9zaHV0ZG93bihzdHJ1 Y3QgZGV2aWNlICpkZXYpCmRpZmYgLS1naXQgYS9hcmNoL3Bvd2VycGMvcGxhdGZvcm1zL3BzZXJp ZXMvdmlvLmMgYi9hcmNoL3Bvd2VycGMvcGxhdGZvcm1zL3BzZXJpZXMvdmlvLmMKaW5kZXggZTAw ZjM3MjVlYzk2Li41ODI4M2NlY2JkNTIgMTAwNjQ0Ci0tLSBhL2FyY2gvcG93ZXJwYy9wbGF0Zm9y bXMvcHNlcmllcy92aW8uYworKysgYi9hcmNoL3Bvd2VycGMvcGxhdGZvcm1zL3BzZXJpZXMvdmlv LmMKQEAgLTEyNTcsNyArMTI1Nyw3IEBAIHN0YXRpYyBpbnQgdmlvX2J1c19wcm9iZShzdHJ1Y3Qg ZGV2aWNlICpkZXYpCiB9CiAKIC8qIGNvbnZlcnQgZnJvbSBzdHJ1Y3QgZGV2aWNlIHRvIHN0cnVj dCB2aW9fZGV2IGFuZCBwYXNzIHRvIGRyaXZlci4gKi8KLXN0YXRpYyBpbnQgdmlvX2J1c19yZW1v dmUoc3RydWN0IGRldmljZSAqZGV2KQorc3RhdGljIHZvaWQgdmlvX2J1c19yZW1vdmUoc3RydWN0 IGRldmljZSAqZGV2KQogewogCXN0cnVjdCB2aW9fZGV2ICp2aW9kZXYgPSB0b192aW9fZGV2KGRl dik7CiAJc3RydWN0IHZpb19kcml2ZXIgKnZpb2RydiA9IHRvX3Zpb19kcml2ZXIoZGV2LT5kcml2 ZXIpOwpAQCAtMTI3Niw3ICsxMjc2LDYgQEAgc3RhdGljIGludCB2aW9fYnVzX3JlbW92ZShzdHJ1 Y3QgZGV2aWNlICpkZXYpCiAJCXZpb19jbW9fYnVzX3JlbW92ZSh2aW9kZXYpOwogCiAJcHV0X2Rl dmljZShkZXZwdHIpOwotCXJldHVybiAwOwogfQogCiBzdGF0aWMgdm9pZCB2aW9fYnVzX3NodXRk b3duKHN0cnVjdCBkZXZpY2UgKmRldikKZGlmZiAtLWdpdCBhL2RyaXZlcnMvYWNwaS9idXMuYyBi L2RyaXZlcnMvYWNwaS9idXMuYwppbmRleCBlZTI0MjQ2ZDg4ZmQuLjUxZjM3NGU0Mjg2OSAxMDA2 NDQKLS0tIGEvZHJpdmVycy9hY3BpL2J1cy5jCisrKyBiL2RyaXZlcnMvYWNwaS9idXMuYwpAQCAt MTAxOCw3ICsxMDE4LDcgQEAgc3RhdGljIGludCBhY3BpX2RldmljZV9wcm9iZShzdHJ1Y3QgZGV2 aWNlICpkZXYpCiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgYWNwaV9kZXZpY2VfcmVtb3Zl KHN0cnVjdCBkZXZpY2UgKmRldikKK3N0YXRpYyB2b2lkIGFjcGlfZGV2aWNlX3JlbW92ZShzdHJ1 Y3QgZGV2aWNlICpkZXYpCiB7CiAJc3RydWN0IGFjcGlfZGV2aWNlICphY3BpX2RldiA9IHRvX2Fj cGlfZGV2aWNlKGRldik7CiAJc3RydWN0IGFjcGlfZHJpdmVyICphY3BpX2RydiA9IGFjcGlfZGV2 LT5kcml2ZXI7CkBAIC0xMDMzLDcgKzEwMzMsNiBAQCBzdGF0aWMgaW50IGFjcGlfZGV2aWNlX3Jl bW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJYWNwaV9kZXYtPmRyaXZlcl9kYXRhID0gTlVMTDsK IAogCXB1dF9kZXZpY2UoZGV2KTsKLQlyZXR1cm4gMDsKIH0KIAogc3RydWN0IGJ1c190eXBlIGFj cGlfYnVzX3R5cGUgPSB7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2FtYmEvYnVzLmMgYi9kcml2ZXJz L2FtYmEvYnVzLmMKaW5kZXggOTM5Y2EyMjBiZjc4Li45NjIwNDExNDg0ODIgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvYW1iYS9idXMuYworKysgYi9kcml2ZXJzL2FtYmEvYnVzLmMKQEAgLTIxOSw3ICsy MTksNyBAQCBzdGF0aWMgaW50IGFtYmFfcHJvYmUoc3RydWN0IGRldmljZSAqZGV2KQogCXJldHVy biByZXQ7CiB9CiAKLXN0YXRpYyBpbnQgYW1iYV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQor c3RhdGljIHZvaWQgYW1iYV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogewogCXN0cnVjdCBh bWJhX2RldmljZSAqcGNkZXYgPSB0b19hbWJhX2RldmljZShkZXYpOwogCXN0cnVjdCBhbWJhX2Ry aXZlciAqZHJ2ID0gdG9fYW1iYV9kcml2ZXIoZGV2LT5kcml2ZXIpOwpAQCAtMjM2LDggKzIzNiw2 IEBAIHN0YXRpYyBpbnQgYW1iYV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogCiAJYW1iYV9w dXRfZGlzYWJsZV9wY2xrKHBjZGV2KTsKIAlkZXZfcG1fZG9tYWluX2RldGFjaChkZXYsIHRydWUp OwotCi0JcmV0dXJuIDA7CiB9CiAKIHN0YXRpYyB2b2lkIGFtYmFfc2h1dGRvd24oc3RydWN0IGRl dmljZSAqZGV2KQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9iYXNlL2F1eGlsaWFyeS5jIGIvZHJpdmVy cy9iYXNlL2F1eGlsaWFyeS5jCmluZGV4IGFkYzE5OWRmYmEzYy4uMGM4NmY1YmVkOWY0IDEwMDY0 NAotLS0gYS9kcml2ZXJzL2Jhc2UvYXV4aWxpYXJ5LmMKKysrIGIvZHJpdmVycy9iYXNlL2F1eGls aWFyeS5jCkBAIC03OSw3ICs3OSw3IEBAIHN0YXRpYyBpbnQgYXV4aWxpYXJ5X2J1c19wcm9iZShz dHJ1Y3QgZGV2aWNlICpkZXYpCiAJcmV0dXJuIHJldDsKIH0KIAotc3RhdGljIGludCBhdXhpbGlh cnlfYnVzX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCitzdGF0aWMgdm9pZCBhdXhpbGlhcnlf YnVzX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiB7CiAJc3RydWN0IGF1eGlsaWFyeV9kcml2 ZXIgKmF1eGRydiA9IHRvX2F1eGlsaWFyeV9kcnYoZGV2LT5kcml2ZXIpOwogCXN0cnVjdCBhdXhp bGlhcnlfZGV2aWNlICphdXhkZXYgPSB0b19hdXhpbGlhcnlfZGV2KGRldik7CkBAIC04Nyw4ICs4 Nyw2IEBAIHN0YXRpYyBpbnQgYXV4aWxpYXJ5X2J1c19yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2 KQogCWlmIChhdXhkcnYtPnJlbW92ZSkKIAkJYXV4ZHJ2LT5yZW1vdmUoYXV4ZGV2KTsKIAlkZXZf cG1fZG9tYWluX2RldGFjaChkZXYsIHRydWUpOwotCi0JcmV0dXJuIDA7CiB9CiAKIHN0YXRpYyB2 b2lkIGF1eGlsaWFyeV9idXNfc2h1dGRvd24oc3RydWN0IGRldmljZSAqZGV2KQpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9iYXNlL2lzYS5jIGIvZHJpdmVycy9iYXNlL2lzYS5jCmluZGV4IGFhNDczNzY2 NzAyNi4uNTVlM2VlMmRhOThmIDEwMDY0NAotLS0gYS9kcml2ZXJzL2Jhc2UvaXNhLmMKKysrIGIv ZHJpdmVycy9iYXNlL2lzYS5jCkBAIC00NiwxNCArNDYsMTIgQEAgc3RhdGljIGludCBpc2FfYnVz X3Byb2JlKHN0cnVjdCBkZXZpY2UgKmRldikKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCBp c2FfYnVzX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCitzdGF0aWMgdm9pZCBpc2FfYnVzX3Jl bW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiB7CiAJc3RydWN0IGlzYV9kcml2ZXIgKmlzYV9kcml2 ZXIgPSBkZXYtPnBsYXRmb3JtX2RhdGE7CiAKIAlpZiAoaXNhX2RyaXZlciAmJiBpc2FfZHJpdmVy LT5yZW1vdmUpCiAJCWlzYV9kcml2ZXItPnJlbW92ZShkZXYsIHRvX2lzYV9kZXYoZGV2KS0+aWQp OwotCi0JcmV0dXJuIDA7CiB9CiAKIHN0YXRpYyB2b2lkIGlzYV9idXNfc2h1dGRvd24oc3RydWN0 IGRldmljZSAqZGV2KQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9iYXNlL3BsYXRmb3JtLmMgYi9kcml2 ZXJzL2Jhc2UvcGxhdGZvcm0uYwppbmRleCA4NjQwNTc4ZjQ1ZTkuLmE5NGI3ZjQ1NDg4MSAxMDA2 NDQKLS0tIGEvZHJpdmVycy9iYXNlL3BsYXRmb3JtLmMKKysrIGIvZHJpdmVycy9iYXNlL3BsYXRm b3JtLmMKQEAgLTE0MzgsNyArMTQzOCw3IEBAIHN0YXRpYyBpbnQgcGxhdGZvcm1fcHJvYmUoc3Ry dWN0IGRldmljZSAqX2RldikKIAlyZXR1cm4gcmV0OwogfQogCi1zdGF0aWMgaW50IHBsYXRmb3Jt X3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpfZGV2KQorc3RhdGljIHZvaWQgcGxhdGZvcm1fcmVtb3Zl KHN0cnVjdCBkZXZpY2UgKl9kZXYpCiB7CiAJc3RydWN0IHBsYXRmb3JtX2RyaXZlciAqZHJ2ID0g dG9fcGxhdGZvcm1fZHJpdmVyKF9kZXYtPmRyaXZlcik7CiAJc3RydWN0IHBsYXRmb3JtX2Rldmlj ZSAqZGV2ID0gdG9fcGxhdGZvcm1fZGV2aWNlKF9kZXYpOwpAQCAtMTQ1MCw4ICsxNDUwLDYgQEAg c3RhdGljIGludCBwbGF0Zm9ybV9yZW1vdmUoc3RydWN0IGRldmljZSAqX2RldikKIAkJCWRldl93 YXJuKF9kZXYsICJyZW1vdmUgY2FsbGJhY2sgcmV0dXJuZWQgYSBub24temVybyB2YWx1ZS4gVGhp cyB3aWxsIGJlIGlnbm9yZWQuXG4iKTsKIAl9CiAJZGV2X3BtX2RvbWFpbl9kZXRhY2goX2Rldiwg dHJ1ZSk7Ci0KLQlyZXR1cm4gMDsKIH0KIAogc3RhdGljIHZvaWQgcGxhdGZvcm1fc2h1dGRvd24o c3RydWN0IGRldmljZSAqX2RldikKZGlmZiAtLWdpdCBhL2RyaXZlcnMvYmNtYS9tYWluLmMgYi9k cml2ZXJzL2JjbWEvbWFpbi5jCmluZGV4IDY1MzU2MTRhN2RjMS4uZTA3NjYzMGQxN2JkIDEwMDY0 NAotLS0gYS9kcml2ZXJzL2JjbWEvbWFpbi5jCisrKyBiL2RyaXZlcnMvYmNtYS9tYWluLmMKQEAg LTI3LDcgKzI3LDcgQEAgc3RhdGljIERFRklORV9NVVRFWChiY21hX2J1c2VzX211dGV4KTsKIAog c3RhdGljIGludCBiY21hX2J1c19tYXRjaChzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBkZXZp Y2VfZHJpdmVyICpkcnYpOwogc3RhdGljIGludCBiY21hX2RldmljZV9wcm9iZShzdHJ1Y3QgZGV2 aWNlICpkZXYpOwotc3RhdGljIGludCBiY21hX2RldmljZV9yZW1vdmUoc3RydWN0IGRldmljZSAq ZGV2KTsKK3N0YXRpYyB2b2lkIGJjbWFfZGV2aWNlX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYp Owogc3RhdGljIGludCBiY21hX2RldmljZV91ZXZlbnQoc3RydWN0IGRldmljZSAqZGV2LCBzdHJ1 Y3Qga29ial91ZXZlbnRfZW52ICplbnYpOwogCiBzdGF0aWMgc3NpemVfdCBtYW51Zl9zaG93KHN0 cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IGRldmljZV9hdHRyaWJ1dGUgKmF0dHIsIGNoYXIgKmJ1 ZikKQEAgLTYxNCw3ICs2MTQsNyBAQCBzdGF0aWMgaW50IGJjbWFfZGV2aWNlX3Byb2JlKHN0cnVj dCBkZXZpY2UgKmRldikKIAlyZXR1cm4gZXJyOwogfQogCi1zdGF0aWMgaW50IGJjbWFfZGV2aWNl X3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCitzdGF0aWMgdm9pZCBiY21hX2RldmljZV9yZW1v dmUoc3RydWN0IGRldmljZSAqZGV2KQogewogCXN0cnVjdCBiY21hX2RldmljZSAqY29yZSA9IGNv bnRhaW5lcl9vZihkZXYsIHN0cnVjdCBiY21hX2RldmljZSwgZGV2KTsKIAlzdHJ1Y3QgYmNtYV9k cml2ZXIgKmFkcnYgPSBjb250YWluZXJfb2YoZGV2LT5kcml2ZXIsIHN0cnVjdCBiY21hX2RyaXZl ciwKQEAgLTYyMyw4ICs2MjMsNiBAQCBzdGF0aWMgaW50IGJjbWFfZGV2aWNlX3JlbW92ZShzdHJ1 Y3QgZGV2aWNlICpkZXYpCiAJaWYgKGFkcnYtPnJlbW92ZSkKIAkJYWRydi0+cmVtb3ZlKGNvcmUp OwogCXB1dF9kZXZpY2UoZGV2KTsKLQotCXJldHVybiAwOwogfQogCiBzdGF0aWMgaW50IGJjbWFf ZGV2aWNlX3VldmVudChzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBrb2JqX3VldmVudF9lbnYg KmVudikKZGlmZiAtLWdpdCBhL2RyaXZlcnMvYnVzL3N1bnhpLXJzYi5jIGIvZHJpdmVycy9idXMv c3VueGktcnNiLmMKaW5kZXggZDQ2ZGIxMzJkMDg1Li42ZjIyNWRkZGM3NGYgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvYnVzL3N1bnhpLXJzYi5jCisrKyBiL2RyaXZlcnMvYnVzL3N1bnhpLXJzYi5jCkBA IC0xNjksMTMgKzE2OSwxMSBAQCBzdGF0aWMgaW50IHN1bnhpX3JzYl9kZXZpY2VfcHJvYmUoc3Ry dWN0IGRldmljZSAqZGV2KQogCXJldHVybiBkcnYtPnByb2JlKHJkZXYpOwogfQogCi1zdGF0aWMg aW50IHN1bnhpX3JzYl9kZXZpY2VfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKK3N0YXRpYyB2 b2lkIHN1bnhpX3JzYl9kZXZpY2VfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKIHsKIAljb25z dCBzdHJ1Y3Qgc3VueGlfcnNiX2RyaXZlciAqZHJ2ID0gdG9fc3VueGlfcnNiX2RyaXZlcihkZXYt PmRyaXZlcik7CiAKIAlkcnYtPnJlbW92ZSh0b19zdW54aV9yc2JfZGV2aWNlKGRldikpOwotCi0J cmV0dXJuIDA7CiB9CiAKIHN0YXRpYyBzdHJ1Y3QgYnVzX3R5cGUgc3VueGlfcnNiX2J1cyA9IHsK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvY3hsL2NvcmUuYyBiL2RyaXZlcnMvY3hsL2NvcmUuYwppbmRl eCBhMmU0ZDU0ZmM3YmMuLjJiOTBiN2MzYjlkNyAxMDA2NDQKLS0tIGEvZHJpdmVycy9jeGwvY29y ZS5jCisrKyBiL2RyaXZlcnMvY3hsL2NvcmUuYwpAQCAtMTAzNCwxMyArMTAzNCwxMiBAQCBzdGF0 aWMgaW50IGN4bF9idXNfcHJvYmUoc3RydWN0IGRldmljZSAqZGV2KQogCXJldHVybiB0b19jeGxf ZHJ2KGRldi0+ZHJpdmVyKS0+cHJvYmUoZGV2KTsKIH0KIAotc3RhdGljIGludCBjeGxfYnVzX3Jl bW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCitzdGF0aWMgdm9pZCBjeGxfYnVzX3JlbW92ZShzdHJ1 Y3QgZGV2aWNlICpkZXYpCiB7CiAJc3RydWN0IGN4bF9kcml2ZXIgKmN4bF9kcnYgPSB0b19jeGxf ZHJ2KGRldi0+ZHJpdmVyKTsKIAogCWlmIChjeGxfZHJ2LT5yZW1vdmUpCiAJCWN4bF9kcnYtPnJl bW92ZShkZXYpOwotCXJldHVybiAwOwogfQogCiBzdHJ1Y3QgYnVzX3R5cGUgY3hsX2J1c190eXBl ID0gewpkaWZmIC0tZ2l0IGEvZHJpdmVycy9kYXgvYnVzLmMgYi9kcml2ZXJzL2RheC9idXMuYwpp bmRleCA1YWVlMjZlMWJiZDYuLjZjYzRkYTRjNzEzZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9kYXgv YnVzLmMKKysrIGIvZHJpdmVycy9kYXgvYnVzLmMKQEAgLTE3MiwxNSArMTcyLDEzIEBAIHN0YXRp YyBpbnQgZGF4X2J1c19wcm9iZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJcmV0dXJuIDA7CiB9CiAK LXN0YXRpYyBpbnQgZGF4X2J1c19yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQorc3RhdGljIHZv aWQgZGF4X2J1c19yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogewogCXN0cnVjdCBkYXhfZGV2 aWNlX2RyaXZlciAqZGF4X2RydiA9IHRvX2RheF9kcnYoZGV2LT5kcml2ZXIpOwogCXN0cnVjdCBk ZXZfZGF4ICpkZXZfZGF4ID0gdG9fZGV2X2RheChkZXYpOwogCiAJaWYgKGRheF9kcnYtPnJlbW92 ZSkKIAkJZGF4X2Rydi0+cmVtb3ZlKGRldl9kYXgpOwotCi0JcmV0dXJuIDA7CiB9CiAKIHN0YXRp YyBzdHJ1Y3QgYnVzX3R5cGUgZGF4X2J1c190eXBlID0gewpkaWZmIC0tZ2l0IGEvZHJpdmVycy9k bWEvaWR4ZC9zeXNmcy5jIGIvZHJpdmVycy9kbWEvaWR4ZC9zeXNmcy5jCmluZGV4IDA0NjBkNThl Mzk0MS4uNWEwMTdjNjJjNzUyIDEwMDY0NAotLS0gYS9kcml2ZXJzL2RtYS9pZHhkL3N5c2ZzLmMK KysrIGIvZHJpdmVycy9kbWEvaWR4ZC9zeXNmcy5jCkBAIC0yNjAsNyArMjYwLDcgQEAgc3RhdGlj IHZvaWQgZGlzYWJsZV93cShzdHJ1Y3QgaWR4ZF93cSAqd3EpCiAJZGV2X2luZm8oZGV2LCAid3Eg JXMgZGlzYWJsZWRcbiIsIGRldl9uYW1lKCZ3cS0+Y29uZl9kZXYpKTsKIH0KIAotc3RhdGljIGlu dCBpZHhkX2NvbmZpZ19idXNfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKK3N0YXRpYyB2b2lk IGlkeGRfY29uZmlnX2J1c19yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogewogCWludCByYzsK IApAQCAtMzA1LDggKzMwNSw2IEBAIHN0YXRpYyBpbnQgaWR4ZF9jb25maWdfYnVzX3JlbW92ZShz dHJ1Y3QgZGV2aWNlICpkZXYpCiAJCQlkZXZfaW5mbyhkZXYsICJEZXZpY2UgJXMgZGlzYWJsZWRc biIsIGRldl9uYW1lKGRldikpOwogCiAJfQotCi0JcmV0dXJuIDA7CiB9CiAKIHN0YXRpYyB2b2lk IGlkeGRfY29uZmlnX2J1c19zaHV0ZG93bihzdHJ1Y3QgZGV2aWNlICpkZXYpCmRpZmYgLS1naXQg YS9kcml2ZXJzL2ZpcmV3aXJlL2NvcmUtZGV2aWNlLmMgYi9kcml2ZXJzL2ZpcmV3aXJlL2NvcmUt ZGV2aWNlLmMKaW5kZXggNjgyMTY5ODgzOTFmLi45MGVkOGZkYWJhNzUgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZmlyZXdpcmUvY29yZS1kZXZpY2UuYworKysgYi9kcml2ZXJzL2ZpcmV3aXJlL2NvcmUt ZGV2aWNlLmMKQEAgLTE4NywxNCArMTg3LDEyIEBAIHN0YXRpYyBpbnQgZndfdW5pdF9wcm9iZShz dHJ1Y3QgZGV2aWNlICpkZXYpCiAJcmV0dXJuIGRyaXZlci0+cHJvYmUoZndfdW5pdChkZXYpLCB1 bml0X21hdGNoKGRldiwgZGV2LT5kcml2ZXIpKTsKIH0KIAotc3RhdGljIGludCBmd191bml0X3Jl bW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCitzdGF0aWMgdm9pZCBmd191bml0X3JlbW92ZShzdHJ1 Y3QgZGV2aWNlICpkZXYpCiB7CiAJc3RydWN0IGZ3X2RyaXZlciAqZHJpdmVyID0KIAkJCWNvbnRh aW5lcl9vZihkZXYtPmRyaXZlciwgc3RydWN0IGZ3X2RyaXZlciwgZHJpdmVyKTsKIAogCWRyaXZl ci0+cmVtb3ZlKGZ3X3VuaXQoZGV2KSk7Ci0KLQlyZXR1cm4gMDsKIH0KIAogc3RhdGljIGludCBn ZXRfbW9kYWxpYXMoc3RydWN0IGZ3X3VuaXQgKnVuaXQsIGNoYXIgKmJ1ZmZlciwgc2l6ZV90IGJ1 ZmZlcl9zaXplKQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9maXJtd2FyZS9hcm1fc2NtaS9idXMuYyBi L2RyaXZlcnMvZmlybXdhcmUvYXJtX3NjbWkvYnVzLmMKaW5kZXggNzg0Y2YwMDI3ZGEzLi4yNjgy YzNkZjY1MWMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZmlybXdhcmUvYXJtX3NjbWkvYnVzLmMKKysr IGIvZHJpdmVycy9maXJtd2FyZS9hcm1fc2NtaS9idXMuYwpAQCAtMTE2LDE1ICsxMTYsMTMgQEAg c3RhdGljIGludCBzY21pX2Rldl9wcm9iZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJcmV0dXJuIHNj bWlfZHJ2LT5wcm9iZShzY21pX2Rldik7CiB9CiAKLXN0YXRpYyBpbnQgc2NtaV9kZXZfcmVtb3Zl KHN0cnVjdCBkZXZpY2UgKmRldikKK3N0YXRpYyB2b2lkIHNjbWlfZGV2X3JlbW92ZShzdHJ1Y3Qg ZGV2aWNlICpkZXYpCiB7CiAJc3RydWN0IHNjbWlfZHJpdmVyICpzY21pX2RydiA9IHRvX3NjbWlf ZHJpdmVyKGRldi0+ZHJpdmVyKTsKIAlzdHJ1Y3Qgc2NtaV9kZXZpY2UgKnNjbWlfZGV2ID0gdG9f c2NtaV9kZXYoZGV2KTsKIAogCWlmIChzY21pX2Rydi0+cmVtb3ZlKQogCQlzY21pX2Rydi0+cmVt b3ZlKHNjbWlfZGV2KTsKLQotCXJldHVybiAwOwogfQogCiBzdGF0aWMgc3RydWN0IGJ1c190eXBl IHNjbWlfYnVzX3R5cGUgPSB7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2Zpcm13YXJlL2dvb2dsZS9j b3JlYm9vdF90YWJsZS5jIGIvZHJpdmVycy9maXJtd2FyZS9nb29nbGUvY29yZWJvb3RfdGFibGUu YwppbmRleCBkYzgzZWExMThjNjcuLmM1MmJjYWE5ZGVmNiAxMDA2NDQKLS0tIGEvZHJpdmVycy9m aXJtd2FyZS9nb29nbGUvY29yZWJvb3RfdGFibGUuYworKysgYi9kcml2ZXJzL2Zpcm13YXJlL2dv b2dsZS9jb3JlYm9vdF90YWJsZS5jCkBAIC00NCwxNSArNDQsMTMgQEAgc3RhdGljIGludCBjb3Jl Ym9vdF9idXNfcHJvYmUoc3RydWN0IGRldmljZSAqZGV2KQogCXJldHVybiByZXQ7CiB9CiAKLXN0 YXRpYyBpbnQgY29yZWJvb3RfYnVzX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCitzdGF0aWMg dm9pZCBjb3JlYm9vdF9idXNfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKIHsKIAlzdHJ1Y3Qg Y29yZWJvb3RfZGV2aWNlICpkZXZpY2UgPSBDQl9ERVYoZGV2KTsKIAlzdHJ1Y3QgY29yZWJvb3Rf ZHJpdmVyICpkcml2ZXIgPSBDQl9EUlYoZGV2LT5kcml2ZXIpOwogCiAJaWYgKGRyaXZlci0+cmVt b3ZlKQogCQlkcml2ZXItPnJlbW92ZShkZXZpY2UpOwotCi0JcmV0dXJuIDA7CiB9CiAKIHN0YXRp YyBzdHJ1Y3QgYnVzX3R5cGUgY29yZWJvb3RfYnVzX3R5cGUgPSB7CmRpZmYgLS1naXQgYS9kcml2 ZXJzL2ZwZ2EvZGZsLmMgYi9kcml2ZXJzL2ZwZ2EvZGZsLmMKaW5kZXggNTExYjIwZmYzNWEzLi4x YWU2Nzc5YTBkZDYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZnBnYS9kZmwuYworKysgYi9kcml2ZXJz L2ZwZ2EvZGZsLmMKQEAgLTI4NCwxNSArMjg0LDEzIEBAIHN0YXRpYyBpbnQgZGZsX2J1c19wcm9i ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJcmV0dXJuIGRkcnYtPnByb2JlKGRkZXYpOwogfQogCi1z dGF0aWMgaW50IGRmbF9idXNfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKK3N0YXRpYyB2b2lk IGRmbF9idXNfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKIHsKIAlzdHJ1Y3QgZGZsX2RyaXZl ciAqZGRydiA9IHRvX2RmbF9kcnYoZGV2LT5kcml2ZXIpOwogCXN0cnVjdCBkZmxfZGV2aWNlICpk ZGV2ID0gdG9fZGZsX2RldihkZXYpOwogCiAJaWYgKGRkcnYtPnJlbW92ZSkKIAkJZGRydi0+cmVt b3ZlKGRkZXYpOwotCi0JcmV0dXJuIDA7CiB9CiAKIHN0YXRpYyBpbnQgZGZsX2J1c191ZXZlbnQo c3RydWN0IGRldmljZSAqZGV2LCBzdHJ1Y3Qga29ial91ZXZlbnRfZW52ICplbnYpCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2hpZC9oaWQtY29yZS5jIGIvZHJpdmVycy9oaWQvaGlkLWNvcmUuYwppbmRl eCA3ZGIzMzIxMzlmN2QuLmRiZWQyNTI0ZmQ0NyAxMDA2NDQKLS0tIGEvZHJpdmVycy9oaWQvaGlk LWNvcmUuYworKysgYi9kcml2ZXJzL2hpZC9oaWQtY29yZS5jCkBAIC0yMzAyLDcgKzIzMDIsNyBA QCBzdGF0aWMgaW50IGhpZF9kZXZpY2VfcHJvYmUoc3RydWN0IGRldmljZSAqZGV2KQogCXJldHVy biByZXQ7CiB9CiAKLXN0YXRpYyBpbnQgaGlkX2RldmljZV9yZW1vdmUoc3RydWN0IGRldmljZSAq ZGV2KQorc3RhdGljIHZvaWQgaGlkX2RldmljZV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQog ewogCXN0cnVjdCBoaWRfZGV2aWNlICpoZGV2ID0gdG9faGlkX2RldmljZShkZXYpOwogCXN0cnVj dCBoaWRfZHJpdmVyICpoZHJ2OwpAQCAtMjMyMiw4ICsyMzIyLDYgQEAgc3RhdGljIGludCBoaWRf ZGV2aWNlX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAKIAlpZiAoIWhkZXYtPmlvX3N0YXJ0 ZWQpCiAJCXVwKCZoZGV2LT5kcml2ZXJfaW5wdXRfbG9jayk7Ci0KLQlyZXR1cm4gMDsKIH0KIAog c3RhdGljIHNzaXplX3QgbW9kYWxpYXNfc2hvdyhzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBk ZXZpY2VfYXR0cmlidXRlICphLApkaWZmIC0tZ2l0IGEvZHJpdmVycy9oaWQvaW50ZWwtaXNoLWhp ZC9pc2h0cC9idXMuYyBiL2RyaXZlcnMvaGlkL2ludGVsLWlzaC1oaWQvaXNodHAvYnVzLmMKaW5k ZXggZjA4MDJiMDQ3ZWQ4Li44YTUxYmQ5Y2QwOTMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvaGlkL2lu dGVsLWlzaC1oaWQvaXNodHAvYnVzLmMKKysrIGIvZHJpdmVycy9oaWQvaW50ZWwtaXNoLWhpZC9p c2h0cC9idXMuYwpAQCAtMjU1LDcgKzI1NSw3IEBAIHN0YXRpYyBpbnQgaXNodHBfY2xfYnVzX21h dGNoKHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IGRldmljZV9kcml2ZXIgKmRydikKICAqCiAg KiBSZXR1cm46IFJldHVybiB2YWx1ZSBmcm9tIGRyaXZlciByZW1vdmUoKSBjYWxsLgogICovCi1z dGF0aWMgaW50IGlzaHRwX2NsX2RldmljZV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQorc3Rh dGljIHZvaWQgaXNodHBfY2xfZGV2aWNlX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiB7CiAJ c3RydWN0IGlzaHRwX2NsX2RldmljZSAqZGV2aWNlID0gdG9faXNodHBfY2xfZGV2aWNlKGRldik7 CiAJc3RydWN0IGlzaHRwX2NsX2RyaXZlciAqZHJpdmVyID0gdG9faXNodHBfY2xfZHJpdmVyKGRl di0+ZHJpdmVyKTsKQEAgLTI2Nyw4ICsyNjcsNiBAQCBzdGF0aWMgaW50IGlzaHRwX2NsX2Rldmlj ZV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogCiAJaWYgKGRyaXZlci0+cmVtb3ZlKQogCQlk cml2ZXItPnJlbW92ZShkZXZpY2UpOwotCi0JcmV0dXJuIDA7CiB9CiAKIC8qKgpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9odi92bWJ1c19kcnYuYyBiL2RyaXZlcnMvaHYvdm1idXNfZHJ2LmMKaW5kZXgg NTdiYmJhYTRlOGY3Li4zOTJjMWFjNGY4MTkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvaHYvdm1idXNf ZHJ2LmMKKysrIGIvZHJpdmVycy9odi92bWJ1c19kcnYuYwpAQCAtOTIyLDcgKzkyMiw3IEBAIHN0 YXRpYyBpbnQgdm1idXNfcHJvYmUoc3RydWN0IGRldmljZSAqY2hpbGRfZGV2aWNlKQogLyoKICAq IHZtYnVzX3JlbW92ZSAtIFJlbW92ZSBhIHZtYnVzIGRldmljZQogICovCi1zdGF0aWMgaW50IHZt YnVzX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpjaGlsZF9kZXZpY2UpCitzdGF0aWMgdm9pZCB2bWJ1 c19yZW1vdmUoc3RydWN0IGRldmljZSAqY2hpbGRfZGV2aWNlKQogewogCXN0cnVjdCBodl9kcml2 ZXIgKmRydjsKIAlzdHJ1Y3QgaHZfZGV2aWNlICpkZXYgPSBkZXZpY2VfdG9faHZfZGV2aWNlKGNo aWxkX2RldmljZSk7CkBAIC05MzIsMTEgKzkzMiw4IEBAIHN0YXRpYyBpbnQgdm1idXNfcmVtb3Zl KHN0cnVjdCBkZXZpY2UgKmNoaWxkX2RldmljZSkKIAkJaWYgKGRydi0+cmVtb3ZlKQogCQkJZHJ2 LT5yZW1vdmUoZGV2KTsKIAl9Ci0KLQlyZXR1cm4gMDsKIH0KIAotCiAvKgogICogdm1idXNfc2h1 dGRvd24gLSBTaHV0ZG93biBhIHZtYnVzIGRldmljZQogICovCmRpZmYgLS1naXQgYS9kcml2ZXJz L2h3dHJhY2luZy9pbnRlbF90aC9jb3JlLmMgYi9kcml2ZXJzL2h3dHJhY2luZy9pbnRlbF90aC9j b3JlLmMKaW5kZXggNjZlZWQyZGZmODE4Li43ZTc1M2E3NWQyM2IgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvaHd0cmFjaW5nL2ludGVsX3RoL2NvcmUuYworKysgYi9kcml2ZXJzL2h3dHJhY2luZy9pbnRl bF90aC9jb3JlLmMKQEAgLTk1LDcgKzk1LDcgQEAgc3RhdGljIGludCBpbnRlbF90aF9wcm9iZShz dHJ1Y3QgZGV2aWNlICpkZXYpCiAKIHN0YXRpYyB2b2lkIGludGVsX3RoX2RldmljZV9yZW1vdmUo c3RydWN0IGludGVsX3RoX2RldmljZSAqdGhkZXYpOwogCi1zdGF0aWMgaW50IGludGVsX3RoX3Jl bW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCitzdGF0aWMgdm9pZCBpbnRlbF90aF9yZW1vdmUoc3Ry dWN0IGRldmljZSAqZGV2KQogewogCXN0cnVjdCBpbnRlbF90aF9kcml2ZXIgKnRoZHJ2ID0gdG9f aW50ZWxfdGhfZHJpdmVyKGRldi0+ZHJpdmVyKTsKIAlzdHJ1Y3QgaW50ZWxfdGhfZGV2aWNlICp0 aGRldiA9IHRvX2ludGVsX3RoX2RldmljZShkZXYpOwpAQCAtMTY0LDggKzE2NCw2IEBAIHN0YXRp YyBpbnQgaW50ZWxfdGhfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKIAlwbV9ydW50aW1lX2Rp c2FibGUoZGV2KTsKIAlwbV9ydW50aW1lX3NldF9hY3RpdmUoZGV2KTsKIAlwbV9ydW50aW1lX2Vu YWJsZShkZXYpOwotCi0JcmV0dXJuIDA7CiB9CiAKIHN0YXRpYyBzdHJ1Y3QgYnVzX3R5cGUgaW50 ZWxfdGhfYnVzID0gewpkaWZmIC0tZ2l0IGEvZHJpdmVycy9pMmMvaTJjLWNvcmUtYmFzZS5jIGIv ZHJpdmVycy9pMmMvaTJjLWNvcmUtYmFzZS5jCmluZGV4IDg0ZjEyYmY5MDY0NC4uNTQ5NjRmYmUz ZjAzIDEwMDY0NAotLS0gYS9kcml2ZXJzL2kyYy9pMmMtY29yZS1iYXNlLmMKKysrIGIvZHJpdmVy cy9pMmMvaTJjLWNvcmUtYmFzZS5jCkBAIC02MDEsNyArNjAxLDcgQEAgc3RhdGljIGludCBpMmNf ZGV2aWNlX3Byb2JlKHN0cnVjdCBkZXZpY2UgKmRldikKIAlyZXR1cm4gc3RhdHVzOwogfQogCi1z dGF0aWMgaW50IGkyY19kZXZpY2VfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKK3N0YXRpYyB2 b2lkIGkyY19kZXZpY2VfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKIHsKIAlzdHJ1Y3QgaTJj X2NsaWVudAkqY2xpZW50ID0gdG9faTJjX2NsaWVudChkZXYpOwogCXN0cnVjdCBpMmNfYWRhcHRl ciAgICAgICphZGFwOwpAQCAtNjMxLDkgKzYzMSw2IEBAIHN0YXRpYyBpbnQgaTJjX2RldmljZV9y ZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogCWNsaWVudC0+aXJxID0gMDsKIAlpZiAoY2xpZW50 LT5mbGFncyAmIEkyQ19DTElFTlRfSE9TVF9OT1RJRlkpCiAJCXBtX3J1bnRpbWVfcHV0KCZjbGll bnQtPmFkYXB0ZXItPmRldik7Ci0KLQkvKiByZXR1cm4gYWx3YXlzIDAgYmVjYXVzZSB0aGVyZSBp cyBXSVAgdG8gbWFrZSByZW1vdmUtZnVuY3Rpb25zIHZvaWQgKi8KLQlyZXR1cm4gMDsKIH0KIAog I2lmZGVmIENPTkZJR19QTV9TTEVFUApkaWZmIC0tZ2l0IGEvZHJpdmVycy9pM2MvbWFzdGVyLmMg Yi9kcml2ZXJzL2kzYy9tYXN0ZXIuYwppbmRleCBlMmUxMmE1NTg1ZTUuLmMzYjRjNjc3YjQ0MiAx MDA2NDQKLS0tIGEvZHJpdmVycy9pM2MvbWFzdGVyLmMKKysrIGIvZHJpdmVycy9pM2MvbWFzdGVy LmMKQEAgLTMyMiw3ICszMjIsNyBAQCBzdGF0aWMgaW50IGkzY19kZXZpY2VfcHJvYmUoc3RydWN0 IGRldmljZSAqZGV2KQogCXJldHVybiBkcml2ZXItPnByb2JlKGkzY2Rldik7CiB9CiAKLXN0YXRp YyBpbnQgaTNjX2RldmljZV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQorc3RhdGljIHZvaWQg aTNjX2RldmljZV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogewogCXN0cnVjdCBpM2NfZGV2 aWNlICppM2NkZXYgPSBkZXZfdG9faTNjZGV2KGRldik7CiAJc3RydWN0IGkzY19kcml2ZXIgKmRy aXZlciA9IGRydl90b19pM2NkcnYoZGV2LT5kcml2ZXIpOwpAQCAtMzMxLDggKzMzMSw2IEBAIHN0 YXRpYyBpbnQgaTNjX2RldmljZV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogCQlkcml2ZXIt PnJlbW92ZShpM2NkZXYpOwogCiAJaTNjX2RldmljZV9mcmVlX2liaShpM2NkZXYpOwotCi0JcmV0 dXJuIDA7CiB9CiAKIHN0cnVjdCBidXNfdHlwZSBpM2NfYnVzX3R5cGUgPSB7CmRpZmYgLS1naXQg YS9kcml2ZXJzL2lucHV0L2dhbWVwb3J0L2dhbWVwb3J0LmMgYi9kcml2ZXJzL2lucHV0L2dhbWVw b3J0L2dhbWVwb3J0LmMKaW5kZXggNjFmYTdlNzI0MTcyLi5kYjU4YTAxYjIzZDMgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvaW5wdXQvZ2FtZXBvcnQvZ2FtZXBvcnQuYworKysgYi9kcml2ZXJzL2lucHV0 L2dhbWVwb3J0L2dhbWVwb3J0LmMKQEAgLTY5NywxMyArNjk3LDEyIEBAIHN0YXRpYyBpbnQgZ2Ft ZXBvcnRfZHJpdmVyX3Byb2JlKHN0cnVjdCBkZXZpY2UgKmRldikKIAlyZXR1cm4gZ2FtZXBvcnQt PmRydiA/IDAgOiAtRU5PREVWOwogfQogCi1zdGF0aWMgaW50IGdhbWVwb3J0X2RyaXZlcl9yZW1v dmUoc3RydWN0IGRldmljZSAqZGV2KQorc3RhdGljIHZvaWQgZ2FtZXBvcnRfZHJpdmVyX3JlbW92 ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiB7CiAJc3RydWN0IGdhbWVwb3J0ICpnYW1lcG9ydCA9IHRv X2dhbWVwb3J0X3BvcnQoZGV2KTsKIAlzdHJ1Y3QgZ2FtZXBvcnRfZHJpdmVyICpkcnYgPSB0b19n YW1lcG9ydF9kcml2ZXIoZGV2LT5kcml2ZXIpOwogCiAJZHJ2LT5kaXNjb25uZWN0KGdhbWVwb3J0 KTsKLQlyZXR1cm4gMDsKIH0KIAogc3RhdGljIHZvaWQgZ2FtZXBvcnRfYXR0YWNoX2RyaXZlcihz dHJ1Y3QgZ2FtZXBvcnRfZHJpdmVyICpkcnYpCmRpZmYgLS1naXQgYS9kcml2ZXJzL2lucHV0L3Nl cmlvL3NlcmlvLmMgYi9kcml2ZXJzL2lucHV0L3NlcmlvL3NlcmlvLmMKaW5kZXggMjlmNDkxMDgy OTI2Li5lYzExN2JlM2Q4ZDggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvaW5wdXQvc2VyaW8vc2VyaW8u YworKysgYi9kcml2ZXJzL2lucHV0L3NlcmlvL3NlcmlvLmMKQEAgLTc3OCwxMiArNzc4LDExIEBA IHN0YXRpYyBpbnQgc2VyaW9fZHJpdmVyX3Byb2JlKHN0cnVjdCBkZXZpY2UgKmRldikKIAlyZXR1 cm4gc2VyaW9fY29ubmVjdF9kcml2ZXIoc2VyaW8sIGRydik7CiB9CiAKLXN0YXRpYyBpbnQgc2Vy aW9fZHJpdmVyX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCitzdGF0aWMgdm9pZCBzZXJpb19k cml2ZXJfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKIHsKIAlzdHJ1Y3Qgc2VyaW8gKnNlcmlv ID0gdG9fc2VyaW9fcG9ydChkZXYpOwogCiAJc2VyaW9fZGlzY29ubmVjdF9kcml2ZXIoc2VyaW8p OwotCXJldHVybiAwOwogfQogCiBzdGF0aWMgdm9pZCBzZXJpb19jbGVhbnVwKHN0cnVjdCBzZXJp byAqc2VyaW8pCmRpZmYgLS1naXQgYS9kcml2ZXJzL2lwYWNrL2lwYWNrLmMgYi9kcml2ZXJzL2lw YWNrL2lwYWNrLmMKaW5kZXggN2RlOTYwNWNhYzRmLi5iMWMzMTk4MzU1ZTcgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvaXBhY2svaXBhY2suYworKysgYi9kcml2ZXJzL2lwYWNrL2lwYWNrLmMKQEAgLTY3 LDE1ICs2NywxMyBAQCBzdGF0aWMgaW50IGlwYWNrX2J1c19wcm9iZShzdHJ1Y3QgZGV2aWNlICpk ZXZpY2UpCiAJcmV0dXJuIGRydi0+b3BzLT5wcm9iZShkZXYpOwogfQogCi1zdGF0aWMgaW50IGlw YWNrX2J1c19yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2aWNlKQorc3RhdGljIHZvaWQgaXBhY2tf YnVzX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXZpY2UpCiB7CiAJc3RydWN0IGlwYWNrX2Rldmlj ZSAqZGV2ID0gdG9faXBhY2tfZGV2KGRldmljZSk7CiAJc3RydWN0IGlwYWNrX2RyaXZlciAqZHJ2 ID0gdG9faXBhY2tfZHJpdmVyKGRldmljZS0+ZHJpdmVyKTsKIAogCWlmIChkcnYtPm9wcy0+cmVt b3ZlKQogCQlkcnYtPm9wcy0+cmVtb3ZlKGRldik7Ci0KLQlyZXR1cm4gMDsKIH0KIAogc3RhdGlj IGludCBpcGFja191ZXZlbnQoc3RydWN0IGRldmljZSAqZGV2LCBzdHJ1Y3Qga29ial91ZXZlbnRf ZW52ICplbnYpCmRpZmYgLS1naXQgYS9kcml2ZXJzL21hY2ludG9zaC9tYWNpb19hc2ljLmMgYi9k cml2ZXJzL21hY2ludG9zaC9tYWNpb19hc2ljLmMKaW5kZXggNDlhZjYwYmRhYzkyLi5jMWZkZjI4 OTYwMjEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbWFjaW50b3NoL21hY2lvX2FzaWMuYworKysgYi9k cml2ZXJzL21hY2ludG9zaC9tYWNpb19hc2ljLmMKQEAgLTg4LDcgKzg4LDcgQEAgc3RhdGljIGlu dCBtYWNpb19kZXZpY2VfcHJvYmUoc3RydWN0IGRldmljZSAqZGV2KQogCXJldHVybiBlcnJvcjsK IH0KIAotc3RhdGljIGludCBtYWNpb19kZXZpY2VfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikK K3N0YXRpYyB2b2lkIG1hY2lvX2RldmljZV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogewog CXN0cnVjdCBtYWNpb19kZXYgKiBtYWNpb19kZXYgPSB0b19tYWNpb19kZXZpY2UoZGV2KTsKIAlz dHJ1Y3QgbWFjaW9fZHJpdmVyICogZHJ2ID0gdG9fbWFjaW9fZHJpdmVyKGRldi0+ZHJpdmVyKTsK QEAgLTk2LDggKzk2LDYgQEAgc3RhdGljIGludCBtYWNpb19kZXZpY2VfcmVtb3ZlKHN0cnVjdCBk ZXZpY2UgKmRldikKIAlpZiAoZGV2LT5kcml2ZXIgJiYgZHJ2LT5yZW1vdmUpCiAJCWRydi0+cmVt b3ZlKG1hY2lvX2Rldik7CiAJbWFjaW9fZGV2X3B1dChtYWNpb19kZXYpOwotCi0JcmV0dXJuIDA7 CiB9CiAKIHN0YXRpYyB2b2lkIG1hY2lvX2RldmljZV9zaHV0ZG93bihzdHJ1Y3QgZGV2aWNlICpk ZXYpCmRpZmYgLS1naXQgYS9kcml2ZXJzL21jYi9tY2ItY29yZS5jIGIvZHJpdmVycy9tY2IvbWNi LWNvcmUuYwppbmRleCAzOGZiYjNiNTk4NzMuLmVkZjRlZTZlZmYyNSAxMDA2NDQKLS0tIGEvZHJp dmVycy9tY2IvbWNiLWNvcmUuYworKysgYi9kcml2ZXJzL21jYi9tY2ItY29yZS5jCkBAIC03Nyw3 ICs3Nyw3IEBAIHN0YXRpYyBpbnQgbWNiX3Byb2JlKHN0cnVjdCBkZXZpY2UgKmRldikKIAlyZXR1 cm4gcmV0OwogfQogCi1zdGF0aWMgaW50IG1jYl9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQor c3RhdGljIHZvaWQgbWNiX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiB7CiAJc3RydWN0IG1j Yl9kcml2ZXIgKm1kcnYgPSB0b19tY2JfZHJpdmVyKGRldi0+ZHJpdmVyKTsKIAlzdHJ1Y3QgbWNi X2RldmljZSAqbWRldiA9IHRvX21jYl9kZXZpY2UoZGV2KTsKQEAgLTg5LDggKzg5LDYgQEAgc3Rh dGljIGludCBtY2JfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKIAltb2R1bGVfcHV0KGNhcnJp ZXJfbW9kKTsKIAogCXB1dF9kZXZpY2UoJm1kZXYtPmRldik7Ci0KLQlyZXR1cm4gMDsKIH0KIAog c3RhdGljIHZvaWQgbWNiX3NodXRkb3duKHN0cnVjdCBkZXZpY2UgKmRldikKZGlmZiAtLWdpdCBh L2RyaXZlcnMvbWVkaWEvcGNpL2J0OHh4L2J0dHYtZ3Bpby5jIGIvZHJpdmVycy9tZWRpYS9wY2kv YnQ4eHgvYnR0di1ncGlvLmMKaW5kZXggYjczMDIyNWNhODg3Li5hMmIxOGUyYmVkMWIgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvbWVkaWEvcGNpL2J0OHh4L2J0dHYtZ3Bpby5jCisrKyBiL2RyaXZlcnMv bWVkaWEvcGNpL2J0OHh4L2J0dHYtZ3Bpby5jCkBAIC00NiwxNCArNDYsMTMgQEAgc3RhdGljIGlu dCBidHR2X3N1Yl9wcm9iZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJcmV0dXJuIHN1Yi0+cHJvYmUg PyBzdWItPnByb2JlKHNkZXYpIDogLUVOT0RFVjsKIH0KIAotc3RhdGljIGludCBidHR2X3N1Yl9y ZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQorc3RhdGljIHZvaWQgYnR0dl9zdWJfcmVtb3ZlKHN0 cnVjdCBkZXZpY2UgKmRldikKIHsKIAlzdHJ1Y3QgYnR0dl9zdWJfZGV2aWNlICpzZGV2ID0gdG9f YnR0dl9zdWJfZGV2KGRldik7CiAJc3RydWN0IGJ0dHZfc3ViX2RyaXZlciAqc3ViID0gdG9fYnR0 dl9zdWJfZHJ2KGRldi0+ZHJpdmVyKTsKIAogCWlmIChzdWItPnJlbW92ZSkKIAkJc3ViLT5yZW1v dmUoc2Rldik7Ci0JcmV0dXJuIDA7CiB9CiAKIHN0cnVjdCBidXNfdHlwZSBidHR2X3N1Yl9idXNf dHlwZSA9IHsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVtc3RpY2svY29yZS9tZW1zdGljay5jIGIv ZHJpdmVycy9tZW1zdGljay9jb3JlL21lbXN0aWNrLmMKaW5kZXggYmIxMDY1OTkwYWViLi42NjBk ZjdkMjY5ZmEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbWVtc3RpY2svY29yZS9tZW1zdGljay5jCisr KyBiL2RyaXZlcnMvbWVtc3RpY2svY29yZS9tZW1zdGljay5jCkBAIC05MSw3ICs5MSw3IEBAIHN0 YXRpYyBpbnQgbWVtc3RpY2tfZGV2aWNlX3Byb2JlKHN0cnVjdCBkZXZpY2UgKmRldikKIAlyZXR1 cm4gcmM7CiB9CiAKLXN0YXRpYyBpbnQgbWVtc3RpY2tfZGV2aWNlX3JlbW92ZShzdHJ1Y3QgZGV2 aWNlICpkZXYpCitzdGF0aWMgdm9pZCBtZW1zdGlja19kZXZpY2VfcmVtb3ZlKHN0cnVjdCBkZXZp Y2UgKmRldikKIHsKIAlzdHJ1Y3QgbWVtc3RpY2tfZGV2ICpjYXJkID0gY29udGFpbmVyX29mKGRl diwgc3RydWN0IG1lbXN0aWNrX2RldiwKIAkJCQkJCSAgZGV2KTsKQEAgLTEwNSw3ICsxMDUsNiBA QCBzdGF0aWMgaW50IG1lbXN0aWNrX2RldmljZV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQog CX0KIAogCXB1dF9kZXZpY2UoZGV2KTsKLQlyZXR1cm4gMDsKIH0KIAogI2lmZGVmIENPTkZJR19Q TQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZmQvbWNwLWNvcmUuYyBiL2RyaXZlcnMvbWZkL21jcC1j b3JlLmMKaW5kZXggZWZmOTQyM2U5MGY1Li4yZmE1OTJjMzdjNmYgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvbWZkL21jcC1jb3JlLmMKKysrIGIvZHJpdmVycy9tZmQvbWNwLWNvcmUuYwpAQCAtMzMsMTMg KzMzLDEyIEBAIHN0YXRpYyBpbnQgbWNwX2J1c19wcm9iZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJ cmV0dXJuIGRydi0+cHJvYmUobWNwKTsKIH0KIAotc3RhdGljIGludCBtY3BfYnVzX3JlbW92ZShz dHJ1Y3QgZGV2aWNlICpkZXYpCitzdGF0aWMgdm9pZCBtY3BfYnVzX3JlbW92ZShzdHJ1Y3QgZGV2 aWNlICpkZXYpCiB7CiAJc3RydWN0IG1jcCAqbWNwID0gdG9fbWNwKGRldik7CiAJc3RydWN0IG1j cF9kcml2ZXIgKmRydiA9IHRvX21jcF9kcml2ZXIoZGV2LT5kcml2ZXIpOwogCiAJZHJ2LT5yZW1v dmUobWNwKTsKLQlyZXR1cm4gMDsKIH0KIAogc3RhdGljIHN0cnVjdCBidXNfdHlwZSBtY3BfYnVz X3R5cGUgPSB7CmRpZmYgLS1naXQgYS9kcml2ZXJzL21pc2MvbWVpL2J1cy5jIGIvZHJpdmVycy9t aXNjL21laS9idXMuYwppbmRleCA5MzVhY2M2YmJmM2MuLjNiZjJiYjRmZDE1MiAxMDA2NDQKLS0t IGEvZHJpdmVycy9taXNjL21laS9idXMuYworKysgYi9kcml2ZXJzL21pc2MvbWVpL2J1cy5jCkBA IC04ODQsNyArODg0LDcgQEAgc3RhdGljIGludCBtZWlfY2xfZGV2aWNlX3Byb2JlKHN0cnVjdCBk ZXZpY2UgKmRldikKICAqCiAgKiBSZXR1cm46ICAwIG9uIHN1Y2Nlc3M7IDwgMCBvdGhlcndpc2UK ICAqLwotc3RhdGljIGludCBtZWlfY2xfZGV2aWNlX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYp CitzdGF0aWMgdm9pZCBtZWlfY2xfZGV2aWNlX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiB7 CiAJc3RydWN0IG1laV9jbF9kZXZpY2UgKmNsZGV2ID0gdG9fbWVpX2NsX2RldmljZShkZXYpOwog CXN0cnVjdCBtZWlfY2xfZHJpdmVyICpjbGRydiA9IHRvX21laV9jbF9kcml2ZXIoZGV2LT5kcml2 ZXIpOwpAQCAtODk2LDggKzg5Niw2IEBAIHN0YXRpYyBpbnQgbWVpX2NsX2RldmljZV9yZW1vdmUo c3RydWN0IGRldmljZSAqZGV2KQogCiAJbWVpX2NsX2J1c19tb2R1bGVfcHV0KGNsZGV2KTsKIAlt b2R1bGVfcHV0KFRISVNfTU9EVUxFKTsKLQotCXJldHVybiAwOwogfQogCiBzdGF0aWMgc3NpemVf dCBuYW1lX3Nob3coc3RydWN0IGRldmljZSAqZGV2LCBzdHJ1Y3QgZGV2aWNlX2F0dHJpYnV0ZSAq YSwKZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWlzYy90aWZtX2NvcmUuYyBiL2RyaXZlcnMvbWlzYy90 aWZtX2NvcmUuYwppbmRleCA2NjdlNTc0YTdkZjIuLjUyNjU2ZmM4N2U5OSAxMDA2NDQKLS0tIGEv ZHJpdmVycy9taXNjL3RpZm1fY29yZS5jCisrKyBiL2RyaXZlcnMvbWlzYy90aWZtX2NvcmUuYwpA QCAtODcsNyArODcsNyBAQCBzdGF0aWMgdm9pZCB0aWZtX2R1bW15X2V2ZW50KHN0cnVjdCB0aWZt X2RldiAqc29jaykKIAlyZXR1cm47CiB9CiAKLXN0YXRpYyBpbnQgdGlmbV9kZXZpY2VfcmVtb3Zl KHN0cnVjdCBkZXZpY2UgKmRldikKK3N0YXRpYyB2b2lkIHRpZm1fZGV2aWNlX3JlbW92ZShzdHJ1 Y3QgZGV2aWNlICpkZXYpCiB7CiAJc3RydWN0IHRpZm1fZGV2ICpzb2NrID0gY29udGFpbmVyX29m KGRldiwgc3RydWN0IHRpZm1fZGV2LCBkZXYpOwogCXN0cnVjdCB0aWZtX2RyaXZlciAqZHJ2ID0g Y29udGFpbmVyX29mKGRldi0+ZHJpdmVyLCBzdHJ1Y3QgdGlmbV9kcml2ZXIsCkBAIC0xMDEsNyAr MTAxLDYgQEAgc3RhdGljIGludCB0aWZtX2RldmljZV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2 KQogCX0KIAogCXB1dF9kZXZpY2UoZGV2KTsKLQlyZXR1cm4gMDsKIH0KIAogI2lmZGVmIENPTkZJ R19QTQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9tbWMvY29yZS9idXMuYyBiL2RyaXZlcnMvbW1jL2Nv cmUvYnVzLmMKaW5kZXggNDM4M2MyNjJiM2Y1Li5mNmI3YTljNWJiZmYgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvbW1jL2NvcmUvYnVzLmMKKysrIGIvZHJpdmVycy9tbWMvY29yZS9idXMuYwpAQCAtMTQw LDE0ICsxNDAsMTIgQEAgc3RhdGljIGludCBtbWNfYnVzX3Byb2JlKHN0cnVjdCBkZXZpY2UgKmRl dikKIAlyZXR1cm4gZHJ2LT5wcm9iZShjYXJkKTsKIH0KIAotc3RhdGljIGludCBtbWNfYnVzX3Jl bW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCitzdGF0aWMgdm9pZCBtbWNfYnVzX3JlbW92ZShzdHJ1 Y3QgZGV2aWNlICpkZXYpCiB7CiAJc3RydWN0IG1tY19kcml2ZXIgKmRydiA9IHRvX21tY19kcml2 ZXIoZGV2LT5kcml2ZXIpOwogCXN0cnVjdCBtbWNfY2FyZCAqY2FyZCA9IG1tY19kZXZfdG9fY2Fy ZChkZXYpOwogCiAJZHJ2LT5yZW1vdmUoY2FyZCk7Ci0KLQlyZXR1cm4gMDsKIH0KIAogc3RhdGlj IHZvaWQgbW1jX2J1c19zaHV0ZG93bihzdHJ1Y3QgZGV2aWNlICpkZXYpCmRpZmYgLS1naXQgYS9k cml2ZXJzL21tYy9jb3JlL3NkaW9fYnVzLmMgYi9kcml2ZXJzL21tYy9jb3JlL3NkaW9fYnVzLmMK aW5kZXggM2Q3MDkwMjllMDdjLi5mZGEwM2IzNWMxNGEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbW1j L2NvcmUvc2Rpb19idXMuYworKysgYi9kcml2ZXJzL21tYy9jb3JlL3NkaW9fYnVzLmMKQEAgLTIw Myw3ICsyMDMsNyBAQCBzdGF0aWMgaW50IHNkaW9fYnVzX3Byb2JlKHN0cnVjdCBkZXZpY2UgKmRl dikKIAlyZXR1cm4gcmV0OwogfQogCi1zdGF0aWMgaW50IHNkaW9fYnVzX3JlbW92ZShzdHJ1Y3Qg ZGV2aWNlICpkZXYpCitzdGF0aWMgdm9pZCBzZGlvX2J1c19yZW1vdmUoc3RydWN0IGRldmljZSAq ZGV2KQogewogCXN0cnVjdCBzZGlvX2RyaXZlciAqZHJ2ID0gdG9fc2Rpb19kcml2ZXIoZGV2LT5k cml2ZXIpOwogCXN0cnVjdCBzZGlvX2Z1bmMgKmZ1bmMgPSBkZXZfdG9fc2Rpb19mdW5jKGRldik7 CkBAIC0yMzIsOCArMjMyLDYgQEAgc3RhdGljIGludCBzZGlvX2J1c19yZW1vdmUoc3RydWN0IGRl dmljZSAqZGV2KQogCQlwbV9ydW50aW1lX3B1dF9zeW5jKGRldik7CiAKIAlkZXZfcG1fZG9tYWlu X2RldGFjaChkZXYsIGZhbHNlKTsKLQotCXJldHVybiAwOwogfQogCiBzdGF0aWMgY29uc3Qgc3Ry dWN0IGRldl9wbV9vcHMgc2Rpb19idXNfcG1fb3BzID0gewpkaWZmIC0tZ2l0IGEvZHJpdmVycy9u ZXQvbmV0ZGV2c2ltL2J1cy5jIGIvZHJpdmVycy9uZXQvbmV0ZGV2c2ltL2J1cy5jCmluZGV4IGNj ZWMyOTk3MGQ1Yi4uMTRiMTU0OTI5NTMzIDEwMDY0NAotLS0gYS9kcml2ZXJzL25ldC9uZXRkZXZz aW0vYnVzLmMKKysrIGIvZHJpdmVycy9uZXQvbmV0ZGV2c2ltL2J1cy5jCkBAIC0zNzAsMTIgKzM3 MCwxMSBAQCBzdGF0aWMgaW50IG5zaW1fYnVzX3Byb2JlKHN0cnVjdCBkZXZpY2UgKmRldikKIAly ZXR1cm4gbnNpbV9kZXZfcHJvYmUobnNpbV9idXNfZGV2KTsKIH0KIAotc3RhdGljIGludCBuc2lt X2J1c19yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQorc3RhdGljIHZvaWQgbnNpbV9idXNfcmVt b3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKIHsKIAlzdHJ1Y3QgbnNpbV9idXNfZGV2ICpuc2ltX2J1 c19kZXYgPSB0b19uc2ltX2J1c19kZXYoZGV2KTsKIAogCW5zaW1fZGV2X3JlbW92ZShuc2ltX2J1 c19kZXYpOwotCXJldHVybiAwOwogfQogCiBzdGF0aWMgaW50IG5zaW1fbnVtX3ZmKHN0cnVjdCBk ZXZpY2UgKmRldikKZGlmZiAtLWdpdCBhL2RyaXZlcnMvbnRiL2NvcmUuYyBiL2RyaXZlcnMvbnRi L2NvcmUuYwppbmRleCBmOGY3NWE1MDRhNTguLjI3ZGQ5M2RlZmY2ZSAxMDA2NDQKLS0tIGEvZHJp dmVycy9udGIvY29yZS5jCisrKyBiL2RyaXZlcnMvbnRiL2NvcmUuYwpAQCAtMjcxLDcgKzI3MSw3 IEBAIHN0YXRpYyBpbnQgbnRiX3Byb2JlKHN0cnVjdCBkZXZpY2UgKmRldikKIAlyZXR1cm4gcmM7 CiB9CiAKLXN0YXRpYyBpbnQgbnRiX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCitzdGF0aWMg dm9pZCBudGJfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKIHsKIAlzdHJ1Y3QgbnRiX2RldiAq bnRiOwogCXN0cnVjdCBudGJfY2xpZW50ICpjbGllbnQ7CkBAIC0yODMsOCArMjgzLDYgQEAgc3Rh dGljIGludCBudGJfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKIAkJY2xpZW50LT5vcHMucmVt b3ZlKGNsaWVudCwgbnRiKTsKIAkJcHV0X2RldmljZShkZXYpOwogCX0KLQotCXJldHVybiAwOwog fQogCiBzdGF0aWMgdm9pZCBudGJfZGV2X3JlbGVhc2Uoc3RydWN0IGRldmljZSAqZGV2KQpkaWZm IC0tZ2l0IGEvZHJpdmVycy9udGIvbnRiX3RyYW5zcG9ydC5jIGIvZHJpdmVycy9udGIvbnRiX3Ry YW5zcG9ydC5jCmluZGV4IDRhMDI1NjFjZmI5Ni4uYTliOTdlYmM3MWFjIDEwMDY0NAotLS0gYS9k cml2ZXJzL250Yi9udGJfdHJhbnNwb3J0LmMKKysrIGIvZHJpdmVycy9udGIvbnRiX3RyYW5zcG9y dC5jCkBAIC0zMDQsNyArMzA0LDcgQEAgc3RhdGljIGludCBudGJfdHJhbnNwb3J0X2J1c19wcm9i ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJcmV0dXJuIHJjOwogfQogCi1zdGF0aWMgaW50IG50Yl90 cmFuc3BvcnRfYnVzX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCitzdGF0aWMgdm9pZCBudGJf dHJhbnNwb3J0X2J1c19yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogewogCWNvbnN0IHN0cnVj dCBudGJfdHJhbnNwb3J0X2NsaWVudCAqY2xpZW50OwogCkBAIC0zMTIsOCArMzEyLDYgQEAgc3Rh dGljIGludCBudGJfdHJhbnNwb3J0X2J1c19yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogCWNs aWVudC0+cmVtb3ZlKGRldik7CiAKIAlwdXRfZGV2aWNlKGRldik7Ci0KLQlyZXR1cm4gMDsKIH0K IAogc3RhdGljIHN0cnVjdCBidXNfdHlwZSBudGJfdHJhbnNwb3J0X2J1cyA9IHsKZGlmZiAtLWdp dCBhL2RyaXZlcnMvbnZkaW1tL2J1cy5jIGIvZHJpdmVycy9udmRpbW0vYnVzLmMKaW5kZXggZTZh YTg3MDQzYTk1Li45ZGM3ZjNlZGQ0MmIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbnZkaW1tL2J1cy5j CisrKyBiL2RyaXZlcnMvbnZkaW1tL2J1cy5jCkBAIC0xMDgsNyArMTA4LDcgQEAgc3RhdGljIGlu dCBudmRpbW1fYnVzX3Byb2JlKHN0cnVjdCBkZXZpY2UgKmRldikKIAlyZXR1cm4gcmM7CiB9CiAK LXN0YXRpYyBpbnQgbnZkaW1tX2J1c19yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQorc3RhdGlj IHZvaWQgbnZkaW1tX2J1c19yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogewogCXN0cnVjdCBu ZF9kZXZpY2VfZHJpdmVyICpuZF9kcnYgPSB0b19uZF9kZXZpY2VfZHJpdmVyKGRldi0+ZHJpdmVy KTsKIAlzdHJ1Y3QgbW9kdWxlICpwcm92aWRlciA9IHRvX2J1c19wcm92aWRlcihkZXYpOwpAQCAt MTIzLDcgKzEyMyw2IEBAIHN0YXRpYyBpbnQgbnZkaW1tX2J1c19yZW1vdmUoc3RydWN0IGRldmlj ZSAqZGV2KQogCWRldl9kYmcoJm52ZGltbV9idXMtPmRldiwgIiVzLnJlbW92ZSglcylcbiIsIGRl di0+ZHJpdmVyLT5uYW1lLAogCQkJZGV2X25hbWUoZGV2KSk7CiAJbW9kdWxlX3B1dChwcm92aWRl cik7Ci0JcmV0dXJuIDA7CiB9CiAKIHN0YXRpYyB2b2lkIG52ZGltbV9idXNfc2h1dGRvd24oc3Ry dWN0IGRldmljZSAqZGV2KQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9wY2kvZW5kcG9pbnQvcGNpLWVw Zi1jb3JlLmMgYi9kcml2ZXJzL3BjaS9lbmRwb2ludC9wY2ktZXBmLWNvcmUuYwppbmRleCA0Yjlh ZDk2YmYxYjIuLjUwMmViNzljZDU1MSAxMDA2NDQKLS0tIGEvZHJpdmVycy9wY2kvZW5kcG9pbnQv cGNpLWVwZi1jb3JlLmMKKysrIGIvZHJpdmVycy9wY2kvZW5kcG9pbnQvcGNpLWVwZi1jb3JlLmMK QEAgLTM4Nyw3ICszODcsNyBAQCBzdGF0aWMgaW50IHBjaV9lcGZfZGV2aWNlX3Byb2JlKHN0cnVj dCBkZXZpY2UgKmRldikKIAlyZXR1cm4gZHJpdmVyLT5wcm9iZShlcGYpOwogfQogCi1zdGF0aWMg aW50IHBjaV9lcGZfZGV2aWNlX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCitzdGF0aWMgdm9p ZCBwY2lfZXBmX2RldmljZV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogewogCXN0cnVjdCBw Y2lfZXBmICplcGYgPSB0b19wY2lfZXBmKGRldik7CiAJc3RydWN0IHBjaV9lcGZfZHJpdmVyICpk cml2ZXIgPSB0b19wY2lfZXBmX2RyaXZlcihkZXYtPmRyaXZlcik7CkBAIC0zOTUsOCArMzk1LDYg QEAgc3RhdGljIGludCBwY2lfZXBmX2RldmljZV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQog CWlmIChkcml2ZXItPnJlbW92ZSkKIAkJZHJpdmVyLT5yZW1vdmUoZXBmKTsKIAllcGYtPmRyaXZl ciA9IE5VTEw7Ci0KLQlyZXR1cm4gMDsKIH0KIAogc3RhdGljIHN0cnVjdCBidXNfdHlwZSBwY2lf ZXBmX2J1c190eXBlID0gewpkaWZmIC0tZ2l0IGEvZHJpdmVycy9wY2kvcGNpLWRyaXZlci5jIGIv ZHJpdmVycy9wY2kvcGNpLWRyaXZlci5jCmluZGV4IDNhNzIzNTJhYTVjZi4uYTA2MTUzOTU1MDBh IDEwMDY0NAotLS0gYS9kcml2ZXJzL3BjaS9wY2ktZHJpdmVyLmMKKysrIGIvZHJpdmVycy9wY2kv cGNpLWRyaXZlci5jCkBAIC00NDAsNyArNDQwLDcgQEAgc3RhdGljIGludCBwY2lfZGV2aWNlX3By b2JlKHN0cnVjdCBkZXZpY2UgKmRldikKIAlyZXR1cm4gZXJyb3I7CiB9CiAKLXN0YXRpYyBpbnQg cGNpX2RldmljZV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQorc3RhdGljIHZvaWQgcGNpX2Rl dmljZV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogewogCXN0cnVjdCBwY2lfZGV2ICpwY2lf ZGV2ID0gdG9fcGNpX2RldihkZXYpOwogCXN0cnVjdCBwY2lfZHJpdmVyICpkcnYgPSBwY2lfZGV2 LT5kcml2ZXI7CkBAIC00NzYsNyArNDc2LDYgQEAgc3RhdGljIGludCBwY2lfZGV2aWNlX3JlbW92 ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJICovCiAKIAlwY2lfZGV2X3B1dChwY2lfZGV2KTsKLQly ZXR1cm4gMDsKIH0KIAogc3RhdGljIHZvaWQgcGNpX2RldmljZV9zaHV0ZG93bihzdHJ1Y3QgZGV2 aWNlICpkZXYpCmRpZmYgLS1naXQgYS9kcml2ZXJzL3BjbWNpYS9kcy5jIGIvZHJpdmVycy9wY21j aWEvZHMuYwppbmRleCBiZDgxYWE2NGQwMTEuLjViZDFiODA0MjRlNyAxMDA2NDQKLS0tIGEvZHJp dmVycy9wY21jaWEvZHMuYworKysgYi9kcml2ZXJzL3BjbWNpYS9kcy5jCkBAIC0zNTAsNyArMzUw LDcgQEAgc3RhdGljIHZvaWQgcGNtY2lhX2NhcmRfcmVtb3ZlKHN0cnVjdCBwY21jaWFfc29ja2V0 ICpzLCBzdHJ1Y3QgcGNtY2lhX2RldmljZSAqbGUKIAlyZXR1cm47CiB9CiAKLXN0YXRpYyBpbnQg cGNtY2lhX2RldmljZV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQorc3RhdGljIHZvaWQgcGNt Y2lhX2RldmljZV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogewogCXN0cnVjdCBwY21jaWFf ZGV2aWNlICpwX2RldjsKIAlzdHJ1Y3QgcGNtY2lhX2RyaXZlciAqcF9kcnY7CkBAIC0zODksOCAr Mzg5LDYgQEAgc3RhdGljIGludCBwY21jaWFfZGV2aWNlX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpk ZXYpCiAJLyogcmVmZXJlbmNlcyBmcm9tIHBjbWNpYV9kZXZpY2VfcHJvYmUgKi8KIAlwY21jaWFf cHV0X2RldihwX2Rldik7CiAJbW9kdWxlX3B1dChwX2Rydi0+b3duZXIpOwotCi0JcmV0dXJuIDA7 CiB9CiAKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9wbGF0Zm9ybS9zdXJmYWNlL2FnZ3JlZ2F0b3Iv YnVzLmMgYi9kcml2ZXJzL3BsYXRmb3JtL3N1cmZhY2UvYWdncmVnYXRvci9idXMuYwppbmRleCAw MTY5Njc3YzI0M2UuLjBhNDBkZDljOTRlZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9wbGF0Zm9ybS9z dXJmYWNlL2FnZ3JlZ2F0b3IvYnVzLmMKKysrIGIvZHJpdmVycy9wbGF0Zm9ybS9zdXJmYWNlL2Fn Z3JlZ2F0b3IvYnVzLmMKQEAgLTMxNiwxNCArMzE2LDEyIEBAIHN0YXRpYyBpbnQgc3NhbV9idXNf cHJvYmUoc3RydWN0IGRldmljZSAqZGV2KQogCQktPnByb2JlKHRvX3NzYW1fZGV2aWNlKGRldikp OwogfQogCi1zdGF0aWMgaW50IHNzYW1fYnVzX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCitz dGF0aWMgdm9pZCBzc2FtX2J1c19yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogewogCXN0cnVj dCBzc2FtX2RldmljZV9kcml2ZXIgKnNkcnYgPSB0b19zc2FtX2RldmljZV9kcml2ZXIoZGV2LT5k cml2ZXIpOwogCiAJaWYgKHNkcnYtPnJlbW92ZSkKIAkJc2Rydi0+cmVtb3ZlKHRvX3NzYW1fZGV2 aWNlKGRldikpOwotCi0JcmV0dXJuIDA7CiB9CiAKIHN0cnVjdCBidXNfdHlwZSBzc2FtX2J1c190 eXBlID0gewpkaWZmIC0tZ2l0IGEvZHJpdmVycy9wbGF0Zm9ybS94ODYvd21pLmMgYi9kcml2ZXJz L3BsYXRmb3JtL3g4Ni93bWkuYwppbmRleCA2MmUwZDU2YTMzMzIuLmE3NjMxMzAwNmJkYyAxMDA2 NDQKLS0tIGEvZHJpdmVycy9wbGF0Zm9ybS94ODYvd21pLmMKKysrIGIvZHJpdmVycy9wbGF0Zm9y bS94ODYvd21pLmMKQEAgLTk4MCw3ICs5ODAsNyBAQCBzdGF0aWMgaW50IHdtaV9kZXZfcHJvYmUo c3RydWN0IGRldmljZSAqZGV2KQogCXJldHVybiByZXQ7CiB9CiAKLXN0YXRpYyBpbnQgd21pX2Rl dl9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQorc3RhdGljIHZvaWQgd21pX2Rldl9yZW1vdmUo c3RydWN0IGRldmljZSAqZGV2KQogewogCXN0cnVjdCB3bWlfYmxvY2sgKndibG9jayA9IGRldl90 b193YmxvY2soZGV2KTsKIAlzdHJ1Y3Qgd21pX2RyaXZlciAqd2RyaXZlciA9CkBAIC05OTcsOCAr OTk3LDYgQEAgc3RhdGljIGludCB3bWlfZGV2X3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAK IAlpZiAoQUNQSV9GQUlMVVJFKHdtaV9tZXRob2RfZW5hYmxlKHdibG9jaywgMCkpKQogCQlkZXZf d2FybihkZXYsICJmYWlsZWQgdG8gZGlzYWJsZSBkZXZpY2VcbiIpOwotCi0JcmV0dXJuIDA7CiB9 CiAKIHN0YXRpYyBzdHJ1Y3QgY2xhc3Mgd21pX2J1c19jbGFzcyA9IHsKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvcG5wL2RyaXZlci5jIGIvZHJpdmVycy9wbnAvZHJpdmVyLmMKaW5kZXggYzI5ZDU5MGM1 ZTRmLi5jYzY3NTdkZmEzZjEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvcG5wL2RyaXZlci5jCisrKyBi L2RyaXZlcnMvcG5wL2RyaXZlci5jCkBAIC0xMjMsNyArMTIzLDcgQEAgc3RhdGljIGludCBwbnBf ZGV2aWNlX3Byb2JlKHN0cnVjdCBkZXZpY2UgKmRldikKIAlyZXR1cm4gZXJyb3I7CiB9CiAKLXN0 YXRpYyBpbnQgcG5wX2RldmljZV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQorc3RhdGljIHZv aWQgcG5wX2RldmljZV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogewogCXN0cnVjdCBwbnBf ZGV2ICpwbnBfZGV2ID0gdG9fcG5wX2RldihkZXYpOwogCXN0cnVjdCBwbnBfZHJpdmVyICpkcnYg PSBwbnBfZGV2LT5kcml2ZXI7CkBAIC0xMzksNyArMTM5LDYgQEAgc3RhdGljIGludCBwbnBfZGV2 aWNlX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJCXBucF9kaXNhYmxlX2RldihwbnBfZGV2 KTsKIAogCXBucF9kZXZpY2VfZGV0YWNoKHBucF9kZXYpOwotCXJldHVybiAwOwogfQogCiBzdGF0 aWMgdm9pZCBwbnBfZGV2aWNlX3NodXRkb3duKHN0cnVjdCBkZXZpY2UgKmRldikKZGlmZiAtLWdp dCBhL2RyaXZlcnMvcmFwaWRpby9yaW8tZHJpdmVyLmMgYi9kcml2ZXJzL3JhcGlkaW8vcmlvLWRy aXZlci5jCmluZGV4IDcyODc0MTUzOTcyZS4uYTcyYmIwYTQwZmNmIDEwMDY0NAotLS0gYS9kcml2 ZXJzL3JhcGlkaW8vcmlvLWRyaXZlci5jCisrKyBiL2RyaXZlcnMvcmFwaWRpby9yaW8tZHJpdmVy LmMKQEAgLTExMiw3ICsxMTIsNyBAQCBzdGF0aWMgaW50IHJpb19kZXZpY2VfcHJvYmUoc3RydWN0 IGRldmljZSAqZGV2KQogICogZHJpdmVyLCB0aGVuIHJ1biB0aGUgZHJpdmVyIHJlbW92ZSgpIG1l dGhvZC4gIFRoZW4gdXBkYXRlCiAgKiB0aGUgcmVmZXJlbmNlIGNvdW50LgogICovCi1zdGF0aWMg aW50IHJpb19kZXZpY2VfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKK3N0YXRpYyB2b2lkIHJp b19kZXZpY2VfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKIHsKIAlzdHJ1Y3QgcmlvX2RldiAq cmRldiA9IHRvX3Jpb19kZXYoZGV2KTsKIAlzdHJ1Y3QgcmlvX2RyaXZlciAqcmRydiA9IHJkZXYt PmRyaXZlcjsKQEAgLTEyNCw4ICsxMjQsNiBAQCBzdGF0aWMgaW50IHJpb19kZXZpY2VfcmVtb3Zl KHN0cnVjdCBkZXZpY2UgKmRldikKIAl9CiAKIAlyaW9fZGV2X3B1dChyZGV2KTsKLQotCXJldHVy biAwOwogfQogCiBzdGF0aWMgdm9pZCByaW9fZGV2aWNlX3NodXRkb3duKHN0cnVjdCBkZXZpY2Ug KmRldikKZGlmZiAtLWdpdCBhL2RyaXZlcnMvcnBtc2cvcnBtc2dfY29yZS5jIGIvZHJpdmVycy9y cG1zZy9ycG1zZ19jb3JlLmMKaW5kZXggYzE0MDRkM2RhZTJjLi43ZjZmYWM2MThhYjIgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvcnBtc2cvcnBtc2dfY29yZS5jCisrKyBiL2RyaXZlcnMvcnBtc2cvcnBt c2dfY29yZS5jCkBAIC01MzAsNyArNTMwLDcgQEAgc3RhdGljIGludCBycG1zZ19kZXZfcHJvYmUo c3RydWN0IGRldmljZSAqZGV2KQogCXJldHVybiBlcnI7CiB9CiAKLXN0YXRpYyBpbnQgcnBtc2df ZGV2X3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCitzdGF0aWMgdm9pZCBycG1zZ19kZXZfcmVt b3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKIHsKIAlzdHJ1Y3QgcnBtc2dfZGV2aWNlICpycGRldiA9 IHRvX3JwbXNnX2RldmljZShkZXYpOwogCXN0cnVjdCBycG1zZ19kcml2ZXIgKnJwZHJ2ID0gdG9f cnBtc2dfZHJpdmVyKHJwZGV2LT5kZXYuZHJpdmVyKTsKQEAgLTU0Niw4ICs1NDYsNiBAQCBzdGF0 aWMgaW50IHJwbXNnX2Rldl9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogCiAJaWYgKHJwZGV2 LT5lcHQpCiAJCXJwbXNnX2Rlc3Ryb3lfZXB0KHJwZGV2LT5lcHQpOwotCi0JcmV0dXJuIGVycjsK IH0KIAogc3RhdGljIHN0cnVjdCBidXNfdHlwZSBycG1zZ19idXMgPSB7CmRpZmYgLS1naXQgYS9k cml2ZXJzL3MzOTAvY2lvL2Njd2dyb3VwLmMgYi9kcml2ZXJzL3MzOTAvY2lvL2Njd2dyb3VwLmMK aW5kZXggYTZhZWFiMWVhMGFlLi4zODJjNWI1ZjhjZDMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvczM5 MC9jaW8vY2N3Z3JvdXAuYworKysgYi9kcml2ZXJzL3MzOTAvY2lvL2Njd2dyb3VwLmMKQEAgLTQz OSwxNSArNDM5LDEzIEBAIG1vZHVsZV9leGl0KGNsZWFudXBfY2N3Z3JvdXApOwogCiAvKioqKioq KioqKioqKioqKioqKioqKioqKiogZHJpdmVyIHN0dWZmICoqKioqKioqKioqKioqKioqKioqKioq KioqKioqKi8KIAotc3RhdGljIGludCBjY3dncm91cF9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2 KQorc3RhdGljIHZvaWQgY2N3Z3JvdXBfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKIHsKIAlz dHJ1Y3QgY2N3Z3JvdXBfZGV2aWNlICpnZGV2ID0gdG9fY2N3Z3JvdXBkZXYoZGV2KTsKIAlzdHJ1 Y3QgY2N3Z3JvdXBfZHJpdmVyICpnZHJ2ID0gdG9fY2N3Z3JvdXBkcnYoZGV2LT5kcml2ZXIpOwog CiAJaWYgKGdkcnYtPnJlbW92ZSkKIAkJZ2Rydi0+cmVtb3ZlKGdkZXYpOwotCi0JcmV0dXJuIDA7 CiB9CiAKIHN0YXRpYyB2b2lkIGNjd2dyb3VwX3NodXRkb3duKHN0cnVjdCBkZXZpY2UgKmRldikK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvczM5MC9jaW8vY3NzLmMgYi9kcml2ZXJzL3MzOTAvY2lvL2Nz cy5jCmluZGV4IDA5MmZkMWVhNTc5OS4uZWJjMzIxZWRiYTUxIDEwMDY0NAotLS0gYS9kcml2ZXJz L3MzOTAvY2lvL2Nzcy5jCisrKyBiL2RyaXZlcnMvczM5MC9jaW8vY3NzLmMKQEAgLTEzNzEsNyAr MTM3MSw3IEBAIHN0YXRpYyBpbnQgY3NzX3Byb2JlKHN0cnVjdCBkZXZpY2UgKmRldikKIAlyZXR1 cm4gcmV0OwogfQogCi1zdGF0aWMgaW50IGNzc19yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQor c3RhdGljIHZvaWQgY3NzX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiB7CiAJc3RydWN0IHN1 YmNoYW5uZWwgKnNjaDsKIApAQCAtMTM3OSw4ICsxMzc5LDYgQEAgc3RhdGljIGludCBjc3NfcmVt b3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKIAlpZiAoc2NoLT5kcml2ZXItPnJlbW92ZSkKIAkJc2No LT5kcml2ZXItPnJlbW92ZShzY2gpOwogCXNjaC0+ZHJpdmVyID0gTlVMTDsKLQotCXJldHVybiAw OwogfQogCiBzdGF0aWMgdm9pZCBjc3Nfc2h1dGRvd24oc3RydWN0IGRldmljZSAqZGV2KQpkaWZm IC0tZ2l0IGEvZHJpdmVycy9zMzkwL2Npby9kZXZpY2UuYyBiL2RyaXZlcnMvczM5MC9jaW8vZGV2 aWNlLmMKaW5kZXggY2Q1ZDJkNGQ4ZTQ2Li5hZGYzM2I2NTNkODcgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvczM5MC9jaW8vZGV2aWNlLmMKKysrIGIvZHJpdmVycy9zMzkwL2Npby9kZXZpY2UuYwpAQCAt MTc0MSw3ICsxNzQxLDcgQEAgY2N3X2RldmljZV9wcm9iZSAoc3RydWN0IGRldmljZSAqZGV2KQog CXJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IGNjd19kZXZpY2VfcmVtb3ZlKHN0cnVjdCBkZXZp Y2UgKmRldikKK3N0YXRpYyB2b2lkIGNjd19kZXZpY2VfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRl dikKIHsKIAlzdHJ1Y3QgY2N3X2RldmljZSAqY2RldiA9IHRvX2Njd2RldihkZXYpOwogCXN0cnVj dCBjY3dfZHJpdmVyICpjZHJ2ID0gY2Rldi0+ZHJ2OwpAQCAtMTc3NSw4ICsxNzc1LDYgQEAgc3Rh dGljIGludCBjY3dfZGV2aWNlX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJc3Bpbl91bmxv Y2tfaXJxKGNkZXYtPmNjd2xvY2spOwogCWlvX3N1YmNoYW5uZWxfcXVpZXNjZShzY2gpOwogCV9f ZGlzYWJsZV9jbWYoY2Rldik7Ci0KLQlyZXR1cm4gMDsKIH0KIAogc3RhdGljIHZvaWQgY2N3X2Rl dmljZV9zaHV0ZG93bihzdHJ1Y3QgZGV2aWNlICpkZXYpCmRpZmYgLS1naXQgYS9kcml2ZXJzL3Mz OTAvY2lvL3NjbS5jIGIvZHJpdmVycy9zMzkwL2Npby9zY20uYwppbmRleCBiMzE3MTEzMDdlNWEu LmI2YjQ1ODljNzBiZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9zMzkwL2Npby9zY20uYworKysgYi9k cml2ZXJzL3MzOTAvY2lvL3NjbS5jCkBAIC0yOCwxNSArMjgsMTMgQEAgc3RhdGljIGludCBzY21k ZXZfcHJvYmUoc3RydWN0IGRldmljZSAqZGV2KQogCXJldHVybiBzY21kcnYtPnByb2JlID8gc2Nt ZHJ2LT5wcm9iZShzY21kZXYpIDogLUVOT0RFVjsKIH0KIAotc3RhdGljIGludCBzY21kZXZfcmVt b3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKK3N0YXRpYyB2b2lkIHNjbWRldl9yZW1vdmUoc3RydWN0 IGRldmljZSAqZGV2KQogewogCXN0cnVjdCBzY21fZGV2aWNlICpzY21kZXYgPSB0b19zY21fZGV2 KGRldik7CiAJc3RydWN0IHNjbV9kcml2ZXIgKnNjbWRydiA9IHRvX3NjbV9kcnYoZGV2LT5kcml2 ZXIpOwogCiAJaWYgKHNjbWRydi0+cmVtb3ZlKQogCQlzY21kcnYtPnJlbW92ZShzY21kZXYpOwot Ci0JcmV0dXJuIDA7CiB9CiAKIHN0YXRpYyBpbnQgc2NtZGV2X3VldmVudChzdHJ1Y3QgZGV2aWNl ICpkZXYsIHN0cnVjdCBrb2JqX3VldmVudF9lbnYgKmVudikKZGlmZiAtLWdpdCBhL2RyaXZlcnMv czM5MC9jcnlwdG8vYXBfYnVzLmMgYi9kcml2ZXJzL3MzOTAvY3J5cHRvL2FwX2J1cy5jCmluZGV4 IGQyNTYwMTg2ZDc3MS4uOGEwZDM3YzBlMmE1IDEwMDY0NAotLS0gYS9kcml2ZXJzL3MzOTAvY3J5 cHRvL2FwX2J1cy5jCisrKyBiL2RyaXZlcnMvczM5MC9jcnlwdG8vYXBfYnVzLmMKQEAgLTg4NCw3 ICs4ODQsNyBAQCBzdGF0aWMgaW50IGFwX2RldmljZV9wcm9iZShzdHJ1Y3QgZGV2aWNlICpkZXYp CiAJcmV0dXJuIHJjOwogfQogCi1zdGF0aWMgaW50IGFwX2RldmljZV9yZW1vdmUoc3RydWN0IGRl dmljZSAqZGV2KQorc3RhdGljIHZvaWQgYXBfZGV2aWNlX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpk ZXYpCiB7CiAJc3RydWN0IGFwX2RldmljZSAqYXBfZGV2ID0gdG9fYXBfZGV2KGRldik7CiAJc3Ry dWN0IGFwX2RyaXZlciAqYXBfZHJ2ID0gYXBfZGV2LT5kcnY7CkBAIC05MDksOCArOTA5LDYgQEAg c3RhdGljIGludCBhcF9kZXZpY2VfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKIAlhcF9kZXYt PmRydiA9IE5VTEw7CiAKIAlwdXRfZGV2aWNlKGRldik7Ci0KLQlyZXR1cm4gMDsKIH0KIAogc3Ry dWN0IGFwX3F1ZXVlICphcF9nZXRfcWRldihhcF9xaWRfdCBxaWQpCmRpZmYgLS1naXQgYS9kcml2 ZXJzL3Njc2kvc2NzaV9kZWJ1Zy5jIGIvZHJpdmVycy9zY3NpL3Njc2lfZGVidWcuYwppbmRleCA1 YjNhMjBhMTQwZjkuLjU4ZjY5MzY2YmRjYyAxMDA2NDQKLS0tIGEvZHJpdmVycy9zY3NpL3Njc2lf ZGVidWcuYworKysgYi9kcml2ZXJzL3Njc2kvc2NzaV9kZWJ1Zy5jCkBAIC03Njc0LDcgKzc2NzQs NyBAQCBzdGF0aWMgaW50IHNkZWJ1Z19kcml2ZXJfcHJvYmUoc3RydWN0IGRldmljZSAqZGV2KQog CXJldHVybiBlcnJvcjsKIH0KIAotc3RhdGljIGludCBzZGVidWdfZHJpdmVyX3JlbW92ZShzdHJ1 Y3QgZGV2aWNlICpkZXYpCitzdGF0aWMgdm9pZCBzZGVidWdfZHJpdmVyX3JlbW92ZShzdHJ1Y3Qg ZGV2aWNlICpkZXYpCiB7CiAJc3RydWN0IHNkZWJ1Z19ob3N0X2luZm8gKnNkYmdfaG9zdDsKIAlz dHJ1Y3Qgc2RlYnVnX2Rldl9pbmZvICpzZGJnX2RldmluZm8sICp0bXA7CkBAIC03NjkxLDcgKzc2 OTEsNiBAQCBzdGF0aWMgaW50IHNkZWJ1Z19kcml2ZXJfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRl dikKIAl9CiAKIAlzY3NpX2hvc3RfcHV0KHNkYmdfaG9zdC0+c2hvc3QpOwotCXJldHVybiAwOwog fQogCiBzdGF0aWMgaW50IHBzZXVkb19sbGRfYnVzX21hdGNoKHN0cnVjdCBkZXZpY2UgKmRldiwK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvc2lveC9zaW94LWNvcmUuYyBiL2RyaXZlcnMvc2lveC9zaW94 LWNvcmUuYwppbmRleCAxNzk0ZmYwMTA2YmMuLjdjNGYzMmQ3Njk2NiAxMDA2NDQKLS0tIGEvZHJp dmVycy9zaW94L3Npb3gtY29yZS5jCisrKyBiL2RyaXZlcnMvc2lveC9zaW94LWNvcmUuYwpAQCAt NTIwLDcgKzUyMCw3IEBAIHN0YXRpYyBpbnQgc2lveF9wcm9iZShzdHJ1Y3QgZGV2aWNlICpkZXYp CiAJcmV0dXJuIHNkcml2ZXItPnByb2JlKHNkZXZpY2UpOwogfQogCi1zdGF0aWMgaW50IHNpb3hf cmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKK3N0YXRpYyB2b2lkIHNpb3hfcmVtb3ZlKHN0cnVj dCBkZXZpY2UgKmRldikKIHsKIAlzdHJ1Y3Qgc2lveF9kcml2ZXIgKnNkcml2ZXIgPQogCQljb250 YWluZXJfb2YoZGV2LT5kcml2ZXIsIHN0cnVjdCBzaW94X2RyaXZlciwgZHJpdmVyKTsKQEAgLTUy OCw4ICs1MjgsNiBAQCBzdGF0aWMgaW50IHNpb3hfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikK IAogCWlmIChzZHJpdmVyLT5yZW1vdmUpCiAJCXNkcml2ZXItPnJlbW92ZShzZGV2aWNlKTsKLQot CXJldHVybiAwOwogfQogCiBzdGF0aWMgdm9pZCBzaW94X3NodXRkb3duKHN0cnVjdCBkZXZpY2Ug KmRldikKZGlmZiAtLWdpdCBhL2RyaXZlcnMvc2xpbWJ1cy9jb3JlLmMgYi9kcml2ZXJzL3NsaW1i dXMvY29yZS5jCmluZGV4IDFkMmJjMTgxZGEwNS4uNzg0ODBlMzMyYWI4IDEwMDY0NAotLS0gYS9k cml2ZXJzL3NsaW1idXMvY29yZS5jCisrKyBiL2RyaXZlcnMvc2xpbWJ1cy9jb3JlLmMKQEAgLTgx LDcgKzgxLDcgQEAgc3RhdGljIGludCBzbGltX2RldmljZV9wcm9iZShzdHJ1Y3QgZGV2aWNlICpk ZXYpCiAJcmV0dXJuIHJldDsKIH0KIAotc3RhdGljIGludCBzbGltX2RldmljZV9yZW1vdmUoc3Ry dWN0IGRldmljZSAqZGV2KQorc3RhdGljIHZvaWQgc2xpbV9kZXZpY2VfcmVtb3ZlKHN0cnVjdCBk ZXZpY2UgKmRldikKIHsKIAlzdHJ1Y3Qgc2xpbV9kZXZpY2UgKnNiZGV2ID0gdG9fc2xpbV9kZXZp Y2UoZGV2KTsKIAlzdHJ1Y3Qgc2xpbV9kcml2ZXIgKnNiZHJ2OwpAQCAtOTEsOCArOTEsNiBAQCBz dGF0aWMgaW50IHNsaW1fZGV2aWNlX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJCWlmIChz YmRydi0+cmVtb3ZlKQogCQkJc2JkcnYtPnJlbW92ZShzYmRldik7CiAJfQotCi0JcmV0dXJuIDA7 CiB9CiAKIHN0YXRpYyBpbnQgc2xpbV9kZXZpY2VfdWV2ZW50KHN0cnVjdCBkZXZpY2UgKmRldiwg c3RydWN0IGtvYmpfdWV2ZW50X2VudiAqZW52KQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9zb2MvcWNv bS9hcHIuYyBiL2RyaXZlcnMvc29jL3Fjb20vYXByLmMKaW5kZXggN2FiZmM4YzRmZGM3Li40NzVh NTdiNDM1YjIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvc29jL3Fjb20vYXByLmMKKysrIGIvZHJpdmVy cy9zb2MvcWNvbS9hcHIuYwpAQCAtMjE3LDcgKzIxNyw3IEBAIHN0YXRpYyBpbnQgYXByX2Rldmlj ZV9wcm9iZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJcmV0dXJuIGFkcnYtPnByb2JlKGFkZXYpOwog fQogCi1zdGF0aWMgaW50IGFwcl9kZXZpY2VfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKK3N0 YXRpYyB2b2lkIGFwcl9kZXZpY2VfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKIHsKIAlzdHJ1 Y3QgYXByX2RldmljZSAqYWRldiA9IHRvX2Fwcl9kZXZpY2UoZGV2KTsKIAlzdHJ1Y3QgYXByX2Ry aXZlciAqYWRydjsKQEAgLTIzMSw4ICsyMzEsNiBAQCBzdGF0aWMgaW50IGFwcl9kZXZpY2VfcmVt b3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKIAkJaWRyX3JlbW92ZSgmYXByLT5zdmNzX2lkciwgYWRl di0+c3ZjX2lkKTsKIAkJc3Bpbl91bmxvY2soJmFwci0+c3Zjc19sb2NrKTsKIAl9Ci0KLQlyZXR1 cm4gMDsKIH0KIAogc3RhdGljIGludCBhcHJfdWV2ZW50KHN0cnVjdCBkZXZpY2UgKmRldiwgc3Ry dWN0IGtvYmpfdWV2ZW50X2VudiAqZW52KQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9zcGkvc3BpLmMg Yi9kcml2ZXJzL3NwaS9zcGkuYwppbmRleCBjOTkxODExNjUzMjEuLmFkMmI1NThkYzljYiAxMDA2 NDQKLS0tIGEvZHJpdmVycy9zcGkvc3BpLmMKKysrIGIvZHJpdmVycy9zcGkvc3BpLmMKQEAgLTQw NSw3ICs0MDUsNyBAQCBzdGF0aWMgaW50IHNwaV9wcm9iZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJ cmV0dXJuIHJldDsKIH0KIAotc3RhdGljIGludCBzcGlfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRl dikKK3N0YXRpYyB2b2lkIHNwaV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogewogCWNvbnN0 IHN0cnVjdCBzcGlfZHJpdmVyCQkqc2RydiA9IHRvX3NwaV9kcml2ZXIoZGV2LT5kcml2ZXIpOwog CkBAIC00MjAsOCArNDIwLDYgQEAgc3RhdGljIGludCBzcGlfcmVtb3ZlKHN0cnVjdCBkZXZpY2Ug KmRldikKIAl9CiAKIAlkZXZfcG1fZG9tYWluX2RldGFjaChkZXYsIHRydWUpOwotCi0JcmV0dXJu IDA7CiB9CiAKIHN0YXRpYyB2b2lkIHNwaV9zaHV0ZG93bihzdHJ1Y3QgZGV2aWNlICpkZXYpCmRp ZmYgLS1naXQgYS9kcml2ZXJzL3NwbWkvc3BtaS5jIGIvZHJpdmVycy9zcG1pL3NwbWkuYwppbmRl eCA1MWY1YWViNjViM2IuLmIzN2VhZDllMmZhZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9zcG1pL3Nw bWkuYworKysgYi9kcml2ZXJzL3NwbWkvc3BtaS5jCkBAIC0zNDUsNyArMzQ1LDcgQEAgc3RhdGlj IGludCBzcG1pX2Rydl9wcm9iZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJcmV0dXJuIGVycjsKIH0K IAotc3RhdGljIGludCBzcG1pX2Rydl9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQorc3RhdGlj IHZvaWQgc3BtaV9kcnZfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKIHsKIAljb25zdCBzdHJ1 Y3Qgc3BtaV9kcml2ZXIgKnNkcnYgPSB0b19zcG1pX2RyaXZlcihkZXYtPmRyaXZlcik7CiAKQEAg LTM1Niw3ICszNTYsNiBAQCBzdGF0aWMgaW50IHNwbWlfZHJ2X3JlbW92ZShzdHJ1Y3QgZGV2aWNl ICpkZXYpCiAJcG1fcnVudGltZV9kaXNhYmxlKGRldik7CiAJcG1fcnVudGltZV9zZXRfc3VzcGVu ZGVkKGRldik7CiAJcG1fcnVudGltZV9wdXRfbm9pZGxlKGRldik7Ci0JcmV0dXJuIDA7CiB9CiAK IHN0YXRpYyB2b2lkIHNwbWlfZHJ2X3NodXRkb3duKHN0cnVjdCBkZXZpY2UgKmRldikKZGlmZiAt LWdpdCBhL2RyaXZlcnMvc3NiL21haW4uYyBiL2RyaXZlcnMvc3NiL21haW4uYwppbmRleCAzYTI5 YjU1NzBmOWYuLjhhOTNjODNjYjZmOCAxMDA2NDQKLS0tIGEvZHJpdmVycy9zc2IvbWFpbi5jCisr KyBiL2RyaXZlcnMvc3NiL21haW4uYwpAQCAtMjgzLDcgKzI4Myw3IEBAIHN0YXRpYyB2b2lkIHNz Yl9kZXZpY2Vfc2h1dGRvd24oc3RydWN0IGRldmljZSAqZGV2KQogCQlzc2JfZHJ2LT5zaHV0ZG93 bihzc2JfZGV2KTsKIH0KIAotc3RhdGljIGludCBzc2JfZGV2aWNlX3JlbW92ZShzdHJ1Y3QgZGV2 aWNlICpkZXYpCitzdGF0aWMgdm9pZCBzc2JfZGV2aWNlX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpk ZXYpCiB7CiAJc3RydWN0IHNzYl9kZXZpY2UgKnNzYl9kZXYgPSBkZXZfdG9fc3NiX2RldihkZXYp OwogCXN0cnVjdCBzc2JfZHJpdmVyICpzc2JfZHJ2ID0gZHJ2X3RvX3NzYl9kcnYoZGV2LT5kcml2 ZXIpOwpAQCAtMjkxLDggKzI5MSw2IEBAIHN0YXRpYyBpbnQgc3NiX2RldmljZV9yZW1vdmUoc3Ry dWN0IGRldmljZSAqZGV2KQogCWlmIChzc2JfZHJ2ICYmIHNzYl9kcnYtPnJlbW92ZSkKIAkJc3Ni X2Rydi0+cmVtb3ZlKHNzYl9kZXYpOwogCXNzYl9kZXZpY2VfcHV0KHNzYl9kZXYpOwotCi0JcmV0 dXJuIDA7CiB9CiAKIHN0YXRpYyBpbnQgc3NiX2RldmljZV9wcm9iZShzdHJ1Y3QgZGV2aWNlICpk ZXYpCmRpZmYgLS1naXQgYS9kcml2ZXJzL3N0YWdpbmcvZmllbGRidXMvYW55YnVzcy9ob3N0LmMg Yi9kcml2ZXJzL3N0YWdpbmcvZmllbGRidXMvYW55YnVzcy9ob3N0LmMKaW5kZXggMGY3MzBlZmU5 YTZkLi44YTc1ZjY2NDJjNzggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvc3RhZ2luZy9maWVsZGJ1cy9h bnlidXNzL2hvc3QuYworKysgYi9kcml2ZXJzL3N0YWdpbmcvZmllbGRidXMvYW55YnVzcy9ob3N0 LmMKQEAgLTExODYsMTUgKzExODYsMTMgQEAgc3RhdGljIGludCBhbnlidXNfYnVzX3Byb2JlKHN0 cnVjdCBkZXZpY2UgKmRldikKIAlyZXR1cm4gYWRydi0+cHJvYmUoYWRldik7CiB9CiAKLXN0YXRp YyBpbnQgYW55YnVzX2J1c19yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQorc3RhdGljIHZvaWQg YW55YnVzX2J1c19yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogewogCXN0cnVjdCBhbnlidXNz X2NsaWVudF9kcml2ZXIgKmFkcnYgPQogCQl0b19hbnlidXNzX2NsaWVudF9kcml2ZXIoZGV2LT5k cml2ZXIpOwogCiAJaWYgKGFkcnYtPnJlbW92ZSkKIAkJYWRydi0+cmVtb3ZlKHRvX2FueWJ1c3Nf Y2xpZW50KGRldikpOwotCi0JcmV0dXJuIDA7CiB9CiAKIHN0YXRpYyBzdHJ1Y3QgYnVzX3R5cGUg YW55YnVzX2J1cyA9IHsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvc3RhZ2luZy9ncmV5YnVzL2dicGh5 LmMgYi9kcml2ZXJzL3N0YWdpbmcvZ3JleWJ1cy9nYnBoeS5jCmluZGV4IDEzZDMxOTg2MGRhNS4u NWE1YzE3YTQ1MTliIDEwMDY0NAotLS0gYS9kcml2ZXJzL3N0YWdpbmcvZ3JleWJ1cy9nYnBoeS5j CisrKyBiL2RyaXZlcnMvc3RhZ2luZy9ncmV5YnVzL2dicGh5LmMKQEAgLTE2OSw3ICsxNjksNyBA QCBzdGF0aWMgaW50IGdicGh5X2Rldl9wcm9iZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJcmV0dXJu IHJldDsKIH0KIAotc3RhdGljIGludCBnYnBoeV9kZXZfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRl dikKK3N0YXRpYyB2b2lkIGdicGh5X2Rldl9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogewog CXN0cnVjdCBnYnBoeV9kcml2ZXIgKmdicGh5X2RydiA9IHRvX2dicGh5X2RyaXZlcihkZXYtPmRy aXZlcik7CiAJc3RydWN0IGdicGh5X2RldmljZSAqZ2JwaHlfZGV2ID0gdG9fZ2JwaHlfZGV2KGRl dik7CkBAIC0xODAsOCArMTgwLDYgQEAgc3RhdGljIGludCBnYnBoeV9kZXZfcmVtb3ZlKHN0cnVj dCBkZXZpY2UgKmRldikKIAlwbV9ydW50aW1lX3NldF9zdXNwZW5kZWQoZGV2KTsKIAlwbV9ydW50 aW1lX3B1dF9ub2lkbGUoZGV2KTsKIAlwbV9ydW50aW1lX2RvbnRfdXNlX2F1dG9zdXNwZW5kKGRl dik7Ci0KLQlyZXR1cm4gMDsKIH0KIAogc3RhdGljIHN0cnVjdCBidXNfdHlwZSBnYnBoeV9idXNf dHlwZSA9IHsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvdGFyZ2V0L2xvb3BiYWNrL3RjbV9sb29wLmMg Yi9kcml2ZXJzL3RhcmdldC9sb29wYmFjay90Y21fbG9vcC5jCmluZGV4IDZkMGIwZTY3ZTc5ZS4u Y2JiMjExOGZiMzVlIDEwMDY0NAotLS0gYS9kcml2ZXJzL3RhcmdldC9sb29wYmFjay90Y21fbG9v cC5jCisrKyBiL2RyaXZlcnMvdGFyZ2V0L2xvb3BiYWNrL3RjbV9sb29wLmMKQEAgLTgxLDcgKzgx LDcgQEAgc3RhdGljIGludCB0Y21fbG9vcF9zaG93X2luZm8oc3RydWN0IHNlcV9maWxlICptLCBz dHJ1Y3QgU2NzaV9Ib3N0ICpob3N0KQogfQogCiBzdGF0aWMgaW50IHRjbV9sb29wX2RyaXZlcl9w cm9iZShzdHJ1Y3QgZGV2aWNlICopOwotc3RhdGljIGludCB0Y21fbG9vcF9kcml2ZXJfcmVtb3Zl KHN0cnVjdCBkZXZpY2UgKik7CitzdGF0aWMgdm9pZCB0Y21fbG9vcF9kcml2ZXJfcmVtb3ZlKHN0 cnVjdCBkZXZpY2UgKik7CiAKIHN0YXRpYyBpbnQgcHNldWRvX2xsZF9idXNfbWF0Y2goc3RydWN0 IGRldmljZSAqZGV2LAogCQkJCXN0cnVjdCBkZXZpY2VfZHJpdmVyICpkZXZfZHJpdmVyKQpAQCAt MzYzLDcgKzM2Myw3IEBAIHN0YXRpYyBpbnQgdGNtX2xvb3BfZHJpdmVyX3Byb2JlKHN0cnVjdCBk ZXZpY2UgKmRldikKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCB0Y21fbG9vcF9kcml2ZXJf cmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKK3N0YXRpYyB2b2lkIHRjbV9sb29wX2RyaXZlcl9y ZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogewogCXN0cnVjdCB0Y21fbG9vcF9oYmEgKnRsX2hi YTsKIAlzdHJ1Y3QgU2NzaV9Ib3N0ICpzaDsKQEAgLTM3Myw3ICszNzMsNiBAQCBzdGF0aWMgaW50 IHRjbV9sb29wX2RyaXZlcl9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogCiAJc2NzaV9yZW1v dmVfaG9zdChzaCk7CiAJc2NzaV9ob3N0X3B1dChzaCk7Ci0JcmV0dXJuIDA7CiB9CiAKIHN0YXRp YyB2b2lkIHRjbV9sb29wX3JlbGVhc2VfYWRhcHRlcihzdHJ1Y3QgZGV2aWNlICpkZXYpCmRpZmYg LS1naXQgYS9kcml2ZXJzL3RodW5kZXJib2x0L2RvbWFpbi5jIGIvZHJpdmVycy90aHVuZGVyYm9s dC9kb21haW4uYwppbmRleCBhMDYyYmVmY2IzYjIuLjcwMThkOTU5Zjc3NSAxMDA2NDQKLS0tIGEv ZHJpdmVycy90aHVuZGVyYm9sdC9kb21haW4uYworKysgYi9kcml2ZXJzL3RodW5kZXJib2x0L2Rv bWFpbi5jCkBAIC04Niw3ICs4Niw3IEBAIHN0YXRpYyBpbnQgdGJfc2VydmljZV9wcm9iZShzdHJ1 Y3QgZGV2aWNlICpkZXYpCiAJcmV0dXJuIGRyaXZlci0+cHJvYmUoc3ZjLCBpZCk7CiB9CiAKLXN0 YXRpYyBpbnQgdGJfc2VydmljZV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQorc3RhdGljIHZv aWQgdGJfc2VydmljZV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogewogCXN0cnVjdCB0Yl9z ZXJ2aWNlICpzdmMgPSB0Yl90b19zZXJ2aWNlKGRldik7CiAJc3RydWN0IHRiX3NlcnZpY2VfZHJp dmVyICpkcml2ZXI7CkBAIC05NCw4ICs5NCw2IEBAIHN0YXRpYyBpbnQgdGJfc2VydmljZV9yZW1v dmUoc3RydWN0IGRldmljZSAqZGV2KQogCWRyaXZlciA9IGNvbnRhaW5lcl9vZihkZXYtPmRyaXZl ciwgc3RydWN0IHRiX3NlcnZpY2VfZHJpdmVyLCBkcml2ZXIpOwogCWlmIChkcml2ZXItPnJlbW92 ZSkKIAkJZHJpdmVyLT5yZW1vdmUoc3ZjKTsKLQotCXJldHVybiAwOwogfQogCiBzdGF0aWMgdm9p ZCB0Yl9zZXJ2aWNlX3NodXRkb3duKHN0cnVjdCBkZXZpY2UgKmRldikKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvdHR5L3NlcmRldi9jb3JlLmMgYi9kcml2ZXJzL3R0eS9zZXJkZXYvY29yZS5jCmluZGV4 IDljZGZjZmUwN2U4Ny4uOTI0OTg5NjFmZDkyIDEwMDY0NAotLS0gYS9kcml2ZXJzL3R0eS9zZXJk ZXYvY29yZS5jCisrKyBiL2RyaXZlcnMvdHR5L3NlcmRldi9jb3JlLmMKQEAgLTQyMSwxNSArNDIx LDEzIEBAIHN0YXRpYyBpbnQgc2VyZGV2X2Rydl9wcm9iZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJ cmV0dXJuIHJldDsKIH0KIAotc3RhdGljIGludCBzZXJkZXZfZHJ2X3JlbW92ZShzdHJ1Y3QgZGV2 aWNlICpkZXYpCitzdGF0aWMgdm9pZCBzZXJkZXZfZHJ2X3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpk ZXYpCiB7CiAJY29uc3Qgc3RydWN0IHNlcmRldl9kZXZpY2VfZHJpdmVyICpzZHJ2ID0gdG9fc2Vy ZGV2X2RldmljZV9kcml2ZXIoZGV2LT5kcml2ZXIpOwogCWlmIChzZHJ2LT5yZW1vdmUpCiAJCXNk cnYtPnJlbW92ZSh0b19zZXJkZXZfZGV2aWNlKGRldikpOwogCiAJZGV2X3BtX2RvbWFpbl9kZXRh Y2goZGV2LCB0cnVlKTsKLQotCXJldHVybiAwOwogfQogCiBzdGF0aWMgc3RydWN0IGJ1c190eXBl IHNlcmRldl9idXNfdHlwZSA9IHsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvdXNiL2NvbW1vbi91bHBp LmMgYi9kcml2ZXJzL3VzYi9jb21tb24vdWxwaS5jCmluZGV4IDdlMTNiNzRlNjBlNS4uNDE2OWNm NDBhMDNiIDEwMDY0NAotLS0gYS9kcml2ZXJzL3VzYi9jb21tb24vdWxwaS5jCisrKyBiL2RyaXZl cnMvdXNiL2NvbW1vbi91bHBpLmMKQEAgLTc4LDE0ICs3OCwxMiBAQCBzdGF0aWMgaW50IHVscGlf cHJvYmUoc3RydWN0IGRldmljZSAqZGV2KQogCXJldHVybiBkcnYtPnByb2JlKHRvX3VscGlfZGV2 KGRldikpOwogfQogCi1zdGF0aWMgaW50IHVscGlfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikK K3N0YXRpYyB2b2lkIHVscGlfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKIHsKIAlzdHJ1Y3Qg dWxwaV9kcml2ZXIgKmRydiA9IHRvX3VscGlfZHJpdmVyKGRldi0+ZHJpdmVyKTsKIAogCWlmIChk cnYtPnJlbW92ZSkKIAkJZHJ2LT5yZW1vdmUodG9fdWxwaV9kZXYoZGV2KSk7Ci0KLQlyZXR1cm4g MDsKIH0KIAogc3RhdGljIHN0cnVjdCBidXNfdHlwZSB1bHBpX2J1cyA9IHsKZGlmZiAtLWdpdCBh L2RyaXZlcnMvdXNiL3NlcmlhbC9idXMuYyBiL2RyaXZlcnMvdXNiL3NlcmlhbC9idXMuYwppbmRl eCA3MTMzODE4YTU4YjkuLjllMzgxNDJhY2QzOCAxMDA2NDQKLS0tIGEvZHJpdmVycy91c2Ivc2Vy aWFsL2J1cy5jCisrKyBiL2RyaXZlcnMvdXNiL3NlcmlhbC9idXMuYwpAQCAtNzQsNyArNzQsNyBA QCBzdGF0aWMgaW50IHVzYl9zZXJpYWxfZGV2aWNlX3Byb2JlKHN0cnVjdCBkZXZpY2UgKmRldikK IAlyZXR1cm4gcmV0dmFsOwogfQogCi1zdGF0aWMgaW50IHVzYl9zZXJpYWxfZGV2aWNlX3JlbW92 ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCitzdGF0aWMgdm9pZCB1c2Jfc2VyaWFsX2RldmljZV9yZW1v dmUoc3RydWN0IGRldmljZSAqZGV2KQogewogCXN0cnVjdCB1c2Jfc2VyaWFsX3BvcnQgKnBvcnQg PSB0b191c2Jfc2VyaWFsX3BvcnQoZGV2KTsKIAlzdHJ1Y3QgdXNiX3NlcmlhbF9kcml2ZXIgKmRy aXZlcjsKQEAgLTEwMSw4ICsxMDEsNiBAQCBzdGF0aWMgaW50IHVzYl9zZXJpYWxfZGV2aWNlX3Jl bW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAKIAlpZiAoIWF1dG9wbV9lcnIpCiAJCXVzYl9hdXRv cG1fcHV0X2ludGVyZmFjZShwb3J0LT5zZXJpYWwtPmludGVyZmFjZSk7Ci0KLQlyZXR1cm4gMDsK IH0KIAogc3RhdGljIHNzaXplX3QgbmV3X2lkX3N0b3JlKHN0cnVjdCBkZXZpY2VfZHJpdmVyICpk cml2ZXIsCmRpZmYgLS1naXQgYS9kcml2ZXJzL3VzYi90eXBlYy9idXMuYyBiL2RyaXZlcnMvdXNi L3R5cGVjL2J1cy5jCmluZGV4IDdmM2M5YThlMmJmMC4uNzhlMGU3ODk1NGYyIDEwMDY0NAotLS0g YS9kcml2ZXJzL3VzYi90eXBlYy9idXMuYworKysgYi9kcml2ZXJzL3VzYi90eXBlYy9idXMuYwpA QCAtMzgyLDcgKzM4Miw3IEBAIHN0YXRpYyBpbnQgdHlwZWNfcHJvYmUoc3RydWN0IGRldmljZSAq ZGV2KQogCXJldHVybiByZXQ7CiB9CiAKLXN0YXRpYyBpbnQgdHlwZWNfcmVtb3ZlKHN0cnVjdCBk ZXZpY2UgKmRldikKK3N0YXRpYyB2b2lkIHR5cGVjX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYp CiB7CiAJc3RydWN0IHR5cGVjX2FsdG1vZGVfZHJpdmVyICpkcnYgPSB0b19hbHRtb2RlX2RyaXZl cihkZXYtPmRyaXZlcik7CiAJc3RydWN0IHR5cGVjX2FsdG1vZGUgKmFkZXYgPSB0b190eXBlY19h bHRtb2RlKGRldik7CkBAIC00MDAsOCArNDAwLDYgQEAgc3RhdGljIGludCB0eXBlY19yZW1vdmUo c3RydWN0IGRldmljZSAqZGV2KQogCiAJYWRldi0+ZGVzYyA9IE5VTEw7CiAJYWRldi0+b3BzID0g TlVMTDsKLQotCXJldHVybiAwOwogfQogCiBzdHJ1Y3QgYnVzX3R5cGUgdHlwZWNfYnVzID0gewpk aWZmIC0tZ2l0IGEvZHJpdmVycy92ZHBhL3ZkcGEuYyBiL2RyaXZlcnMvdmRwYS92ZHBhLmMKaW5k ZXggYmIzZjFkMWYwNDIyLi4zZmM0NTI1ZmMwNWMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvdmRwYS92 ZHBhLmMKKysrIGIvZHJpdmVycy92ZHBhL3ZkcGEuYwpAQCAtMzQsMTUgKzM0LDEzIEBAIHN0YXRp YyBpbnQgdmRwYV9kZXZfcHJvYmUoc3RydWN0IGRldmljZSAqZCkKIAlyZXR1cm4gcmV0OwogfQog Ci1zdGF0aWMgaW50IHZkcGFfZGV2X3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkKQorc3RhdGljIHZv aWQgdmRwYV9kZXZfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmQpCiB7CiAJc3RydWN0IHZkcGFfZGV2 aWNlICp2ZGV2ID0gZGV2X3RvX3ZkcGEoZCk7CiAJc3RydWN0IHZkcGFfZHJpdmVyICpkcnYgPSBk cnZfdG9fdmRwYSh2ZGV2LT5kZXYuZHJpdmVyKTsKIAogCWlmIChkcnYgJiYgZHJ2LT5yZW1vdmUp CiAJCWRydi0+cmVtb3ZlKHZkZXYpOwotCi0JcmV0dXJuIDA7CiB9CiAKIHN0YXRpYyBzdHJ1Y3Qg YnVzX3R5cGUgdmRwYV9idXMgPSB7CmRpZmYgLS1naXQgYS9kcml2ZXJzL3ZmaW8vbWRldi9tZGV2 X2RyaXZlci5jIGIvZHJpdmVycy92ZmlvL21kZXYvbWRldl9kcml2ZXIuYwppbmRleCBjMzY4ZWM4 MjRlMmIuLmUyY2IxZmY1NmY2YyAxMDA2NDQKLS0tIGEvZHJpdmVycy92ZmlvL21kZXYvbWRldl9k cml2ZXIuYworKysgYi9kcml2ZXJzL3ZmaW8vbWRldi9tZGV2X2RyaXZlci5jCkBAIC01Nyw3ICs1 Nyw3IEBAIHN0YXRpYyBpbnQgbWRldl9wcm9iZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJcmV0dXJu IHJldDsKIH0KIAotc3RhdGljIGludCBtZGV2X3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCitz dGF0aWMgdm9pZCBtZGV2X3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiB7CiAJc3RydWN0IG1k ZXZfZHJpdmVyICpkcnYgPQogCQljb250YWluZXJfb2YoZGV2LT5kcml2ZXIsIHN0cnVjdCBtZGV2 X2RyaXZlciwgZHJpdmVyKTsKQEAgLTY3LDggKzY3LDYgQEAgc3RhdGljIGludCBtZGV2X3JlbW92 ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJCWRydi0+cmVtb3ZlKG1kZXYpOwogCiAJbWRldl9kZXRh Y2hfaW9tbXUobWRldik7Ci0KLQlyZXR1cm4gMDsKIH0KIAogc3RhdGljIGludCBtZGV2X21hdGNo KHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IGRldmljZV9kcml2ZXIgKmRydikKZGlmZiAtLWdp dCBhL2RyaXZlcnMvdmlydGlvL3ZpcnRpby5jIGIvZHJpdmVycy92aXJ0aW8vdmlydGlvLmMKaW5k ZXggNGIxNWMwMGMwYTBhLi4yYTYwNTVjMGQ0ZDMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvdmlydGlv L3ZpcnRpby5jCisrKyBiL2RyaXZlcnMvdmlydGlvL3ZpcnRpby5jCkBAIC0yNzgsNyArMjc4LDcg QEAgc3RhdGljIGludCB2aXJ0aW9fZGV2X3Byb2JlKHN0cnVjdCBkZXZpY2UgKl9kKQogCiB9CiAK LXN0YXRpYyBpbnQgdmlydGlvX2Rldl9yZW1vdmUoc3RydWN0IGRldmljZSAqX2QpCitzdGF0aWMg dm9pZCB2aXJ0aW9fZGV2X3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpfZCkKIHsKIAlzdHJ1Y3Qgdmly dGlvX2RldmljZSAqZGV2ID0gZGV2X3RvX3ZpcnRpbyhfZCk7CiAJc3RydWN0IHZpcnRpb19kcml2 ZXIgKmRydiA9IGRydl90b192aXJ0aW8oZGV2LT5kZXYuZHJpdmVyKTsKQEAgLTI5Miw3ICsyOTIs NiBAQCBzdGF0aWMgaW50IHZpcnRpb19kZXZfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKl9kKQogCiAJ LyogQWNrbm93bGVkZ2UgdGhlIGRldmljZSdzIGV4aXN0ZW5jZSBhZ2Fpbi4gKi8KIAl2aXJ0aW9f YWRkX3N0YXR1cyhkZXYsIFZJUlRJT19DT05GSUdfU19BQ0tOT1dMRURHRSk7Ci0JcmV0dXJuIDA7 CiB9CiAKIHN0YXRpYyBzdHJ1Y3QgYnVzX3R5cGUgdmlydGlvX2J1cyA9IHsKZGlmZiAtLWdpdCBh L2RyaXZlcnMvdm1lL3ZtZS5jIGIvZHJpdmVycy92bWUvdm1lLmMKaW5kZXggMWIxNWFmZWEyOGVl Li44ZGJhMjAxODZiZTMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvdm1lL3ZtZS5jCisrKyBiL2RyaXZl cnMvdm1lL3ZtZS5jCkBAIC0xOTkwLDcgKzE5OTAsNyBAQCBzdGF0aWMgaW50IHZtZV9idXNfcHJv YmUoc3RydWN0IGRldmljZSAqZGV2KQogCXJldHVybiAtRU5PREVWOwogfQogCi1zdGF0aWMgaW50 IHZtZV9idXNfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKK3N0YXRpYyB2b2lkIHZtZV9idXNf cmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKIHsKIAlzdHJ1Y3Qgdm1lX2RyaXZlciAqZHJpdmVy OwogCXN0cnVjdCB2bWVfZGV2ICp2ZGV2ID0gZGV2X3RvX3ZtZV9kZXYoZGV2KTsKQEAgLTE5OTgs OCArMTk5OCw2IEBAIHN0YXRpYyBpbnQgdm1lX2J1c19yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2 KQogCWRyaXZlciA9IGRldi0+cGxhdGZvcm1fZGF0YTsKIAlpZiAoZHJpdmVyLT5yZW1vdmUpCiAJ CWRyaXZlci0+cmVtb3ZlKHZkZXYpOwotCi0JcmV0dXJuIDA7CiB9CiAKIHN0cnVjdCBidXNfdHlw ZSB2bWVfYnVzX3R5cGUgPSB7CmRpZmYgLS1naXQgYS9kcml2ZXJzL3hlbi94ZW5idXMveGVuYnVz LmggYi9kcml2ZXJzL3hlbi94ZW5idXMveGVuYnVzLmgKaW5kZXggMmE5M2I3YzljMTU5Li4yNzU0 YmRmYWRjYjggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMveGVuL3hlbmJ1cy94ZW5idXMuaAorKysgYi9k cml2ZXJzL3hlbi94ZW5idXMveGVuYnVzLmgKQEAgLTEwNiw3ICsxMDYsNyBAQCB2b2lkIHhzX3Jl cXVlc3RfZXhpdChzdHJ1Y3QgeGJfcmVxX2RhdGEgKnJlcSk7CiAKIGludCB4ZW5idXNfbWF0Y2go c3RydWN0IGRldmljZSAqX2Rldiwgc3RydWN0IGRldmljZV9kcml2ZXIgKl9kcnYpOwogaW50IHhl bmJ1c19kZXZfcHJvYmUoc3RydWN0IGRldmljZSAqX2Rldik7Ci1pbnQgeGVuYnVzX2Rldl9yZW1v dmUoc3RydWN0IGRldmljZSAqX2Rldik7Cit2b2lkIHhlbmJ1c19kZXZfcmVtb3ZlKHN0cnVjdCBk ZXZpY2UgKl9kZXYpOwogaW50IHhlbmJ1c19yZWdpc3Rlcl9kcml2ZXJfY29tbW9uKHN0cnVjdCB4 ZW5idXNfZHJpdmVyICpkcnYsCiAJCQkJICBzdHJ1Y3QgeGVuX2J1c190eXBlICpidXMsCiAJCQkJ ICBzdHJ1Y3QgbW9kdWxlICpvd25lciwKZGlmZiAtLWdpdCBhL2RyaXZlcnMveGVuL3hlbmJ1cy94 ZW5idXNfcHJvYmUuYyBiL2RyaXZlcnMveGVuL3hlbmJ1cy94ZW5idXNfcHJvYmUuYwppbmRleCA5 N2YwZDIzNDQ4MmQuLmY0ZjUyZDU3NGRmOSAxMDA2NDQKLS0tIGEvZHJpdmVycy94ZW4veGVuYnVz L3hlbmJ1c19wcm9iZS5jCisrKyBiL2RyaXZlcnMveGVuL3hlbmJ1cy94ZW5idXNfcHJvYmUuYwpA QCAtMzI2LDcgKzMyNiw3IEBAIGludCB4ZW5idXNfZGV2X3Byb2JlKHN0cnVjdCBkZXZpY2UgKl9k ZXYpCiB9CiBFWFBPUlRfU1lNQk9MX0dQTCh4ZW5idXNfZGV2X3Byb2JlKTsKIAotaW50IHhlbmJ1 c19kZXZfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKl9kZXYpCit2b2lkIHhlbmJ1c19kZXZfcmVtb3Zl KHN0cnVjdCBkZXZpY2UgKl9kZXYpCiB7CiAJc3RydWN0IHhlbmJ1c19kZXZpY2UgKmRldiA9IHRv X3hlbmJ1c19kZXZpY2UoX2Rldik7CiAJc3RydWN0IHhlbmJ1c19kcml2ZXIgKmRydiA9IHRvX3hl bmJ1c19kcml2ZXIoX2Rldi0+ZHJpdmVyKTsKQEAgLTM1Niw4ICszNTYsNiBAQCBpbnQgeGVuYnVz X2Rldl9yZW1vdmUoc3RydWN0IGRldmljZSAqX2RldikKIAlpZiAoIWRydi0+YWxsb3dfcmViaW5k IHx8CiAJICAgIHhlbmJ1c19yZWFkX2RyaXZlcl9zdGF0ZShkZXYtPm5vZGVuYW1lKSA9PSBYZW5i dXNTdGF0ZUNsb3NpbmcpCiAJCXhlbmJ1c19zd2l0Y2hfc3RhdGUoZGV2LCBYZW5idXNTdGF0ZUNs b3NlZCk7Ci0KLQlyZXR1cm4gMDsKIH0KIEVYUE9SVF9TWU1CT0xfR1BMKHhlbmJ1c19kZXZfcmVt b3ZlKTsKIApkaWZmIC0tZ2l0IGEvaW5jbHVkZS9saW51eC9kZXZpY2UvYnVzLmggYi9pbmNsdWRl L2xpbnV4L2RldmljZS9idXMuaAppbmRleCAxZWE1ZTFkMTU0NWIuLjA2Mjc3N2E0NWE3NCAxMDA2 NDQKLS0tIGEvaW5jbHVkZS9saW51eC9kZXZpY2UvYnVzLmgKKysrIGIvaW5jbHVkZS9saW51eC9k ZXZpY2UvYnVzLmgKQEAgLTkxLDcgKzkxLDcgQEAgc3RydWN0IGJ1c190eXBlIHsKIAlpbnQgKCp1 ZXZlbnQpKHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IGtvYmpfdWV2ZW50X2VudiAqZW52KTsK IAlpbnQgKCpwcm9iZSkoc3RydWN0IGRldmljZSAqZGV2KTsKIAl2b2lkICgqc3luY19zdGF0ZSko c3RydWN0IGRldmljZSAqZGV2KTsKLQlpbnQgKCpyZW1vdmUpKHN0cnVjdCBkZXZpY2UgKmRldik7 CisJdm9pZCAoKnJlbW92ZSkoc3RydWN0IGRldmljZSAqZGV2KTsKIAl2b2lkICgqc2h1dGRvd24p KHN0cnVjdCBkZXZpY2UgKmRldik7CiAKIAlpbnQgKCpvbmxpbmUpKHN0cnVjdCBkZXZpY2UgKmRl dik7CmRpZmYgLS1naXQgYS9zb3VuZC9hb2Evc291bmRidXMvY29yZS5jIGIvc291bmQvYW9hL3Nv dW5kYnVzL2NvcmUuYwppbmRleCAwMDJmYjViZjIyMGIuLmM5NTc5ZDk3ZmJhYiAxMDA2NDQKLS0t IGEvc291bmQvYW9hL3NvdW5kYnVzL2NvcmUuYworKysgYi9zb3VuZC9hb2Evc291bmRidXMvY29y ZS5jCkBAIC0xMDQsNyArMTA0LDcgQEAgc3RhdGljIGludCBzb3VuZGJ1c191ZXZlbnQoc3RydWN0 IGRldmljZSAqZGV2LCBzdHJ1Y3Qga29ial91ZXZlbnRfZW52ICplbnYpCiAJcmV0dXJuIHJldHZh bDsKIH0KIAotc3RhdGljIGludCBzb3VuZGJ1c19kZXZpY2VfcmVtb3ZlKHN0cnVjdCBkZXZpY2Ug KmRldikKK3N0YXRpYyB2b2lkIHNvdW5kYnVzX2RldmljZV9yZW1vdmUoc3RydWN0IGRldmljZSAq ZGV2KQogewogCXN0cnVjdCBzb3VuZGJ1c19kZXYgKiBzb3VuZGJ1c19kZXYgPSB0b19zb3VuZGJ1 c19kZXZpY2UoZGV2KTsKIAlzdHJ1Y3Qgc291bmRidXNfZHJpdmVyICogZHJ2ID0gdG9fc291bmRi dXNfZHJpdmVyKGRldi0+ZHJpdmVyKTsKQEAgLTExMiw4ICsxMTIsNiBAQCBzdGF0aWMgaW50IHNv dW5kYnVzX2RldmljZV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQogCWlmIChkZXYtPmRyaXZl ciAmJiBkcnYtPnJlbW92ZSkKIAkJZHJ2LT5yZW1vdmUoc291bmRidXNfZGV2KTsKIAlzb3VuZGJ1 c19kZXZfcHV0KHNvdW5kYnVzX2Rldik7Ci0KLQlyZXR1cm4gMDsKIH0KIAogc3RhdGljIHZvaWQg c291bmRidXNfZGV2aWNlX3NodXRkb3duKHN0cnVjdCBkZXZpY2UgKmRldikKLS0gCjIuMzAuMgoK Ci0tIApsaW51eC1pM2MgbWFpbGluZyBsaXN0CmxpbnV4LWkzY0BsaXN0cy5pbmZyYWRlYWQub3Jn Cmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtaTNjCg==