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=-13.7 required=3.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED,DKIM_SIGNED,DKIM_VALID,FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,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 58C0FC433E0 for ; Mon, 15 Mar 2021 11:51:25 +0000 (UTC) Received: from desiato.infradead.org (desiato.infradead.org [90.155.92.199]) (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 75A5364E27 for ; Mon, 15 Mar 2021 11:51:24 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 75A5364E27 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+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=desiato.20200630; 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:To:From:Reply-To:Cc:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=TxGuh/jxbPKJ48KL9P08Ix0GtWKm6Dh7QRRVtTisK4Q=; b=mxadxCLrz5hG4w7LEXo1lpGb8 tzn2fj6SDfrM7FF0tVErzn40VgWojh4ohO62bj95yJvJyCvqSRhuOo8tqwLHEkTevpWOfOUHkvsW1 x+Y1IsGVOGT+Py1IUV8snpyVJlv8+fcCro+7PLiu5tbq1VKu5Khik2rDB8Lxts0Ad2ZEhpGMYXPjP EoDQJqj/FY0ALtwgzPGRNRIP8A2sG3yTtjAV27yiUaszhfMI0TytdGmj1x65P4kU95BLHSyjJLUU3 vveZVfn2rOmmOamJy+y1eoFfl/UYAQko2TSJrAj/J9uFI1Wjc0uRhvMGRG6cPXwaUV75AP4pl2nq3 jB3ti3O9g==; Received: from localhost ([::1] helo=desiato.infradead.org) by desiato.infradead.org with esmtp (Exim 4.94 #2 (Red Hat Linux)) id 1lLlgl-00FhXK-4A; Mon, 15 Mar 2021 11:47:11 +0000 Received: from mail-wr1-x42f.google.com ([2a00:1450:4864:20::42f]) by desiato.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1lLlc6-00FgqP-13 for linux-arm-kernel@lists.infradead.org; Mon, 15 Mar 2021 11:42:25 +0000 Received: by mail-wr1-x42f.google.com with SMTP id v4so5520646wrp.13 for ; Mon, 15 Mar 2021 04:42:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id:in-reply-to:references:mime-version :content-transfer-encoding; bh=x+kbHxYD4yXl7PVMH3bS/SrVuPgrmDo40N6P/1bnta0=; b=ABnHlS2Ua9Fdz3lYlZkaSlecZlU/jpkIJ2yT3Qb9frKX92zPcszC0Ozz/j3Pp8GV0W NifDk8ZBq9+5c1snKYs9KGbkah+QH33hTT51rNsGLY2d75fndZaQNNjCE/FlHVoycuG6 y/6UrzHndjYJYXIYlt+/ct38DQ9C4HujsEnjIzLoNGrWErat/Cxk/8GvOmh2XdkUyDzF 2iWLyCRqWR2aZd99HVT15y6S9NRtI3g0q84A9IDOlTFy+z5mIRc6Sk/iFvQMErF8bhyS MMLQCzTEyiKJoSaBecaRW732nwyqomgSvS6pCAWNa3uNVy3FXEDWqSjL+GcCnmX4tWuB yc9Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=x+kbHxYD4yXl7PVMH3bS/SrVuPgrmDo40N6P/1bnta0=; b=LUWuXcENl5i6OWo7XXF2EO1FMmilMqQR5iVQmPM4zalUanCJJX2kugieaLcIY6ka1J KTtwaqDgb6MqHe7nir0H2NWhpXlRH+nORJsYkf5RIpfJaEcXF7i9JqNvpZVi+eHxhgrV +wH6pK9W899x9r6BsXl34Bar//52/iJulz4xxxqK3J/gxMMwaZwmjxAMOOpqv9FvDSLo D1B5xAGlEzTD+Y3EKIMYRmd+8jFdpx5wMbXVHtGgqMPfnu80mWBfX2DK4zR8xtTvBpJ5 O2IrPGDB6eLA6RG+UYblUoC7B+w9YyFl5ygfbHfU0zr2jMJQ87pm88MpS/tM/6uu1dIv p7jg== X-Gm-Message-State: AOAM532kDyxgrSpAUrgaSkp5DNPVUxr/IjOHcSnwBlU6yREXqGeCO4dz hriyQKMGCM0TrRQlg67KuYs= X-Google-Smtp-Source: ABdhPJzCMB2N9O2R2fH44j2nhTLdKn2xCm/YL5kxr7G1TFd0/WjsL7Jdwtt8UiXV5WTqDcCmKPykxw== X-Received: by 2002:a5d:47c3:: with SMTP id o3mr26783605wrc.190.1615808540868; Mon, 15 Mar 2021 04:42:20 -0700 (PDT) Received: from skynet.lan ([80.31.204.166]) by smtp.gmail.com with ESMTPSA id v189sm12648187wme.39.2021.03.15.04.42.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 15 Mar 2021 04:42:20 -0700 (PDT) From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= To: Linus Walleij , Bartosz Golaszewski , Rob Herring , Florian Fainelli , bcm-kernel-feedback-list@broadcom.com, Lee Jones , Michael Walle , =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= , Jonas Gorski , Necip Fazil Yildiran , Andy Shevchenko , linux-gpio@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH v7 04/22] pinctrl: bcm: add bcm63xx base code Date: Mon, 15 Mar 2021 12:41:56 +0100 Message-Id: <20210315114214.3096-5-noltari@gmail.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20210315114214.3096-1-noltari@gmail.com> References: <20210315114214.3096-1-noltari@gmail.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210315_114222_748609_CD203032 X-CRM114-Status: GOOD ( 22.42 ) X-BeenThere: linux-arm-kernel@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-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org QWRkIGEgaGVscGVyIGZvciByZWdpc3RlcmluZyBCQ002M1hYIHBpbiBjb250cm9sbGVycy4KCkNv LWRldmVsb3BlZC1ieTogSm9uYXMgR29yc2tpIDxqb25hcy5nb3Jza2lAZ21haWwuY29tPgpTaWdu ZWQtb2ZmLWJ5OiBKb25hcyBHb3Jza2kgPGpvbmFzLmdvcnNraUBnbWFpbC5jb20+ClNpZ25lZC1v ZmYtYnk6IMOBbHZhcm8gRmVybsOhbmRleiBSb2phcyA8bm9sdGFyaUBnbWFpbC5jb20+Ci0tLQog djc6IHJldmVydCBmcm9tIGZ3bm9kZSB0byAib2YiIGFuZCBsb29rIGZvciBicmNtLGJjbTYzeHgt Z3BpbyBvbiB0aGUgcGFyZW50CiB2NjogYWRkIGNoYW5nZXMgc3VnZ2VzdGVkIGJ5IEFuZHkgU2hl dmNoZW5rbwogdjU6IGFkZCBjaGFuZ2VzIHN1Z2dlc3RlZCBieSBBbmR5IFNoZXZjaGVua28KIHY0 OiBkcm9wIElSUSBzZWxlY3RzIGZyb20gS2NvbmZpZyBhbmQgYWRkIG1pc3Npbmcgb2Zfbm9kZV9w dXQoKQogdjM6IGFkZCBuZXcgcGF0Y2ggd2l0aCBzaGFyZWQgY29kZQoKIGRyaXZlcnMvcGluY3Ry bC9iY20vS2NvbmZpZyAgICAgICAgICAgfCAgIDcgKysKIGRyaXZlcnMvcGluY3RybC9iY20vTWFr ZWZpbGUgICAgICAgICAgfCAgIDEgKwogZHJpdmVycy9waW5jdHJsL2JjbS9waW5jdHJsLWJjbTYz eHguYyB8IDExMyArKysrKysrKysrKysrKysrKysrKysrKysrKwogZHJpdmVycy9waW5jdHJsL2Jj bS9waW5jdHJsLWJjbTYzeHguaCB8ICA0MyArKysrKysrKysrCiA0IGZpbGVzIGNoYW5nZWQsIDE2 NCBpbnNlcnRpb25zKCspCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9waW5jdHJsL2JjbS9w aW5jdHJsLWJjbTYzeHguYwogY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvcGluY3RybC9iY20v cGluY3RybC1iY202M3h4LmgKCmRpZmYgLS1naXQgYS9kcml2ZXJzL3BpbmN0cmwvYmNtL0tjb25m aWcgYi9kcml2ZXJzL3BpbmN0cmwvYmNtL0tjb25maWcKaW5kZXggMGVkMTRkZTAxMzRjLi44ODJm MTliZGMyNDMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvcGluY3RybC9iY20vS2NvbmZpZworKysgYi9k cml2ZXJzL3BpbmN0cmwvYmNtL0tjb25maWcKQEAgLTI5LDYgKzI5LDEzIEBAIGNvbmZpZyBQSU5D VFJMX0JDTTI4MzUKIAloZWxwCiAJICAgU2F5IFkgaGVyZSB0byBlbmFibGUgdGhlIEJyb2FkY29t IEJDTTI4MzUgR1BJTyBkcml2ZXIuCiAKK2NvbmZpZyBQSU5DVFJMX0JDTTYzWFgKKwlib29sCisJ c2VsZWN0IEdFTkVSSUNfUElOQ09ORgorCXNlbGVjdCBHUElPX1JFR01BUAorCXNlbGVjdCBQSU5D T05GCisJc2VsZWN0IFBJTk1VWAorCiBjb25maWcgUElOQ1RSTF9JUFJPQ19HUElPCiAJYm9vbCAi QnJvYWRjb20gaVByb2MgR1BJTyAod2l0aCBQSU5DT05GKSBkcml2ZXIiCiAJZGVwZW5kcyBvbiBP Rl9HUElPICYmIChBUkNIX0JDTV9JUFJPQyB8fCBDT01QSUxFX1RFU1QpCmRpZmYgLS1naXQgYS9k cml2ZXJzL3BpbmN0cmwvYmNtL01ha2VmaWxlIGIvZHJpdmVycy9waW5jdHJsL2JjbS9NYWtlZmls ZQppbmRleCA3OWQ1ZTQ5ZmRkOWEuLjBlM2NmOWIxNWM2NSAxMDA2NDQKLS0tIGEvZHJpdmVycy9w aW5jdHJsL2JjbS9NYWtlZmlsZQorKysgYi9kcml2ZXJzL3BpbmN0cmwvYmNtL01ha2VmaWxlCkBA IC0zLDYgKzMsNyBAQAogCiBvYmotJChDT05GSUdfUElOQ1RSTF9CQ00yODFYWCkJCSs9IHBpbmN0 cmwtYmNtMjgxeHgubwogb2JqLSQoQ09ORklHX1BJTkNUUkxfQkNNMjgzNSkJCSs9IHBpbmN0cmwt YmNtMjgzNS5vCitvYmotJChDT05GSUdfUElOQ1RSTF9CQ002M1hYKQkJKz0gcGluY3RybC1iY202 M3h4Lm8KIG9iai0kKENPTkZJR19QSU5DVFJMX0lQUk9DX0dQSU8pCSs9IHBpbmN0cmwtaXByb2Mt Z3Bpby5vCiBvYmotJChDT05GSUdfUElOQ1RSTF9DWUdOVVNfTVVYKQkrPSBwaW5jdHJsLWN5Z251 cy1tdXgubwogb2JqLSQoQ09ORklHX1BJTkNUUkxfTlMpCQkrPSBwaW5jdHJsLW5zLm8KZGlmZiAt LWdpdCBhL2RyaXZlcnMvcGluY3RybC9iY20vcGluY3RybC1iY202M3h4LmMgYi9kcml2ZXJzL3Bp bmN0cmwvYmNtL3BpbmN0cmwtYmNtNjN4eC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw MDAwMDAwMDAwMC4uMzAxNDMyNjA3NGFkCi0tLSAvZGV2L251bGwKKysrIGIvZHJpdmVycy9waW5j dHJsL2JjbS9waW5jdHJsLWJjbTYzeHguYwpAQCAtMCwwICsxLDExMyBAQAorLy8gU1BEWC1MaWNl bnNlLUlkZW50aWZpZXI6IEdQTC0yLjArCisvKgorICogRHJpdmVyIGZvciBCQ002M3h4IEdQSU8g dW5pdCAocGluY3RybCArIEdQSU8pCisgKgorICogQ29weXJpZ2h0IChDKSAyMDIxIMOBbHZhcm8g RmVybsOhbmRleiBSb2phcyA8bm9sdGFyaUBnbWFpbC5jb20+CisgKiBDb3B5cmlnaHQgKEMpIDIw MTYgSm9uYXMgR29yc2tpIDxqb25hcy5nb3Jza2lAZ21haWwuY29tPgorICovCisKKyNpbmNsdWRl IDxsaW51eC9ncGlvL3JlZ21hcC5oPgorI2luY2x1ZGUgPGxpbnV4L21mZC9zeXNjb24uaD4KKyNp bmNsdWRlIDxsaW51eC9tb2RfZGV2aWNldGFibGUuaD4KKyNpbmNsdWRlIDxsaW51eC9vZi5oPgor I2luY2x1ZGUgPGxpbnV4L3BsYXRmb3JtX2RldmljZS5oPgorCisjaW5jbHVkZSAicGluY3RybC1i Y202M3h4LmgiCisKKyNkZWZpbmUgQkNNNjNYWF9CQU5LX1NJWkUJNAorCisjZGVmaW5lIEJDTTYz WFhfRElST1VUX1JFRwkweDA0CisjZGVmaW5lIEJDTTYzWFhfREFUQV9SRUcJMHgwYworCitzdGF0 aWMgaW50IGJjbTYzeHhfcmVnX21hc2tfeGxhdGUoc3RydWN0IGdwaW9fcmVnbWFwICpncGlvLAor CQkJCSAgdW5zaWduZWQgaW50IGJhc2UsIHVuc2lnbmVkIGludCBvZmZzZXQsCisJCQkJICB1bnNp Z25lZCBpbnQgKnJlZywgdW5zaWduZWQgaW50ICptYXNrKQoreworCXVuc2lnbmVkIGludCBsaW5l ID0gb2Zmc2V0ICUgQkNNNjNYWF9CQU5LX0dQSU9TOworCXVuc2lnbmVkIGludCBzdHJpZGUgPSBv ZmZzZXQgLyBCQ002M1hYX0JBTktfR1BJT1M7CisKKwkqcmVnID0gYmFzZSAtIHN0cmlkZSAqIEJD TTYzWFhfQkFOS19TSVpFOworCSptYXNrID0gQklUKGxpbmUpOworCisJcmV0dXJuIDA7Cit9CisK K3N0YXRpYyBjb25zdCBzdHJ1Y3Qgb2ZfZGV2aWNlX2lkIGJjbTYzeHhfZ3Bpb19vZl9tYXRjaFtd ID0geworCXsgLmNvbXBhdGlibGUgPSAiYnJjbSxiY202MzE4LWdwaW8iLCB9LAorCXsgLmNvbXBh dGlibGUgPSAiYnJjbSxiY202MzI4LWdwaW8iLCB9LAorCXsgLmNvbXBhdGlibGUgPSAiYnJjbSxi Y202MzU4LWdwaW8iLCB9LAorCXsgLmNvbXBhdGlibGUgPSAiYnJjbSxiY202MzYyLWdwaW8iLCB9 LAorCXsgLmNvbXBhdGlibGUgPSAiYnJjbSxiY202MzY4LWdwaW8iLCB9LAorCXsgLmNvbXBhdGli bGUgPSAiYnJjbSxiY202MzI2OC1ncGlvIiwgfSwKKwl7IC8qIHNlbnRpbmVsICovIH0KK307CisK K3N0YXRpYyBpbnQgYmNtNjN4eF9ncGlvX3Byb2JlKHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0 IGRldmljZV9ub2RlICpub2RlLAorCQkJICAgICAgY29uc3Qgc3RydWN0IGJjbTYzeHhfcGluY3Ry bF9zb2MgKnNvYywKKwkJCSAgICAgIHN0cnVjdCBiY202M3h4X3BpbmN0cmwgKnBjKQoreworCXN0 cnVjdCBncGlvX3JlZ21hcF9jb25maWcgZ3JjID0gezB9OworCisJZ3JjLnBhcmVudCA9IGRldjsK KwlncmMuZndub2RlID0gJm5vZGUtPmZ3bm9kZTsKKwlncmMubmdwaW8gPSBzb2MtPm5ncGlvczsK KwlncmMubmdwaW9fcGVyX3JlZyA9IEJDTTYzWFhfQkFOS19HUElPUzsKKwlncmMucmVnbWFwID0g cGMtPnJlZ3M7CisJZ3JjLnJlZ19tYXNrX3hsYXRlID0gYmNtNjN4eF9yZWdfbWFza194bGF0ZTsK KworCWlmIChvZl9wcm9wZXJ0eV9yZWFkX3UzMihub2RlLCAiZGF0YSIsICZncmMucmVnX2RhdF9i YXNlKSkKKwkJZ3JjLnJlZ19kYXRfYmFzZSA9IEJDTTYzWFhfREFUQV9SRUc7CisJZ3JjLnJlZ19z ZXRfYmFzZSA9IGdyYy5yZWdfZGF0X2Jhc2U7CisKKwlpZiAob2ZfcHJvcGVydHlfcmVhZF91MzIo bm9kZSwgImRpcm91dCIsICZncmMucmVnX2Rpcl9vdXRfYmFzZSkpCisJCWdyYy5yZWdfZGlyX291 dF9iYXNlID0gQkNNNjNYWF9ESVJPVVRfUkVHOworCisJcmV0dXJuIFBUUl9FUlJfT1JfWkVSTyhk ZXZtX2dwaW9fcmVnbWFwX3JlZ2lzdGVyKGRldiwgJmdyYykpOworfQorCitpbnQgYmNtNjN4eF9w aW5jdHJsX3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsCisJCQkgIGNvbnN0IHN0 cnVjdCBiY202M3h4X3BpbmN0cmxfc29jICpzb2MsCisJCQkgIHZvaWQgKmRyaXZlcl9kYXRhKQor eworCXN0cnVjdCBkZXZpY2UgKmRldiA9ICZwZGV2LT5kZXY7CisJc3RydWN0IGJjbTYzeHhfcGlu Y3RybCAqcGM7CisJc3RydWN0IGRldmljZV9ub2RlICpub2RlOworCWludCBlcnI7CisKKwlwYyA9 IGRldm1fa3phbGxvYyhkZXYsIHNpemVvZigqcGMpLCBHRlBfS0VSTkVMKTsKKwlpZiAoIXBjKQor CQlyZXR1cm4gLUVOT01FTTsKKworCXBsYXRmb3JtX3NldF9kcnZkYXRhKHBkZXYsIHBjKTsKKwor CXBjLT5kZXYgPSBkZXY7CisJcGMtPmRyaXZlcl9kYXRhID0gZHJpdmVyX2RhdGE7CisKKwlwYy0+ cmVncyA9IHN5c2Nvbl9ub2RlX3RvX3JlZ21hcChkZXYtPnBhcmVudC0+b2Zfbm9kZSk7CisJaWYg KElTX0VSUihwYy0+cmVncykpCisJCXJldHVybiBQVFJfRVJSKHBjLT5yZWdzKTsKKworCXBjLT5w Y3RsX2Rlc2MubmFtZSA9IGRldl9uYW1lKGRldik7CisJcGMtPnBjdGxfZGVzYy5waW5zID0gc29j LT5waW5zOworCXBjLT5wY3RsX2Rlc2MubnBpbnMgPSBzb2MtPm5waW5zOworCXBjLT5wY3RsX2Rl c2MucGN0bG9wcyA9IHNvYy0+cGN0bF9vcHM7CisJcGMtPnBjdGxfZGVzYy5wbXhvcHMgPSBzb2Mt PnBteF9vcHM7CisJcGMtPnBjdGxfZGVzYy5vd25lciA9IFRISVNfTU9EVUxFOworCisJcGMtPnBj dGxfZGV2ID0gZGV2bV9waW5jdHJsX3JlZ2lzdGVyKGRldiwgJnBjLT5wY3RsX2Rlc2MsIHBjKTsK KwlpZiAoSVNfRVJSKHBjLT5wY3RsX2RldikpCisJCXJldHVybiBQVFJfRVJSKHBjLT5wY3RsX2Rl dik7CisKKwlmb3JfZWFjaF9jaGlsZF9vZl9ub2RlKGRldi0+cGFyZW50LT5vZl9ub2RlLCBub2Rl KSB7CisJCWlmIChvZl9tYXRjaF9ub2RlKGJjbTYzeHhfZ3Bpb19vZl9tYXRjaCwgbm9kZSkpIHsK KwkJCWVyciA9IGJjbTYzeHhfZ3Bpb19wcm9iZShkZXYsIG5vZGUsIHNvYywgcGMpOworCQkJaWYg KGVycikgeworCQkJCWRldl9lcnIoZGV2LCAiY291bGQgbm90IGFkZCBHUElPIGNoaXBcbiIpOwor CQkJCW9mX25vZGVfcHV0KG5vZGUpOworCQkJCXJldHVybiBlcnI7CisJCQl9CisJCX0KKwl9CisK KwlyZXR1cm4gMDsKK30KZGlmZiAtLWdpdCBhL2RyaXZlcnMvcGluY3RybC9iY20vcGluY3RybC1i Y202M3h4LmggYi9kcml2ZXJzL3BpbmN0cmwvYmNtL3BpbmN0cmwtYmNtNjN4eC5oCm5ldyBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uM2JkYjUwMDIxZjFiCi0tLSAvZGV2L251 bGwKKysrIGIvZHJpdmVycy9waW5jdHJsL2JjbS9waW5jdHJsLWJjbTYzeHguaApAQCAtMCwwICsx LDQzIEBACisvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogR1BMLTIuMCsKKy8qCisgKiBDb3B5 cmlnaHQgKEMpIDIwMjEgw4FsdmFybyBGZXJuw6FuZGV6IFJvamFzIDxub2x0YXJpQGdtYWlsLmNv bT4KKyAqIENvcHlyaWdodCAoQykgMjAxNiBKb25hcyBHb3Jza2kgPGpvbmFzLmdvcnNraUBnbWFp bC5jb20+CisgKi8KKworI2lmbmRlZiBfX1BJTkNUUkxfQkNNNjNYWF9IX18KKyNkZWZpbmUgX19Q SU5DVFJMX0JDTTYzWFhfSF9fCisKKyNpbmNsdWRlIDxsaW51eC9waW5jdHJsL3BpbmN0cmwuaD4K KworI2RlZmluZSBCQ002M1hYX0JBTktfR1BJT1MgMzIKKworc3RydWN0IGJjbTYzeHhfcGluY3Ry bF9zb2MgeworCXN0cnVjdCBwaW5jdHJsX29wcyAqcGN0bF9vcHM7CisJc3RydWN0IHBpbm11eF9v cHMgKnBteF9vcHM7CisKKwljb25zdCBzdHJ1Y3QgcGluY3RybF9waW5fZGVzYyAqcGluczsKKwl1 bnNpZ25lZCBucGluczsKKworCXVuc2lnbmVkIGludCBuZ3Bpb3M7Cit9OworCitzdHJ1Y3QgYmNt NjN4eF9waW5jdHJsIHsKKwlzdHJ1Y3QgZGV2aWNlICpkZXY7CisJc3RydWN0IHJlZ21hcCAqcmVn czsKKworCXN0cnVjdCBwaW5jdHJsX2Rlc2MgcGN0bF9kZXNjOworCXN0cnVjdCBwaW5jdHJsX2Rl diAqcGN0bF9kZXY7CisKKwl2b2lkICpkcml2ZXJfZGF0YTsKK307CisKK3N0YXRpYyBpbmxpbmUg dW5zaWduZWQgaW50IGJjbTYzeHhfYmFua19waW4odW5zaWduZWQgaW50IHBpbikKK3sKKwlyZXR1 cm4gcGluICUgQkNNNjNYWF9CQU5LX0dQSU9TOworfQorCitpbnQgYmNtNjN4eF9waW5jdHJsX3By b2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsCisJCQkgIGNvbnN0IHN0cnVjdCBiY202 M3h4X3BpbmN0cmxfc29jICpzb2MsCisJCQkgIHZvaWQgKmRyaXZlcl9kYXRhKTsKKworI2VuZGlm IC8qIF9fUElOQ1RSTF9CQ002M1hYX0hfXyAqLwotLSAKMi4yMC4xCgoKX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGludXgtYXJtLWtlcm5lbCBtYWlsaW5n IGxpc3QKbGludXgtYXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5p bmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtYXJtLWtlcm5lbAo=