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 Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1610CC433FE for ; Wed, 4 May 2022 09:09:12 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1346911AbiEDJMp (ORCPT ); Wed, 4 May 2022 05:12:45 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:50958 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1346934AbiEDJMj (ORCPT ); Wed, 4 May 2022 05:12:39 -0400 Received: from bhuna.collabora.co.uk (bhuna.collabora.co.uk [46.235.227.227]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B7D8C1A827; Wed, 4 May 2022 02:09:03 -0700 (PDT) Received: from [127.0.0.1] (localhost [127.0.0.1]) (Authenticated sender: kholk11) with ESMTPSA id 164771F43CB0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1651655341; bh=cyGLJPmNem2nlpr6KMEZ/v4BP/CfNFyUllyY7Ug96Hg=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=UZhuaJrSn2xRicCSrJYO47i5VM4OegSSaMbWQq+ZrU+iu9zHVw6ryx62slWbpRJAO xUdwDXLQqwxa+mfkww15wpfxKRg+/Zf5RQ8ZAsnjcK7Wg5zp7Xx9ietLi65BgtBIU6 myqeqy/0bS7Zxg1kr2SxV4Y+005On1iZ6S+WZ5RFREV6kUFaNOoCxHFVfE1FGBCYAx V5J9gscBOPaKv1gzs1HqHqPhewtJYcug9iUaJBQKfvsz/+n34Yu3wU9/g5eia53eJw uyMaDhbxsTSpjyMtTqxO31tV8HLd7gaJ9oZu7WeB+vaLdLXcQMRp1Ge+JxjyOPHSdS E9cfBTzAPkheA== Message-ID: <8c9bc4cc-09f1-71db-6386-b486e67d6a2a@collabora.com> Date: Wed, 4 May 2022 11:08:58 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.7.0 Subject: Re: [PATCH v2 1/2] dt-bindings: pinctrl: Add MediaTek MT6795 pinctrl bindings Content-Language: en-US To: =?UTF-8?B?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= Cc: linus.walleij@linaro.org, robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org, matthias.bgg@gmail.com, sean.wang@kernel.org, linux-gpio@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, kernel@collabora.com References: <20220503142537.152499-1-angelogioacchino.delregno@collabora.com> <20220503142537.152499-2-angelogioacchino.delregno@collabora.com> <20220504003340.224exvr33qevi3sj@notapiano> From: AngeloGioacchino Del Regno In-Reply-To: <20220504003340.224exvr33qevi3sj@notapiano> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-gpio@vger.kernel.org Il 04/05/22 02:33, NĂ­colas F. R. A. Prado ha scritto: > Hi Angelo, > > On Tue, May 03, 2022 at 04:25:36PM +0200, AngeloGioacchino Del Regno wrote: >> Add devicetree and pinfunc bindings for MediaTek Helio X10 MT6795. >> >> Signed-off-by: AngeloGioacchino Del Regno >> --- >> .../pinctrl/mediatek,pinctrl-mt6795.yaml | 224 +++++ >> include/dt-bindings/pinctrl/mt6795-pinfunc.h | 908 ++++++++++++++++++ >> 2 files changed, 1132 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/pinctrl/mediatek,pinctrl-mt6795.yaml >> create mode 100644 include/dt-bindings/pinctrl/mt6795-pinfunc.h >> > > ... > >> + >> + bias-pull-down: >> + oneOf: >> + - type: boolean >> + - enum: [100, 101, 102, 103] >> + description: mt6795 pull down PUPD/R0/R1 type define value. >> + description: | >> + For normal pull down type, it is not necessary to specify R1R0 >> + values; When pull down type is PUPD/R0/R1, adding R1R0 defines >> + will set different resistance values. >> + >> + bias-pull-up: >> + oneOf: >> + - type: boolean >> + - enum: [100, 101, 102, 103] >> + description: mt6795 pull up PUPD/R0/R1 type define value. >> + description: | >> + For normal pull up type, it is not necessary to specify R1R0 >> + values; When pull up type is PUPD/R0/R1, adding R1R0 defines >> + will set different resistance values. >> + >> + bias-disable: true >> + >> + output-high: true >> + >> + output-low: true >> + >> + input-enable: true >> + >> + input-disable: true >> + >> + input-schmitt-enable: true >> + >> + input-schmitt-disable: true >> + >> + mediatek,pull-up-adv: >> + description: | >> + Pull up setings for 2 pull resistors, R0 and R1. User can >> + configure those special pins. Valid arguments are described as below: >> + 0: (R1, R0) = (0, 0) which means R1 disabled and R0 disabled. >> + 1: (R1, R0) = (0, 1) which means R1 disabled and R0 enabled. >> + 2: (R1, R0) = (1, 0) which means R1 enabled and R0 disabled. >> + 3: (R1, R0) = (1, 1) which means R1 enabled and R0 enabled. >> + $ref: /schemas/types.yaml#/definitions/uint32 >> + enum: [0, 1, 2, 3] >> + >> + mediatek,pull-down-adv: >> + description: | >> + Pull down settings for 2 pull resistors, R0 and R1. User can >> + configure those special pins. Valid arguments are described as below: >> + 0: (R1, R0) = (0, 0) which means R1 disabled and R0 disabled. >> + 1: (R1, R0) = (0, 1) which means R1 disabled and R0 enabled. >> + 2: (R1, R0) = (1, 0) which means R1 enabled and R0 disabled. >> + 3: (R1, R0) = (1, 1) which means R1 enabled and R0 enabled. >> + $ref: /schemas/types.yaml#/definitions/uint32 >> + enum: [0, 1, 2, 3] > > I'm actually myself trying to figure out why there are two ways of setting > R0/R1 in the dt-binding (and which should preferred for mt8192 and others): > 1. passing 0-3 to mediatek,pull-{up,down}-adv > 2. passing one of the MTK_PUPD_SET_R1R0_** flags to bias-pull-{up,down} > > When the pin is of type MTK_PULL_PUPD_R1R0_TYPE (which should be the only case > in which it makes sense to consider mediatek,pull-{up,down}-adv AFAIU), they end > up doing the same thing, it's: > > mtk_pinconf_bias_set_combo() -> mtk_pinconf_bias_set_pupd_r1_r0() > vs > mtk_pinconf_adv_pull_set() > > ... and they write to the same registers. > > Unless I'm missing something here. > > Thanks, > NĂ­colas Hey! Yes you're missing something important :-P First of all, the flow all depends on the pinctrl driver "type": we have the common (v1), moore and paris. I will leave this research to you, or this reply will become a wall of text, so let's go on with the latter details, which are relative to the paris one. You should check pinctrl/mediatek/pinctrl-mt(model).c: here, you declare a struct mtk_pin_soc containing pointers to pins data and function callbacks, such as bias_{get,set}_combo() and adv_pull_{set,get}(). Now to the real deal, examples below: - Declaring property "mediatek,pull-up-adv" means that you get through MTK_PIN_CONFIG_PU_ADV case, which calls the adv_pull_set() callback; - Declaring property "bias-pull-up", however, means that you get through PIN_CONFIG_BIAS_PULL_UP, which calls bias_set_combo(). For adv_pull_set() callback being mtk_pinconf_adv_pull_set() the following happens: - Write to registers PIN_REG_R0, PIN_REG_R1 (set resistor 0,1 en/disabled); - Write to registers PIN_REG_PUPD (pull up, or down) - If below writes fail (because no r0r1/pupd declared in your driver's table), the code will call the bias_set() callback as a fallback. For bias_set_combo() cb being mtk_pinconf_bias_set_combo() the following happens: - Check pull_type mask, it may be one or a combination (OR) of: - MTK_PULL_RSEL_TYPE - MTK_PULL_PU_PD_TYPE - MTK_PULL_PULLSEL_TYPE - MTK_PULL_PUPD_R1R0_TYPE - Call function(s!) mtk_pinconf_bias_set_{rsel,pu_pd,pullsel_pullen,pupd_r1_r0}, depending on the bits set in the pull_type mask. All of the aforementioned functions will perform a different register write for different pullup/pulldown settings.. bias-pull-up: One of the cases in which you want to use the combo is when you need to set a combination of, let's say, PULLSEL and R1R0 (enabling a default pull, adding a series resistance of parallel R1R0 resistors to the default value), which is similar to RSEL_TYPE, but for SoCs that don't have the RSEL_TYPE register layout. mediatek,pull-up-adv: One of the cases in which you want to use the adv_pull_set is when you want to set *only* R1R0+PUPD or *only* PULLSEL (when r1r0/pupd not supported), but also *never* modify PU_PD or RSEL registers. It's a bit tricky to understand, but this stuff is really on a per-SoC basis, as not all of them will behave like the other... so if you check only pinctrl-paris, or only pinctrl-mtk-common-v2, you will inevitably go offroad with your research. The MediaTek pinctrl mutates behavior in a combination of the aforementioned two *and* the SoC-specific pinctrl data (pinctrl-mt6795.c). Though, maybe-and-I-say-maybe (because I haven't performed a *full* research on that topic), it *may be* possible to refactor the mtk pinctrl framework to get rid of the mediatek,pull-up-adv property and do it all from the standard pinconf bias-pull-up property instead with some driver magic... but.. in any case, that's for another time - definitely not now (for me, at least - but if anyone wants to explore this territory and produce more cleanups, you're encouraged to). Please note that I tried to simplify the explanation as much as possible and something inside may have to be "interpreted the right way", when looking for details that are way more advanced compared to the basics that are explained here... but you see, it's already a big wall of text... :-) :-) Cheers, Angelo 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 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 smtp.lore.kernel.org (Postfix) with ESMTPS id A7BCFC433EF for ; Wed, 4 May 2022 09:09:23 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:Content-Type: Content-Transfer-Encoding:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:From:References:Cc:To:Subject: MIME-Version:Date:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=Dr/tYFDtqchiChdbbEZ/v/nVGzC3Sns9ty5Zbe8EDrc=; b=QiR2T2anYsdXB2 KVGuO2cI0zXT6LGZehTOP36phMd9h1Mdz7fx27APwvTeOWn1qGr2dWbJxQlYmjljXL6cSP8IN9P5w T1q6J/sciUjxZI43wpmXj4ztpX9OAaMWSsF2hfXP2AzJxjlp3MOQwbi0Y/ZUnY07+ldIvuk+ZAh3Q kw5kpxr4z1r4jcT8PCMptQFmqcb7jl8dsUZjjofXJaA6j2Atf22p9Q5sAEUKui8qboosyTvSuTrZy iqfyq6HuaeZ/+UPO2wiafQ+hfN9W1sBBkA9SwcQqeYC+Bnli1llq4doNdZvXXpdSmR0pD07OWnftn NzsOCVP6t4/ujocwm0xQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nmB0W-009ian-Rp; Wed, 04 May 2022 09:09:16 +0000 Received: from bhuna.collabora.co.uk ([46.235.227.227]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1nmB0K-009iWI-DI; Wed, 04 May 2022 09:09:06 +0000 Received: from [127.0.0.1] (localhost [127.0.0.1]) (Authenticated sender: kholk11) with ESMTPSA id 164771F43CB0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1651655341; bh=cyGLJPmNem2nlpr6KMEZ/v4BP/CfNFyUllyY7Ug96Hg=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=UZhuaJrSn2xRicCSrJYO47i5VM4OegSSaMbWQq+ZrU+iu9zHVw6ryx62slWbpRJAO xUdwDXLQqwxa+mfkww15wpfxKRg+/Zf5RQ8ZAsnjcK7Wg5zp7Xx9ietLi65BgtBIU6 myqeqy/0bS7Zxg1kr2SxV4Y+005On1iZ6S+WZ5RFREV6kUFaNOoCxHFVfE1FGBCYAx V5J9gscBOPaKv1gzs1HqHqPhewtJYcug9iUaJBQKfvsz/+n34Yu3wU9/g5eia53eJw uyMaDhbxsTSpjyMtTqxO31tV8HLd7gaJ9oZu7WeB+vaLdLXcQMRp1Ge+JxjyOPHSdS E9cfBTzAPkheA== Message-ID: <8c9bc4cc-09f1-71db-6386-b486e67d6a2a@collabora.com> Date: Wed, 4 May 2022 11:08:58 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.7.0 Subject: Re: [PATCH v2 1/2] dt-bindings: pinctrl: Add MediaTek MT6795 pinctrl bindings Content-Language: en-US To: =?UTF-8?B?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= Cc: linus.walleij@linaro.org, robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org, matthias.bgg@gmail.com, sean.wang@kernel.org, linux-gpio@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, kernel@collabora.com References: <20220503142537.152499-1-angelogioacchino.delregno@collabora.com> <20220503142537.152499-2-angelogioacchino.delregno@collabora.com> <20220504003340.224exvr33qevi3sj@notapiano> From: AngeloGioacchino Del Regno In-Reply-To: <20220504003340.224exvr33qevi3sj@notapiano> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220504_020904_837502_0BB30D9B X-CRM114-Status: GOOD ( 30.38 ) X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org SWwgMDQvMDUvMjIgMDI6MzMsIE7DrWNvbGFzIEYuIFIuIEEuIFByYWRvIGhhIHNjcml0dG86Cj4g SGkgQW5nZWxvLAo+IAo+IE9uIFR1ZSwgTWF5IDAzLCAyMDIyIGF0IDA0OjI1OjM2UE0gKzAyMDAs IEFuZ2Vsb0dpb2FjY2hpbm8gRGVsIFJlZ25vIHdyb3RlOgo+PiBBZGQgZGV2aWNldHJlZSBhbmQg cGluZnVuYyBiaW5kaW5ncyBmb3IgTWVkaWFUZWsgSGVsaW8gWDEwIE1UNjc5NS4KPj4KPj4gU2ln bmVkLW9mZi1ieTogQW5nZWxvR2lvYWNjaGlubyBEZWwgUmVnbm8gPGFuZ2Vsb2dpb2FjY2hpbm8u ZGVscmVnbm9AY29sbGFib3JhLmNvbT4KPj4gLS0tCj4+ICAgLi4uL3BpbmN0cmwvbWVkaWF0ZWss cGluY3RybC1tdDY3OTUueWFtbCAgICAgIHwgMjI0ICsrKysrCj4+ICAgaW5jbHVkZS9kdC1iaW5k aW5ncy9waW5jdHJsL210Njc5NS1waW5mdW5jLmggIHwgOTA4ICsrKysrKysrKysrKysrKysrKwo+ PiAgIDIgZmlsZXMgY2hhbmdlZCwgMTEzMiBpbnNlcnRpb25zKCspCj4+ICAgY3JlYXRlIG1vZGUg MTAwNjQ0IERvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9waW5jdHJsL21lZGlhdGVr LHBpbmN0cmwtbXQ2Nzk1LnlhbWwKPj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgaW5jbHVkZS9kdC1i aW5kaW5ncy9waW5jdHJsL210Njc5NS1waW5mdW5jLmgKPj4KPiAKPiAuLi4KPiAKPj4gKwo+PiAr ICAgICAgICAgIGJpYXMtcHVsbC1kb3duOgo+PiArICAgICAgICAgICAgb25lT2Y6Cj4+ICsgICAg ICAgICAgICAgIC0gdHlwZTogYm9vbGVhbgo+PiArICAgICAgICAgICAgICAtIGVudW06IFsxMDAs IDEwMSwgMTAyLCAxMDNdCj4+ICsgICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IG10Njc5NSBw dWxsIGRvd24gUFVQRC9SMC9SMSB0eXBlIGRlZmluZSB2YWx1ZS4KPj4gKyAgICAgICAgICAgIGRl c2NyaXB0aW9uOiB8Cj4+ICsgICAgICAgICAgICAgICBGb3Igbm9ybWFsIHB1bGwgZG93biB0eXBl LCBpdCBpcyBub3QgbmVjZXNzYXJ5IHRvIHNwZWNpZnkgUjFSMAo+PiArICAgICAgICAgICAgICAg dmFsdWVzOyBXaGVuIHB1bGwgZG93biB0eXBlIGlzIFBVUEQvUjAvUjEsIGFkZGluZyBSMVIwIGRl ZmluZXMKPj4gKyAgICAgICAgICAgICAgIHdpbGwgc2V0IGRpZmZlcmVudCByZXNpc3RhbmNlIHZh bHVlcy4KPj4gKwo+PiArICAgICAgICAgIGJpYXMtcHVsbC11cDoKPj4gKyAgICAgICAgICAgIG9u ZU9mOgo+PiArICAgICAgICAgICAgICAtIHR5cGU6IGJvb2xlYW4KPj4gKyAgICAgICAgICAgICAg LSBlbnVtOiBbMTAwLCAxMDEsIDEwMiwgMTAzXQo+PiArICAgICAgICAgICAgICAgIGRlc2NyaXB0 aW9uOiBtdDY3OTUgcHVsbCB1cCBQVVBEL1IwL1IxIHR5cGUgZGVmaW5lIHZhbHVlLgo+PiArICAg ICAgICAgICAgZGVzY3JpcHRpb246IHwKPj4gKyAgICAgICAgICAgICAgIEZvciBub3JtYWwgcHVs bCB1cCB0eXBlLCBpdCBpcyBub3QgbmVjZXNzYXJ5IHRvIHNwZWNpZnkgUjFSMAo+PiArICAgICAg ICAgICAgICAgdmFsdWVzOyBXaGVuIHB1bGwgdXAgdHlwZSBpcyBQVVBEL1IwL1IxLCBhZGRpbmcg UjFSMCBkZWZpbmVzCj4+ICsgICAgICAgICAgICAgICB3aWxsIHNldCBkaWZmZXJlbnQgcmVzaXN0 YW5jZSB2YWx1ZXMuCj4+ICsKPj4gKyAgICAgICAgICBiaWFzLWRpc2FibGU6IHRydWUKPj4gKwo+ PiArICAgICAgICAgIG91dHB1dC1oaWdoOiB0cnVlCj4+ICsKPj4gKyAgICAgICAgICBvdXRwdXQt bG93OiB0cnVlCj4+ICsKPj4gKyAgICAgICAgICBpbnB1dC1lbmFibGU6IHRydWUKPj4gKwo+PiAr ICAgICAgICAgIGlucHV0LWRpc2FibGU6IHRydWUKPj4gKwo+PiArICAgICAgICAgIGlucHV0LXNj aG1pdHQtZW5hYmxlOiB0cnVlCj4+ICsKPj4gKyAgICAgICAgICBpbnB1dC1zY2htaXR0LWRpc2Fi bGU6IHRydWUKPj4gKwo+PiArICAgICAgICAgIG1lZGlhdGVrLHB1bGwtdXAtYWR2Ogo+PiArICAg ICAgICAgICAgZGVzY3JpcHRpb246IHwKPj4gKyAgICAgICAgICAgICAgUHVsbCB1cCBzZXRpbmdz IGZvciAyIHB1bGwgcmVzaXN0b3JzLCBSMCBhbmQgUjEuIFVzZXIgY2FuCj4+ICsgICAgICAgICAg ICAgIGNvbmZpZ3VyZSB0aG9zZSBzcGVjaWFsIHBpbnMuIFZhbGlkIGFyZ3VtZW50cyBhcmUgZGVz Y3JpYmVkIGFzIGJlbG93Ogo+PiArICAgICAgICAgICAgICAwOiAoUjEsIFIwKSA9ICgwLCAwKSB3 aGljaCBtZWFucyBSMSBkaXNhYmxlZCBhbmQgUjAgZGlzYWJsZWQuCj4+ICsgICAgICAgICAgICAg IDE6IChSMSwgUjApID0gKDAsIDEpIHdoaWNoIG1lYW5zIFIxIGRpc2FibGVkIGFuZCBSMCBlbmFi bGVkLgo+PiArICAgICAgICAgICAgICAyOiAoUjEsIFIwKSA9ICgxLCAwKSB3aGljaCBtZWFucyBS MSBlbmFibGVkIGFuZCBSMCBkaXNhYmxlZC4KPj4gKyAgICAgICAgICAgICAgMzogKFIxLCBSMCkg PSAoMSwgMSkgd2hpY2ggbWVhbnMgUjEgZW5hYmxlZCBhbmQgUjAgZW5hYmxlZC4KPj4gKyAgICAg ICAgICAgICRyZWY6IC9zY2hlbWFzL3R5cGVzLnlhbWwjL2RlZmluaXRpb25zL3VpbnQzMgo+PiAr ICAgICAgICAgICAgZW51bTogWzAsIDEsIDIsIDNdCj4+ICsKPj4gKyAgICAgICAgICBtZWRpYXRl ayxwdWxsLWRvd24tYWR2Ogo+PiArICAgICAgICAgICAgZGVzY3JpcHRpb246IHwKPj4gKyAgICAg ICAgICAgICAgUHVsbCBkb3duIHNldHRpbmdzIGZvciAyIHB1bGwgcmVzaXN0b3JzLCBSMCBhbmQg UjEuIFVzZXIgY2FuCj4+ICsgICAgICAgICAgICAgIGNvbmZpZ3VyZSB0aG9zZSBzcGVjaWFsIHBp bnMuIFZhbGlkIGFyZ3VtZW50cyBhcmUgZGVzY3JpYmVkIGFzIGJlbG93Ogo+PiArICAgICAgICAg ICAgICAwOiAoUjEsIFIwKSA9ICgwLCAwKSB3aGljaCBtZWFucyBSMSBkaXNhYmxlZCBhbmQgUjAg ZGlzYWJsZWQuCj4+ICsgICAgICAgICAgICAgIDE6IChSMSwgUjApID0gKDAsIDEpIHdoaWNoIG1l YW5zIFIxIGRpc2FibGVkIGFuZCBSMCBlbmFibGVkLgo+PiArICAgICAgICAgICAgICAyOiAoUjEs IFIwKSA9ICgxLCAwKSB3aGljaCBtZWFucyBSMSBlbmFibGVkIGFuZCBSMCBkaXNhYmxlZC4KPj4g KyAgICAgICAgICAgICAgMzogKFIxLCBSMCkgPSAoMSwgMSkgd2hpY2ggbWVhbnMgUjEgZW5hYmxl ZCBhbmQgUjAgZW5hYmxlZC4KPj4gKyAgICAgICAgICAgICRyZWY6IC9zY2hlbWFzL3R5cGVzLnlh bWwjL2RlZmluaXRpb25zL3VpbnQzMgo+PiArICAgICAgICAgICAgZW51bTogWzAsIDEsIDIsIDNd Cj4gCj4gSSdtIGFjdHVhbGx5IG15c2VsZiB0cnlpbmcgdG8gZmlndXJlIG91dCB3aHkgdGhlcmUg YXJlIHR3byB3YXlzIG9mIHNldHRpbmcKPiBSMC9SMSBpbiB0aGUgZHQtYmluZGluZyAoYW5kIHdo aWNoIHNob3VsZCBwcmVmZXJyZWQgZm9yIG10ODE5MiBhbmQgb3RoZXJzKToKPiAxLiBwYXNzaW5n IDAtMyB0byBtZWRpYXRlayxwdWxsLXt1cCxkb3dufS1hZHYKPiAyLiBwYXNzaW5nIG9uZSBvZiB0 aGUgTVRLX1BVUERfU0VUX1IxUjBfKiogZmxhZ3MgdG8gYmlhcy1wdWxsLXt1cCxkb3dufQo+IAo+ IFdoZW4gdGhlIHBpbiBpcyBvZiB0eXBlIE1US19QVUxMX1BVUERfUjFSMF9UWVBFICh3aGljaCBz aG91bGQgYmUgdGhlIG9ubHkgY2FzZQo+IGluIHdoaWNoIGl0IG1ha2VzIHNlbnNlIHRvIGNvbnNp ZGVyIG1lZGlhdGVrLHB1bGwte3VwLGRvd259LWFkdiBBRkFJVSksIHRoZXkgZW5kCj4gdXAgZG9p bmcgdGhlIHNhbWUgdGhpbmcsIGl0J3M6Cj4gCj4gbXRrX3BpbmNvbmZfYmlhc19zZXRfY29tYm8o KSAtPiBtdGtfcGluY29uZl9iaWFzX3NldF9wdXBkX3IxX3IwKCkKPiB2cwo+IG10a19waW5jb25m X2Fkdl9wdWxsX3NldCgpCj4gCj4gLi4uIGFuZCB0aGV5IHdyaXRlIHRvIHRoZSBzYW1lIHJlZ2lz dGVycy4KPiAKPiBVbmxlc3MgSSdtIG1pc3Npbmcgc29tZXRoaW5nIGhlcmUuCj4gCj4gVGhhbmtz LAo+IE7DrWNvbGFzCgpIZXkhCgpZZXMgeW91J3JlIG1pc3Npbmcgc29tZXRoaW5nIGltcG9ydGFu dCA6LVAKCkZpcnN0IG9mIGFsbCwgdGhlIGZsb3cgYWxsIGRlcGVuZHMgb24gdGhlIHBpbmN0cmwg ZHJpdmVyICJ0eXBlIjogd2UgaGF2ZQp0aGUgY29tbW9uICh2MSksIG1vb3JlIGFuZCBwYXJpcy4K SSB3aWxsIGxlYXZlIHRoaXMgcmVzZWFyY2ggdG8geW91LCBvciB0aGlzIHJlcGx5IHdpbGwgYmVj b21lIGEgd2FsbCBvZiB0ZXh0LApzbyBsZXQncyBnbyBvbiB3aXRoIHRoZSBsYXR0ZXIgZGV0YWls cywgd2hpY2ggYXJlIHJlbGF0aXZlIHRvIHRoZSBwYXJpcyBvbmUuCgpZb3Ugc2hvdWxkIGNoZWNr IHBpbmN0cmwvbWVkaWF0ZWsvcGluY3RybC1tdChtb2RlbCkuYzogaGVyZSwgeW91IGRlY2xhcmUg YQpzdHJ1Y3QgbXRrX3Bpbl9zb2MgY29udGFpbmluZyBwb2ludGVycyB0byBwaW5zIGRhdGEgYW5k IGZ1bmN0aW9uIGNhbGxiYWNrcywKc3VjaCBhcyBiaWFzX3tnZXQsc2V0fV9jb21ibygpIGFuZCBh ZHZfcHVsbF97c2V0LGdldH0oKS4KCgpOb3cgdG8gdGhlIHJlYWwgZGVhbCwgZXhhbXBsZXMgYmVs b3c6CgotIERlY2xhcmluZyBwcm9wZXJ0eSAibWVkaWF0ZWsscHVsbC11cC1hZHYiIG1lYW5zIHRo YXQgeW91IGdldCB0aHJvdWdoCiAgIE1US19QSU5fQ09ORklHX1BVX0FEViBjYXNlLCB3aGljaCBj YWxscyB0aGUgYWR2X3B1bGxfc2V0KCkgY2FsbGJhY2s7Ci0gRGVjbGFyaW5nIHByb3BlcnR5ICJi aWFzLXB1bGwtdXAiLCBob3dldmVyLCBtZWFucyB0aGF0IHlvdSBnZXQgdGhyb3VnaAogICBQSU5f Q09ORklHX0JJQVNfUFVMTF9VUCwgd2hpY2ggY2FsbHMgYmlhc19zZXRfY29tYm8oKS4KCkZvciBh ZHZfcHVsbF9zZXQoKSBjYWxsYmFjayBiZWluZyBtdGtfcGluY29uZl9hZHZfcHVsbF9zZXQoKSB0 aGUgZm9sbG93aW5nIGhhcHBlbnM6Ci0gV3JpdGUgdG8gcmVnaXN0ZXJzIFBJTl9SRUdfUjAsIFBJ Tl9SRUdfUjEgKHNldCByZXNpc3RvciAwLDEgZW4vZGlzYWJsZWQpOwotIFdyaXRlIHRvIHJlZ2lz dGVycyBQSU5fUkVHX1BVUEQgKHB1bGwgdXAsIG9yIGRvd24pCi0gSWYgYmVsb3cgd3JpdGVzIGZh aWwgKGJlY2F1c2Ugbm8gcjByMS9wdXBkIGRlY2xhcmVkIGluIHlvdXIgZHJpdmVyJ3MgdGFibGUp LAogICB0aGUgY29kZSB3aWxsIGNhbGwgdGhlIGJpYXNfc2V0KCkgY2FsbGJhY2sgYXMgYSBmYWxs YmFjay4KCkZvciBiaWFzX3NldF9jb21ibygpIGNiIGJlaW5nIG10a19waW5jb25mX2JpYXNfc2V0 X2NvbWJvKCkgdGhlIGZvbGxvd2luZyBoYXBwZW5zOgotIENoZWNrIHB1bGxfdHlwZSBtYXNrLCBp dCBtYXkgYmUgb25lIG9yIGEgY29tYmluYXRpb24gKE9SKSBvZjoKICAgLSBNVEtfUFVMTF9SU0VM X1RZUEUKICAgLSBNVEtfUFVMTF9QVV9QRF9UWVBFCiAgIC0gTVRLX1BVTExfUFVMTFNFTF9UWVBF CiAgIC0gTVRLX1BVTExfUFVQRF9SMVIwX1RZUEUKLSBDYWxsIGZ1bmN0aW9uKHMhKSBtdGtfcGlu Y29uZl9iaWFzX3NldF97cnNlbCxwdV9wZCxwdWxsc2VsX3B1bGxlbixwdXBkX3IxX3IwfSwKICAg ZGVwZW5kaW5nIG9uIHRoZSBiaXRzIHNldCBpbiB0aGUgcHVsbF90eXBlIG1hc2suCgpBbGwgb2Yg dGhlIGFmb3JlbWVudGlvbmVkIGZ1bmN0aW9ucyB3aWxsIHBlcmZvcm0gYSBkaWZmZXJlbnQgcmVn aXN0ZXIgd3JpdGUgZm9yCmRpZmZlcmVudCBwdWxsdXAvcHVsbGRvd24gc2V0dGluZ3MuLgoKYmlh cy1wdWxsLXVwOgpPbmUgb2YgdGhlIGNhc2VzIGluIHdoaWNoIHlvdSB3YW50IHRvIHVzZSB0aGUg Y29tYm8gaXMgd2hlbiB5b3UgbmVlZCB0byBzZXQgYQpjb21iaW5hdGlvbiBvZiwgbGV0J3Mgc2F5 LCBQVUxMU0VMIGFuZCBSMVIwIChlbmFibGluZyBhIGRlZmF1bHQgcHVsbCwgYWRkaW5nIGEKc2Vy aWVzIHJlc2lzdGFuY2Ugb2YgcGFyYWxsZWwgUjFSMCByZXNpc3RvcnMgdG8gdGhlIGRlZmF1bHQg dmFsdWUpLCB3aGljaCBpcwpzaW1pbGFyIHRvIFJTRUxfVFlQRSwgYnV0IGZvciBTb0NzIHRoYXQg ZG9uJ3QgaGF2ZSB0aGUgUlNFTF9UWVBFIHJlZ2lzdGVyIGxheW91dC4KCm1lZGlhdGVrLHB1bGwt dXAtYWR2OgpPbmUgb2YgdGhlIGNhc2VzIGluIHdoaWNoIHlvdSB3YW50IHRvIHVzZSB0aGUgYWR2 X3B1bGxfc2V0IGlzIHdoZW4geW91IHdhbnQgdG8Kc2V0ICpvbmx5KiBSMVIwK1BVUEQgb3IgKm9u bHkqIFBVTExTRUwgKHdoZW4gcjFyMC9wdXBkIG5vdCBzdXBwb3J0ZWQpLCBidXQgYWxzbwoqbmV2 ZXIqIG1vZGlmeSBQVV9QRCBvciBSU0VMIHJlZ2lzdGVycy4KCgpJdCdzIGEgYml0IHRyaWNreSB0 byB1bmRlcnN0YW5kLCBidXQgdGhpcyBzdHVmZiBpcyByZWFsbHkgb24gYSBwZXItU29DIGJhc2lz LCBhcwpub3QgYWxsIG9mIHRoZW0gd2lsbCBiZWhhdmUgbGlrZSB0aGUgb3RoZXIuLi4gc28gaWYg eW91IGNoZWNrIG9ubHkgcGluY3RybC1wYXJpcywKb3Igb25seSBwaW5jdHJsLW10ay1jb21tb24t djIsIHlvdSB3aWxsIGluZXZpdGFibHkgZ28gb2Zmcm9hZCB3aXRoIHlvdXIgcmVzZWFyY2guClRo ZSBNZWRpYVRlayBwaW5jdHJsIG11dGF0ZXMgYmVoYXZpb3IgaW4gYSBjb21iaW5hdGlvbiBvZiB0 aGUgYWZvcmVtZW50aW9uZWQgdHdvCiphbmQqIHRoZSBTb0Mtc3BlY2lmaWMgcGluY3RybCBkYXRh IChwaW5jdHJsLW10Njc5NS5jKS4KClRob3VnaCwgbWF5YmUtYW5kLUktc2F5LW1heWJlIChiZWNh dXNlIEkgaGF2ZW4ndCBwZXJmb3JtZWQgYSAqZnVsbCogcmVzZWFyY2ggb24KdGhhdCB0b3BpYyks IGl0ICptYXkgYmUqIHBvc3NpYmxlIHRvIHJlZmFjdG9yIHRoZSBtdGsgcGluY3RybCBmcmFtZXdv cmsgdG8gZ2V0CnJpZCBvZiB0aGUgbWVkaWF0ZWsscHVsbC11cC1hZHYgcHJvcGVydHkgYW5kIGRv IGl0IGFsbCBmcm9tIHRoZSBzdGFuZGFyZCBwaW5jb25mCmJpYXMtcHVsbC11cCBwcm9wZXJ0eSBp bnN0ZWFkIHdpdGggc29tZSBkcml2ZXIgbWFnaWMuLi4gYnV0Li4gaW4gYW55IGNhc2UsIHRoYXQn cwpmb3IgYW5vdGhlciB0aW1lIC0gZGVmaW5pdGVseSBub3Qgbm93IChmb3IgbWUsIGF0IGxlYXN0 IC0gYnV0IGlmIGFueW9uZSB3YW50cyB0bwpleHBsb3JlIHRoaXMgdGVycml0b3J5IGFuZCBwcm9k dWNlIG1vcmUgY2xlYW51cHMsIHlvdSdyZSBlbmNvdXJhZ2VkIHRvKS4KCgpQbGVhc2Ugbm90ZSB0 aGF0IEkgdHJpZWQgdG8gc2ltcGxpZnkgdGhlIGV4cGxhbmF0aW9uIGFzIG11Y2ggYXMgcG9zc2li bGUgYW5kCnNvbWV0aGluZyBpbnNpZGUgbWF5IGhhdmUgdG8gYmUgImludGVycHJldGVkIHRoZSBy aWdodCB3YXkiLCB3aGVuIGxvb2tpbmcgZm9yCmRldGFpbHMgdGhhdCBhcmUgd2F5IG1vcmUgYWR2 YW5jZWQgY29tcGFyZWQgdG8gdGhlIGJhc2ljcyB0aGF0IGFyZSBleHBsYWluZWQKaGVyZS4uLiBi dXQgeW91IHNlZSwgaXQncyBhbHJlYWR5IGEgYmlnIHdhbGwgb2YgdGV4dC4uLiA6LSkgOi0pCgpD aGVlcnMsCkFuZ2VsbwoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KTGludXgtbWVkaWF0ZWsgbWFpbGluZyBsaXN0CkxpbnV4LW1lZGlhdGVrQGxpc3RzLmlu ZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9s aW51eC1tZWRpYXRlawo= 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 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 48129C433EF for ; Wed, 4 May 2022 09:10:23 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:Content-Type: Content-Transfer-Encoding:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:From:References:Cc:To:Subject: MIME-Version:Date:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=dTw5RAiDwXg+5l624CSA2f1Ti04DW1ZThJ8jcJn01aY=; b=T+bid0uPs73A+x 7GcmHEP3P353b3zq+KIGIlAL/VTaHUCRK29P8E4/YqXcwjo6BwmN2/I+308xY1jRz6g/D+dPNerBz uYKi3FNw0o2o6/dvYNdf0fpSNPNm7evtvamCHf3SejHKGxROGzYr1PADEvHPbYWZVjNOKwfy1PodB lPoN33pT5NpDiBPrbLPeBQBJmap4R2PlM56cnGbGSpnIOcyzh/A+oOGnLGhQ1mEyGfCZ/qH1FduuW DaOKr6zbm4nm3fK0EwOPXRtC5CrwaU6kqkriMHLE1ThoWrU2aZv8gokgppCzaDjw85TWDJCVGzACc hVuPWnxXxfFBb/5hxIvw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nmB0O-009iYf-Ev; Wed, 04 May 2022 09:09:08 +0000 Received: from bhuna.collabora.co.uk ([46.235.227.227]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1nmB0K-009iWI-DI; Wed, 04 May 2022 09:09:06 +0000 Received: from [127.0.0.1] (localhost [127.0.0.1]) (Authenticated sender: kholk11) with ESMTPSA id 164771F43CB0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1651655341; bh=cyGLJPmNem2nlpr6KMEZ/v4BP/CfNFyUllyY7Ug96Hg=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=UZhuaJrSn2xRicCSrJYO47i5VM4OegSSaMbWQq+ZrU+iu9zHVw6ryx62slWbpRJAO xUdwDXLQqwxa+mfkww15wpfxKRg+/Zf5RQ8ZAsnjcK7Wg5zp7Xx9ietLi65BgtBIU6 myqeqy/0bS7Zxg1kr2SxV4Y+005On1iZ6S+WZ5RFREV6kUFaNOoCxHFVfE1FGBCYAx V5J9gscBOPaKv1gzs1HqHqPhewtJYcug9iUaJBQKfvsz/+n34Yu3wU9/g5eia53eJw uyMaDhbxsTSpjyMtTqxO31tV8HLd7gaJ9oZu7WeB+vaLdLXcQMRp1Ge+JxjyOPHSdS E9cfBTzAPkheA== Message-ID: <8c9bc4cc-09f1-71db-6386-b486e67d6a2a@collabora.com> Date: Wed, 4 May 2022 11:08:58 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.7.0 Subject: Re: [PATCH v2 1/2] dt-bindings: pinctrl: Add MediaTek MT6795 pinctrl bindings Content-Language: en-US To: =?UTF-8?B?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= Cc: linus.walleij@linaro.org, robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org, matthias.bgg@gmail.com, sean.wang@kernel.org, linux-gpio@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, kernel@collabora.com References: <20220503142537.152499-1-angelogioacchino.delregno@collabora.com> <20220503142537.152499-2-angelogioacchino.delregno@collabora.com> <20220504003340.224exvr33qevi3sj@notapiano> From: AngeloGioacchino Del Regno In-Reply-To: <20220504003340.224exvr33qevi3sj@notapiano> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220504_020904_837502_0BB30D9B X-CRM114-Status: GOOD ( 30.38 ) 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-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org SWwgMDQvMDUvMjIgMDI6MzMsIE7DrWNvbGFzIEYuIFIuIEEuIFByYWRvIGhhIHNjcml0dG86Cj4g SGkgQW5nZWxvLAo+IAo+IE9uIFR1ZSwgTWF5IDAzLCAyMDIyIGF0IDA0OjI1OjM2UE0gKzAyMDAs IEFuZ2Vsb0dpb2FjY2hpbm8gRGVsIFJlZ25vIHdyb3RlOgo+PiBBZGQgZGV2aWNldHJlZSBhbmQg cGluZnVuYyBiaW5kaW5ncyBmb3IgTWVkaWFUZWsgSGVsaW8gWDEwIE1UNjc5NS4KPj4KPj4gU2ln bmVkLW9mZi1ieTogQW5nZWxvR2lvYWNjaGlubyBEZWwgUmVnbm8gPGFuZ2Vsb2dpb2FjY2hpbm8u ZGVscmVnbm9AY29sbGFib3JhLmNvbT4KPj4gLS0tCj4+ICAgLi4uL3BpbmN0cmwvbWVkaWF0ZWss cGluY3RybC1tdDY3OTUueWFtbCAgICAgIHwgMjI0ICsrKysrCj4+ICAgaW5jbHVkZS9kdC1iaW5k aW5ncy9waW5jdHJsL210Njc5NS1waW5mdW5jLmggIHwgOTA4ICsrKysrKysrKysrKysrKysrKwo+ PiAgIDIgZmlsZXMgY2hhbmdlZCwgMTEzMiBpbnNlcnRpb25zKCspCj4+ICAgY3JlYXRlIG1vZGUg MTAwNjQ0IERvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9waW5jdHJsL21lZGlhdGVr LHBpbmN0cmwtbXQ2Nzk1LnlhbWwKPj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgaW5jbHVkZS9kdC1i aW5kaW5ncy9waW5jdHJsL210Njc5NS1waW5mdW5jLmgKPj4KPiAKPiAuLi4KPiAKPj4gKwo+PiAr ICAgICAgICAgIGJpYXMtcHVsbC1kb3duOgo+PiArICAgICAgICAgICAgb25lT2Y6Cj4+ICsgICAg ICAgICAgICAgIC0gdHlwZTogYm9vbGVhbgo+PiArICAgICAgICAgICAgICAtIGVudW06IFsxMDAs IDEwMSwgMTAyLCAxMDNdCj4+ICsgICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IG10Njc5NSBw dWxsIGRvd24gUFVQRC9SMC9SMSB0eXBlIGRlZmluZSB2YWx1ZS4KPj4gKyAgICAgICAgICAgIGRl c2NyaXB0aW9uOiB8Cj4+ICsgICAgICAgICAgICAgICBGb3Igbm9ybWFsIHB1bGwgZG93biB0eXBl LCBpdCBpcyBub3QgbmVjZXNzYXJ5IHRvIHNwZWNpZnkgUjFSMAo+PiArICAgICAgICAgICAgICAg dmFsdWVzOyBXaGVuIHB1bGwgZG93biB0eXBlIGlzIFBVUEQvUjAvUjEsIGFkZGluZyBSMVIwIGRl ZmluZXMKPj4gKyAgICAgICAgICAgICAgIHdpbGwgc2V0IGRpZmZlcmVudCByZXNpc3RhbmNlIHZh bHVlcy4KPj4gKwo+PiArICAgICAgICAgIGJpYXMtcHVsbC11cDoKPj4gKyAgICAgICAgICAgIG9u ZU9mOgo+PiArICAgICAgICAgICAgICAtIHR5cGU6IGJvb2xlYW4KPj4gKyAgICAgICAgICAgICAg LSBlbnVtOiBbMTAwLCAxMDEsIDEwMiwgMTAzXQo+PiArICAgICAgICAgICAgICAgIGRlc2NyaXB0 aW9uOiBtdDY3OTUgcHVsbCB1cCBQVVBEL1IwL1IxIHR5cGUgZGVmaW5lIHZhbHVlLgo+PiArICAg ICAgICAgICAgZGVzY3JpcHRpb246IHwKPj4gKyAgICAgICAgICAgICAgIEZvciBub3JtYWwgcHVs bCB1cCB0eXBlLCBpdCBpcyBub3QgbmVjZXNzYXJ5IHRvIHNwZWNpZnkgUjFSMAo+PiArICAgICAg ICAgICAgICAgdmFsdWVzOyBXaGVuIHB1bGwgdXAgdHlwZSBpcyBQVVBEL1IwL1IxLCBhZGRpbmcg UjFSMCBkZWZpbmVzCj4+ICsgICAgICAgICAgICAgICB3aWxsIHNldCBkaWZmZXJlbnQgcmVzaXN0 YW5jZSB2YWx1ZXMuCj4+ICsKPj4gKyAgICAgICAgICBiaWFzLWRpc2FibGU6IHRydWUKPj4gKwo+ PiArICAgICAgICAgIG91dHB1dC1oaWdoOiB0cnVlCj4+ICsKPj4gKyAgICAgICAgICBvdXRwdXQt bG93OiB0cnVlCj4+ICsKPj4gKyAgICAgICAgICBpbnB1dC1lbmFibGU6IHRydWUKPj4gKwo+PiAr ICAgICAgICAgIGlucHV0LWRpc2FibGU6IHRydWUKPj4gKwo+PiArICAgICAgICAgIGlucHV0LXNj aG1pdHQtZW5hYmxlOiB0cnVlCj4+ICsKPj4gKyAgICAgICAgICBpbnB1dC1zY2htaXR0LWRpc2Fi bGU6IHRydWUKPj4gKwo+PiArICAgICAgICAgIG1lZGlhdGVrLHB1bGwtdXAtYWR2Ogo+PiArICAg ICAgICAgICAgZGVzY3JpcHRpb246IHwKPj4gKyAgICAgICAgICAgICAgUHVsbCB1cCBzZXRpbmdz IGZvciAyIHB1bGwgcmVzaXN0b3JzLCBSMCBhbmQgUjEuIFVzZXIgY2FuCj4+ICsgICAgICAgICAg ICAgIGNvbmZpZ3VyZSB0aG9zZSBzcGVjaWFsIHBpbnMuIFZhbGlkIGFyZ3VtZW50cyBhcmUgZGVz Y3JpYmVkIGFzIGJlbG93Ogo+PiArICAgICAgICAgICAgICAwOiAoUjEsIFIwKSA9ICgwLCAwKSB3 aGljaCBtZWFucyBSMSBkaXNhYmxlZCBhbmQgUjAgZGlzYWJsZWQuCj4+ICsgICAgICAgICAgICAg IDE6IChSMSwgUjApID0gKDAsIDEpIHdoaWNoIG1lYW5zIFIxIGRpc2FibGVkIGFuZCBSMCBlbmFi bGVkLgo+PiArICAgICAgICAgICAgICAyOiAoUjEsIFIwKSA9ICgxLCAwKSB3aGljaCBtZWFucyBS MSBlbmFibGVkIGFuZCBSMCBkaXNhYmxlZC4KPj4gKyAgICAgICAgICAgICAgMzogKFIxLCBSMCkg PSAoMSwgMSkgd2hpY2ggbWVhbnMgUjEgZW5hYmxlZCBhbmQgUjAgZW5hYmxlZC4KPj4gKyAgICAg ICAgICAgICRyZWY6IC9zY2hlbWFzL3R5cGVzLnlhbWwjL2RlZmluaXRpb25zL3VpbnQzMgo+PiAr ICAgICAgICAgICAgZW51bTogWzAsIDEsIDIsIDNdCj4+ICsKPj4gKyAgICAgICAgICBtZWRpYXRl ayxwdWxsLWRvd24tYWR2Ogo+PiArICAgICAgICAgICAgZGVzY3JpcHRpb246IHwKPj4gKyAgICAg ICAgICAgICAgUHVsbCBkb3duIHNldHRpbmdzIGZvciAyIHB1bGwgcmVzaXN0b3JzLCBSMCBhbmQg UjEuIFVzZXIgY2FuCj4+ICsgICAgICAgICAgICAgIGNvbmZpZ3VyZSB0aG9zZSBzcGVjaWFsIHBp bnMuIFZhbGlkIGFyZ3VtZW50cyBhcmUgZGVzY3JpYmVkIGFzIGJlbG93Ogo+PiArICAgICAgICAg ICAgICAwOiAoUjEsIFIwKSA9ICgwLCAwKSB3aGljaCBtZWFucyBSMSBkaXNhYmxlZCBhbmQgUjAg ZGlzYWJsZWQuCj4+ICsgICAgICAgICAgICAgIDE6IChSMSwgUjApID0gKDAsIDEpIHdoaWNoIG1l YW5zIFIxIGRpc2FibGVkIGFuZCBSMCBlbmFibGVkLgo+PiArICAgICAgICAgICAgICAyOiAoUjEs IFIwKSA9ICgxLCAwKSB3aGljaCBtZWFucyBSMSBlbmFibGVkIGFuZCBSMCBkaXNhYmxlZC4KPj4g KyAgICAgICAgICAgICAgMzogKFIxLCBSMCkgPSAoMSwgMSkgd2hpY2ggbWVhbnMgUjEgZW5hYmxl ZCBhbmQgUjAgZW5hYmxlZC4KPj4gKyAgICAgICAgICAgICRyZWY6IC9zY2hlbWFzL3R5cGVzLnlh bWwjL2RlZmluaXRpb25zL3VpbnQzMgo+PiArICAgICAgICAgICAgZW51bTogWzAsIDEsIDIsIDNd Cj4gCj4gSSdtIGFjdHVhbGx5IG15c2VsZiB0cnlpbmcgdG8gZmlndXJlIG91dCB3aHkgdGhlcmUg YXJlIHR3byB3YXlzIG9mIHNldHRpbmcKPiBSMC9SMSBpbiB0aGUgZHQtYmluZGluZyAoYW5kIHdo aWNoIHNob3VsZCBwcmVmZXJyZWQgZm9yIG10ODE5MiBhbmQgb3RoZXJzKToKPiAxLiBwYXNzaW5n IDAtMyB0byBtZWRpYXRlayxwdWxsLXt1cCxkb3dufS1hZHYKPiAyLiBwYXNzaW5nIG9uZSBvZiB0 aGUgTVRLX1BVUERfU0VUX1IxUjBfKiogZmxhZ3MgdG8gYmlhcy1wdWxsLXt1cCxkb3dufQo+IAo+ IFdoZW4gdGhlIHBpbiBpcyBvZiB0eXBlIE1US19QVUxMX1BVUERfUjFSMF9UWVBFICh3aGljaCBz aG91bGQgYmUgdGhlIG9ubHkgY2FzZQo+IGluIHdoaWNoIGl0IG1ha2VzIHNlbnNlIHRvIGNvbnNp ZGVyIG1lZGlhdGVrLHB1bGwte3VwLGRvd259LWFkdiBBRkFJVSksIHRoZXkgZW5kCj4gdXAgZG9p bmcgdGhlIHNhbWUgdGhpbmcsIGl0J3M6Cj4gCj4gbXRrX3BpbmNvbmZfYmlhc19zZXRfY29tYm8o KSAtPiBtdGtfcGluY29uZl9iaWFzX3NldF9wdXBkX3IxX3IwKCkKPiB2cwo+IG10a19waW5jb25m X2Fkdl9wdWxsX3NldCgpCj4gCj4gLi4uIGFuZCB0aGV5IHdyaXRlIHRvIHRoZSBzYW1lIHJlZ2lz dGVycy4KPiAKPiBVbmxlc3MgSSdtIG1pc3Npbmcgc29tZXRoaW5nIGhlcmUuCj4gCj4gVGhhbmtz LAo+IE7DrWNvbGFzCgpIZXkhCgpZZXMgeW91J3JlIG1pc3Npbmcgc29tZXRoaW5nIGltcG9ydGFu dCA6LVAKCkZpcnN0IG9mIGFsbCwgdGhlIGZsb3cgYWxsIGRlcGVuZHMgb24gdGhlIHBpbmN0cmwg ZHJpdmVyICJ0eXBlIjogd2UgaGF2ZQp0aGUgY29tbW9uICh2MSksIG1vb3JlIGFuZCBwYXJpcy4K SSB3aWxsIGxlYXZlIHRoaXMgcmVzZWFyY2ggdG8geW91LCBvciB0aGlzIHJlcGx5IHdpbGwgYmVj b21lIGEgd2FsbCBvZiB0ZXh0LApzbyBsZXQncyBnbyBvbiB3aXRoIHRoZSBsYXR0ZXIgZGV0YWls cywgd2hpY2ggYXJlIHJlbGF0aXZlIHRvIHRoZSBwYXJpcyBvbmUuCgpZb3Ugc2hvdWxkIGNoZWNr IHBpbmN0cmwvbWVkaWF0ZWsvcGluY3RybC1tdChtb2RlbCkuYzogaGVyZSwgeW91IGRlY2xhcmUg YQpzdHJ1Y3QgbXRrX3Bpbl9zb2MgY29udGFpbmluZyBwb2ludGVycyB0byBwaW5zIGRhdGEgYW5k IGZ1bmN0aW9uIGNhbGxiYWNrcywKc3VjaCBhcyBiaWFzX3tnZXQsc2V0fV9jb21ibygpIGFuZCBh ZHZfcHVsbF97c2V0LGdldH0oKS4KCgpOb3cgdG8gdGhlIHJlYWwgZGVhbCwgZXhhbXBsZXMgYmVs b3c6CgotIERlY2xhcmluZyBwcm9wZXJ0eSAibWVkaWF0ZWsscHVsbC11cC1hZHYiIG1lYW5zIHRo YXQgeW91IGdldCB0aHJvdWdoCiAgIE1US19QSU5fQ09ORklHX1BVX0FEViBjYXNlLCB3aGljaCBj YWxscyB0aGUgYWR2X3B1bGxfc2V0KCkgY2FsbGJhY2s7Ci0gRGVjbGFyaW5nIHByb3BlcnR5ICJi aWFzLXB1bGwtdXAiLCBob3dldmVyLCBtZWFucyB0aGF0IHlvdSBnZXQgdGhyb3VnaAogICBQSU5f Q09ORklHX0JJQVNfUFVMTF9VUCwgd2hpY2ggY2FsbHMgYmlhc19zZXRfY29tYm8oKS4KCkZvciBh ZHZfcHVsbF9zZXQoKSBjYWxsYmFjayBiZWluZyBtdGtfcGluY29uZl9hZHZfcHVsbF9zZXQoKSB0 aGUgZm9sbG93aW5nIGhhcHBlbnM6Ci0gV3JpdGUgdG8gcmVnaXN0ZXJzIFBJTl9SRUdfUjAsIFBJ Tl9SRUdfUjEgKHNldCByZXNpc3RvciAwLDEgZW4vZGlzYWJsZWQpOwotIFdyaXRlIHRvIHJlZ2lz dGVycyBQSU5fUkVHX1BVUEQgKHB1bGwgdXAsIG9yIGRvd24pCi0gSWYgYmVsb3cgd3JpdGVzIGZh aWwgKGJlY2F1c2Ugbm8gcjByMS9wdXBkIGRlY2xhcmVkIGluIHlvdXIgZHJpdmVyJ3MgdGFibGUp LAogICB0aGUgY29kZSB3aWxsIGNhbGwgdGhlIGJpYXNfc2V0KCkgY2FsbGJhY2sgYXMgYSBmYWxs YmFjay4KCkZvciBiaWFzX3NldF9jb21ibygpIGNiIGJlaW5nIG10a19waW5jb25mX2JpYXNfc2V0 X2NvbWJvKCkgdGhlIGZvbGxvd2luZyBoYXBwZW5zOgotIENoZWNrIHB1bGxfdHlwZSBtYXNrLCBp dCBtYXkgYmUgb25lIG9yIGEgY29tYmluYXRpb24gKE9SKSBvZjoKICAgLSBNVEtfUFVMTF9SU0VM X1RZUEUKICAgLSBNVEtfUFVMTF9QVV9QRF9UWVBFCiAgIC0gTVRLX1BVTExfUFVMTFNFTF9UWVBF CiAgIC0gTVRLX1BVTExfUFVQRF9SMVIwX1RZUEUKLSBDYWxsIGZ1bmN0aW9uKHMhKSBtdGtfcGlu Y29uZl9iaWFzX3NldF97cnNlbCxwdV9wZCxwdWxsc2VsX3B1bGxlbixwdXBkX3IxX3IwfSwKICAg ZGVwZW5kaW5nIG9uIHRoZSBiaXRzIHNldCBpbiB0aGUgcHVsbF90eXBlIG1hc2suCgpBbGwgb2Yg dGhlIGFmb3JlbWVudGlvbmVkIGZ1bmN0aW9ucyB3aWxsIHBlcmZvcm0gYSBkaWZmZXJlbnQgcmVn aXN0ZXIgd3JpdGUgZm9yCmRpZmZlcmVudCBwdWxsdXAvcHVsbGRvd24gc2V0dGluZ3MuLgoKYmlh cy1wdWxsLXVwOgpPbmUgb2YgdGhlIGNhc2VzIGluIHdoaWNoIHlvdSB3YW50IHRvIHVzZSB0aGUg Y29tYm8gaXMgd2hlbiB5b3UgbmVlZCB0byBzZXQgYQpjb21iaW5hdGlvbiBvZiwgbGV0J3Mgc2F5 LCBQVUxMU0VMIGFuZCBSMVIwIChlbmFibGluZyBhIGRlZmF1bHQgcHVsbCwgYWRkaW5nIGEKc2Vy aWVzIHJlc2lzdGFuY2Ugb2YgcGFyYWxsZWwgUjFSMCByZXNpc3RvcnMgdG8gdGhlIGRlZmF1bHQg dmFsdWUpLCB3aGljaCBpcwpzaW1pbGFyIHRvIFJTRUxfVFlQRSwgYnV0IGZvciBTb0NzIHRoYXQg ZG9uJ3QgaGF2ZSB0aGUgUlNFTF9UWVBFIHJlZ2lzdGVyIGxheW91dC4KCm1lZGlhdGVrLHB1bGwt dXAtYWR2OgpPbmUgb2YgdGhlIGNhc2VzIGluIHdoaWNoIHlvdSB3YW50IHRvIHVzZSB0aGUgYWR2 X3B1bGxfc2V0IGlzIHdoZW4geW91IHdhbnQgdG8Kc2V0ICpvbmx5KiBSMVIwK1BVUEQgb3IgKm9u bHkqIFBVTExTRUwgKHdoZW4gcjFyMC9wdXBkIG5vdCBzdXBwb3J0ZWQpLCBidXQgYWxzbwoqbmV2 ZXIqIG1vZGlmeSBQVV9QRCBvciBSU0VMIHJlZ2lzdGVycy4KCgpJdCdzIGEgYml0IHRyaWNreSB0 byB1bmRlcnN0YW5kLCBidXQgdGhpcyBzdHVmZiBpcyByZWFsbHkgb24gYSBwZXItU29DIGJhc2lz LCBhcwpub3QgYWxsIG9mIHRoZW0gd2lsbCBiZWhhdmUgbGlrZSB0aGUgb3RoZXIuLi4gc28gaWYg eW91IGNoZWNrIG9ubHkgcGluY3RybC1wYXJpcywKb3Igb25seSBwaW5jdHJsLW10ay1jb21tb24t djIsIHlvdSB3aWxsIGluZXZpdGFibHkgZ28gb2Zmcm9hZCB3aXRoIHlvdXIgcmVzZWFyY2guClRo ZSBNZWRpYVRlayBwaW5jdHJsIG11dGF0ZXMgYmVoYXZpb3IgaW4gYSBjb21iaW5hdGlvbiBvZiB0 aGUgYWZvcmVtZW50aW9uZWQgdHdvCiphbmQqIHRoZSBTb0Mtc3BlY2lmaWMgcGluY3RybCBkYXRh IChwaW5jdHJsLW10Njc5NS5jKS4KClRob3VnaCwgbWF5YmUtYW5kLUktc2F5LW1heWJlIChiZWNh dXNlIEkgaGF2ZW4ndCBwZXJmb3JtZWQgYSAqZnVsbCogcmVzZWFyY2ggb24KdGhhdCB0b3BpYyks IGl0ICptYXkgYmUqIHBvc3NpYmxlIHRvIHJlZmFjdG9yIHRoZSBtdGsgcGluY3RybCBmcmFtZXdv cmsgdG8gZ2V0CnJpZCBvZiB0aGUgbWVkaWF0ZWsscHVsbC11cC1hZHYgcHJvcGVydHkgYW5kIGRv IGl0IGFsbCBmcm9tIHRoZSBzdGFuZGFyZCBwaW5jb25mCmJpYXMtcHVsbC11cCBwcm9wZXJ0eSBp bnN0ZWFkIHdpdGggc29tZSBkcml2ZXIgbWFnaWMuLi4gYnV0Li4gaW4gYW55IGNhc2UsIHRoYXQn cwpmb3IgYW5vdGhlciB0aW1lIC0gZGVmaW5pdGVseSBub3Qgbm93IChmb3IgbWUsIGF0IGxlYXN0 IC0gYnV0IGlmIGFueW9uZSB3YW50cyB0bwpleHBsb3JlIHRoaXMgdGVycml0b3J5IGFuZCBwcm9k dWNlIG1vcmUgY2xlYW51cHMsIHlvdSdyZSBlbmNvdXJhZ2VkIHRvKS4KCgpQbGVhc2Ugbm90ZSB0 aGF0IEkgdHJpZWQgdG8gc2ltcGxpZnkgdGhlIGV4cGxhbmF0aW9uIGFzIG11Y2ggYXMgcG9zc2li bGUgYW5kCnNvbWV0aGluZyBpbnNpZGUgbWF5IGhhdmUgdG8gYmUgImludGVycHJldGVkIHRoZSBy aWdodCB3YXkiLCB3aGVuIGxvb2tpbmcgZm9yCmRldGFpbHMgdGhhdCBhcmUgd2F5IG1vcmUgYWR2 YW5jZWQgY29tcGFyZWQgdG8gdGhlIGJhc2ljcyB0aGF0IGFyZSBleHBsYWluZWQKaGVyZS4uLiBi dXQgeW91IHNlZSwgaXQncyBhbHJlYWR5IGEgYmlnIHdhbGwgb2YgdGV4dC4uLiA6LSkgOi0pCgpD aGVlcnMsCkFuZ2VsbwoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KbGludXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgtYXJtLWtlcm5lbEBsaXN0 cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGlu Zm8vbGludXgtYXJtLWtlcm5lbAo=