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=-8.5 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE, SPF_PASS,USER_AGENT_SANE_2 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 C8C57C2BA83 for ; Fri, 14 Feb 2020 15:10:28 +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 9ADC324650 for ; Fri, 14 Feb 2020 15:10:28 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="F4dsTNGZ"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=kernel.org header.i=@kernel.org header.b="MqGmGnJO" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9ADC324650 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-ID:Subject:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=53oczAMD7PBmh8ij7xaXwHqT1tUYEs7do3oBJoXLkYg=; b=F4dsTNGZXJwMXC jshDbzM8zVEraCTb3TeCcLswanZZgnREyehcx7UpkAv209TlDBKPlZIB2yqS99fy2XjvjfWnSTuIg wprLzEPvWUg9VxF96ace5PPsuQnLGC7iYY9auE2kWkp6dnKrEBY+WQozCp6PDtOMrnV6Y3urc0Ccc 3amKzsIju7+TUZOFgkwsvzHiTyz58RgU+FvpNt3bqVjUJYUNHvor+YMnuM+HxuYYHTU4x3jfLDpVp JqN3vY8LHQu9OMy/CnqHKxmEuBApCC306V4JF0+FeLd+260roDalwTx+ZuqU6HACggzaySuqYZNZX jxBuxLAnihuN3ux/9VHQ==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1j2cbk-0003wl-Rz; Fri, 14 Feb 2020 15:10:20 +0000 Received: from mail.kernel.org ([198.145.29.99]) by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1j2cbg-0003wB-Sm for linux-arm-kernel@lists.infradead.org; Fri, 14 Feb 2020 15:10:18 +0000 Received: from archlinux (cpc149474-cmbg20-2-0-cust94.5-4.cable.virginm.net [82.4.196.95]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 7BDA624670; Fri, 14 Feb 2020 15:10:14 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1581693016; bh=C4ruZYaMs1nYd0gqhHvdOmkB8OWOp8lsaC2jN1arpN4=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=MqGmGnJOi1zsbXYPrFEHiIwrN2I30wVnvtp2y/QcFlG6xq1uFuCM2B1R98BgAeMN1 G+AY1N+t4s4uwug0E1lKcUdbGsa8aLwXJMDSAPAO1HbB1FvNzDZ8nfSKBMG2qDZ9DI /eIC4B8BTkmwjE06SoLeKrYmO2wuvRPMo0x55uZM= Date: Fri, 14 Feb 2020 15:10:11 +0000 From: Jonathan Cameron To: Olivier MOYSAN Subject: Re: [PATCH 4/4] iio: adc: stm32-dfsdm: add scale and offset support Message-ID: <20200214151011.20111e8c@archlinux> In-Reply-To: <5b2e74a0-71bd-46d0-0096-b33ff17f780b@st.com> References: <20200204101008.11411-1-olivier.moysan@st.com> <20200204101008.11411-5-olivier.moysan@st.com> <20200208161847.76c7d6e8@archlinux> <8400827e-5f3d-ad3f-99c8-986934b1a7b8@st.com> <20200214131113.70aa36b8@archlinux> <5b2e74a0-71bd-46d0-0096-b33ff17f780b@st.com> X-Mailer: Claws Mail 3.17.4 (GTK+ 2.24.32; x86_64-pc-linux-gnu) MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200214_071016_978971_73B97F64 X-CRM114-Status: GOOD ( 33.47 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "mark.rutland@arm.com" , "devicetree@vger.kernel.org" , "lars@metafoo.de" , "linux-iio@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "robh+dt@kernel.org" , "pmeerw@pmeerw.net" , "knaack.h@gmx.de" , "linux-stm32@st-md-mailman.stormreply.com" , "linux-arm-kernel@lists.infradead.org" Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gRnJpLCAxNCBGZWIgMjAyMCAxNDo0OToxOCArMDAwMApPbGl2aWVyIE1PWVNBTiA8b2xpdmll ci5tb3lzYW5Ac3QuY29tPiB3cm90ZToKCj4gSGkgSm9uYXRoYW4sCj4gCj4gT24gMi8xNC8yMCAy OjExIFBNLCBKb25hdGhhbiBDYW1lcm9uIHdyb3RlOgo+ID4gT24gVHVlLCAxMSBGZWIgMjAyMCAx NToxOTowMSArMDAwMAo+ID4gT2xpdmllciBNT1lTQU4gPG9saXZpZXIubW95c2FuQHN0LmNvbT4g d3JvdGU6Cj4gPiAgCj4gPj4gSGkgSm9uYXRoYW4sCj4gPj4KPiA+PiBPbiAyLzgvMjAgNToxOCBQ TSwgSm9uYXRoYW4gQ2FtZXJvbiB3cm90ZTogIAo+ID4+PiBPbiBUdWUsIDQgRmViIDIwMjAgMTE6 MTA6MDggKzAxMDAKPiA+Pj4gT2xpdmllciBNb3lzYW4gPG9saXZpZXIubW95c2FuQHN0LmNvbT4g d3JvdGU6Cj4gPj4+ICAgICAKPiA+Pj4+IEFkZCBzY2FsZSBhbmQgb2Zmc2V0IGF0dHJpYnV0ZXMg c3VwcG9ydCB0byBTVE0zMiBERlNETS4KPiA+Pj4+Cj4gPj4+PiBTaWduZWQtb2ZmLWJ5OiBPbGl2 aWVyIE1veXNhbiA8b2xpdmllci5tb3lzYW5Ac3QuY29tPiAgCj4gPj4+IEhtbS4gSSBjYW4ndCBy ZW1lbWJlciB0aGlzIGhpc3Rvcnkgb2YgdGhpcyBidXQgd2UndmUga2luZCBvZgo+ID4+PiBlbmRl ZCB1cCBiYWNrd2FyZHMgd3J0IHRvIG90aGVyIGNvbnN1bWVyIGRyaXZlcnMuCj4gPj4+Cj4gPj4+ IEluIHNvbWUgc2Vuc2UgdGhpcyBpcyBzaW1pbGFyIHRvIHRoZSBhbmFsb2cgZ3lyb3Njb3Blcy4g IEluIHRob3NlCj4gPj4+IHRoZSBjb25zdW1lciBkcml2ZXIgaXMgdGhlIGd5cm9zY29wZSB3aGlj aCBpcyBjb25zdW1pbmcgdGhlIHJhdwo+ID4+PiByZWFkaW5ncyBmcm9tIGFuIEFEQyBjb25uZWN0 ZWQgdG8gdGhlIGNoYW5uZWwuICBUaGlzIHJlc3VsdHMKPiA+Pj4gaW4gdXMgZ2V0dGluZyByZWFk aW5ncyByZXBvcnRlZCBieSB0aGUgZ3lyb3Njb3BlIGRyaXZlci4KPiA+Pj4KPiA+Pj4gSGVyZSB3 ZSBoYXZlIGEgc2lnbWEgZGVsdGEgY29udmVydG9yIGNvbnN1bWluZyB0aGUgcHVsc2UgdHJhaW4K PiA+Pj4gZnJvbSBhIHNpZ21hIGRlbHRhIGRldmljZS4gIFNvIHRoZSBjaGFubmVscyBhcmUgcmVw b3J0ZWQgYnkKPiA+Pj4gdGhlIHNpZ21hIGRlbHRhIHJlY2VpdmVyLCB3aGVyZWFzIGkgdGhpbmsg dGhlIG5lYXJlc3QgZXF1aXZhbGVudAo+ID4+PiB0byB0aGUgYW5hbG9nIHZvbHRhZ2Ugb3V0cHV0 aW5nIGd5cm9zY29wZXMgd291bGQgaGF2ZSBiZWVuIGlmCj4gPj4+IHdlIGhhZCByZXBvcnRlZCB0 aGUgY2hhbm5lbCB2YWx1ZXMgYXQgdGhlIHNpZ21hIGRlbHRhIGNvbnZlcnRlci4gIAo+ID4+IFRo ZSBERlNETSBkcml2ZXIgaXMgY3VycmVudGx5IHVzZWQgYXMgYSBjb25zdW1lciBvZiB0aGUgc2Qg bW9kdWxhdG9yLgo+ID4+IFRoZSBzY2FsZSBhbmQgb2Zmc2V0IHZhbHVlcyBvZiB0aGUgY2hhbm5l bHMgYXJlIGFscmVhZHkgY29tcHV0ZWQgYnkKPiA+PiB0aGUgREZTRE0gZHJpdmVyLCBhbmQgcHJv dmlkZWQgYnkgdGhpcyBkcml2ZXIgdG8gdGhlIElJTyBBQkkuCj4gPj4gSG93ZXZlciwgdGhlIERG U0RNIGhhcyBubyB2b2x0YWdlIHJlZmVyZW5jZSwgc28gaXQgaGFzIHRvIHJldHJpZXZlCj4gPj4g aXQgZnJvbSBzZC1tb2R1bGF0b3IgY2hhbm5lbHMsIGZvciB0aGUgc2NhbGUgZmFjdG9yIGNvbXB1 dGF0aW9uLgo+ID4+Cj4gPj4gICDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHNjYWxlwqAgb2Zmc2V0Cj4gPj4gICDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCBewqDCoMKgwqDCoCBeCj4gPj4gICDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8 wqDCoMKgwqDCoCB8wqDCoMKgwqDCoMKgIElJTyBBQkkKPiA+PiArLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKPiA+PiAgIMKgwqDC oMKgwqDCoMKgwqAgKy0tLS0tLS0tLS0tLS0tLSvCoMKgwqDCoMKgwqDCoMKgwqAgKy0tLS0tLS0t LS0tLS0rCj4gPj4gICDCoMKgwqDCoMKgwqDCoMKgIHxzZCBkcml2ZXLCoMKgwqDCoMKgIHzCoMKg wqDCoMKgwqDCoMKgwqAgfERGU0RNIGRyaXZlciB8Cj4gPj4gICDCoMKgwqDCoMKgwqDCoMKgICst LS0tLS0tLS0tLS0tLS0rwqDCoMKgwqDCoMKgwqDCoMKgICstLS0tLS0tLS0tLS0tKwo+ID4+ICst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKwo+ID4+ICAgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCBIVwo+ID4+ICAgwqDCoMKgwqDCoMKgwqDCoCArLS0tLS0tLS0tLS0tLS0tK8Kg wqDCoMKgwqDCoMKgwqDCoCArLS0tLS0tLS0tLS0tLSsKPiA+PiArLS0tLS0tLT4rIHNkLW1vZHVs YXRvcsKgICstLS0tLS0tLS0+KyBERlNETSArLS0tLS0tLS0+Cj4gPj4gYW5hbG9nwqDCoCArLS0t LS0tKy0tLS0tLS0tK8KgwqDCoMKgwqDCoMKgwqDCoCArLS0tLS0tLS0tLS0tLSsgb3V0cHV0Cj4g Pj4gaW5wdXTCoMKgwqDCoMKgwqDCoMKgwqDCoCBeCj4gPj4gICDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgfCB2cmVmCj4gPj4gICDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg Kwo+ID4+Cj4gPj4KPiA+PiBJcyBpdCB0aGUgdG9wb2xvZ3kgeW91ciBhcmUgZXhwZWN0aW5nID8g IAo+ID4gSXQncyBub3QgdGhlIG9uZSB3ZSdkIGV4cGVjdCBpZiB3ZSBhcmUgYWxpZ25pbmcgd2l0 aCBzaW1pbGFyIGNhc2VzCj4gPiBlbHNld2hlcmUgaW4gSUlPLiAgRm9yIGV4YW1wbGUsIGlmIHdl IGF0dGFjaCBhbiBhbmFsb2cgYWNjZWxlcm9tZXRlcgo+ID4gdG8gYW4gQURDLCB3ZSByZXBvcnQg dGhlIGFjY2VsIGNoYW5uZWxzIG9uIHRoZSBhY2NlbGVyb21ldGVyIG5vdCB0aGUKPiA+IEFEQy4g IFRoZSBlcXVpdmFsZW50IHdvdWxkIGJlIHRvIHNlZSB0aGUgREZTRE0gYXMgcHJvdmlkaW5nIGEK PiA+IGNvbnZlcnNpb24gc2VydmljZSB0byB0aGUgU0QgZGV2aWNlIHdoaWNoIGlzIGFjdHVhbGx5 IGV4ZWN1dGluZwo+ID4gdGhlIG1lYXN1cmVtZW50IGFuZCBoYXMgdGhlIGlucHV0IGNoYW5uZWxz Lgo+ID4KPiA+Cj4gPiAgwqDCoMKgwqDCoMKgwqDCoCBzY2FsZcKgIG9mZnNldCAgcmF3Cj4gPiAg wqDCoMKgwqDCoMKgwqDCoMKgwqAgXsKgwqDCoMKgwqAgXiAgICAgIF4KPiA+ICDCoMKgwqDCoMKg wqDCoMKgwqDCoCB8wqDCoMKgwqDCoCB8wqDCoMKgwqAgIHwgIMKgwqAgICAgICAgICAgICAgICAg ICAgICAgICAgIElJTyBBQkkKPiA+ICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCj4gPiAgICDCoMKgwqDCoMKgwqDCoMKgICst LS0tLS0tLS0tLS0tLS0rwqDCoMKgwqDCoMKgwqDCoMKgICstLS0tLS0tLS0tLS0tKwo+ID4gICAg wqDCoMKgwqDCoMKgwqDCoCB8c2QgZHJpdmVywqDCoMKgwqDCoCB8wqDCoMKgwqDCoMKgwqDCoMKg IHxERlNETSBkcml2ZXIgfAo+ID4gICAgwqDCoMKgwqDCoMKgwqDCoCArLS0tLS0tLS0tLS0tLS0t K8KgwqDCoMKgwqDCoMKgwqDCoCArLS0tLS0tLS0tLS0tLSsKPiA+ICAgKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCj4gPiAgICDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIEhX Cj4gPiAgICDCoMKgwqDCoMKgwqDCoMKgICstLS0tLS0tLS0tLS0tLS0rwqDCoMKgwqDCoMKgwqDC oMKgICstLS0tLS0tLS0tLS0tKwo+ID4gICArLS0tLS0tLT4rIHNkLW1vZHVsYXRvcsKgICstLS0t LS0tLS0+KyBERlNETSArLS0tLS0tLS0+Cj4gPiAgIGFuYWxvZ8KgwqAgKy0tLS0tLSstLS0tLS0t LSvCoMKgwqDCoMKgwqDCoMKgwqAgKy0tLS0tLS0tLS0tLS0rIG91dHB1dAo+ID4gICBpbnB1dMKg wqDCoMKgwqDCoMKgwqDCoMKgIF4KPiA+ICAgIMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCB8IHZyZWYgIAo+ID4+ICAgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICsKPiA+PiAg Cj4gVGhhbmtzIGZvciB5b3VyIGNsYXJpZmljYXRpb24uCj4gb2ssIG1vdmluZyB0byB0aGlzIGxv Z2ljIGlzIGEgc2lnbmlmaWNhbnQgY2hhbmdlLgo+IEkgbmVlZCB0byBldmFsdWF0ZSBmdXJ0aGVy IHRoZSBpbXBhY3Qgb24gdGhlIGRmc2RtIGRyaXZlci4KClVuZGVyc3Rvb2QhICBJZiB3ZSBjYW4n dCBkbyBpdCB3aXRob3V0IHBvdGVudGlhbGx5IGJyZWFraW5nIHVzZXJzIHRoZW4Kc3VjaCBpcyBs aWZlLgoKSm9uYXRoYW4KCj4gCj4gUmVnYXJkcwo+IE9saXZpZXIKPiA+PiBJZiBub3QsIEkgcHJv YmFibHkgbWlzc2Vkc29tZXRoaW5nLiBDb3VsZCB5b3UgcGxlYXNlIGNsYXJpZnkgdGhpcyBwb2lu dCA/Cj4gPj4KPiA+PiBSZWdhcmRzCj4gPj4gT2xpdmllciAgCj4gPj4+IFRoaXMgd2Fzbid0IHJl YWxseSBhbiBpc3N1ZSB3aGVuIHRoZSBvbmx5IHZhbHVlcyBhdmFpbGFibGUgd2VyZQo+ID4+PiBy YXcsIGJ1dCBpZiB3ZSBhcmUgYWRkaW5nIHNjYWxlIGFuZCBvZmZzZXQsIHRoZXkgYXJlIHRoaW5n cyB0aGF0Cj4gPj4+IGJlbG9uZyB0byB0aGUgYWQxMjAxIGZvciBleGFtcGxlLCBub3QgdGhlIHVw c3RyZWFtIHN0bTMyLWRmc2RtIHVuaXQuCj4gPj4+Cj4gPj4+IFRoaW5raW5nIG9mIGl0IGFub3Ro ZXIgd2F5LCB3ZSBkb24ndCByZXBvcnQgYW4gU1BJIEFEQyBvdXRwdXQgaW4KPiA+Pj4gdGhlIGRy aXZlciBmb3IgdGhlIFNQSSBtYXN0ZXIuCj4gPj4+Cj4gPj4+IENvdWxkIHdlIGZsaXAgaXQgYXJv dW5kIHdpdGhvdXQgYnJlYWtpbmcgYW55dGhpbmc/Cj4gPj4+Cj4gPj4+IEpvbmF0aGFuCj4gPj4+ ICAgICAKPiA+Pj4+IC0tLQo+ID4+Pj4gICAgZHJpdmVycy9paW8vYWRjL3N0bTMyLWRmc2RtLWFk Yy5jIHwgMTA1ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrLQo+ID4+Pj4gICAgMSBmaWxl IGNoYW5nZWQsIDEwMiBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQo+ID4+Pj4KPiA+Pj4+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2lpby9hZGMvc3RtMzItZGZzZG0tYWRjLmMgYi9kcml2ZXJz L2lpby9hZGMvc3RtMzItZGZzZG0tYWRjLmMKPiA+Pj4+IGluZGV4IDA3YjlkZmRmOGU3Ni4uYjg1 ZmQzZTkwNDk2IDEwMDY0NAo+ID4+Pj4gLS0tIGEvZHJpdmVycy9paW8vYWRjL3N0bTMyLWRmc2Rt LWFkYy5jCj4gPj4+PiArKysgYi9kcml2ZXJzL2lpby9hZGMvc3RtMzItZGZzZG0tYWRjLmMKPiA+ Pj4+IEBAIC0xMCw2ICsxMCw3IEBACj4gPj4+PiAgICAjaW5jbHVkZSA8bGludXgvZG1hLW1hcHBp bmcuaD4KPiA+Pj4+ICAgICNpbmNsdWRlIDxsaW51eC9paW8vYWRjL3N0bTMyLWRmc2RtLWFkYy5o Pgo+ID4+Pj4gICAgI2luY2x1ZGUgPGxpbnV4L2lpby9idWZmZXIuaD4KPiA+Pj4+ICsjaW5jbHVk ZSA8bGludXgvaWlvL2NvbnN1bWVyLmg+Cj4gPj4+PiAgICAjaW5jbHVkZSA8bGludXgvaWlvL2h3 LWNvbnN1bWVyLmg+Cj4gPj4+PiAgICAjaW5jbHVkZSA8bGludXgvaWlvL3N5c2ZzLmg+Cj4gPj4+ PiAgICAjaW5jbHVkZSA8bGludXgvaWlvL3RpbWVyL3N0bTMyLWxwdGltLXRyaWdnZXIuaD4KPiA+ Pj4+IEBAIC02Nyw2ICs2OCwxMyBAQCBzdHJ1Y3Qgc3RtMzJfZGZzZG1fZGV2X2RhdGEgewo+ID4+ Pj4gICAgCWNvbnN0IHN0cnVjdCByZWdtYXBfY29uZmlnICpyZWdtYXBfY2ZnOwo+ID4+Pj4gICAg fTsKPiA+Pj4+ICAgIAo+ID4+Pj4gK3N0cnVjdCBzdG0zMl9kZnNkbV9zZF9jaGFuX2luZm8gewo+ ID4+Pj4gKwlpbnQgc2NhbGVfdmFsOwo+ID4+Pj4gKwlpbnQgc2NhbGVfdmFsMjsKPiA+Pj4+ICsJ aW50IG9mZnNldDsKPiA+Pj4+ICsJdW5zaWduZWQgaW50IGRpZmZlcmVudGlhbDsKPiA+Pj4+ICt9 Owo+ID4+Pj4gKwo+ID4+Pj4gICAgc3RydWN0IHN0bTMyX2Rmc2RtX2FkYyB7Cj4gPj4+PiAgICAJ c3RydWN0IHN0bTMyX2Rmc2RtICpkZnNkbTsKPiA+Pj4+ICAgIAljb25zdCBzdHJ1Y3Qgc3RtMzJf ZGZzZG1fZGV2X2RhdGEgKmRldl9kYXRhOwo+ID4+Pj4gQEAgLTc5LDYgKzg3LDcgQEAgc3RydWN0 IHN0bTMyX2Rmc2RtX2FkYyB7Cj4gPj4+PiAgICAJc3RydWN0IGlpb19od19jb25zdW1lciAqaHdj Owo+ID4+Pj4gICAgCXN0cnVjdCBjb21wbGV0aW9uIGNvbXBsZXRpb247Cj4gPj4+PiAgICAJdTMy ICpidWZmZXI7Cj4gPj4+PiArCXN0cnVjdCBzdG0zMl9kZnNkbV9zZF9jaGFuX2luZm8gKnNkX2No YW47Cj4gPj4+PiAgICAKPiA+Pj4+ICAgIAkvKiBBdWRpbyBzcGVjaWZpYyAqLwo+ID4+Pj4gICAg CXVuc2lnbmVkIGludCBzcGlfZnJlcTsgIC8qIFNQSSBidXMgY2xvY2sgZnJlcXVlbmN5ICovCj4g Pj4+PiBAQCAtMTI3MSw3ICsxMjgwLDEwIEBAIHN0YXRpYyBpbnQgc3RtMzJfZGZzZG1fcmVhZF9y YXcoc3RydWN0IGlpb19kZXYgKmluZGlvX2RldiwKPiA+Pj4+ICAgIAkJCQlpbnQgKnZhbDIsIGxv bmcgbWFzaykKPiA+Pj4+ICAgIHsKPiA+Pj4+ICAgIAlzdHJ1Y3Qgc3RtMzJfZGZzZG1fYWRjICph ZGMgPSBpaW9fcHJpdihpbmRpb19kZXYpOwo+ID4+Pj4gLQlpbnQgcmV0Owo+ID4+Pj4gKwlzdHJ1 Y3Qgc3RtMzJfZGZzZG1fZmlsdGVyICpmbCA9ICZhZGMtPmRmc2RtLT5mbF9saXN0W2FkYy0+Zmxf aWRdOwo+ID4+Pj4gKwlzdHJ1Y3Qgc3RtMzJfZGZzZG1fZmlsdGVyX29zciAqZmxvID0gJmZsLT5m bG9bZmwtPmZhc3RdOwo+ID4+Pj4gKwl1MzIgbWF4ID0gZmxvLT5tYXggPDwgKGZsby0+bHNoaWZ0 IC0gY2hhbi0+c2Nhbl90eXBlLnNoaWZ0KTsKPiA+Pj4+ICsJaW50IHJldCwgaWR4ID0gY2hhbi0+ c2Nhbl9pbmRleDsKPiA+Pj4+ICAgIAo+ID4+Pj4gICAgCXN3aXRjaCAobWFzaykgewo+ID4+Pj4g ICAgCWNhc2UgSUlPX0NIQU5fSU5GT19SQVc6Cj4gPj4+PiBAQCAtMTMwNyw2ICsxMzE5LDQxIEBA IHN0YXRpYyBpbnQgc3RtMzJfZGZzZG1fcmVhZF9yYXcoc3RydWN0IGlpb19kZXYgKmluZGlvX2Rl diwKPiA+Pj4+ICAgIAkJKnZhbCA9IGFkYy0+c2FtcGxlX2ZyZXE7Cj4gPj4+PiAgICAKPiA+Pj4+ ICAgIAkJcmV0dXJuIElJT19WQUxfSU5UOwo+ID4+Pj4gKwo+ID4+Pj4gKwljYXNlIElJT19DSEFO X0lORk9fU0NBTEU6Cj4gPj4+PiArCQkvKgo+ID4+Pj4gKwkJICogU2NhbGUgaXMgZXhwcmVzc2Vk IGluIG1WLgo+ID4+Pj4gKwkJICogV2hlbiBmYXN0IG1vZGUgaXMgZGlzYWJsZWQsIGFjdHVhbCBy ZXNvbHV0aW9uIG1heSBiZSBsb3dlcgo+ID4+Pj4gKwkJICogdGhhbiAyXm4sIHdoZXJlIG49cmVh bGJpdHMtMS4KPiA+Pj4+ICsJCSAqIFRoaXMgbGVhZHMgdG8gdW5kZXJlc3RpbWF0aW5nIGlucHV0 IHZvbHRhZ2UuIFRvCj4gPj4+PiArCQkgKiBjb21wZW5zYXRlIHRoaXMgZGV2aWF0aW9uLCB0aGUg dm9sdGFnZSByZWZlcmVuY2UgY2FuIGJlCj4gPj4+PiArCQkgKiBjb3JyZWN0ZWQgd2l0aCBhIGZh Y3RvciA9IHJlYWxiaXRzIHJlc29sdXRpb24gLyBhY3R1YWwgbWF4Cj4gPj4+PiArCQkgKi8KPiA+ Pj4+ICsJCSp2YWwgPSBkaXZfdTY0KCh1NjQpYWRjLT5zZF9jaGFuW2lkeF0uc2NhbGVfdmFsICoK PiA+Pj4+ICsJCQkgICAgICAgKHU2NClCSVQoREZTRE1fREFUQV9SRVMgLSAxKSwgbWF4KTsKPiA+ Pj4+ICsJCSp2YWwyID0gY2hhbi0+c2Nhbl90eXBlLnJlYWxiaXRzOwo+ID4+Pj4gKwkJaWYgKGFk Yy0+c2RfY2hhbltpZHhdLmRpZmZlcmVudGlhbCkKPiA+Pj4+ICsJCQkqdmFsICo9IDI7Cj4gPj4+ PiArCj4gPj4+PiArCQlyZXR1cm4gSUlPX1ZBTF9GUkFDVElPTkFMX0xPRzI7Cj4gPj4+PiArCj4g Pj4+PiArCWNhc2UgSUlPX0NIQU5fSU5GT19PRkZTRVQ6Cj4gPj4+PiArCQkvKgo+ID4+Pj4gKwkJ ICogREZTRE0gb3V0cHV0IGRhdGEgYXJlIGluIHRoZSByYW5nZSBbLTJebiwyXm4tMV0sCj4gPj4+ PiArCQkgKiB3aXRoIG49cmVhbGJpdHMtMS4KPiA+Pj4+ICsJCSAqIC0gRGlmZmVyZW50aWFsIG1v ZHVsYXRvcjoKPiA+Pj4+ICsJCSAqIE9mZnNldCBjb3JyZXNwb25kIHRvIFNEIG1vZHVsYXRvciBv ZmZzZXQuCj4gPj4+PiArCQkgKiAtIFNpbmdsZSBlbmRlZCBtb2R1bGF0b3I6Cj4gPj4+PiArCQkg KiBJbnB1dCBpcyBpbiBbMFYsVnJlZl0gcmFuZ2UsIHdoZXJlIDBWIGNvcnJlc3BvbmRzIHRvIC0y Xm4uCj4gPj4+PiArCQkgKiBBZGQgMl5uIHRvIG9mZnNldC4gKGkuZS4gbWlkZGxlIG9mIGlucHV0 IHJhbmdlKQo+ID4+Pj4gKwkJICogb2Zmc2V0ID0gb2Zmc2V0KHNkKSAqIHZyZWYgLyByZXMoc2Qp ICogbWF4IC8gdnJlZi4KPiA+Pj4+ICsJCSAqLwo+ID4+Pj4gKwkJKnZhbCA9IGRpdl91NjQoKHU2 NCltYXggKiBhZGMtPnNkX2NoYW5baWR4XS5vZmZzZXQsCj4gPj4+PiArCQkJICAgICAgIEJJVChh ZGMtPnNkX2NoYW5baWR4XS5zY2FsZV92YWwyIC0gMSkpOwo+ID4+Pj4gKwkJaWYgKCFhZGMtPnNk X2NoYW5baWR4XS5kaWZmZXJlbnRpYWwpCj4gPj4+PiArCQkJKnZhbCArPSBtYXg7Cj4gPj4+PiAr Cj4gPj4+PiArCQlyZXR1cm4gSUlPX1ZBTF9JTlQ7Cj4gPj4+PiAgICAJfQo+ID4+Pj4gICAgCj4g Pj4+PiAgICAJcmV0dXJuIC1FSU5WQUw7Cj4gPj4+PiBAQCAtMTQzMCw3ICsxNDc3LDkgQEAgc3Rh dGljIGludCBzdG0zMl9kZnNkbV9hZGNfY2hhbl9pbml0X29uZShzdHJ1Y3QgaWlvX2RldiAqaW5k aW9fZGV2LAo+ID4+Pj4gICAgCSAqIElJT19DSEFOX0lORk9fUkFXOiB1c2VkIHRvIGNvbXB1dGUg cmVndWxhciBjb252ZXJzaW9uCj4gPj4+PiAgICAJICogSUlPX0NIQU5fSU5GT19PVkVSU0FNUExJ TkdfUkFUSU86IHVzZWQgdG8gc2V0IG92ZXJzYW1wbGluZwo+ID4+Pj4gICAgCSAqLwo+ID4+Pj4g LQljaC0+aW5mb19tYXNrX3NlcGFyYXRlID0gQklUKElJT19DSEFOX0lORk9fUkFXKTsKPiA+Pj4+ ICsJY2gtPmluZm9fbWFza19zZXBhcmF0ZSA9IEJJVChJSU9fQ0hBTl9JTkZPX1JBVykgfAo+ID4+ Pj4gKwkJCQkgQklUKElJT19DSEFOX0lORk9fU0NBTEUpIHwKPiA+Pj4+ICsJCQkJIEJJVChJSU9f Q0hBTl9JTkZPX09GRlNFVCk7Cj4gPj4+PiAgICAJY2gtPmluZm9fbWFza19zaGFyZWRfYnlfYWxs ID0gQklUKElJT19DSEFOX0lORk9fT1ZFUlNBTVBMSU5HX1JBVElPKSB8Cj4gPj4+PiAgICAJCQkJ CUJJVChJSU9fQ0hBTl9JTkZPX1NBTVBfRlJFUSk7Cj4gPj4+PiAgICAKPiA+Pj4+IEBAIC0xNDgx LDggKzE1MzAsMTAgQEAgc3RhdGljIGludCBzdG0zMl9kZnNkbV9hZGNfaW5pdChzdHJ1Y3QgaWlv X2RldiAqaW5kaW9fZGV2KQo+ID4+Pj4gICAgewo+ID4+Pj4gICAgCXN0cnVjdCBpaW9fY2hhbl9z cGVjICpjaDsKPiA+Pj4+ICAgIAlzdHJ1Y3Qgc3RtMzJfZGZzZG1fYWRjICphZGMgPSBpaW9fcHJp dihpbmRpb19kZXYpOwo+ID4+Pj4gKwlzdHJ1Y3QgaWlvX2NoYW5uZWwgKmNoYW5uZWxzLCAqY2hh bjsKPiA+Pj4+ICsJc3RydWN0IHN0bTMyX2Rmc2RtX3NkX2NoYW5faW5mbyAqc2RfY2hhbjsKPiA+ Pj4+ICAgIAlpbnQgbnVtX2NoOwo+ID4+Pj4gLQlpbnQgcmV0LCBjaGFuX2lkeDsKPiA+Pj4+ICsJ aW50IHJldCwgY2hhbl9pZHgsIHZhbDI7Cj4gPj4+PiAgICAKPiA+Pj4+ICAgIAlhZGMtPm92ZXJz YW1wID0gREZTRE1fREVGQVVMVF9PVkVSU0FNUExJTkc7Cj4gPj4+PiAgICAJcmV0ID0gc3RtMzJf ZGZzZG1fY29tcHV0ZV9hbGxfb3NycyhpbmRpb19kZXYsIGFkYy0+b3ZlcnNhbXApOwo+ID4+Pj4g QEAgLTE1MDYsNiArMTU1NywyMiBAQCBzdGF0aWMgaW50IHN0bTMyX2Rmc2RtX2FkY19pbml0KHN0 cnVjdCBpaW9fZGV2ICppbmRpb19kZXYpCj4gPj4+PiAgICAJaWYgKCFjaCkKPiA+Pj4+ICAgIAkJ cmV0dXJuIC1FTk9NRU07Cj4gPj4+PiAgICAKPiA+Pj4+ICsJLyogR2V0IFNEIG1vZHVsYXRvciBj aGFubmVscyAqLwo+ID4+Pj4gKwljaGFubmVscyA9IGlpb19jaGFubmVsX2dldF9hbGwoJmluZGlv X2Rldi0+ZGV2KTsKPiA+Pj4+ICsJaWYgKElTX0VSUihjaGFubmVscykpIHsKPiA+Pj4+ICsJCWRl dl9lcnIoJmluZGlvX2Rldi0+ZGV2LCAiRmFpbGVkIHRvIGdldCBjaGFubmVsICVsZFxuIiwKPiA+ Pj4+ICsJCQlQVFJfRVJSKGNoYW5uZWxzKSk7Cj4gPj4+PiArCQlyZXR1cm4gUFRSX0VSUihjaGFu bmVscyk7Cj4gPj4+PiArCX0KPiA+Pj4+ICsJY2hhbiA9ICZjaGFubmVsc1swXTsKPiA+Pj4+ICsK PiA+Pj4+ICsJYWRjLT5zZF9jaGFuID0gZGV2bV9remFsbG9jKCZpbmRpb19kZXYtPmRldiwKPiA+ Pj4+ICsJCQkJICAgIHNpemVvZigqYWRjLT5zZF9jaGFuKSAqIG51bV9jaCwgR0ZQX0tFUk5FTCk7 Cj4gPj4+PiArCWlmICghYWRjLT5zZF9jaGFuKQo+ID4+Pj4gKwkJcmV0dXJuIC1FTk9NRU07Cj4g Pj4+PiArCj4gPj4+PiArCXNkX2NoYW4gPSBhZGMtPnNkX2NoYW47Cj4gPj4+PiArCj4gPj4+PiAg ICAJZm9yIChjaGFuX2lkeCA9IDA7IGNoYW5faWR4IDwgbnVtX2NoOyBjaGFuX2lkeCsrKSB7Cj4g Pj4+PiAgICAJCWNoW2NoYW5faWR4XS5zY2FuX2luZGV4ID0gY2hhbl9pZHg7Cj4gPj4+PiAgICAJ CXJldCA9IHN0bTMyX2Rmc2RtX2FkY19jaGFuX2luaXRfb25lKGluZGlvX2RldiwgJmNoW2NoYW5f aWR4XSk7Cj4gPj4+PiBAQCAtMTUxMyw2ICsxNTgwLDM4IEBAIHN0YXRpYyBpbnQgc3RtMzJfZGZz ZG1fYWRjX2luaXQoc3RydWN0IGlpb19kZXYgKmluZGlvX2RldikKPiA+Pj4+ICAgIAkJCWRldl9l cnIoJmluZGlvX2Rldi0+ZGV2LCAiQ2hhbm5lbHMgaW5pdCBmYWlsZWRcbiIpOwo+ID4+Pj4gICAg CQkJcmV0dXJuIHJldDsKPiA+Pj4+ICAgIAkJfQo+ID4+Pj4gKwo+ID4+Pj4gKwkJaWYgKCFjaGFu LT5pbmRpb19kZXYpCj4gPj4+PiArCQkJcmV0dXJuIC1FSU5WQUw7Cj4gPj4+PiArCj4gPj4+PiAr CQlyZXQgPSBpaW9fcmVhZF9jaGFubmVsX3NjYWxlKGNoYW4sICZzZF9jaGFuLT5zY2FsZV92YWws Cj4gPj4+PiArCQkJCQkgICAgICZzZF9jaGFuLT5zY2FsZV92YWwyKTsKPiA+Pj4+ICsJCWlmIChy ZXQgPCAwKSB7Cj4gPj4+PiArCQkJZGV2X2VycigmaW5kaW9fZGV2LT5kZXYsCj4gPj4+PiArCQkJ CSJGYWlsZWQgdG8gZ2V0IGNoYW5uZWwgJWQgc2NhbGVcbiIsIGNoYW5faWR4KTsKPiA+Pj4+ICsJ CQlyZXR1cm4gcmV0Owo+ID4+Pj4gKwkJfQo+ID4+Pj4gKwo+ID4+Pj4gKwkJaWYgKGlpb19jaGFu bmVsX2hhc19pbmZvKGNoYW4tPmNoYW5uZWwsIElJT19DSEFOX0lORk9fT0ZGU0VUKSkgewo+ID4+ Pj4gKwkJCXJldCA9IGlpb19yZWFkX2NoYW5uZWxfb2Zmc2V0KGNoYW4sICZzZF9jaGFuLT5vZmZz ZXQsCj4gPj4+PiArCQkJCQkJICAgICAgJnZhbDIpOwo+ID4+Pj4gKwkJCWlmIChyZXQgPCAwKSB7 Cj4gPj4+PiArCQkJCWRldl9lcnIoJmluZGlvX2Rldi0+ZGV2LAo+ID4+Pj4gKwkJCQkJIkZhaWxl ZCB0byBnZXQgY2hhbm5lbCAlZCBvZmZzZXRcbiIsCj4gPj4+PiArCQkJCQljaGFuX2lkeCk7Cj4g Pj4+PiArCQkJCXJldHVybiByZXQ7Cj4gPj4+PiArCQkJfQo+ID4+Pj4gKwkJfQo+ID4+Pj4gKwo+ ID4+Pj4gKwkJc2RfY2hhbi0+ZGlmZmVyZW50aWFsID0gY2hhbi0+Y2hhbm5lbC0+ZGlmZmVyZW50 aWFsOwo+ID4+Pj4gKwo+ID4+Pj4gKwkJZGV2X2RiZygmaW5kaW9fZGV2LT5kZXYsICJDaGFubmVs ICVkICVzIHNjYWxlIHJlZj0lZCBvZmZzZXQ9JWQiLAo+ID4+Pj4gKwkJCWNoYW5faWR4LCBjaGFu LT5jaGFubmVsLT5kaWZmZXJlbnRpYWwgPwo+ID4+Pj4gKwkJCSJkaWZmZXJlbnRpYWwiIDogInNp bmdsZS1lbmRlZCIsCj4gPj4+PiArCQkJc2RfY2hhbi0+c2NhbGVfdmFsLCBzZF9jaGFuLT5vZmZz ZXQpOwo+ID4+Pj4gKwo+ID4+Pj4gKwkJY2hhbisrOwo+ID4+Pj4gKwkJc2RfY2hhbisrOwo+ID4+ Pj4gICAgCX0KPiA+Pj4+ICAgIAo+ID4+Pj4gICAgCWluZGlvX2Rldi0+bnVtX2NoYW5uZWxzID0g bnVtX2NoOyAgCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KbGludXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgtYXJtLWtlcm5lbEBsaXN0cy5p bmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8v bGludXgtYXJtLWtlcm5lbAo=