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=-5.6 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_SANE_1 autolearn=no 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 01270C433E7 for ; Fri, 9 Oct 2020 08:06:44 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 8F8B521789 for ; Fri, 9 Oct 2020 08:06:43 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=ti.com header.i=@ti.com header.b="G+b6W2PG" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1732529AbgJIIGn (ORCPT ); Fri, 9 Oct 2020 04:06:43 -0400 Received: from fllv0015.ext.ti.com ([198.47.19.141]:42386 "EHLO fllv0015.ext.ti.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1732337AbgJIIGm (ORCPT ); Fri, 9 Oct 2020 04:06:42 -0400 Received: from lelv0265.itg.ti.com ([10.180.67.224]) by fllv0015.ext.ti.com (8.15.2/8.15.2) with ESMTP id 09986VA4111967; Fri, 9 Oct 2020 03:06:31 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ti.com; s=ti-com-17Q1; t=1602230791; bh=BHTrCfkiTOmXAou93T2ihLIRlwCwPpMEKu1ad7VxsbA=; h=Subject:To:CC:References:From:Date:In-Reply-To; b=G+b6W2PG2fdRqSHgCyBL7rYoIjHLHbnG3bjeh7mXe863YM0jen/l3tk+KAsw58rKm PuEN40yCkC631DMp4/fZBfTxl29L8HCpfHwnfmGWDNrNKSSgdzwvoqVJ9n/ekmn5dt L3r35sJjDI0bwNBKZw740t7LXTNIMzHB+ArBlw6M= Received: from DLEE104.ent.ti.com (dlee104.ent.ti.com [157.170.170.34]) by lelv0265.itg.ti.com (8.15.2/8.15.2) with ESMTPS id 09986V0w091492 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=FAIL); Fri, 9 Oct 2020 03:06:31 -0500 Received: from DLEE112.ent.ti.com (157.170.170.23) by DLEE104.ent.ti.com (157.170.170.34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1979.3; Fri, 9 Oct 2020 03:06:30 -0500 Received: from fllv0040.itg.ti.com (10.64.41.20) by DLEE112.ent.ti.com (157.170.170.23) 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; Fri, 9 Oct 2020 03:06:30 -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 09986R0G066243; Fri, 9 Oct 2020 03:06:28 -0500 Subject: Re: [PATCH 09/18] dt-bindings: dma: ti: Add document for K3 BCDMA To: Rob Herring CC: Vinod , Nishanth Menon , Santosh Shilimkar , Vignesh R , Dan Williams , Tero Kristo , Lokesh Vutla , linux-arm-kernel , "linux-kernel@vger.kernel.org" , , "open list:DMA GENERIC OFFLOAD ENGINE SUBSYSTEM" References: <20200930091412.8020-1-peter.ujfalusi@ti.com> <20200930091412.8020-10-peter.ujfalusi@ti.com> <20201006192909.GA2679155@bogus> <20201007154635.GA273523@bogus> From: Peter Ujfalusi Message-ID: <1f532784-c46d-6746-2511-466fd82c0809@ti.com> Date: Fri, 9 Oct 2020 11:06:49 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.3.2 MIME-Version: 1.0 In-Reply-To: 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: dmaengine@vger.kernel.org On 08/10/2020 22.15, Rob Herring wrote: > On Thu, Oct 8, 2020 at 3:40 AM Peter Ujfalusi wrote: >>> Yeah, you have to do 'unevaluatedProperties: false' which doesn't >>> actually do anything yet, but can 'see' into $ref's. >> >> I see, but even if I add the unevaluatedProperties: false I will have >> the same error as long as I have additionalProperties: false > > Yes. I meant unevaluatedProperties instead of additionalProperties. OK, changed it to unevaluatedProperties. >> If I remove the additionalProperties then it makes no difference if I >> have the unevaluatedProperties: false or I don't. > > Not yet, but it will soon. Once I have the tree in a consistent state > in 5.10-rc1, there will be a meta-schema to check all this (which is > one of those must always be present). > > Though, as of now 'unevaluatedProperties' doesn't do anything because > the underlying json-schema tool doesn't yet support it. Understand, thanks for the details. >>>>>> + ti,sci-rm-range-bchan: >>>>>> + description: | >>>>>> + Array of BCDMA block-copy channel resource subtypes for resource >>>>>> + allocation for this host >>>>>> + allOf: >>>>>> + - $ref: /schemas/types.yaml#/definitions/uint32-array >>>>>> + minItems: 1 >>>>>> + # Should be enough >>>>>> + maxItems: 255 >>>>> >>>>> Are there constraints for the individual elements? >>>> >>>> In practice the subtype ID is 6bits number. >>>> Should I add limits to individual elements? >>> >>> Yes: >>> >>> items: >>> maximum: 0x3f >> >> Right, I can just omit the minimum. >> >> It would be nice if I could use definitions for these ranges to avoid >> duplicated lines by adding >> >> definitions: >> ti,rm-range: >> $ref: /schemas/types.yaml#/definitions/uint32-array >> minItems: 1 >> # Should be enough >> maxItems: 255 >> items: >> minimum: 0 >> maximum: 0x3f >> >> to schemas/arm/keystone/ti,k3-sci-common.yaml >> >> and only have: >> >> ti,sci-rm-range-bchan: >> $ref: >> /schemas/arm/keystone/ti,k3-sci-common.yaml#/definitions/ti,rm-range >> description: | >> Array of BCDMA block-copy channel resource subtypes for resource >> allocation for this host > > Just do: > > patternProperties: > "^ti,sci-rm-range-[btr]chan$": > ... > > If this is common for other bindings, then you can put it in > ti,k3-sci-common.yaml. Similar property (for RM ranges) also used by the ringacc, I have tried to standardize us to use: ti,sci-rm-range-* in DT. I will leave it as it is now for this series and we can simplify it later with a wider series touching all involved yaml files. >> but it results: >> Documentation/devicetree/bindings/dma/ti/k3-bcdma.yaml: >> properties:ti,sci-rm-range-bchan: {'$ref': >> '/schemas/arm/keystone/ti,k3-sci-common.yaml#/definitions/ti,rm-range', >> 'description': 'Array of BCDMA block-copy channel resource subtypes for >> resource\nallocation for this host\n'} is not valid under any of the >> given schemas (Possible causes of the failure): >> Documentation/devicetree/bindings/dma/ti/k3-bcdma.yaml: >> properties:ti,sci-rm-range-bchan: 'not' is a required property >> Documentation/devicetree/bindings/dma/ti/k3-bcdma.yaml: >> properties:ti,sci-rm-range-bchan:$ref: >> '/schemas/arm/keystone/ti,k3-sci-common.yaml#/definitions/ti,rm-range' >> does not match 'types.yaml#[/]{0,1}definitions/.*' > > We probably should allow for using 'definitions' which is pretty > common json-schema practice, but don't primarily in order to keep > folks within the lines. Things are optimized for not knowing > json-schema and trying to minimize errors I have to check for. I agree on these. > Supporting it would complicate the meta-schema and the tools' fixup > code. So far, the need for it has been pretty infrequent. Sure, for the couple of duplication I have it is manageable without sacrificing readability. btw: I have made the similar changes to the k3-pktdma schema. > > Rob > - 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=-5.5 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=no 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 BA37EC433E7 for ; Fri, 9 Oct 2020 08:08:55 +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 3288E21789 for ; Fri, 9 Oct 2020 08:08:55 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="JoNcPBKy"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=ti.com header.i=@ti.com header.b="G+b6W2PG" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 3288E21789 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=nr/BeJEUmbiuL19wOV4tOpxTXLXTJNkcc+GKPeoCFs0=; b=JoNcPBKyNh0FQQ3gc1rVcC9tw FKQOh4JGE2oR6SZpp2YZqK03YQmtCYLyL4T3e3VE7RsVoCunFcNl48dg5HEhcaSp1OINO9bzQgBNb +Z7WufSpguBSsE/lijD2ip3P4upHBAOU1ZuNl7XZXbdSG9hjZyJIMgRvGodmwyvPhwtMIBq7cLKyK njnJ/LfAVQYT7/+zBtWxevUPWKvvx57h0wuAvv4NEfEqyYvKoSlW9o0XVnITB3mpTMJw/rrSfOBDL 81yyIyn1YMhHHOLFrRhY/znUEDUbWpAiqFmSRKv+NSk+Jv37wZ2ukTG7R87Q3to4wTM8cPRFVNPIG PIHpm4r1A==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kQnQb-0006Gm-1j; Fri, 09 Oct 2020 08:07:01 +0000 Received: from fllv0015.ext.ti.com ([198.47.19.141]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kQnQD-00067u-AS for linux-arm-kernel@lists.infradead.org; Fri, 09 Oct 2020 08:06:41 +0000 Received: from lelv0265.itg.ti.com ([10.180.67.224]) by fllv0015.ext.ti.com (8.15.2/8.15.2) with ESMTP id 09986VA4111967; Fri, 9 Oct 2020 03:06:31 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ti.com; s=ti-com-17Q1; t=1602230791; bh=BHTrCfkiTOmXAou93T2ihLIRlwCwPpMEKu1ad7VxsbA=; h=Subject:To:CC:References:From:Date:In-Reply-To; b=G+b6W2PG2fdRqSHgCyBL7rYoIjHLHbnG3bjeh7mXe863YM0jen/l3tk+KAsw58rKm PuEN40yCkC631DMp4/fZBfTxl29L8HCpfHwnfmGWDNrNKSSgdzwvoqVJ9n/ekmn5dt L3r35sJjDI0bwNBKZw740t7LXTNIMzHB+ArBlw6M= Received: from DLEE104.ent.ti.com (dlee104.ent.ti.com [157.170.170.34]) by lelv0265.itg.ti.com (8.15.2/8.15.2) with ESMTPS id 09986V0w091492 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=FAIL); Fri, 9 Oct 2020 03:06:31 -0500 Received: from DLEE112.ent.ti.com (157.170.170.23) by DLEE104.ent.ti.com (157.170.170.34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1979.3; Fri, 9 Oct 2020 03:06:30 -0500 Received: from fllv0040.itg.ti.com (10.64.41.20) by DLEE112.ent.ti.com (157.170.170.23) 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; Fri, 9 Oct 2020 03:06:30 -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 09986R0G066243; Fri, 9 Oct 2020 03:06:28 -0500 Subject: Re: [PATCH 09/18] dt-bindings: dma: ti: Add document for K3 BCDMA To: Rob Herring References: <20200930091412.8020-1-peter.ujfalusi@ti.com> <20200930091412.8020-10-peter.ujfalusi@ti.com> <20201006192909.GA2679155@bogus> <20201007154635.GA273523@bogus> From: Peter Ujfalusi Message-ID: <1f532784-c46d-6746-2511-466fd82c0809@ti.com> Date: Fri, 9 Oct 2020 11:06:49 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.3.2 MIME-Version: 1.0 In-Reply-To: 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-20201009_040637_505461_74C5D0A3 X-CRM114-Status: GOOD ( 28.17 ) 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: Nishanth Menon , devicetree@vger.kernel.org, Vignesh R , Lokesh Vutla , "linux-kernel@vger.kernel.org" , Tero Kristo , Vinod , Santosh Shilimkar , "open list:DMA GENERIC OFFLOAD ENGINE SUBSYSTEM" , Dan Williams , linux-arm-kernel 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 CgpPbiAwOC8xMC8yMDIwIDIyLjE1LCBSb2IgSGVycmluZyB3cm90ZToKPiBPbiBUaHUsIE9jdCA4 LCAyMDIwIGF0IDM6NDAgQU0gUGV0ZXIgVWpmYWx1c2kgPHBldGVyLnVqZmFsdXNpQHRpLmNvbT4g d3JvdGU6Cgo+Pj4gWWVhaCwgeW91IGhhdmUgdG8gZG8gJ3VuZXZhbHVhdGVkUHJvcGVydGllczog ZmFsc2UnIHdoaWNoIGRvZXNuJ3QKPj4+IGFjdHVhbGx5IGRvIGFueXRoaW5nIHlldCwgYnV0IGNh biAnc2VlJyBpbnRvICRyZWYncy4KPj4KPj4gSSBzZWUsIGJ1dCBldmVuIGlmIEkgYWRkIHRoZSB1 bmV2YWx1YXRlZFByb3BlcnRpZXM6IGZhbHNlIEkgd2lsbCBoYXZlCj4+IHRoZSBzYW1lIGVycm9y IGFzIGxvbmcgYXMgSSBoYXZlIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiBmYWxzZQo+IAo+IFllcy4g SSBtZWFudCB1bmV2YWx1YXRlZFByb3BlcnRpZXMgaW5zdGVhZCBvZiBhZGRpdGlvbmFsUHJvcGVy dGllcy4KCk9LLCBjaGFuZ2VkIGl0IHRvIHVuZXZhbHVhdGVkUHJvcGVydGllcy4KCj4+IElmIEkg cmVtb3ZlIHRoZSBhZGRpdGlvbmFsUHJvcGVydGllcyB0aGVuIGl0IG1ha2VzIG5vIGRpZmZlcmVu Y2UgaWYgSQo+PiBoYXZlIHRoZSB1bmV2YWx1YXRlZFByb3BlcnRpZXM6IGZhbHNlIG9yIEkgZG9u J3QuCj4gCj4gTm90IHlldCwgYnV0IGl0IHdpbGwgc29vbi4gT25jZSBJIGhhdmUgdGhlIHRyZWUg aW4gYSBjb25zaXN0ZW50IHN0YXRlCj4gaW4gNS4xMC1yYzEsIHRoZXJlIHdpbGwgYmUgYSBtZXRh LXNjaGVtYSB0byBjaGVjayBhbGwgdGhpcyAod2hpY2ggaXMKPiBvbmUgb2YgdGhvc2UgbXVzdCBh bHdheXMgYmUgcHJlc2VudCkuCj4gCj4gVGhvdWdoLCBhcyBvZiBub3cgJ3VuZXZhbHVhdGVkUHJv cGVydGllcycgZG9lc24ndCBkbyBhbnl0aGluZyBiZWNhdXNlCj4gdGhlIHVuZGVybHlpbmcganNv bi1zY2hlbWEgdG9vbCBkb2Vzbid0IHlldCBzdXBwb3J0IGl0LgoKVW5kZXJzdGFuZCwgdGhhbmtz IGZvciB0aGUgZGV0YWlscy4KCj4+Pj4+PiArICB0aSxzY2ktcm0tcmFuZ2UtYmNoYW46Cj4+Pj4+ PiArICAgIGRlc2NyaXB0aW9uOiB8Cj4+Pj4+PiArICAgICAgQXJyYXkgb2YgQkNETUEgYmxvY2st Y29weSBjaGFubmVsIHJlc291cmNlIHN1YnR5cGVzIGZvciByZXNvdXJjZQo+Pj4+Pj4gKyAgICAg IGFsbG9jYXRpb24gZm9yIHRoaXMgaG9zdAo+Pj4+Pj4gKyAgICBhbGxPZjoKPj4+Pj4+ICsgICAg ICAtICRyZWY6IC9zY2hlbWFzL3R5cGVzLnlhbWwjL2RlZmluaXRpb25zL3VpbnQzMi1hcnJheQo+ Pj4+Pj4gKyAgICBtaW5JdGVtczogMQo+Pj4+Pj4gKyAgICAjIFNob3VsZCBiZSBlbm91Z2gKPj4+ Pj4+ICsgICAgbWF4SXRlbXM6IDI1NQo+Pj4+Pgo+Pj4+PiBBcmUgdGhlcmUgY29uc3RyYWludHMg Zm9yIHRoZSBpbmRpdmlkdWFsIGVsZW1lbnRzPwo+Pj4+Cj4+Pj4gSW4gcHJhY3RpY2UgdGhlIHN1 YnR5cGUgSUQgaXMgNmJpdHMgbnVtYmVyLgo+Pj4+IFNob3VsZCBJIGFkZCBsaW1pdHMgdG8gaW5k aXZpZHVhbCBlbGVtZW50cz8KPj4+Cj4+PiBZZXM6Cj4+Pgo+Pj4gaXRlbXM6Cj4+PiAgIG1heGlt dW06IDB4M2YKPj4KPj4gUmlnaHQsIEkgY2FuIGp1c3Qgb21pdCB0aGUgbWluaW11bS4KPj4KPj4g SXQgd291bGQgYmUgbmljZSBpZiBJIGNvdWxkIHVzZSBkZWZpbml0aW9ucyBmb3IgdGhlc2UgcmFu Z2VzIHRvIGF2b2lkCj4+IGR1cGxpY2F0ZWQgbGluZXMgYnkgYWRkaW5nCj4+Cj4+IGRlZmluaXRp b25zOgo+PiAgIHRpLHJtLXJhbmdlOgo+PiAgICAgJHJlZjogL3NjaGVtYXMvdHlwZXMueWFtbCMv ZGVmaW5pdGlvbnMvdWludDMyLWFycmF5Cj4+ICAgICBtaW5JdGVtczogMQo+PiAgICAgIyBTaG91 bGQgYmUgZW5vdWdoCj4+ICAgICBtYXhJdGVtczogMjU1Cj4+ICAgICBpdGVtczoKPj4gICAgICAg bWluaW11bTogMAo+PiAgICAgICBtYXhpbXVtOiAweDNmCj4+Cj4+IHRvIHNjaGVtYXMvYXJtL2tl eXN0b25lL3RpLGszLXNjaS1jb21tb24ueWFtbAo+Pgo+PiBhbmQgb25seSBoYXZlOgo+Pgo+PiAg IHRpLHNjaS1ybS1yYW5nZS1iY2hhbjoKPj4gICAgICRyZWY6Cj4+IC9zY2hlbWFzL2FybS9rZXlz dG9uZS90aSxrMy1zY2ktY29tbW9uLnlhbWwjL2RlZmluaXRpb25zL3RpLHJtLXJhbmdlCj4+ICAg ICBkZXNjcmlwdGlvbjogfAo+PiAgICAgICBBcnJheSBvZiBCQ0RNQSBibG9jay1jb3B5IGNoYW5u ZWwgcmVzb3VyY2Ugc3VidHlwZXMgZm9yIHJlc291cmNlCj4+ICAgICAgIGFsbG9jYXRpb24gZm9y IHRoaXMgaG9zdAo+IAo+IEp1c3QgZG86Cj4gCj4gcGF0dGVyblByb3BlcnRpZXM6Cj4gICAiXnRp LHNjaS1ybS1yYW5nZS1bYnRyXWNoYW4kIjoKPiAgICAgLi4uCj4gCj4gSWYgdGhpcyBpcyBjb21t b24gZm9yIG90aGVyIGJpbmRpbmdzLCB0aGVuIHlvdSBjYW4gcHV0IGl0IGluCj4gdGksazMtc2Np LWNvbW1vbi55YW1sLgoKU2ltaWxhciBwcm9wZXJ0eSAoZm9yIFJNIHJhbmdlcykgYWxzbyB1c2Vk IGJ5IHRoZSByaW5nYWNjLCBJIGhhdmUgdHJpZWQKdG8gc3RhbmRhcmRpemUgdXMgdG8gdXNlOiB0 aSxzY2ktcm0tcmFuZ2UtKiBpbiBEVC4KCkkgd2lsbCBsZWF2ZSBpdCBhcyBpdCBpcyBub3cgZm9y IHRoaXMgc2VyaWVzIGFuZCB3ZSBjYW4gc2ltcGxpZnkgaXQKbGF0ZXIgd2l0aCBhIHdpZGVyIHNl cmllcyB0b3VjaGluZyBhbGwgaW52b2x2ZWQgeWFtbCBmaWxlcy4KCj4+IGJ1dCBpdCByZXN1bHRz Ogo+PiBEb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvZG1hL3RpL2szLWJjZG1hLnlh bWw6Cj4+IHByb3BlcnRpZXM6dGksc2NpLXJtLXJhbmdlLWJjaGFuOiB7JyRyZWYnOgo+PiAnL3Nj aGVtYXMvYXJtL2tleXN0b25lL3RpLGszLXNjaS1jb21tb24ueWFtbCMvZGVmaW5pdGlvbnMvdGks cm0tcmFuZ2UnLAo+PiAnZGVzY3JpcHRpb24nOiAnQXJyYXkgb2YgQkNETUEgYmxvY2stY29weSBj aGFubmVsIHJlc291cmNlIHN1YnR5cGVzIGZvcgo+PiByZXNvdXJjZVxuYWxsb2NhdGlvbiBmb3Ig dGhpcyBob3N0XG4nfSBpcyBub3QgdmFsaWQgdW5kZXIgYW55IG9mIHRoZQo+PiBnaXZlbiBzY2hl bWFzIChQb3NzaWJsZSBjYXVzZXMgb2YgdGhlIGZhaWx1cmUpOgo+PiAgICAgICAgIERvY3VtZW50 YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9kbWEvdGkvazMtYmNkbWEueWFtbDoKPj4gcHJvcGVy dGllczp0aSxzY2ktcm0tcmFuZ2UtYmNoYW46ICdub3QnIGlzIGEgcmVxdWlyZWQgcHJvcGVydHkK Pj4gICAgICAgICBEb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvZG1hL3RpL2szLWJj ZG1hLnlhbWw6Cj4+IHByb3BlcnRpZXM6dGksc2NpLXJtLXJhbmdlLWJjaGFuOiRyZWY6Cj4+ICcv c2NoZW1hcy9hcm0va2V5c3RvbmUvdGksazMtc2NpLWNvbW1vbi55YW1sIy9kZWZpbml0aW9ucy90 aSxybS1yYW5nZScKPj4gZG9lcyBub3QgbWF0Y2ggJ3R5cGVzLnlhbWwjWy9dezAsMX1kZWZpbml0 aW9ucy8uKicKPiAKPiBXZSBwcm9iYWJseSBzaG91bGQgYWxsb3cgZm9yIHVzaW5nICdkZWZpbml0 aW9ucycgd2hpY2ggaXMgcHJldHR5Cj4gY29tbW9uIGpzb24tc2NoZW1hIHByYWN0aWNlLCBidXQg ZG9uJ3QgcHJpbWFyaWx5IGluIG9yZGVyIHRvIGtlZXAKPiBmb2xrcyB3aXRoaW4gdGhlIGxpbmVz LiBUaGluZ3MgYXJlIG9wdGltaXplZCBmb3Igbm90IGtub3dpbmcKPiBqc29uLXNjaGVtYSBhbmQg dHJ5aW5nIHRvIG1pbmltaXplIGVycm9ycyBJIGhhdmUgdG8gY2hlY2sgZm9yLgoKSSBhZ3JlZSBv biB0aGVzZS4KCj4gU3VwcG9ydGluZyBpdCB3b3VsZCBjb21wbGljYXRlIHRoZSBtZXRhLXNjaGVt YSBhbmQgdGhlIHRvb2xzJyBmaXh1cAo+IGNvZGUuIFNvIGZhciwgdGhlIG5lZWQgZm9yIGl0IGhh cyBiZWVuIHByZXR0eSBpbmZyZXF1ZW50LgoKU3VyZSwgZm9yIHRoZSBjb3VwbGUgb2YgZHVwbGlj YXRpb24gSSBoYXZlIGl0IGlzIG1hbmFnZWFibGUgd2l0aG91dApzYWNyaWZpY2luZyByZWFkYWJp bGl0eS4KCmJ0dzogSSBoYXZlIG1hZGUgdGhlIHNpbWlsYXIgY2hhbmdlcyB0byB0aGUgazMtcGt0 ZG1hIHNjaGVtYS4KCj4gCj4gUm9iCj4gCgotIFDDqXRlcgoKVGV4YXMgSW5zdHJ1bWVudHMgRmlu bGFuZCBPeSwgUG9ya2thbGFua2F0dSAyMiwgMDAxODAgSGVsc2lua2kuClktdHVubnVzL0J1c2lu ZXNzIElEOiAwNjE1NTIxLTQuIEtvdGlwYWlra2EvRG9taWNpbGU6IEhlbHNpbmtpCgpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51eC1hcm0ta2VybmVs IG1haWxpbmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDov L2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1hcm0ta2VybmVsCg==