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=-12.1 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,NICE_REPLY_A,SIGNED_OFF_BY,SPF_HELO_NONE, SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 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 0EA78C41604 for ; Wed, 7 Oct 2020 10:38:07 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id A13E02168B for ; Wed, 7 Oct 2020 10:38:06 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=ti.com header.i=@ti.com header.b="ZYTx7Vvn" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728077AbgJGKiF (ORCPT ); Wed, 7 Oct 2020 06:38:05 -0400 Received: from fllv0016.ext.ti.com ([198.47.19.142]:46196 "EHLO fllv0016.ext.ti.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726096AbgJGKiF (ORCPT ); Wed, 7 Oct 2020 06:38:05 -0400 Received: from fllv0035.itg.ti.com ([10.64.41.0]) by fllv0016.ext.ti.com (8.15.2/8.15.2) with ESMTP id 097Ac0jd028009; Wed, 7 Oct 2020 05:38:00 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ti.com; s=ti-com-17Q1; t=1602067080; bh=x1/iBHIjMa1H+W4UR5Pt/y7opu/QPETmlx5x9EN+Ghg=; h=Subject:To:CC:References:From:Date:In-Reply-To; b=ZYTx7VvnVFVYTqaqTexO512JSdr4DMXMCYizTwNiJpzT3st3khsGQ77g0YzatyDaj /WoedLHBkVGG4zRgtGuFgqB2Oakv0wwhFhBoRtmfXeMZsZiyQK/unii9Mclm6WlnJU i9Y3EUQZTQR2OIUHrOdmW2QNTl73K5SVJZvcwLXo= Received: from DFLE100.ent.ti.com (dfle100.ent.ti.com [10.64.6.21]) by fllv0035.itg.ti.com (8.15.2/8.15.2) with ESMTPS id 097Ac0Ai090554 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=FAIL); Wed, 7 Oct 2020 05:38:00 -0500 Received: from DFLE105.ent.ti.com (10.64.6.26) by DFLE100.ent.ti.com (10.64.6.21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1979.3; Wed, 7 Oct 2020 05:38:00 -0500 Received: from fllv0040.itg.ti.com (10.64.41.20) by DFLE105.ent.ti.com (10.64.6.26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1979.3 via Frontend Transport; Wed, 7 Oct 2020 05:38:00 -0500 Received: from [192.168.2.6] (ileax41-snat.itg.ti.com [10.172.224.153]) by fllv0040.itg.ti.com (8.15.2/8.15.2) with ESMTP id 097AbwsT127608; Wed, 7 Oct 2020 05:37:59 -0500 Subject: Re: [PATCH] arm64: dts: ti: k3-j7200-main: Add McASP nodes To: Nishanth Menon CC: , , , , References: <20201005074850.11247-1-peter.ujfalusi@ti.com> <20201005115805.d6yhykn7oc6x2tbu@charm> <5a9ed7d3-fcfd-edbf-fc34-112a7e55aa1c@ti.com> <20201005120837.75cwdmcpvzbvayq7@kinfolk> From: Peter Ujfalusi Message-ID: Date: Wed, 7 Oct 2020 13:38:19 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.3.1 MIME-Version: 1.0 In-Reply-To: <20201005120837.75cwdmcpvzbvayq7@kinfolk> Content-Type: text/plain; charset="utf-8" Content-Language: en-US Content-Transfer-Encoding: 8bit X-EXCLAIMER-MD-CONFIG: e1e8a2fd-e40a-4ac6-ac9b-f7e9cc9ee180 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 05/10/2020 15.08, Nishanth Menon wrote: > On 15:02-20201005, Peter Ujfalusi wrote: >> >> >> On 05/10/2020 14.58, Nishanth Menon wrote: >>> On 10:48-20201005, Peter Ujfalusi wrote: >>>> Add the nodes for McASP 0-2 and keep them disabled because several >>>> required properties are not present as they are board specific. >>>> >>>> Signed-off-by: Peter Ujfalusi >>>> --- >>>> arch/arm64/boot/dts/ti/k3-j7200-main.dtsi | 57 +++++++++++++++++++++++ >>>> 1 file changed, 57 insertions(+) >>>> >>>> diff --git a/arch/arm64/boot/dts/ti/k3-j7200-main.dtsi b/arch/arm64/boot/dts/ti/k3-j7200-main.dtsi >>>> index 72d6496e88dd..cc6c2a81887a 100644 >>>> --- a/arch/arm64/boot/dts/ti/k3-j7200-main.dtsi >>>> +++ b/arch/arm64/boot/dts/ti/k3-j7200-main.dtsi >>>> @@ -446,4 +446,61 @@ usb0: usb@6000000 { >>>> dr_mode = "otg"; >>>> }; >>>> }; >>>> +x >>>> + mcasp0: mcasp@02b00000 { >>>> + compatible = "ti,am33xx-mcasp-audio"; >>>> + reg = <0x0 0x02b00000 0x0 0x2000>, >>>> + <0x0 0x02b08000 0x0 0x1000>; >>>> + reg-names = "mpu","dat"; >>>> + interrupts = , >>>> + ; >>>> + interrupt-names = "tx", "rx"; >>>> + >>>> + dmas = <&main_udmap 0xc400>, <&main_udmap 0x4400>; >>>> + dma-names = "tx", "rx"; >>>> + >>>> + clocks = <&k3_clks 174 40>; >>>> + clock-names = "fck"; >>>> + power-domains = <&k3_pds 174 TI_SCI_PD_EXCLUSIVE>; >>>> + >>>> + status = "disabled"; >>> >>> I see that there is inconsistent usage of "disabled" in our SoC.dts >>> >>> Our generic rule has been set them to disabled in board.dtsi >>> McASP and DSS for existing SoC dts do not follow this.. which is a tad >>> confusing.. (considering that not even all uarts come out on every board >>> and every uart needs pinmux to function..) >> >> "keep them disabled because several required properties are not present >> as they are board specific." >> >> In board file the enabled mcasp must be updated with options that is >> required for operation. Without those option the McASP can not be >> initialized. >> >> I think we have been revisiting the very same discussion every time we >> have a new SoC with McASP... >> > > Yep.. This doe'snt really follow the rest of the SoC definition. [1] > came to mind. The McASP discussion is a variation in the debate of the > same. Right, saying status = "okay" to a node which is missing required properties (which can only be added by boards when the McASP is connected up) does not sound a good solution. How should the SW handle that? Fail the device probe and return with -EINVAL or eat up the error and just probe with broken configuration. Since the peripheral is not used, the broken configuration will not cause much runtime errors as there will be no runtime use of the peripheral. status of fail or fail-sss is not a good one either, their definition is: "Indicates that the device is not operational. A serious error was detected in the device, and it is unlikely to become operational without repair." The peripheral is fine, we are just trying to enable it without providing the needed properties. > I'd argue Serdes, or for that matter any IP that has a link to > outside-the-SoC world has the same discussion point. status = "disabled" is still the closest thing for everything which have external dependencies. There is not much point to enable an i2c bus without making sure that the signals are actually routed to the pins where they supposed to go. Or from other pow: a board design is not based on what is _not_ connected to outside world, but you actually _connect_ or _enable_ certain peripherals to external components, connectors. > [1] https://patchwork.kernel.org/patch/9304575/ > - Péter Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki. Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki 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=-12.0 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH, MAILING_LIST_MULTI,NICE_REPLY_A,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_SANE_1 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 C81AAC4363C for ; Wed, 7 Oct 2020 10:39:35 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (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 510A6207EA for ; Wed, 7 Oct 2020 10:39:35 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="Gttta2Gk"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=ti.com header.i=@ti.com header.b="ZYTx7Vvn" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 510A6207EA Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=ti.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=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:Date:Message-ID:From: References:To:Subject:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=rhwES72J7LxoRCoe3Wi0NDdAcyV7dfaXS8RS9sYEh2A=; b=Gttta2GkYGXNe5AVi2pcXU3dW 2F79/k1KusbML4eMzcfcCfk52/Tx39HdTSUnyyujDyy3Yr9zWjN6U81fSgnUyQkA/6lxmt7yVSGJw eMXkrwH9Y+nLbCVgqpC8RFt0gRd43/RKQ8zQxpNCf1XKW8homFCuxXHBnrxP4BdwZwUKiaax3z8hS /meb0OPqmhhrGB6tpZsPebnnkHS4w3lnw6iiGbb74TDkBpWG0iFKB/tfisl0eLCEouz8MJm1PC2YO qLuYFWBh1NGUBWjG+QrB0ldJYjh+gbn8CekuZbuG17zxp8yQYTWoRjNK+XK3CIkoyNK2P3MXR08rD guHwldfmw==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kQ6ph-0005J4-Ll; Wed, 07 Oct 2020 10:38:05 +0000 Received: from fllv0016.ext.ti.com ([198.47.19.142]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kQ6pf-0005Ib-0u for linux-arm-kernel@lists.infradead.org; Wed, 07 Oct 2020 10:38:04 +0000 Received: from fllv0035.itg.ti.com ([10.64.41.0]) by fllv0016.ext.ti.com (8.15.2/8.15.2) with ESMTP id 097Ac0jd028009; Wed, 7 Oct 2020 05:38:00 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ti.com; s=ti-com-17Q1; t=1602067080; bh=x1/iBHIjMa1H+W4UR5Pt/y7opu/QPETmlx5x9EN+Ghg=; h=Subject:To:CC:References:From:Date:In-Reply-To; b=ZYTx7VvnVFVYTqaqTexO512JSdr4DMXMCYizTwNiJpzT3st3khsGQ77g0YzatyDaj /WoedLHBkVGG4zRgtGuFgqB2Oakv0wwhFhBoRtmfXeMZsZiyQK/unii9Mclm6WlnJU i9Y3EUQZTQR2OIUHrOdmW2QNTl73K5SVJZvcwLXo= Received: from DFLE100.ent.ti.com (dfle100.ent.ti.com [10.64.6.21]) by fllv0035.itg.ti.com (8.15.2/8.15.2) with ESMTPS id 097Ac0Ai090554 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=FAIL); Wed, 7 Oct 2020 05:38:00 -0500 Received: from DFLE105.ent.ti.com (10.64.6.26) by DFLE100.ent.ti.com (10.64.6.21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1979.3; Wed, 7 Oct 2020 05:38:00 -0500 Received: from fllv0040.itg.ti.com (10.64.41.20) by DFLE105.ent.ti.com (10.64.6.26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1979.3 via Frontend Transport; Wed, 7 Oct 2020 05:38:00 -0500 Received: from [192.168.2.6] (ileax41-snat.itg.ti.com [10.172.224.153]) by fllv0040.itg.ti.com (8.15.2/8.15.2) with ESMTP id 097AbwsT127608; Wed, 7 Oct 2020 05:37:59 -0500 Subject: Re: [PATCH] arm64: dts: ti: k3-j7200-main: Add McASP nodes To: Nishanth Menon References: <20201005074850.11247-1-peter.ujfalusi@ti.com> <20201005115805.d6yhykn7oc6x2tbu@charm> <5a9ed7d3-fcfd-edbf-fc34-112a7e55aa1c@ti.com> <20201005120837.75cwdmcpvzbvayq7@kinfolk> From: Peter Ujfalusi Message-ID: Date: Wed, 7 Oct 2020 13:38:19 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.3.1 MIME-Version: 1.0 In-Reply-To: <20201005120837.75cwdmcpvzbvayq7@kinfolk> Content-Language: en-US X-EXCLAIMER-MD-CONFIG: e1e8a2fd-e40a-4ac6-ac9b-f7e9cc9ee180 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20201007_063803_242606_90526B86 X-CRM114-Status: GOOD ( 25.80 ) 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: t-kristo@ti.com, devicetree@vger.kernel.org, robh+dt@kernel.org, linux-kernel@vger.kernel.org, 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+linux-arm-kernel=archiver.kernel.org@lists.infradead.org CgpPbiAwNS8xMC8yMDIwIDE1LjA4LCBOaXNoYW50aCBNZW5vbiB3cm90ZToKPiBPbiAxNTowMi0y MDIwMTAwNSwgUGV0ZXIgVWpmYWx1c2kgd3JvdGU6Cj4+Cj4+Cj4+IE9uIDA1LzEwLzIwMjAgMTQu NTgsIE5pc2hhbnRoIE1lbm9uIHdyb3RlOgo+Pj4gT24gMTA6NDgtMjAyMDEwMDUsIFBldGVyIFVq ZmFsdXNpIHdyb3RlOgo+Pj4+IEFkZCB0aGUgbm9kZXMgZm9yIE1jQVNQIDAtMiBhbmQga2VlcCB0 aGVtIGRpc2FibGVkIGJlY2F1c2Ugc2V2ZXJhbAo+Pj4+IHJlcXVpcmVkIHByb3BlcnRpZXMgYXJl IG5vdCBwcmVzZW50IGFzIHRoZXkgYXJlIGJvYXJkIHNwZWNpZmljLgo+Pj4+Cj4+Pj4gU2lnbmVk LW9mZi1ieTogUGV0ZXIgVWpmYWx1c2kgPHBldGVyLnVqZmFsdXNpQHRpLmNvbT4KPj4+PiAtLS0K Pj4+PiAgYXJjaC9hcm02NC9ib290L2R0cy90aS9rMy1qNzIwMC1tYWluLmR0c2kgfCA1NyArKysr KysrKysrKysrKysrKysrKysrKwo+Pj4+ICAxIGZpbGUgY2hhbmdlZCwgNTcgaW5zZXJ0aW9ucygr KQo+Pj4+Cj4+Pj4gZGlmZiAtLWdpdCBhL2FyY2gvYXJtNjQvYm9vdC9kdHMvdGkvazMtajcyMDAt bWFpbi5kdHNpIGIvYXJjaC9hcm02NC9ib290L2R0cy90aS9rMy1qNzIwMC1tYWluLmR0c2kKPj4+ PiBpbmRleCA3MmQ2NDk2ZTg4ZGQuLmNjNmMyYTgxODg3YSAxMDA2NDQKPj4+PiAtLS0gYS9hcmNo L2FybTY0L2Jvb3QvZHRzL3RpL2szLWo3MjAwLW1haW4uZHRzaQo+Pj4+ICsrKyBiL2FyY2gvYXJt NjQvYm9vdC9kdHMvdGkvazMtajcyMDAtbWFpbi5kdHNpCj4+Pj4gQEAgLTQ0Niw0ICs0NDYsNjEg QEAgdXNiMDogdXNiQDYwMDAwMDAgewo+Pj4+ICAJCQlkcl9tb2RlID0gIm90ZyI7Cj4+Pj4gIAkJ fTsKPj4+PiAgCX07Cj4+Pj4gK3gKPj4+PiArCW1jYXNwMDogbWNhc3BAMDJiMDAwMDAgewo+Pj4+ ICsJCWNvbXBhdGlibGUgPSAidGksYW0zM3h4LW1jYXNwLWF1ZGlvIjsKPj4+PiArCQlyZWcgPSA8 MHgwIDB4MDJiMDAwMDAgMHgwIDB4MjAwMD4sCj4+Pj4gKwkJCTwweDAgMHgwMmIwODAwMCAweDAg MHgxMDAwPjsKPj4+PiArCQlyZWctbmFtZXMgPSAibXB1IiwiZGF0IjsKPj4+PiArCQlpbnRlcnJ1 cHRzID0gPEdJQ19TUEkgNTQ0IElSUV9UWVBFX0xFVkVMX0hJR0g+LAo+Pj4+ICsJCQkJPEdJQ19T UEkgNTQ1IElSUV9UWVBFX0xFVkVMX0hJR0g+Owo+Pj4+ICsJCWludGVycnVwdC1uYW1lcyA9ICJ0 eCIsICJyeCI7Cj4+Pj4gKwo+Pj4+ICsJCWRtYXMgPSA8Jm1haW5fdWRtYXAgMHhjNDAwPiwgPCZt YWluX3VkbWFwIDB4NDQwMD47Cj4+Pj4gKwkJZG1hLW5hbWVzID0gInR4IiwgInJ4IjsKPj4+PiAr Cj4+Pj4gKwkJY2xvY2tzID0gPCZrM19jbGtzIDE3NCA0MD47Cj4+Pj4gKwkJY2xvY2stbmFtZXMg PSAiZmNrIjsKPj4+PiArCQlwb3dlci1kb21haW5zID0gPCZrM19wZHMgMTc0IFRJX1NDSV9QRF9F WENMVVNJVkU+Owo+Pj4+ICsKPj4+PiArCQlzdGF0dXMgPSAiZGlzYWJsZWQiOwo+Pj4KPj4+IEkg c2VlIHRoYXQgdGhlcmUgaXMgaW5jb25zaXN0ZW50IHVzYWdlIG9mICJkaXNhYmxlZCIgaW4gb3Vy IFNvQy5kdHMKPj4+Cj4+PiBPdXIgZ2VuZXJpYyBydWxlIGhhcyBiZWVuIHNldCB0aGVtIHRvIGRp c2FibGVkIGluIGJvYXJkLmR0c2kKPj4+IE1jQVNQIGFuZCBEU1MgZm9yIGV4aXN0aW5nIFNvQyBk dHMgZG8gbm90IGZvbGxvdyB0aGlzLi4gd2hpY2ggaXMgYSB0YWQKPj4+IGNvbmZ1c2luZy4uIChj b25zaWRlcmluZyB0aGF0IG5vdCBldmVuIGFsbCB1YXJ0cyBjb21lIG91dCBvbiBldmVyeSBib2Fy ZAo+Pj4gYW5kIGV2ZXJ5IHVhcnQgbmVlZHMgcGlubXV4IHRvIGZ1bmN0aW9uLi4pCj4+Cj4+ICJr ZWVwIHRoZW0gZGlzYWJsZWQgYmVjYXVzZSBzZXZlcmFsIHJlcXVpcmVkIHByb3BlcnRpZXMgYXJl IG5vdCBwcmVzZW50Cj4+IGFzIHRoZXkgYXJlIGJvYXJkIHNwZWNpZmljLiIKPj4KPj4gSW4gYm9h cmQgZmlsZSB0aGUgZW5hYmxlZCBtY2FzcCBtdXN0IGJlIHVwZGF0ZWQgd2l0aCBvcHRpb25zIHRo YXQgaXMKPj4gcmVxdWlyZWQgZm9yIG9wZXJhdGlvbi4gV2l0aG91dCB0aG9zZSBvcHRpb24gdGhl IE1jQVNQIGNhbiBub3QgYmUKPj4gaW5pdGlhbGl6ZWQuCj4+Cj4+IEkgdGhpbmsgd2UgaGF2ZSBi ZWVuIHJldmlzaXRpbmcgdGhlIHZlcnkgc2FtZSBkaXNjdXNzaW9uIGV2ZXJ5IHRpbWUgd2UKPj4g aGF2ZSBhIG5ldyBTb0Mgd2l0aCBNY0FTUC4uLgo+Pgo+IAo+IFllcC4uIFRoaXMgZG9lJ3NudCBy ZWFsbHkgZm9sbG93IHRoZSByZXN0IG9mIHRoZSBTb0MgZGVmaW5pdGlvbi4gWzFdCj4gY2FtZSB0 byBtaW5kLiBUaGUgTWNBU1AgZGlzY3Vzc2lvbiBpcyBhIHZhcmlhdGlvbiBpbiB0aGUgZGViYXRl IG9mIHRoZQo+IHNhbWUuCgpSaWdodCwgc2F5aW5nIHN0YXR1cyA9ICJva2F5IiB0byBhIG5vZGUg d2hpY2ggaXMgbWlzc2luZyByZXF1aXJlZApwcm9wZXJ0aWVzICh3aGljaCBjYW4gb25seSBiZSBh ZGRlZCBieSBib2FyZHMgd2hlbiB0aGUgTWNBU1AgaXMKY29ubmVjdGVkIHVwKSBkb2VzIG5vdCBz b3VuZCBhIGdvb2Qgc29sdXRpb24uCkhvdyBzaG91bGQgdGhlIFNXIGhhbmRsZSB0aGF0PyBGYWls IHRoZSBkZXZpY2UgcHJvYmUgYW5kIHJldHVybiB3aXRoCi1FSU5WQUwgb3IgZWF0IHVwIHRoZSBl cnJvciBhbmQganVzdCBwcm9iZSB3aXRoIGJyb2tlbiBjb25maWd1cmF0aW9uLgpTaW5jZSB0aGUg cGVyaXBoZXJhbCBpcyBub3QgdXNlZCwgdGhlIGJyb2tlbiBjb25maWd1cmF0aW9uIHdpbGwgbm90 CmNhdXNlIG11Y2ggcnVudGltZSBlcnJvcnMgYXMgdGhlcmUgd2lsbCBiZSBubyBydW50aW1lIHVz ZSBvZiB0aGUgcGVyaXBoZXJhbC4KCnN0YXR1cyBvZiBmYWlsIG9yIGZhaWwtc3NzIGlzIG5vdCBh IGdvb2Qgb25lIGVpdGhlciwgdGhlaXIgZGVmaW5pdGlvbiBpczoKIkluZGljYXRlcyB0aGF0IHRo ZSBkZXZpY2UgaXMgbm90IG9wZXJhdGlvbmFsLiBBIHNlcmlvdXMgZXJyb3Igd2FzCmRldGVjdGVk IGluIHRoZSBkZXZpY2UsIGFuZCBpdCBpcyB1bmxpa2VseSB0byBiZWNvbWUgb3BlcmF0aW9uYWwg d2l0aG91dApyZXBhaXIuIgoKVGhlIHBlcmlwaGVyYWwgaXMgZmluZSwgd2UgYXJlIGp1c3QgdHJ5 aW5nIHRvIGVuYWJsZSBpdCB3aXRob3V0CnByb3ZpZGluZyB0aGUgbmVlZGVkIHByb3BlcnRpZXMu Cgo+IEknZCBhcmd1ZSBTZXJkZXMsIG9yIGZvciB0aGF0IG1hdHRlciBhbnkgSVAgdGhhdCBoYXMg YSBsaW5rIHRvCj4gb3V0c2lkZS10aGUtU29DIHdvcmxkIGhhcyB0aGUgc2FtZSBkaXNjdXNzaW9u IHBvaW50LgoKc3RhdHVzID0gImRpc2FibGVkIiBpcyBzdGlsbCB0aGUgY2xvc2VzdCB0aGluZyBm b3IgZXZlcnl0aGluZyB3aGljaCBoYXZlCmV4dGVybmFsIGRlcGVuZGVuY2llcy4gVGhlcmUgaXMg bm90IG11Y2ggcG9pbnQgdG8gZW5hYmxlIGFuIGkyYyBidXMKd2l0aG91dCBtYWtpbmcgc3VyZSB0 aGF0IHRoZSBzaWduYWxzIGFyZSBhY3R1YWxseSByb3V0ZWQgdG8gdGhlIHBpbnMKd2hlcmUgdGhl eSBzdXBwb3NlZCB0byBnby4KCk9yIGZyb20gb3RoZXIgcG93OiBhIGJvYXJkIGRlc2lnbiBpcyBu b3QgYmFzZWQgb24gd2hhdCBpcyBfbm90Xwpjb25uZWN0ZWQgdG8gb3V0c2lkZSB3b3JsZCwgYnV0 IHlvdSBhY3R1YWxseSBfY29ubmVjdF8gb3IgX2VuYWJsZV8KY2VydGFpbiBwZXJpcGhlcmFscyB0 byBleHRlcm5hbCBjb21wb25lbnRzLCBjb25uZWN0b3JzLgoKPiBbMV0gaHR0cHM6Ly9wYXRjaHdv cmsua2VybmVsLm9yZy9wYXRjaC85MzA0NTc1Lwo+IAoKLSBQw6l0ZXIKClRleGFzIEluc3RydW1l bnRzIEZpbmxhbmQgT3ksIFBvcmtrYWxhbmthdHUgMjIsIDAwMTgwIEhlbHNpbmtpLgpZLXR1bm51 cy9CdXNpbmVzcyBJRDogMDYxNTUyMS00LiBLb3RpcGFpa2thL0RvbWljaWxlOiBIZWxzaW5raQoK X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGludXgtYXJt LWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgtYXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQub3Jn Cmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtYXJtLWtl cm5lbAo=