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 406BBC61DA4 for ; Mon, 13 Mar 2023 08:25:18 +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-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References: Message-ID:Subject:Cc: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=K4lYiuy44kgMW5koN44LvePjxpWSHcjUqCrssh9CM/c=; b=GAJyS3fQ4FLSiw o3Q0NNWutzM5T3bncINNh0zn3RF4isCyITq7865ZIayH7dm1KUJhmcixmDymmr1fydMYYqOQIWzsy uA8yzxjVlw715pb2ojP9F1at0zLBBj4DT4Fb7gLDfMcTx9hHeVWv6MZ82jd4H/HILnTEWTOEJiSnN h6KGCP8afhzUCLf6+yvz+2pwRkg5ExZokWcqIlZf6l1bGHlgz9kJQJJqJXKDW7tVb0ZAjwrgWAOiw OezGs698ddIhCBmmRVBlMXzHyiPO/CTijd18NK2Pwo83HE2TAcAaPM6HTgcsunatFbw5Sj3X74ySw XInGjf0kOsRIXv4jeKew==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1pbdTS-004l9z-E0; Mon, 13 Mar 2023 08:24:06 +0000 Received: from ams.source.kernel.org ([145.40.68.75]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1pbdTL-004l8w-Jl for linux-arm-kernel@lists.infradead.org; Mon, 13 Mar 2023 08:24:03 +0000 Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id DA01DB80E3A; Mon, 13 Mar 2023 08:23:57 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3B50BC433EF; Mon, 13 Mar 2023 08:23:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1678695836; bh=qoyyqFTBmio9iuREDsppO/pSpASeAglT5N8qHENTGJM=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=Pi6wXdbqwrhYwoWuP7JTqaxtSfbchBjSK50zLM4iE8yGcdSyJCe7IRHfsN44vKp6u nnBCjYY2erDWSlUN2/ANL77ORA//JVsgp83ylx19Y3dBtJ1IU2x+a7m9ONoMm2AtaT WUJCQsKh+kBJKMsXJco7iWlSm6/c1kBXcfqFFqlStld0pbpTyldYBippzGNz0Jd5fz b+JyhsTf//uS9/dVl0scnXyRQFQ4pTWTGQHKV7bsEBTRjYqOnFJAo/ed8UqmYpsi/X NLRKFYGxtMrG8p/Ea/QJK8WAppgrvYEwJSMgiKTyo1zdYVB1uXWuFgYjAz/B2qmK0A rSfCvctfIErTg== Date: Mon, 13 Mar 2023 16:23:48 +0800 From: Shawn Guo To: Michal =?utf-8?B?Vm9rw6HEjQ==?= Cc: Rob Herring , Krzysztof Kozlowski , Arnd Bergmann , Olof Johansson , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , NXP Linux Team , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH 5/6] ARM: dts: =?iso-8859-1?Q?i?= =?iso-8859-1?Q?mx6dl-yapp43=3A_Add_support_for_new_HW_revision_of_the_IOT?= =?iso-8859-1?Q?A=A0board?= Message-ID: <20230313082348.GM143566@dragon> References: <20230210154855.3086900-1-michal.vokac@ysoft.com> <20230210154855.3086900-6-michal.vokac@ysoft.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230210154855.3086900-6-michal.vokac@ysoft.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230313_012400_067972_229A4ECA X-CRM114-Status: GOOD ( 24.06 ) 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 T24gRnJpLCBGZWIgMTAsIDIwMjMgYXQgMDQ6NDg6NTRQTSArMDEwMCwgTWljaGFsIFZva8OhxI0g d3JvdGU6Cj4gVGhlIFBDQiB1c2VkIGZvciBhbGwgdGhlIGN1cnJlbnQgYm9hcmRzIChVcnNhLCBE cmFjbywgSHlkcmEsIE9yaW9uLCBDcnV4KQo+IHdhcyBzbGlnaHRseSByZWRlc2lnbmVkIGFuZCBk ZWxpdmVycyBzb21lIG5ldyBmZWF0dXJlcyB3aGlsZSBzb21lIHVudXNlZAo+IGNvbXBvbmVudHMg d2VyZSByZW1vdmVkLgo+IAo+IC0gRXh0ZXJuYWwgUlRDIGNoaXAgd2l0aCBzdXBlcmNhcCBhZGRl ZC4KPiAtIFNlY3VyZSBlbGVtZW50IGFkZGVkLgo+IC0gTENEIGRpc3BsYXkgcG93ZXIgc3VwcGx5 IGVuYWJsZS9kaXNhYmxlIHNpZ25hbCBhZGRlZC4KPiAtIFRvdWNoIGtleWJvYXJkIHJlc2V0IGFu ZCBpbnRlcnJ1cHQgc2lnbmFscyBhZGRlZC4KPiAtIEZhY3RvcnkgcmVzZXQgR1BJTyBidXR0b24g YWRkZWQuCj4gLSBBdWRpbyBjb2RlYyBMTTQ5MzUwIChFb0wpIHJlbW92ZWQgYW5kIHJlcGxhY2Vk IGJ5IFBXTcKgYXVkaW8gb3V0cHV0Lgo+IC0gUUNBODMzNCBzd2l0Y2ggd2FzIHJlcGxhY2VkIGJ5 IE1hcnZlbGwgODhFNjE0MS4KPiAtIFBDSWUgY29tcGxldGVseSByZW1vdmVkLgo+IC0gdVNEIGNh cmQgcmVtb3ZlZCBhbmQgcmVwbGFjZWQgYnkgYm9hcmQtdG8tYm9hcmQgZXhwYW5zaW9uIGNvbm5l Y3Rvci4KPiAKPiBUaGVyZSBhcmUgZm91ciBjb25maWd1cmF0aW9uIHZhcmlhbnRzIG9mIHRoZSBu ZXcgYm9hcmQ6Cj4gCj4gMS4gUGVnYXN1cwo+IFRoZSBib2FyZCBjb25maWd1cmF0aW9uIGlzIGJh c2VkIG9uIE9yaW9uIHdpdGggdGhlIGZvbGxvd2luZyBtYWpvciBjaGFuZ2VzOgo+IAo+IC0gUXVh ZCBjb3JlIFNvQwo+IC0gNEdCIG9mIFJBTQo+IC0gUlRDIHdpdGggc3VwZXJjYXAgYWRkZWQKPiAt IFNlY3VyZSBlbGVtZW50IGFkZGVkCj4gCj4gMi4gUGVnYXN1cysKPiBUaGlzIGlzIHRoZSB2ZXJ5 IHNhbWUgYm9hcmQgYXMgUGVnYXN1cyBidXQgdXNlcyB0aGUgaS5NWDZRdWFkUGx1cyBTb0MuCj4g Cj4gMy4gTHlueAo+IFRoZSBib2FyZCBjb25maWd1cmF0aW9uIGlzIGJhc2VkIG9uIERyYWNvIHdp dGggdGhlIGZvbGxvd2luZyBtYWpvciBjaGFuZ2VzOgo+IAo+IC0gRHVhbExpdGUgU29DCj4gLSAx R0Igb2YgUkFNCj4gLSBSVEMgd2l0aCBzdXBlcmNhcCBhZGRlZAo+IC0gU2VjdXJlIGVsZW1lbnQg YWRkZWQKPiAKPiA0LiBQaG9lbml4Cj4gVGhlIGJvYXJkIGNvbmZpZ3VyYXRpb24gaXMgYmFzZWQg b24gVXJzYSB3aXRoIHRoZSBmb2xsb3dpbmcgbWFqb3IgY2hhbmdlczoKPiAKPiAtIER1YWxMaXRl IFNvYwo+IC0gMUdCIG9mIFJBTQo+IC0gUlRDIHdpdGggc3VwZXJjYXAgYWRkZWQKPiAtIFNlY3Vy ZSBlbGVtZW50IGFkZGVkCj4gLSBMQ0QgZGlzcGxheSBzdXBwb3J0IHJlbW92ZWQKPiAtIFVBUlQy IHJlbW92ZWQKPiAtIEZhY3RvcnkgcmVzZXQgR1BJTyBidXR0b24gYWRkZWQKPiAKPiBTaWduZWQt b2ZmLWJ5OiBNaWNoYWwgVm9rw6HEjSA8bWljaGFsLnZva2FjQHlzb2Z0LmNvbT4KPiAtLS0KPiAg YXJjaC9hcm0vYm9vdC9kdHMvTWFrZWZpbGUgICAgICAgICAgICAgICAgICAgIHwgICA0ICsKPiAg YXJjaC9hcm0vYm9vdC9kdHMvaW14NmRsLXlhcHA0LWx5bnguZHRzICAgICAgIHwgIDU4ICsrCj4g IGFyY2gvYXJtL2Jvb3QvZHRzL2lteDZkbC15YXBwNC1waG9lbml4LmR0cyAgICB8ICA0MiArKwo+ ICBhcmNoL2FybS9ib290L2R0cy9pbXg2ZGwteWFwcDQzLWNvbW1vbi5kdHNpICAgfCA2MTkgKysr KysrKysrKysrKysrKysrCj4gIGFyY2gvYXJtL2Jvb3QvZHRzL2lteDZxLXlhcHA0LXBlZ2FzdXMu ZHRzICAgICB8ICA1OCArKwo+ICAuLi4vYm9vdC9kdHMvaW14NnFwLXlhcHA0LXBlZ2FzdXMtcGx1 cy5kdHMgICAgfCAgNTggKysKPiAgNiBmaWxlcyBjaGFuZ2VkLCA4MzkgaW5zZXJ0aW9ucygrKQo+ ICBjcmVhdGUgbW9kZSAxMDA2NDQgYXJjaC9hcm0vYm9vdC9kdHMvaW14NmRsLXlhcHA0LWx5bngu ZHRzCj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBhcmNoL2FybS9ib290L2R0cy9pbXg2ZGwteWFwcDQt cGhvZW5peC5kdHMKPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGFyY2gvYXJtL2Jvb3QvZHRzL2lteDZk bC15YXBwNDMtY29tbW9uLmR0c2kKPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGFyY2gvYXJtL2Jvb3Qv ZHRzL2lteDZxLXlhcHA0LXBlZ2FzdXMuZHRzCj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBhcmNoL2Fy bS9ib290L2R0cy9pbXg2cXAteWFwcDQtcGVnYXN1cy1wbHVzLmR0cwo+IAo+IGRpZmYgLS1naXQg YS9hcmNoL2FybS9ib290L2R0cy9NYWtlZmlsZSBiL2FyY2gvYXJtL2Jvb3QvZHRzL01ha2VmaWxl Cj4gaW5kZXggZDA4YTNjNDUwY2U3Li45YTYwZDNmYzA0ODMgMTAwNjQ0Cj4gLS0tIGEvYXJjaC9h cm0vYm9vdC9kdHMvTWFrZWZpbGUKPiArKysgYi9hcmNoL2FybS9ib290L2R0cy9NYWtlZmlsZQo+ IEBAIC01NTgsNyArNTU4LDkgQEAgZHRiLSQoQ09ORklHX1NPQ19JTVg2USkgKz0gXAo+ICAJaW14 NmRsLXdhbmRib2FyZC1yZXZkMS5kdGIgXAo+ICAJaW14NmRsLXlhcHA0LWRyYWNvLmR0YiBcCj4g IAlpbXg2ZGwteWFwcDQtaHlkcmEuZHRiIFwKPiArCWlteDZkbC15YXBwNC1seW54LmR0YiBcCj4g IAlpbXg2ZGwteWFwcDQtb3Jpb24uZHRiIFwKPiArCWlteDZkbC15YXBwNC1waG9lbml4LmR0YiBc Cj4gIAlpbXg2ZGwteWFwcDQtdXJzYS5kdGIgXAo+ICAJaW14NnEtYXBhbGlzLWV2YWwuZHRiIFwK PiAgCWlteDZxLWFwYWxpcy1peG9yYS5kdGIgXAo+IEBAIC02MjUsNiArNjI3LDcgQEAgZHRiLSQo Q09ORklHX1NPQ19JTVg2USkgKz0gXAo+ICAJaW14NnEtbml0cm9nZW42X21heC5kdGIgXAo+ICAJ aW14NnEtbml0cm9nZW42X3NvbTIuZHRiIFwKPiAgCWlteDZxLW5vdmVuYS5kdGIgXAo+ICsJaW14 NnEteWFwcDQtcGVnYXN1cy5kdGIgXAo+ICAJaW14NnEtcGh5dGVjLW1pcmEtcmRrLWVtbWMuZHRi IFwKCkJyZWFrIHRoZSBhbHBoYWJldGljIG9yZGVyPwoKPiAgCWlteDZxLXBoeXRlYy1taXJhLXJk ay1uYW5kLmR0YiBcCj4gIAlpbXg2cS1waHl0ZWMtcGJhYjAxLmR0YiBcCj4gQEAgLTY4MCw2ICs2 ODMsNyBAQCBkdGItJChDT05GSUdfU09DX0lNWDZRKSArPSBcCj4gIAlpbXg2cXAtdmljdXRwLmR0 YiBcCj4gIAlpbXg2cXAtd2FuZGJvYXJkLXJldmQxLmR0YiBcCj4gIAlpbXg2cXAteWFwcDQtY3J1 eC1wbHVzLmR0YiBcCj4gKwlpbXg2cXAteWFwcDQtcGVnYXN1cy1wbHVzLmR0YiBcCj4gIAlpbXg2 cXAtemlpLXJkdTIuZHRiIFwKPiAgCWlteDZzLWRoY29tLWRyYzAyLmR0Ygo+ICBkdGItJChDT05G SUdfU09DX0lNWDZTTCkgKz0gXAo+IGRpZmYgLS1naXQgYS9hcmNoL2FybS9ib290L2R0cy9pbXg2 ZGwteWFwcDQtbHlueC5kdHMgYi9hcmNoL2FybS9ib290L2R0cy9pbXg2ZGwteWFwcDQtbHlueC5k dHMKPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAwMDAwMC4uNWMyY2Q1MTc1 ODliCj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBiL2FyY2gvYXJtL2Jvb3QvZHRzL2lteDZkbC15YXBw NC1seW54LmR0cwo+IEBAIC0wLDAgKzEsNTggQEAKPiArLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZp ZXI6IEdQTC0yLjAKPiArLy8KPiArLy8gQ29weXJpZ2h0IChDKSAyMDIxIFkgU29mdCBDb3Jwb3Jh dGlvbiwgYS5zLgo+ICsKPiArL2R0cy12MS87Cj4gKwo+ICsjaW5jbHVkZSAiaW14NmRsLmR0c2ki Cj4gKyNpbmNsdWRlICJpbXg2ZGwteWFwcDQzLWNvbW1vbi5kdHNpIgo+ICsKPiArLyB7Cj4gKwlt b2RlbCA9ICJZIFNvZnQgSU9UQSBMeW54IGkuTVg2RHVhbExpdGUgYm9hcmQiOwo+ICsJY29tcGF0 aWJsZSA9ICJ5c29mdCxpbXg2ZGwteWFwcDQtbHlueCIsICJmc2wsaW14NmRsIjsKPiArCj4gKwlt ZW1vcnlAMTAwMDAwMDAgewo+ICsJCWRldmljZV90eXBlID0gIm1lbW9yeSI7Cj4gKwkJcmVnID0g PDB4MTAwMDAwMDAgMHg0MDAwMDAwMD47Cj4gKwl9Owo+ICt9Owo+ICsKPiArJmJhY2tsaWdodCB7 Cj4gKwlzdGF0dXMgPSAib2theSI7Cj4gK307Cj4gKwo+ICsmbGNkX2Rpc3BsYXkgewo+ICsJc3Rh dHVzID0gIm9rYXkiOwo+ICt9Owo+ICsKPiArJmxlZHMgewo+ICsJc3RhdHVzID0gIm9rYXkiOwo+ ICt9Owo+ICsKPiArJnBhbmVsIHsKPiArCXN0YXR1cyA9ICJva2F5IjsKPiArfTsKPiArCj4gKyZw d20xIHsKPiArCXN0YXR1cyA9ICJva2F5IjsKPiArfTsKPiArCj4gKyZyZWdfdXNiX2gxX3ZidXMg ewo+ICsJc3RhdHVzID0gIm9rYXkiOwo+ICt9Owo+ICsKPiArJnRvdWNoc2NyZWVuIHsKPiArCXN0 YXR1cyA9ICJva2F5IjsKPiArfTsKPiArCj4gKyZ1YXJ0MiB7Cj4gKwlzdGF0dXMgPSAib2theSI7 Cj4gK307Cj4gKwo+ICsmdXNiaDEgewo+ICsJc3RhdHVzID0gIm9rYXkiOwo+ICt9Owo+ICsKPiAr JnVzYnBoeTIgewo+ICsJc3RhdHVzID0gIm9rYXkiOwo+ICt9Owo+IGRpZmYgLS1naXQgYS9hcmNo L2FybS9ib290L2R0cy9pbXg2ZGwteWFwcDQtcGhvZW5peC5kdHMgYi9hcmNoL2FybS9ib290L2R0 cy9pbXg2ZGwteWFwcDQtcGhvZW5peC5kdHMKPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4 IDAwMDAwMDAwMDAwMC4uZTAyOTJmMTFkMDNlCj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBiL2FyY2gv YXJtL2Jvb3QvZHRzL2lteDZkbC15YXBwNC1waG9lbml4LmR0cwo+IEBAIC0wLDAgKzEsNDIgQEAK PiArLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQTC0yLjAKPiArLy8KPiArLy8gQ29weXJp Z2h0IChDKSAyMDIxIFkgU29mdCBDb3Jwb3JhdGlvbiwgYS5zLgo+ICsKPiArL2R0cy12MS87Cj4g Kwo+ICsjaW5jbHVkZSAiaW14NmRsLmR0c2kiCj4gKyNpbmNsdWRlICJpbXg2ZGwteWFwcDQzLWNv bW1vbi5kdHNpIgo+ICsKPiArLyB7Cj4gKwltb2RlbCA9ICJZIFNvZnQgSU9UQSBQaG9lbml4IGku TVg2RHVhbExpdGUgYm9hcmQiOwo+ICsJY29tcGF0aWJsZSA9ICJ5c29mdCxpbXg2ZGwteWFwcDQt cGhvZW5peCIsICJmc2wsaW14NmRsIjsKPiArCj4gKwltZW1vcnlAMTAwMDAwMDAgewo+ICsJCWRl dmljZV90eXBlID0gIm1lbW9yeSI7Cj4gKwkJcmVnID0gPDB4MTAwMDAwMDAgMHg0MDAwMDAwMD47 Cj4gKwl9Owo+ICt9Owo+ICsKPiArJmFsaWFzZXMgewo+ICsJL2RlbGV0ZS1wcm9wZXJ0eS8gZXRo ZXJuZXQxOwo+ICt9Owo+ICsKPiArJmdwaW9fa2V5cyB7Cj4gKwlzdGF0dXMgPSAib2theSI7Cj4g K307Cj4gKwo+ICsmcmVnX3VzYl9oMV92YnVzIHsKPiArCXN0YXR1cyA9ICJva2F5IjsKPiArfTsK PiArCj4gKyZzd2l0Y2hfcG9ydHMgewo+ICsJL2RlbGV0ZS1ub2RlLyBwb3J0QDI7Cj4gK307Cj4g Kwo+ICsmdXNiaDEgewo+ICsJc3RhdHVzID0gIm9rYXkiOwo+ICt9Owo+ICsKPiArJnVzYnBoeTIg ewo+ICsJc3RhdHVzID0gIm9rYXkiOwo+ICt9Owo+IGRpZmYgLS1naXQgYS9hcmNoL2FybS9ib290 L2R0cy9pbXg2ZGwteWFwcDQzLWNvbW1vbi5kdHNpIGIvYXJjaC9hcm0vYm9vdC9kdHMvaW14NmRs LXlhcHA0My1jb21tb24uZHRzaQo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAw MDAwMDAwLi4zMGYzNTQxOTVlMDEKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIvYXJjaC9hcm0vYm9v dC9kdHMvaW14NmRsLXlhcHA0My1jb21tb24uZHRzaQo+IEBAIC0wLDAgKzEsNjE5IEBACj4gKy8v IFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBHUEwtMi4wCj4gKy8vCj4gKy8vIENvcHlyaWdodCAo QykgMjAyMSBZIFNvZnQgQ29ycG9yYXRpb24sIGEucy4KPiArCj4gKyNpbmNsdWRlIDxkdC1iaW5k aW5ncy9ncGlvL2dwaW8uaD4KPiArI2luY2x1ZGUgPGR0LWJpbmRpbmdzL2ludGVycnVwdC1jb250 cm9sbGVyL2lycS5oPgo+ICsjaW5jbHVkZSA8ZHQtYmluZGluZ3MvaW5wdXQvaW5wdXQuaD4KPiAr I2luY2x1ZGUgPGR0LWJpbmRpbmdzL2xlZHMvY29tbW9uLmg+Cj4gKyNpbmNsdWRlIDxkdC1iaW5k aW5ncy9wd20vcHdtLmg+Cj4gKwo+ICsvIHsKPiArCWFsaWFzZXM6IGFsaWFzZXMgewo+ICsJCWV0 aGVybmV0MSA9ICZldGgxOwo+ICsJCWV0aGVybmV0MiA9ICZldGgyOwo+ICsJCW1tYzAgPSAmdXNk aGMzOwo+ICsJCW1tYzEgPSAmdXNkaGM0Owo+ICsJfTsKPiArCj4gKwliYWNrbGlnaHQ6IGJhY2ts aWdodCB7Cj4gKwkJY29tcGF0aWJsZSA9ICJwd20tYmFja2xpZ2h0IjsKPiArCQlwd21zID0gPCZw d20xIDAgNTAwMDAwIFBXTV9QT0xBUklUWV9JTlZFUlRFRD47Cj4gKwkJYnJpZ2h0bmVzcy1sZXZl bHMgPSA8MCAzMiA2NCAxMjggMjU1PjsKPiArCQlkZWZhdWx0LWJyaWdodG5lc3MtbGV2ZWwgPSA8 MzI+Owo+ICsJCW51bS1pbnRlcnBvbGF0ZWQtc3RlcHMgPSA8OD47Cj4gKwkJcG93ZXItc3VwcGx5 ID0gPCZzdzJfcmVnPjsKPiArCQlzdGF0dXMgPSAiZGlzYWJsZWQiOwo+ICsJfTsKPiArCj4gKwln cGlvX2tleXM6IGdwaW8ta2V5cyB7Cj4gKwkJY29tcGF0aWJsZSA9ICJncGlvLWtleXMiOwo+ICsJ CXBpbmN0cmwtbmFtZXMgPSAiZGVmYXVsdCI7Cj4gKwkJcGluY3RybC0wID0gPCZwaW5jdHJsX2dw aW9fa2V5cz47Cj4gKwkJc3RhdHVzID0gImRpc2FibGVkIjsKPiArCj4gKwkJYnV0dG9uIHsKPiAr CQkJbGFiZWwgPSAiRmFjdG9yeSBSRVNFVCI7Cj4gKwkJCWxpbnV4LGNvZGUgPSA8QlROXzA+Owo+ ICsJCQlncGlvcyA9IDwmZ3BpbzEgMCBHUElPX0FDVElWRV9MT1c+Owo+ICsJCX07Cj4gKwl9Owo+ ICsKPiArCWxjZF9kaXNwbGF5OiBkaXNwbGF5IHsKPiArCQljb21wYXRpYmxlID0gImZzbCxpbXgt cGFyYWxsZWwtZGlzcGxheSI7Cj4gKwkJI2FkZHJlc3MtY2VsbHMgPSA8MT47Cj4gKwkJI3NpemUt Y2VsbHMgPSA8MD47Cj4gKwkJaW50ZXJmYWNlLXBpeC1mbXQgPSAicmdiMjQiOwo+ICsJCXBpbmN0 cmwtbmFtZXMgPSAiZGVmYXVsdCI7Cj4gKwkJcGluY3RybC0wID0gPCZwaW5jdHJsX2lwdTE+Owo+ ICsJCXN0YXR1cyA9ICJkaXNhYmxlZCI7Cj4gKwo+ICsJCXBvcnRAMCB7Cj4gKwkJCXJlZyA9IDww PjsKPiArCj4gKwkJCWxjZF9kaXNwbGF5X2luOiBlbmRwb2ludCB7Cj4gKwkJCQlyZW1vdGUtZW5k cG9pbnQgPSA8JmlwdTFfZGkwX2Rpc3AwPjsKPiArCQkJfTsKPiArCQl9Owo+ICsKPiArCQlwb3J0 QDEgewo+ICsJCQlyZWcgPSA8MT47Cj4gKwo+ICsJCQlsY2RfZGlzcGxheV9vdXQ6IGVuZHBvaW50 IHsKPiArCQkJCXJlbW90ZS1lbmRwb2ludCA9IDwmbGNkX3BhbmVsX2luPjsKPiArCQkJfTsKPiAr CQl9Owo+ICsJfTsKPiArCj4gKwlwYW5lbDogcGFuZWwgewo+ICsJCWNvbXBhdGlibGUgPSAiZGF0 YWltYWdlLHNjZjA3MDBjNDhnZ3UxOCI7Cj4gKwkJcG93ZXItc3VwcGx5ID0gPCZzdzJfcmVnPjsK PiArCQliYWNrbGlnaHQgPSA8JmJhY2tsaWdodD47Cj4gKwkJZW5hYmxlLWdwaW9zID0gPCZncGlv MyA3IEdQSU9fQUNUSVZFX0hJR0g+Owo+ICsJCXN0YXR1cyA9ICJkaXNhYmxlZCI7Cj4gKwo+ICsJ CXBvcnQgewo+ICsJCQlsY2RfcGFuZWxfaW46IGVuZHBvaW50IHsKPiArCQkJCXJlbW90ZS1lbmRw b2ludCA9IDwmbGNkX2Rpc3BsYXlfb3V0PjsKPiArCQkJfTsKPiArCQl9Owo+ICsJfTsKPiArCj4g KwlyZWdfdXNiX2gxX3ZidXM6IHJlZ3VsYXRvci11c2ItaDEtdmJ1cyB7Cj4gKwkJY29tcGF0aWJs ZSA9ICJyZWd1bGF0b3ItZml4ZWQiOwo+ICsJCXBpbmN0cmwtbmFtZXMgPSAiZGVmYXVsdCI7Cj4g KwkJcGluY3RybC0wID0gPCZwaW5jdHJsX3VzYmgxX3ZidXM+Owo+ICsJCXJlZ3VsYXRvci1uYW1l ID0gInVzYl9oMV92YnVzIjsKPiArCQlyZWd1bGF0b3ItbWluLW1pY3Jvdm9sdCA9IDw1MDAwMDAw PjsKPiArCQlyZWd1bGF0b3ItbWF4LW1pY3Jvdm9sdCA9IDw1MDAwMDAwPjsKPiArCQlncGlvID0g PCZncGlvMSAyOSBHUElPX0FDVElWRV9ISUdIPjsKPiArCQllbmFibGUtYWN0aXZlLWhpZ2g7Cj4g KwkJc3RhdHVzID0gImRpc2FibGVkIjsKPiArCX07Cj4gKwo+ICsJcmVnX3VzYl9vdGdfdmJ1czog cmVndWxhdG9yLXVzYi1vdGctdmJ1cyB7Cj4gKwkJY29tcGF0aWJsZSA9ICJyZWd1bGF0b3ItZml4 ZWQiOwo+ICsJCXBpbmN0cmwtbmFtZXMgPSAiZGVmYXVsdCI7Cj4gKwkJcGluY3RybC0wID0gPCZw aW5jdHJsX3VzYm90Z192YnVzPjsKPiArCQlyZWd1bGF0b3ItbmFtZSA9ICJ1c2Jfb3RnX3ZidXMi Owo+ICsJCXJlZ3VsYXRvci1taW4tbWljcm92b2x0ID0gPDUwMDAwMDA+Owo+ICsJCXJlZ3VsYXRv ci1tYXgtbWljcm92b2x0ID0gPDUwMDAwMDA+Owo+ICsJCWdwaW8gPSA8JmdwaW8zIDIyIEdQSU9f QUNUSVZFX0hJR0g+Owo+ICsJCWVuYWJsZS1hY3RpdmUtaGlnaDsKPiArCQlzdGF0dXMgPSAib2th eSI7Cj4gKwl9Owo+ICt9Owo+ICsKPiArJmZlYyB7Cj4gKwlwaW5jdHJsLW5hbWVzID0gImRlZmF1 bHQiOwo+ICsJcGluY3RybC0wID0gPCZwaW5jdHJsX2VuZXQ+Owo+ICsJcGh5LW1vZGUgPSAicmdt aWktaWQiOwo+ICsJcGh5LXJlc2V0LWdwaW9zID0gPCZncGlvMSAyNSBHUElPX0FDVElWRV9MT1c+ Owo+ICsJcGh5LXJlc2V0LWR1cmF0aW9uID0gPDIwPjsKCkRlcHJlY2F0ZWQuICBDaGVjayBEb2N1 bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2ZzbCxmZWMueWFtbC4KCj4gKwlwaHkt c3VwcGx5ID0gPCZzdzJfcmVnPjsKPiArCXN0YXR1cyA9ICJva2F5IjsKPiArCj4gKwlmaXhlZC1s aW5rIHsKPiArCQlzcGVlZCA9IDwxMDAwPjsKPiArCQlmdWxsLWR1cGxleDsKPiArCX07Cj4gKwo+ ICsJbWRpbyB7Cj4gKwkJI2FkZHJlc3MtY2VsbHMgPSA8MT47Cj4gKwkJI3NpemUtY2VsbHMgPSA8 MD47Cj4gKwo+ICsJCXN3aXRjaEAwIHsKPiArCQkJY29tcGF0aWJsZSA9ICJtYXJ2ZWxsLG12ODhl NjA4NSI7Cj4gKwkJCXJlZyA9IDwwPjsKPiArCj4gKwkJCXN3aXRjaF9wb3J0czogcG9ydHMgewo+ ICsJCQkJI2FkZHJlc3MtY2VsbHMgPSA8MT47Cj4gKwkJCQkjc2l6ZS1jZWxscyA9IDwwPjsKPiAr Cj4gKwkJCQlldGhwaHkwOiBwb3J0QDAgewo+ICsJCQkJCXJlZyA9IDwwPjsKPiArCQkJCQlsYWJl bCA9ICJjcHUiOwo+ICsJCQkJCXBoeS1tb2RlID0gInJnbWlpLWlkIjsKPiArCQkJCQlldGhlcm5l dCA9IDwmZmVjPjsKPiArCj4gKwkJCQkJZml4ZWQtbGluayB7Cj4gKwkJCQkJCXNwZWVkID0gPDEw MDA+Owo+ICsJCQkJCQlmdWxsLWR1cGxleDsKPiArCQkJCQl9Owo+ICsJCQkJfTsKPiArCj4gKwkJ CQlldGgyOiBwb3J0QDEgewo+ICsJCQkJCXJlZyA9IDwxPjsKPiArCQkJCQlsYWJlbCA9ICJldGgy IjsKPiArCQkJCQlwaHktaGFuZGxlID0gPCZwaHlfcG9ydDE+Owo+ICsJCQkJfTsKPiArCj4gKwkJ CQlldGgxOiBwb3J0QDIgewo+ICsJCQkJCXJlZyA9IDwyPjsKPiArCQkJCQlsYWJlbCA9ICJldGgx IjsKPiArCQkJCQlwaHktaGFuZGxlID0gPCZwaHlfcG9ydDI+Owo+ICsJCQkJfTsKPiArCQkJfTsK PiArCj4gKwkJCW1kaW8gewo+ICsJCQkJI2FkZHJlc3MtY2VsbHMgPSA8MT47Cj4gKwkJCQkjc2l6 ZS1jZWxscyA9IDwwPjsKPiArCj4gKwkJCQlwaHlfcG9ydDE6IHN3aXRjaHBoeUAxMSB7Cj4gKwkJ CQkJcmVnID0gPDB4MTE+Owo+ICsJCQkJfTsKPiArCj4gKwkJCQlwaHlfcG9ydDI6IHN3aXRjaHBo eUAxMiB7Cj4gKwkJCQkJcmVnID0gPDB4MTI+Owo+ICsJCQkJfTsKPiArCQkJfTsKPiArCQl9Owo+ ICsJfTsKPiArfTsKPiArCj4gKyZpMmMyIHsKPiArCWNsb2NrLWZyZXF1ZW5jeSA9IDwxMDAwMDA+ Owo+ICsJcGluY3RybC1uYW1lcyA9ICJkZWZhdWx0IjsKPiArCXBpbmN0cmwtMCA9IDwmcGluY3Ry bF9pMmMyPjsKPiArCXN0YXR1cyA9ICJva2F5IjsKPiArCj4gKwlwbWljQDggewo+ICsJCWNvbXBh dGlibGUgPSAiZnNsLHBmdXplMjAwIjsKPiArCQlwaW5jdHJsLW5hbWVzID0gImRlZmF1bHQiOwo+ ICsJCXBpbmN0cmwtMCA9IDwmcGluY3RybF9wbWljPjsKPiArCQlyZWcgPSA8MHg4PjsKPiArCj4g KwkJcmVndWxhdG9ycyB7Cj4gKwkJCXN3MWFfcmVnOiBzdzFhYiB7Cj4gKwkJCQlyZWd1bGF0b3It bWluLW1pY3Jvdm9sdCA9IDwzMDAwMDA+Owo+ICsJCQkJcmVndWxhdG9yLW1heC1taWNyb3ZvbHQg PSA8MTg3NTAwMD47Cj4gKwkJCQlyZWd1bGF0b3ItYm9vdC1vbjsKPiArCQkJCXJlZ3VsYXRvci1h bHdheXMtb247Cj4gKwkJCQlyZWd1bGF0b3ItcmFtcC1kZWxheSA9IDw2MjUwPjsKPiArCQkJfTsK PiArCj4gKwkJCXN3Ml9yZWc6IHN3MiB7Cj4gKwkJCQlyZWd1bGF0b3ItbWluLW1pY3Jvdm9sdCA9 IDw4MDAwMDA+Owo+ICsJCQkJcmVndWxhdG9yLW1heC1taWNyb3ZvbHQgPSA8MzMwMDAwMD47Cj4g KwkJCQlyZWd1bGF0b3ItYm9vdC1vbjsKPiArCQkJCXJlZ3VsYXRvci1hbHdheXMtb247Cj4gKwkJ CX07Cj4gKwo+ICsJCQlzdzNhX3JlZzogc3czYSB7Cj4gKwkJCQlyZWd1bGF0b3ItbWluLW1pY3Jv dm9sdCA9IDw0MDAwMDA+Owo+ICsJCQkJcmVndWxhdG9yLW1heC1taWNyb3ZvbHQgPSA8MTk3NTAw MD47Cj4gKwkJCQlyZWd1bGF0b3ItYm9vdC1vbjsKPiArCQkJCXJlZ3VsYXRvci1hbHdheXMtb247 Cj4gKwkJCX07Cj4gKwo+ICsJCQlzdzNiX3JlZzogc3czYiB7Cj4gKwkJCQlyZWd1bGF0b3ItbWlu LW1pY3Jvdm9sdCA9IDw0MDAwMDA+Owo+ICsJCQkJcmVndWxhdG9yLW1heC1taWNyb3ZvbHQgPSA8 MTk3NTAwMD47Cj4gKwkJCQlyZWd1bGF0b3ItYm9vdC1vbjsKPiArCQkJCXJlZ3VsYXRvci1hbHdh eXMtb247Cj4gKwkJCX07Cj4gKwo+ICsJCQlzd2JzdF9yZWc6IHN3YnN0IHsKPiArCQkJCXJlZ3Vs YXRvci1taW4tbWljcm92b2x0ID0gPDUwMDAwMDA+Owo+ICsJCQkJcmVndWxhdG9yLW1heC1taWNy b3ZvbHQgPSA8NTE1MDAwMD47Cj4gKwkJCX07Cj4gKwo+ICsJCQl2Z2VuMV9yZWc6IHZnZW4xIHsK PiArCQkJCXJlZ3VsYXRvci1taW4tbWljcm92b2x0ID0gPDgwMDAwMD47Cj4gKwkJCQlyZWd1bGF0 b3ItbWF4LW1pY3Jvdm9sdCA9IDwxNTUwMDAwPjsKPiArCQkJfTsKPiArCj4gKwkJCXZnZW4yX3Jl ZzogdmdlbjIgewo+ICsJCQkJcmVndWxhdG9yLW1pbi1taWNyb3ZvbHQgPSA8ODAwMDAwPjsKPiAr CQkJCXJlZ3VsYXRvci1tYXgtbWljcm92b2x0ID0gPDE1NTAwMDA+Owo+ICsJCQl9Owo+ICsKPiAr CQkJdmdlbjNfcmVnOiB2Z2VuMyB7Cj4gKwkJCQlyZWd1bGF0b3ItbWluLW1pY3Jvdm9sdCA9IDwx ODAwMDAwPjsKPiArCQkJCXJlZ3VsYXRvci1tYXgtbWljcm92b2x0ID0gPDMzMDAwMDA+Owo+ICsJ CQkJcmVndWxhdG9yLWFsd2F5cy1vbjsKPiArCQkJfTsKPiArCj4gKwkJCXZnZW40X3JlZzogdmdl bjQgewo+ICsJCQkJcmVndWxhdG9yLW1pbi1taWNyb3ZvbHQgPSA8MTgwMDAwMD47Cj4gKwkJCQly ZWd1bGF0b3ItbWF4LW1pY3Jvdm9sdCA9IDwzMzAwMDAwPjsKPiArCQkJCXJlZ3VsYXRvci1hbHdh eXMtb247Cj4gKwkJCX07Cj4gKwo+ICsJCQl2Z2VuNV9yZWc6IHZnZW41IHsKPiArCQkJCXJlZ3Vs YXRvci1taW4tbWljcm92b2x0ID0gPDE4MDAwMDA+Owo+ICsJCQkJcmVndWxhdG9yLW1heC1taWNy b3ZvbHQgPSA8MzMwMDAwMD47Cj4gKwkJCQlyZWd1bGF0b3ItYWx3YXlzLW9uOwo+ICsJCQl9Owo+ ICsKPiArCQkJdmdlbjZfcmVnOiB2Z2VuNiB7Cj4gKwkJCQlyZWd1bGF0b3ItbWluLW1pY3Jvdm9s dCA9IDwxODAwMDAwPjsKPiArCQkJCXJlZ3VsYXRvci1tYXgtbWljcm92b2x0ID0gPDMzMDAwMDA+ Owo+ICsJCQkJcmVndWxhdG9yLWFsd2F5cy1vbjsKPiArCQkJfTsKPiArCj4gKwkJCXZyZWZfcmVn OiB2cmVmZGRyIHsKPiArCQkJCXJlZ3VsYXRvci1ib290LW9uOwo+ICsJCQkJcmVndWxhdG9yLWFs d2F5cy1vbjsKPiArCQkJfTsKPiArCj4gKwkJCXZzbnZzX3JlZzogdnNudnMgewo+ICsJCQkJcmVn dWxhdG9yLW1pbi1taWNyb3ZvbHQgPSA8MTAwMDAwMD47Cj4gKwkJCQlyZWd1bGF0b3ItbWF4LW1p Y3Jvdm9sdCA9IDwzMDAwMDAwPjsKPiArCQkJCXJlZ3VsYXRvci1ib290LW9uOwo+ICsJCQkJcmVn dWxhdG9yLWFsd2F5cy1vbjsKPiArCQkJfTsKPiArCQl9Owo+ICsJfTsKPiArCj4gKwlsZWRzOiBs ZWQtY29udHJvbGxlckAzMCB7Cj4gKwkJY29tcGF0aWJsZSA9ICJ0aSxscDU1NjIiOwo+ICsJCXJl ZyA9IDwweDMwPjsKPiArCQljbG9jay1tb2RlID0gL2JpdHMvIDggPDE+Owo+ICsJCXN0YXR1cyA9 ICJkaXNhYmxlZCI7CgpNb3ZlICdzdGF0dXMnIHRvIHRoZSBlbmQgb2YgcHJvcGVydHkgbGlzdC4K Cj4gKwkJI2FkZHJlc3MtY2VsbHMgPSA8MT47Cj4gKwkJI3NpemUtY2VsbHMgPSA8MD47Cj4gKwo+ ICsJCWxlZEAwIHsKPiArCQkJY2hhbi1uYW1lID0gIlIiOwo+ICsJCQlsZWQtY3VyID0gL2JpdHMv IDggPDB4MjA+Owo+ICsJCQltYXgtY3VyID0gL2JpdHMvIDggPDB4NjA+Owo+ICsJCQlyZWcgPSA8 MD47Cj4gKwkJCWNvbG9yID0gPExFRF9DT0xPUl9JRF9SRUQ+Owo+ICsJCX07Cj4gKwo+ICsJCWxl ZEAxIHsKPiArCQkJY2hhbi1uYW1lID0gIkciOwo+ICsJCQlsZWQtY3VyID0gL2JpdHMvIDggPDB4 MjA+Owo+ICsJCQltYXgtY3VyID0gL2JpdHMvIDggPDB4NjA+Owo+ICsJCQlyZWcgPSA8MT47Cj4g KwkJCWNvbG9yID0gPExFRF9DT0xPUl9JRF9HUkVFTj47Cj4gKwkJfTsKPiArCj4gKwkJbGVkQDIg ewo+ICsJCQljaGFuLW5hbWUgPSAiQiI7Cj4gKwkJCWxlZC1jdXIgPSAvYml0cy8gOCA8MHgyMD47 Cj4gKwkJCW1heC1jdXIgPSAvYml0cy8gOCA8MHg2MD47Cj4gKwkJCXJlZyA9IDwyPjsKPiArCQkJ Y29sb3IgPSA8TEVEX0NPTE9SX0lEX0JMVUU+Owo+ICsJCX07Cj4gKwl9Owo+ICsKPiArCWVlcHJv bUA1NyB7Cj4gKwkJY29tcGF0aWJsZSA9ICJhdG1lbCwyNGMxMjgiOwo+ICsJCXJlZyA9IDwweDU3 PjsKPiArCQlwYWdlc2l6ZSA9IDw2ND47Cj4gKwkJc3RhdHVzID0gIm9rYXkiOwoKVGhlICJva2F5 IiBzdGF0dXMgaXMgb25seSBuZWVkZWQgdG8gZmxpcCBhICJkaXNhYmxlZCIgb25lLgoKPiArCX07 Cj4gKwo+ICsJdG91Y2hzY3JlZW46IHRvdWNoc2NyZWVuQDVjIHsKPiArCQljb21wYXRpYmxlID0g InBpeGNpcixwaXhjaXJfdGFuZ29jIjsKPiArCQlyZWcgPSA8MHg1Yz47Cj4gKwkJcGluY3RybC0w ID0gPCZwaW5jdHJsX3RvdWNoPjsKPiArCQlpbnRlcnJ1cHQtcGFyZW50ID0gPCZncGlvND47Cj4g KwkJaW50ZXJydXB0cyA9IDw1IElSUV9UWVBFX0VER0VfRkFMTElORz47Cj4gKwkJYXR0Yi1ncGlv ID0gPCZncGlvNCA1IEdQSU9fQUNUSVZFX0hJR0g+Owo+ICsJCXJlc2V0LWdwaW9zID0gPCZncGlv MSAyIEdQSU9fQUNUSVZFX0hJR0g+Owo+ICsJCXRvdWNoc2NyZWVuLXNpemUteCA9IDw4MDA+Owo+ ICsJCXRvdWNoc2NyZWVuLXNpemUteSA9IDw0ODA+Owo+ICsJCXN0YXR1cyA9ICJkaXNhYmxlZCI7 Cj4gKwl9Owo+ICsKPiArCXJ0YzogcnRjQDY4IHsKPiArCQljb21wYXRpYmxlID0gImRhbGxhcyxk czEzNDEiOwo+ICsJCXJlZyA9IDwweDY4PjsKPiArCQlzdGF0dXMgPSAib2theSI7CgpEaXR0bwoK U2hhd24KCj4gKwl9Owo+ICt9Owo+ICsKPiArJmkyYzMgewo+ICsJY2xvY2stZnJlcXVlbmN5ID0g PDEwMDAwMD47Cj4gKwlwaW5jdHJsLW5hbWVzID0gImRlZmF1bHQiOwo+ICsJcGluY3RybC0wID0g PCZwaW5jdHJsX2kyYzM+Owo+ICsJc3RhdHVzID0gImRpc2FibGVkIjsKPiArCj4gKwlvbGVkXzEz MDk6IG9sZWRAM2Mgewo+ICsJCWNvbXBhdGlibGUgPSAic29sb21vbixzc2QxMzA5ZmItaTJjIjsK PiArCQlyZWcgPSA8MHgzYz47Cj4gKwkJc29sb21vbixoZWlnaHQgPSA8NjQ+Owo+ICsJCXNvbG9t b24sd2lkdGggPSA8MTI4PjsKPiArCQlzb2xvbW9uLHBhZ2Utb2Zmc2V0ID0gPDA+Owo+ICsJCXNv bG9tb24sc2VnbWVudC1uby1yZW1hcDsKPiArCQlzb2xvbW9uLHByZWNoYXJnZXAyID0gPDE1PjsK PiArCQlyZXNldC1ncGlvcyA9IDwmZ3Bpb19vbGVkIDEgR1BJT19BQ1RJVkVfTE9XPjsKPiArCQl2 YmF0LXN1cHBseSA9IDwmc3cyX3JlZz47Cj4gKwkJc3RhdHVzID0gImRpc2FibGVkIjsKPiArCX07 Cj4gKwo+ICsJb2xlZF8xMzA1OiBvbGVkQDNkIHsKPiArCQljb21wYXRpYmxlID0gInNvbG9tb24s c3NkMTMwNWZiLWkyYyI7Cj4gKwkJcmVnID0gPDB4M2Q+Owo+ICsJCXNvbG9tb24saGVpZ2h0ID0g PDY0PjsKPiArCQlzb2xvbW9uLHdpZHRoID0gPDEyOD47Cj4gKwkJc29sb21vbixwYWdlLW9mZnNl dCA9IDwwPjsKPiArCQlzb2xvbW9uLGNvbC1vZmZzZXQgPSA8ND47Cj4gKwkJc29sb21vbixwcmVj aGFyZ2VwMiA9IDwxNT47Cj4gKwkJcmVzZXQtZ3Bpb3MgPSA8JmdwaW9fb2xlZCAxIEdQSU9fQUNU SVZFX0xPVz47Cj4gKwkJdmJhdC1zdXBwbHkgPSA8JnN3Ml9yZWc+Owo+ICsJCXN0YXR1cyA9ICJk aXNhYmxlZCI7Cj4gKwl9Owo+ICsKPiArCWdwaW9fb2xlZDogZ3Bpb0A0MSB7Cj4gKwkJY29tcGF0 aWJsZSA9ICJueHAscGNhOTUzNiI7Cj4gKwkJZ3Bpby1jb250cm9sbGVyOwo+ICsJCSNncGlvLWNl bGxzID0gPDI+Owo+ICsJCXJlZyA9IDwweDQxPjsKPiArCQl2Y2Mtc3VwcGx5ID0gPCZzdzJfcmVn PjsKPiArCQlzdGF0dXMgPSAiZGlzYWJsZWQiOwo+ICsJfTsKPiArCj4gKwl0b3VjaGtleXM6IGtl eXNANWEgewo+ICsJCWNvbXBhdGlibGUgPSAiZnNsLG1wcjEyMS10b3VjaGtleSI7Cj4gKwkJcGlu Y3RybC1uYW1lcyA9ICJkZWZhdWx0IjsKPiArCQlwaW5jdHJsLTAgPSA8JnBpbmN0cmxfdG91Y2hr ZXlzPjsKPiArCQlyZWcgPSA8MHg1YT47Cj4gKwkJdmRkLXN1cHBseSA9IDwmc3cyX3JlZz47Cj4g KwkJYXV0b3JlcGVhdDsKPiArCQlsaW51eCxrZXljb2RlcyA9IDxLRVlfMT4sIDxLRVlfMj4sIDxL RVlfMz4sIDxLRVlfND4sIDxLRVlfNT4sCj4gKwkJCQk8S0VZXzY+LCA8S0VZXzc+LCA8S0VZXzg+ LCA8S0VZXzk+LAo+ICsJCQkJPEtFWV9CQUNLU1BBQ0U+LCA8S0VZXzA+LCA8S0VZX0VOVEVSPjsK PiArCQlwb2xsLWludGVydmFsID0gPDUwPjsKPiArCQlzdGF0dXMgPSAiZGlzYWJsZWQiOwo+ICsJ fTsKPiArfTsKPiArCj4gKyZpb211eGMgewo+ICsJcGluY3RybF9lbmV0OiBlbmV0Z3JwIHsKPiAr CQlmc2wscGlucyA9IDwKPiArCQkJTVg2UURMX1BBRF9FTkVUX01ESU9fX0VORVRfTURJTwkJMHgx YjAyMAo+ICsJCQlNWDZRRExfUEFEX0VORVRfTURDX19FTkVUX01EQwkJMHgxYjAyMAo+ICsJCQlN WDZRRExfUEFEX1JHTUlJX1RYQ19fUkdNSUlfVFhDCQkweDFiMDIwCj4gKwkJCU1YNlFETF9QQURf UkdNSUlfVEQwX19SR01JSV9URDAJCTB4MWIwMjAKPiArCQkJTVg2UURMX1BBRF9SR01JSV9URDFf X1JHTUlJX1REMQkJMHgxYjAyMAo+ICsJCQlNWDZRRExfUEFEX1JHTUlJX1REMl9fUkdNSUlfVEQy CQkweDFiMDIwCj4gKwkJCU1YNlFETF9QQURfUkdNSUlfVEQzX19SR01JSV9URDMJCTB4MWIwMjAK PiArCQkJTVg2UURMX1BBRF9SR01JSV9UWF9DVExfX1JHTUlJX1RYX0NUTAkweDFiMDIwCj4gKwkJ CU1YNlFETF9QQURfUkdNSUlfUlhDX19SR01JSV9SWEMJCTB4MWIwMjAKPiArCQkJTVg2UURMX1BB RF9SR01JSV9SRDBfX1JHTUlJX1JEMAkJMHgxYjAyMAo+ICsJCQlNWDZRRExfUEFEX1JHTUlJX1JE MV9fUkdNSUlfUkQxCQkweDFiMDIwCj4gKwkJCU1YNlFETF9QQURfUkdNSUlfUkQyX19SR01JSV9S RDIJCTB4MWIwMjAKPiArCQkJTVg2UURMX1BBRF9SR01JSV9SRDNfX1JHTUlJX1JEMwkJMHgxYjAy MAo+ICsJCQlNWDZRRExfUEFEX1JHTUlJX1JYX0NUTF9fUkdNSUlfUlhfQ1RMCTB4MWIwMjAKPiAr CQkJTVg2UURMX1BBRF9FTkVUX1JFRl9DTEtfX0VORVRfVFhfQ0xLCTB4MWIwMTAKPiArCQkJTVg2 UURMX1BBRF9HUElPXzE2X19FTkVUX1JFRl9DTEsJMHgxYjAxMAo+ICsJCQlNWDZRRExfUEFEX0VO RVRfQ1JTX0RWX19HUElPMV9JTzI1CTB4MWIwOTgKPiArCQk+Owo+ICsJfTsKPiArCj4gKwlwaW5j dHJsX2dwaW9fa2V5czogZ3Bpb2tleXNncnAgewo+ICsJCWZzbCxwaW5zID0gPAo+ICsJCQlNWDZR RExfUEFEX0dQSU9fMF9fR1BJTzFfSU8wMAkweDFiMGIwCj4gKwkJPjsKPiArCX07Cj4gKwo+ICsJ cGluY3RybF9pMmMyOiBpMmMyZ3JwIHsKPiArCQlmc2wscGlucyA9IDwKPiArCQkJTVg2UURMX1BB RF9LRVlfQ09MM19fSTJDMl9TQ0wJMHg0MDAxYjg5OQo+ICsJCQlNWDZRRExfUEFEX0tFWV9ST1cz X19JMkMyX1NEQQkweDQwMDFiODk5Cj4gKwkJPjsKPiArCX07Cj4gKwo+ICsJcGluY3RybF9pMmMz OiBpMmMzZ3JwIHsKPiArCQlmc2wscGlucyA9IDwKPiArCQkJTVg2UURMX1BBRF9HUElPXzNfX0ky QzNfU0NMCTB4NDAwMWI4OTkKPiArCQkJTVg2UURMX1BBRF9HUElPXzZfX0kyQzNfU0RBCTB4NDAw MWI4OTkKPiArCQk+Owo+ICsJfTsKPiArCj4gKwlwaW5jdHJsX2lwdTE6IGlwdTFncnAgewo+ICsJ CWZzbCxwaW5zID0gPAo+ICsJCQlNWDZRRExfUEFEX0VJTV9EQTdfX0dQSU8zX0lPMDcgICAgICAg ICAgICAgICAgICAweDFiMGIwCj4gKwkJCU1YNlFETF9QQURfREkwX0RJU1BfQ0xLX19JUFUxX0RJ MF9ESVNQX0NMSwkweDEwCj4gKwkJCU1YNlFETF9QQURfREkwX1BJTjJfX0lQVTFfREkwX1BJTjAy CQkweDEwCj4gKwkJCU1YNlFETF9QQURfREkwX1BJTjNfX0lQVTFfREkwX1BJTjAzCQkweDEwCj4g KwkJCU1YNlFETF9QQURfRElTUDBfREFUMF9fSVBVMV9ESVNQMF9EQVRBMDAJMHgxMAo+ICsJCQlN WDZRRExfUEFEX0RJU1AwX0RBVDFfX0lQVTFfRElTUDBfREFUQTAxCTB4MTAKPiArCQkJTVg2UURM X1BBRF9ESVNQMF9EQVQyX19JUFUxX0RJU1AwX0RBVEEwMgkweDEwCj4gKwkJCU1YNlFETF9QQURf RElTUDBfREFUM19fSVBVMV9ESVNQMF9EQVRBMDMJMHgxMAo+ICsJCQlNWDZRRExfUEFEX0RJU1Aw X0RBVDRfX0lQVTFfRElTUDBfREFUQTA0CTB4MTAKPiArCQkJTVg2UURMX1BBRF9ESVNQMF9EQVQ1 X19JUFUxX0RJU1AwX0RBVEEwNQkweDEwCj4gKwkJCU1YNlFETF9QQURfRElTUDBfREFUNl9fSVBV MV9ESVNQMF9EQVRBMDYJMHgxMAo+ICsJCQlNWDZRRExfUEFEX0RJU1AwX0RBVDdfX0lQVTFfRElT UDBfREFUQTA3CTB4MTAKPiArCQkJTVg2UURMX1BBRF9ESVNQMF9EQVQ4X19JUFUxX0RJU1AwX0RB VEEwOAkweDEwCj4gKwkJCU1YNlFETF9QQURfRElTUDBfREFUOV9fSVBVMV9ESVNQMF9EQVRBMDkJ MHgxMAo+ICsJCQlNWDZRRExfUEFEX0RJU1AwX0RBVDEwX19JUFUxX0RJU1AwX0RBVEExMAkweDEw Cj4gKwkJCU1YNlFETF9QQURfRElTUDBfREFUMTFfX0lQVTFfRElTUDBfREFUQTExCTB4MTAKPiAr CQkJTVg2UURMX1BBRF9ESVNQMF9EQVQxMl9fSVBVMV9ESVNQMF9EQVRBMTIJMHgxMAo+ICsJCQlN WDZRRExfUEFEX0RJU1AwX0RBVDEzX19JUFUxX0RJU1AwX0RBVEExMwkweDEwCj4gKwkJCU1YNlFE TF9QQURfRElTUDBfREFUMTRfX0lQVTFfRElTUDBfREFUQTE0CTB4MTAKPiArCQkJTVg2UURMX1BB RF9ESVNQMF9EQVQxNV9fSVBVMV9ESVNQMF9EQVRBMTUJMHgxMAo+ICsJCQlNWDZRRExfUEFEX0RJ U1AwX0RBVDE2X19JUFUxX0RJU1AwX0RBVEExNgkweDEwCj4gKwkJCU1YNlFETF9QQURfRElTUDBf REFUMTdfX0lQVTFfRElTUDBfREFUQTE3CTB4MTAKPiArCQkJTVg2UURMX1BBRF9ESVNQMF9EQVQx OF9fSVBVMV9ESVNQMF9EQVRBMTgJMHgxMAo+ICsJCQlNWDZRRExfUEFEX0RJU1AwX0RBVDE5X19J UFUxX0RJU1AwX0RBVEExOQkweDEwCj4gKwkJCU1YNlFETF9QQURfRElTUDBfREFUMjBfX0lQVTFf RElTUDBfREFUQTIwCTB4MTAKPiArCQkJTVg2UURMX1BBRF9ESVNQMF9EQVQyMV9fSVBVMV9ESVNQ MF9EQVRBMjEJMHgxMAo+ICsJCQlNWDZRRExfUEFEX0RJU1AwX0RBVDIyX19JUFUxX0RJU1AwX0RB VEEyMgkweDEwCj4gKwkJCU1YNlFETF9QQURfRElTUDBfREFUMjNfX0lQVTFfRElTUDBfREFUQTIz CTB4MTAKPiArCQk+Owo+ICsJfTsKPiArCj4gKwlwaW5jdHJsX3BtaWM6IHBtaWNncnAgewo+ICsJ CWZzbCxwaW5zID0gPAo+ICsJCQlNWDZRRExfUEFEX0dQSU9fMThfX0dQSU83X0lPMTMJMHgxYjA5 OAo+ICsJCT47Cj4gKwl9Owo+ICsKPiArCXBpbmN0cmxfcHdtMTogcHdtMWdycCB7Cj4gKwkJZnNs LHBpbnMgPSA8Cj4gKwkJCU1YNlFETF9QQURfR1BJT185X19QV00xX09VVAkweDgKPiArCQk+Owo+ ICsJfTsKPiArCj4gKwlwaW5jdHJsX3RvdWNoOiB0b3VjaGdycCB7Cj4gKwkJZnNsLHBpbnMgPSA8 Cj4gKwkJCU1YNlFETF9QQURfR1BJT18xOV9fR1BJTzRfSU8wNQkweDFiMDk4Cj4gKwkJCU1YNlFE TF9QQURfR1BJT18yX19HUElPMV9JTzAyCTB4MWIwOTgKPiArCQk+Owo+ICsJfTsKPiArCj4gKwlw aW5jdHJsX3RvdWNoa2V5czogdG91Y2hrZXlzZ3JwIHsKPiArCQlmc2wscGlucyA9IDwKPiArCQkJ TVg2UURMX1BBRF9HUElPXzE3X19HUElPN19JTzEyCTB4MWIwOTgKPiArCQkJTVg2UURMX1BBRF9H UElPXzVfX0dQSU8xX0lPMDUJMHgxYjA5OAo+ICsJCT47Cj4gKwl9Owo+ICsKPiArCXBpbmN0cmxf dWFydDE6IHVhcnQxZ3JwIHsKPiArCQlmc2wscGlucyA9IDwKPiArCQkJTVg2UURMX1BBRF9DU0kw X0RBVDEwX19VQVJUMV9UWF9EQVRBCTB4MWIwYTgKPiArCQkJTVg2UURMX1BBRF9DU0kwX0RBVDEx X19VQVJUMV9SWF9EQVRBCTB4MWIwYTgKPiArCQk+Owo+ICsJfTsKPiArCj4gKwlwaW5jdHJsX3Vh cnQyOiB1YXJ0MmdycCB7Cj4gKwkJZnNsLHBpbnMgPSA8Cj4gKwkJCU1YNlFETF9QQURfR1BJT183 X19VQVJUMl9UWF9EQVRBCTB4MWIwOTgKPiArCQkJTVg2UURMX1BBRF9HUElPXzhfX1VBUlQyX1JY X0RBVEEJMHgxYjA5OAo+ICsJCT47Cj4gKwl9Owo+ICsKPiArCXBpbmN0cmxfdXNiaDE6IHVzYmgx Z3JwIHsKPiArCQlmc2wscGlucyA9IDwKPiArCQkJTVg2UURMX1BBRF9FSU1fRDMwX19VU0JfSDFf T0MJMHgxYjA5OAo+ICsJCT47Cj4gKwl9Owo+ICsKPiArCXBpbmN0cmxfdXNiaDFfdmJ1czogdXNi aDEtdmJ1cyB7Cj4gKwkJZnNsLHBpbnMgPSA8Cj4gKwkJCU1YNlFETF9QQURfRU5FVF9UWEQxX19H UElPMV9JTzI5CTB4OTgKPiArCQk+Owo+ICsJfTsKPiArCj4gKwlwaW5jdHJsX3VzYm90ZzogdXNi b3RnZ3JwIHsKPiArCQlmc2wscGlucyA9IDwKPiArCQkJTVg2UURMX1BBRF9FTkVUX1JYX0VSX19V U0JfT1RHX0lECTB4MWIwOTgKPiArCQkJTVg2UURMX1BBRF9FSU1fRDIxX19VU0JfT1RHX09DCQkw eDFiMDk4Cj4gKwkJPjsKPiArCX07Cj4gKwo+ICsJcGluY3RybF91c2JvdGdfdmJ1czogdXNib3Rn LXZidXMgewo+ICsJCWZzbCxwaW5zID0gPAo+ICsJCQlNWDZRRExfUEFEX0VJTV9EMjJfX0dQSU8z X0lPMjIJMHg5OAo+ICsJCT47Cj4gKwl9Owo+ICsKPiArCXBpbmN0cmxfdXNkaGM0OiB1c2RoYzRn cnAgewo+ICsJCWZzbCxwaW5zID0gPAo+ICsJCQlNWDZRRExfUEFEX1NENF9DTURfX1NENF9DTUQJ MHgxZjA2OQo+ICsJCQlNWDZRRExfUEFEX1NENF9DTEtfX1NENF9DTEsJMHgxMDA2OQo+ICsJCQlN WDZRRExfUEFEX1NENF9EQVQwX19TRDRfREFUQTAJMHgxNzA2OQo+ICsJCQlNWDZRRExfUEFEX1NE NF9EQVQxX19TRDRfREFUQTEJMHgxNzA2OQo+ICsJCQlNWDZRRExfUEFEX1NENF9EQVQyX19TRDRf REFUQTIJMHgxNzA2OQo+ICsJCQlNWDZRRExfUEFEX1NENF9EQVQzX19TRDRfREFUQTMJMHgxNzA2 OQo+ICsJCQlNWDZRRExfUEFEX1NENF9EQVQ0X19TRDRfREFUQTQJMHgxNzA2OQo+ICsJCQlNWDZR RExfUEFEX1NENF9EQVQ1X19TRDRfREFUQTUJMHgxNzA2OQo+ICsJCQlNWDZRRExfUEFEX1NENF9E QVQ2X19TRDRfREFUQTYJMHgxNzA2OQo+ICsJCQlNWDZRRExfUEFEX1NENF9EQVQ3X19TRDRfREFU QTcJMHgxNzA2OQo+ICsJCT47Cj4gKwl9Owo+ICsKPiArCXBpbmN0cmxfd2RvZzogd2RvZ2dycCB7 Cj4gKwkJZnNsLHBpbnMgPSA8Cj4gKwkJCU1YNlFETF9QQURfR1BJT18xX19XRE9HMl9CCTB4MWIw YjAKPiArCQk+Owo+ICsJfTsKPiArfTsKPiArCj4gKyZpcHUxX2RpMF9kaXNwMCB7Cj4gKwlyZW1v dGUtZW5kcG9pbnQgPSA8JmxjZF9kaXNwbGF5X2luPjsKPiArfTsKPiArCj4gKyZwd20xIHsKPiAr CXBpbmN0cmwtbmFtZXMgPSAiZGVmYXVsdCI7Cj4gKwlwaW5jdHJsLTAgPSA8JnBpbmN0cmxfcHdt MT47Cj4gKwlzdGF0dXMgPSAiZGlzYWJsZWQiOwo+ICt9Owo+ICsKPiArJnVhcnQxIHsKPiArCXBp bmN0cmwtbmFtZXMgPSAiZGVmYXVsdCI7Cj4gKwlwaW5jdHJsLTAgPSA8JnBpbmN0cmxfdWFydDE+ Owo+ICsJc3RhdHVzID0gIm9rYXkiOwo+ICt9Owo+ICsKPiArJnVhcnQyIHsKPiArCXBpbmN0cmwt bmFtZXMgPSAiZGVmYXVsdCI7Cj4gKwlwaW5jdHJsLTAgPSA8JnBpbmN0cmxfdWFydDI+Owo+ICsJ c3RhdHVzID0gImRpc2FibGVkIjsKPiArfTsKPiArCj4gKyZ1c2JoMSB7Cj4gKwlwaW5jdHJsLW5h bWVzID0gImRlZmF1bHQiOwo+ICsJcGluY3RybC0wID0gPCZwaW5jdHJsX3VzYmgxPjsKPiArCXZi dXMtc3VwcGx5ID0gPCZyZWdfdXNiX2gxX3ZidXM+Owo+ICsJb3Zlci1jdXJyZW50LWFjdGl2ZS1s b3c7Cj4gKwlzdGF0dXMgPSAiZGlzYWJsZWQiOwo+ICt9Owo+ICsKPiArJnVzYm90ZyB7Cj4gKwlw aW5jdHJsLW5hbWVzID0gImRlZmF1bHQiOwo+ICsJcGluY3RybC0wID0gPCZwaW5jdHJsX3VzYm90 Zz47Cj4gKwl2YnVzLXN1cHBseSA9IDwmcmVnX3VzYl9vdGdfdmJ1cz47Cj4gKwlvdmVyLWN1cnJl bnQtYWN0aXZlLWxvdzsKPiArCXNycC1kaXNhYmxlOwo+ICsJaG5wLWRpc2FibGU7Cj4gKwlhZHAt ZGlzYWJsZTsKPiArCXN0YXR1cyA9ICJva2F5IjsKPiArfTsKPiArCj4gKyZ1c2JwaHkxIHsKPiAr CWZzbCx0eC1kLWNhbCA9IDwxMDY+Owo+ICsJc3RhdHVzID0gIm9rYXkiOwo+ICt9Owo+ICsKPiAr JnVzYnBoeTIgewo+ICsJZnNsLHR4LWQtY2FsID0gPDEwOT47Cj4gKwlzdGF0dXMgPSAiZGlzYWJs ZWQiOwo+ICt9Owo+ICsKPiArJnVzZGhjNCB7Cj4gKwlwaW5jdHJsLW5hbWVzID0gImRlZmF1bHQi Owo+ICsJcGluY3RybC0wID0gPCZwaW5jdHJsX3VzZGhjND47Cj4gKwlidXMtd2lkdGggPSA8OD47 Cj4gKwlub24tcmVtb3ZhYmxlOwo+ICsJbm8tMS04LXY7Cj4gKwlrZWVwLXBvd2VyLWluLXN1c3Bl bmQ7Cj4gKwl2bW1jLXN1cHBseSA9IDwmc3cyX3JlZz47Cj4gKwlzdGF0dXMgPSAib2theSI7Cj4g K307Cj4gKwo+ICsmd2RvZzEgewo+ICsJc3RhdHVzID0gImRpc2FibGVkIjsKPiArfTsKPiArCj4g KyZ3ZG9nMiB7Cj4gKwlwaW5jdHJsLW5hbWVzID0gImRlZmF1bHQiOwo+ICsJcGluY3RybC0wID0g PCZwaW5jdHJsX3dkb2c+Owo+ICsJZnNsLGV4dC1yZXNldC1vdXRwdXQ7Cj4gKwlzdGF0dXMgPSAi b2theSI7Cj4gK307Cj4gZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2Jvb3QvZHRzL2lteDZxLXlhcHA0 LXBlZ2FzdXMuZHRzIGIvYXJjaC9hcm0vYm9vdC9kdHMvaW14NnEteWFwcDQtcGVnYXN1cy5kdHMK PiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAwMDAwMC4uZWM2NjUxYmE0YmEy Cj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBiL2FyY2gvYXJtL2Jvb3QvZHRzL2lteDZxLXlhcHA0LXBl Z2FzdXMuZHRzCj4gQEAgLTAsMCArMSw1OCBAQAo+ICsvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmll cjogR1BMLTIuMAo+ICsvLwo+ICsvLyBDb3B5cmlnaHQgKEMpIDIwMjEgWSBTb2Z0IENvcnBvcmF0 aW9uLCBhLnMuCj4gKwo+ICsvZHRzLXYxLzsKPiArCj4gKyNpbmNsdWRlICJpbXg2cS5kdHNpIgo+ ICsjaW5jbHVkZSAiaW14NmRsLXlhcHA0My1jb21tb24uZHRzaSIKPiArCj4gKy8gewo+ICsJbW9k ZWwgPSAiWSBTb2Z0IElPVEEgUGVnYXN1cyBpLk1YNlF1YWQgYm9hcmQiOwo+ICsJY29tcGF0aWJs ZSA9ICJ5c29mdCxpbXg2cS15YXBwNC1wZWdhc3VzIiwgImZzbCxpbXg2cSI7Cj4gKwo+ICsJbWVt b3J5QDEwMDAwMDAwIHsKPiArCQlkZXZpY2VfdHlwZSA9ICJtZW1vcnkiOwo+ICsJCXJlZyA9IDww eDEwMDAwMDAwIDB4ZjAwMDAwMDA+Owo+ICsJfTsKPiArfTsKPiArCj4gKyZncGlvX29sZWQgewo+ ICsJc3RhdHVzID0gIm9rYXkiOwo+ICt9Owo+ICsKPiArJmkyYzMgewo+ICsJc3RhdHVzID0gIm9r YXkiOwo+ICt9Owo+ICsKPiArJmxlZHMgewo+ICsJc3RhdHVzID0gIm9rYXkiOwo+ICt9Owo+ICsK PiArJm9sZWRfMTMwNSB7Cj4gKwlzdGF0dXMgPSAib2theSI7Cj4gK307Cj4gKwo+ICsmb2xlZF8x MzA5IHsKPiArCXN0YXR1cyA9ICJva2F5IjsKPiArfTsKPiArCj4gKyZyZWdfcHUgewo+ICsJcmVn dWxhdG9yLWFsd2F5cy1vbjsKPiArfTsKPiArCj4gKyZyZWdfdXNiX2gxX3ZidXMgewo+ICsJc3Rh dHVzID0gIm9rYXkiOwo+ICt9Owo+ICsKPiArJnRvdWNoa2V5cyB7Cj4gKwlzdGF0dXMgPSAib2th eSI7Cj4gK307Cj4gKwo+ICsmdXNiaDEgewo+ICsJc3RhdHVzID0gIm9rYXkiOwo+ICt9Owo+ICsK PiArJnVzYnBoeTIgewo+ICsJc3RhdHVzID0gIm9rYXkiOwo+ICt9Owo+IGRpZmYgLS1naXQgYS9h cmNoL2FybS9ib290L2R0cy9pbXg2cXAteWFwcDQtcGVnYXN1cy1wbHVzLmR0cyBiL2FyY2gvYXJt L2Jvb3QvZHRzL2lteDZxcC15YXBwNC1wZWdhc3VzLXBsdXMuZHRzCj4gbmV3IGZpbGUgbW9kZSAx MDA2NDQKPiBpbmRleCAwMDAwMDAwMDAwMDAuLjRhOTYxYTMzYmYyZAo+IC0tLSAvZGV2L251bGwK PiArKysgYi9hcmNoL2FybS9ib290L2R0cy9pbXg2cXAteWFwcDQtcGVnYXN1cy1wbHVzLmR0cwo+ IEBAIC0wLDAgKzEsNTggQEAKPiArLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQTC0yLjAK PiArLy8KPiArLy8gQ29weXJpZ2h0IChDKSAyMDIxIFkgU29mdCBDb3Jwb3JhdGlvbiwgYS5zLgo+ ICsKPiArL2R0cy12MS87Cj4gKwo+ICsjaW5jbHVkZSAiaW14NnFwLmR0c2kiCj4gKyNpbmNsdWRl ICJpbXg2ZGwteWFwcDQzLWNvbW1vbi5kdHNpIgo+ICsKPiArLyB7Cj4gKwltb2RlbCA9ICJZIFNv ZnQgSU9UQSBQZWdhc3VzKyBpLk1YNlF1YWRQbHVzIGJvYXJkIjsKPiArCWNvbXBhdGlibGUgPSAi eXNvZnQsaW14NnFwLXlhcHA0LXBlZ2FzdXMtcGx1cyIsICJmc2wsaW14NnFwIjsKPiArCj4gKwlt ZW1vcnlAMTAwMDAwMDAgewo+ICsJCWRldmljZV90eXBlID0gIm1lbW9yeSI7Cj4gKwkJcmVnID0g PDB4MTAwMDAwMDAgMHhmMDAwMDAwMD47Cj4gKwl9Owo+ICt9Owo+ICsKPiArJmdwaW9fb2xlZCB7 Cj4gKwlzdGF0dXMgPSAib2theSI7Cj4gK307Cj4gKwo+ICsmaTJjMyB7Cj4gKwlzdGF0dXMgPSAi b2theSI7Cj4gK307Cj4gKwo+ICsmbGVkcyB7Cj4gKwlzdGF0dXMgPSAib2theSI7Cj4gK307Cj4g Kwo+ICsmb2xlZF8xMzA1IHsKPiArCXN0YXR1cyA9ICJva2F5IjsKPiArfTsKPiArCj4gKyZvbGVk XzEzMDkgewo+ICsJc3RhdHVzID0gIm9rYXkiOwo+ICt9Owo+ICsKPiArJnJlZ19wdSB7Cj4gKwly ZWd1bGF0b3ItYWx3YXlzLW9uOwo+ICt9Owo+ICsKPiArJnJlZ191c2JfaDFfdmJ1cyB7Cj4gKwlz dGF0dXMgPSAib2theSI7Cj4gK307Cj4gKwo+ICsmdG91Y2hrZXlzIHsKPiArCXN0YXR1cyA9ICJv a2F5IjsKPiArfTsKPiArCj4gKyZ1c2JoMSB7Cj4gKwlzdGF0dXMgPSAib2theSI7Cj4gK307Cj4g Kwo+ICsmdXNicGh5MiB7Cj4gKwlzdGF0dXMgPSAib2theSI7Cj4gK307Cj4gLS0gCj4gMi4yNS4x Cj4gCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51 eC1hcm0ta2VybmVsIG1haWxpbmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJhZGVh ZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1h cm0ta2VybmVsCg== 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 62248C61DA4 for ; Mon, 13 Mar 2023 08:24:04 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229640AbjCMIYD (ORCPT ); Mon, 13 Mar 2023 04:24:03 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47102 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229505AbjCMIYC (ORCPT ); Mon, 13 Mar 2023 04:24:02 -0400 Received: from ams.source.kernel.org (ams.source.kernel.org [IPv6:2604:1380:4601:e00::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 66712303DB; Mon, 13 Mar 2023 01:23:59 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id EC12EB80E3C; Mon, 13 Mar 2023 08:23:57 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3B50BC433EF; Mon, 13 Mar 2023 08:23:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1678695836; bh=qoyyqFTBmio9iuREDsppO/pSpASeAglT5N8qHENTGJM=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=Pi6wXdbqwrhYwoWuP7JTqaxtSfbchBjSK50zLM4iE8yGcdSyJCe7IRHfsN44vKp6u nnBCjYY2erDWSlUN2/ANL77ORA//JVsgp83ylx19Y3dBtJ1IU2x+a7m9ONoMm2AtaT WUJCQsKh+kBJKMsXJco7iWlSm6/c1kBXcfqFFqlStld0pbpTyldYBippzGNz0Jd5fz b+JyhsTf//uS9/dVl0scnXyRQFQ4pTWTGQHKV7bsEBTRjYqOnFJAo/ed8UqmYpsi/X NLRKFYGxtMrG8p/Ea/QJK8WAppgrvYEwJSMgiKTyo1zdYVB1uXWuFgYjAz/B2qmK0A rSfCvctfIErTg== Date: Mon, 13 Mar 2023 16:23:48 +0800 From: Shawn Guo To: Michal =?utf-8?B?Vm9rw6HEjQ==?= Cc: Rob Herring , Krzysztof Kozlowski , Arnd Bergmann , Olof Johansson , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , NXP Linux Team , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH 5/6] ARM: dts: =?iso-8859-1?Q?i?= =?iso-8859-1?Q?mx6dl-yapp43=3A_Add_support_for_new_HW_revision_of_the_IOT?= =?iso-8859-1?Q?A=A0board?= Message-ID: <20230313082348.GM143566@dragon> References: <20230210154855.3086900-1-michal.vokac@ysoft.com> <20230210154855.3086900-6-michal.vokac@ysoft.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20230210154855.3086900-6-michal.vokac@ysoft.com> Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org On Fri, Feb 10, 2023 at 04:48:54PM +0100, Michal Vokáč wrote: > The PCB used for all the current boards (Ursa, Draco, Hydra, Orion, Crux) > was slightly redesigned and delivers some new features while some unused > components were removed. > > - External RTC chip with supercap added. > - Secure element added. > - LCD display power supply enable/disable signal added. > - Touch keyboard reset and interrupt signals added. > - Factory reset GPIO button added. > - Audio codec LM49350 (EoL) removed and replaced by PWM audio output. > - QCA8334 switch was replaced by Marvell 88E6141. > - PCIe completely removed. > - uSD card removed and replaced by board-to-board expansion connector. > > There are four configuration variants of the new board: > > 1. Pegasus > The board configuration is based on Orion with the following major changes: > > - Quad core SoC > - 4GB of RAM > - RTC with supercap added > - Secure element added > > 2. Pegasus+ > This is the very same board as Pegasus but uses the i.MX6QuadPlus SoC. > > 3. Lynx > The board configuration is based on Draco with the following major changes: > > - DualLite SoC > - 1GB of RAM > - RTC with supercap added > - Secure element added > > 4. Phoenix > The board configuration is based on Ursa with the following major changes: > > - DualLite Soc > - 1GB of RAM > - RTC with supercap added > - Secure element added > - LCD display support removed > - UART2 removed > - Factory reset GPIO button added > > Signed-off-by: Michal Vokáč > --- > arch/arm/boot/dts/Makefile | 4 + > arch/arm/boot/dts/imx6dl-yapp4-lynx.dts | 58 ++ > arch/arm/boot/dts/imx6dl-yapp4-phoenix.dts | 42 ++ > arch/arm/boot/dts/imx6dl-yapp43-common.dtsi | 619 ++++++++++++++++++ > arch/arm/boot/dts/imx6q-yapp4-pegasus.dts | 58 ++ > .../boot/dts/imx6qp-yapp4-pegasus-plus.dts | 58 ++ > 6 files changed, 839 insertions(+) > create mode 100644 arch/arm/boot/dts/imx6dl-yapp4-lynx.dts > create mode 100644 arch/arm/boot/dts/imx6dl-yapp4-phoenix.dts > create mode 100644 arch/arm/boot/dts/imx6dl-yapp43-common.dtsi > create mode 100644 arch/arm/boot/dts/imx6q-yapp4-pegasus.dts > create mode 100644 arch/arm/boot/dts/imx6qp-yapp4-pegasus-plus.dts > > diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile > index d08a3c450ce7..9a60d3fc0483 100644 > --- a/arch/arm/boot/dts/Makefile > +++ b/arch/arm/boot/dts/Makefile > @@ -558,7 +558,9 @@ dtb-$(CONFIG_SOC_IMX6Q) += \ > imx6dl-wandboard-revd1.dtb \ > imx6dl-yapp4-draco.dtb \ > imx6dl-yapp4-hydra.dtb \ > + imx6dl-yapp4-lynx.dtb \ > imx6dl-yapp4-orion.dtb \ > + imx6dl-yapp4-phoenix.dtb \ > imx6dl-yapp4-ursa.dtb \ > imx6q-apalis-eval.dtb \ > imx6q-apalis-ixora.dtb \ > @@ -625,6 +627,7 @@ dtb-$(CONFIG_SOC_IMX6Q) += \ > imx6q-nitrogen6_max.dtb \ > imx6q-nitrogen6_som2.dtb \ > imx6q-novena.dtb \ > + imx6q-yapp4-pegasus.dtb \ > imx6q-phytec-mira-rdk-emmc.dtb \ Break the alphabetic order? > imx6q-phytec-mira-rdk-nand.dtb \ > imx6q-phytec-pbab01.dtb \ > @@ -680,6 +683,7 @@ dtb-$(CONFIG_SOC_IMX6Q) += \ > imx6qp-vicutp.dtb \ > imx6qp-wandboard-revd1.dtb \ > imx6qp-yapp4-crux-plus.dtb \ > + imx6qp-yapp4-pegasus-plus.dtb \ > imx6qp-zii-rdu2.dtb \ > imx6s-dhcom-drc02.dtb > dtb-$(CONFIG_SOC_IMX6SL) += \ > diff --git a/arch/arm/boot/dts/imx6dl-yapp4-lynx.dts b/arch/arm/boot/dts/imx6dl-yapp4-lynx.dts > new file mode 100644 > index 000000000000..5c2cd517589b > --- /dev/null > +++ b/arch/arm/boot/dts/imx6dl-yapp4-lynx.dts > @@ -0,0 +1,58 @@ > +// SPDX-License-Identifier: GPL-2.0 > +// > +// Copyright (C) 2021 Y Soft Corporation, a.s. > + > +/dts-v1/; > + > +#include "imx6dl.dtsi" > +#include "imx6dl-yapp43-common.dtsi" > + > +/ { > + model = "Y Soft IOTA Lynx i.MX6DualLite board"; > + compatible = "ysoft,imx6dl-yapp4-lynx", "fsl,imx6dl"; > + > + memory@10000000 { > + device_type = "memory"; > + reg = <0x10000000 0x40000000>; > + }; > +}; > + > +&backlight { > + status = "okay"; > +}; > + > +&lcd_display { > + status = "okay"; > +}; > + > +&leds { > + status = "okay"; > +}; > + > +&panel { > + status = "okay"; > +}; > + > +&pwm1 { > + status = "okay"; > +}; > + > +®_usb_h1_vbus { > + status = "okay"; > +}; > + > +&touchscreen { > + status = "okay"; > +}; > + > +&uart2 { > + status = "okay"; > +}; > + > +&usbh1 { > + status = "okay"; > +}; > + > +&usbphy2 { > + status = "okay"; > +}; > diff --git a/arch/arm/boot/dts/imx6dl-yapp4-phoenix.dts b/arch/arm/boot/dts/imx6dl-yapp4-phoenix.dts > new file mode 100644 > index 000000000000..e0292f11d03e > --- /dev/null > +++ b/arch/arm/boot/dts/imx6dl-yapp4-phoenix.dts > @@ -0,0 +1,42 @@ > +// SPDX-License-Identifier: GPL-2.0 > +// > +// Copyright (C) 2021 Y Soft Corporation, a.s. > + > +/dts-v1/; > + > +#include "imx6dl.dtsi" > +#include "imx6dl-yapp43-common.dtsi" > + > +/ { > + model = "Y Soft IOTA Phoenix i.MX6DualLite board"; > + compatible = "ysoft,imx6dl-yapp4-phoenix", "fsl,imx6dl"; > + > + memory@10000000 { > + device_type = "memory"; > + reg = <0x10000000 0x40000000>; > + }; > +}; > + > +&aliases { > + /delete-property/ ethernet1; > +}; > + > +&gpio_keys { > + status = "okay"; > +}; > + > +®_usb_h1_vbus { > + status = "okay"; > +}; > + > +&switch_ports { > + /delete-node/ port@2; > +}; > + > +&usbh1 { > + status = "okay"; > +}; > + > +&usbphy2 { > + status = "okay"; > +}; > diff --git a/arch/arm/boot/dts/imx6dl-yapp43-common.dtsi b/arch/arm/boot/dts/imx6dl-yapp43-common.dtsi > new file mode 100644 > index 000000000000..30f354195e01 > --- /dev/null > +++ b/arch/arm/boot/dts/imx6dl-yapp43-common.dtsi > @@ -0,0 +1,619 @@ > +// SPDX-License-Identifier: GPL-2.0 > +// > +// Copyright (C) 2021 Y Soft Corporation, a.s. > + > +#include > +#include > +#include > +#include > +#include > + > +/ { > + aliases: aliases { > + ethernet1 = ð1; > + ethernet2 = ð2; > + mmc0 = &usdhc3; > + mmc1 = &usdhc4; > + }; > + > + backlight: backlight { > + compatible = "pwm-backlight"; > + pwms = <&pwm1 0 500000 PWM_POLARITY_INVERTED>; > + brightness-levels = <0 32 64 128 255>; > + default-brightness-level = <32>; > + num-interpolated-steps = <8>; > + power-supply = <&sw2_reg>; > + status = "disabled"; > + }; > + > + gpio_keys: gpio-keys { > + compatible = "gpio-keys"; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_gpio_keys>; > + status = "disabled"; > + > + button { > + label = "Factory RESET"; > + linux,code = ; > + gpios = <&gpio1 0 GPIO_ACTIVE_LOW>; > + }; > + }; > + > + lcd_display: display { > + compatible = "fsl,imx-parallel-display"; > + #address-cells = <1>; > + #size-cells = <0>; > + interface-pix-fmt = "rgb24"; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_ipu1>; > + status = "disabled"; > + > + port@0 { > + reg = <0>; > + > + lcd_display_in: endpoint { > + remote-endpoint = <&ipu1_di0_disp0>; > + }; > + }; > + > + port@1 { > + reg = <1>; > + > + lcd_display_out: endpoint { > + remote-endpoint = <&lcd_panel_in>; > + }; > + }; > + }; > + > + panel: panel { > + compatible = "dataimage,scf0700c48ggu18"; > + power-supply = <&sw2_reg>; > + backlight = <&backlight>; > + enable-gpios = <&gpio3 7 GPIO_ACTIVE_HIGH>; > + status = "disabled"; > + > + port { > + lcd_panel_in: endpoint { > + remote-endpoint = <&lcd_display_out>; > + }; > + }; > + }; > + > + reg_usb_h1_vbus: regulator-usb-h1-vbus { > + compatible = "regulator-fixed"; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_usbh1_vbus>; > + regulator-name = "usb_h1_vbus"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + gpio = <&gpio1 29 GPIO_ACTIVE_HIGH>; > + enable-active-high; > + status = "disabled"; > + }; > + > + reg_usb_otg_vbus: regulator-usb-otg-vbus { > + compatible = "regulator-fixed"; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_usbotg_vbus>; > + regulator-name = "usb_otg_vbus"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>; > + enable-active-high; > + status = "okay"; > + }; > +}; > + > +&fec { > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_enet>; > + phy-mode = "rgmii-id"; > + phy-reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>; > + phy-reset-duration = <20>; Deprecated. Check Documentation/devicetree/bindings/net/fsl,fec.yaml. > + phy-supply = <&sw2_reg>; > + status = "okay"; > + > + fixed-link { > + speed = <1000>; > + full-duplex; > + }; > + > + mdio { > + #address-cells = <1>; > + #size-cells = <0>; > + > + switch@0 { > + compatible = "marvell,mv88e6085"; > + reg = <0>; > + > + switch_ports: ports { > + #address-cells = <1>; > + #size-cells = <0>; > + > + ethphy0: port@0 { > + reg = <0>; > + label = "cpu"; > + phy-mode = "rgmii-id"; > + ethernet = <&fec>; > + > + fixed-link { > + speed = <1000>; > + full-duplex; > + }; > + }; > + > + eth2: port@1 { > + reg = <1>; > + label = "eth2"; > + phy-handle = <&phy_port1>; > + }; > + > + eth1: port@2 { > + reg = <2>; > + label = "eth1"; > + phy-handle = <&phy_port2>; > + }; > + }; > + > + mdio { > + #address-cells = <1>; > + #size-cells = <0>; > + > + phy_port1: switchphy@11 { > + reg = <0x11>; > + }; > + > + phy_port2: switchphy@12 { > + reg = <0x12>; > + }; > + }; > + }; > + }; > +}; > + > +&i2c2 { > + clock-frequency = <100000>; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_i2c2>; > + status = "okay"; > + > + pmic@8 { > + compatible = "fsl,pfuze200"; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_pmic>; > + reg = <0x8>; > + > + regulators { > + sw1a_reg: sw1ab { > + regulator-min-microvolt = <300000>; > + regulator-max-microvolt = <1875000>; > + regulator-boot-on; > + regulator-always-on; > + regulator-ramp-delay = <6250>; > + }; > + > + sw2_reg: sw2 { > + regulator-min-microvolt = <800000>; > + regulator-max-microvolt = <3300000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + sw3a_reg: sw3a { > + regulator-min-microvolt = <400000>; > + regulator-max-microvolt = <1975000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + sw3b_reg: sw3b { > + regulator-min-microvolt = <400000>; > + regulator-max-microvolt = <1975000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + swbst_reg: swbst { > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5150000>; > + }; > + > + vgen1_reg: vgen1 { > + regulator-min-microvolt = <800000>; > + regulator-max-microvolt = <1550000>; > + }; > + > + vgen2_reg: vgen2 { > + regulator-min-microvolt = <800000>; > + regulator-max-microvolt = <1550000>; > + }; > + > + vgen3_reg: vgen3 { > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <3300000>; > + regulator-always-on; > + }; > + > + vgen4_reg: vgen4 { > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <3300000>; > + regulator-always-on; > + }; > + > + vgen5_reg: vgen5 { > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <3300000>; > + regulator-always-on; > + }; > + > + vgen6_reg: vgen6 { > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <3300000>; > + regulator-always-on; > + }; > + > + vref_reg: vrefddr { > + regulator-boot-on; > + regulator-always-on; > + }; > + > + vsnvs_reg: vsnvs { > + regulator-min-microvolt = <1000000>; > + regulator-max-microvolt = <3000000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + }; > + }; > + > + leds: led-controller@30 { > + compatible = "ti,lp5562"; > + reg = <0x30>; > + clock-mode = /bits/ 8 <1>; > + status = "disabled"; Move 'status' to the end of property list. > + #address-cells = <1>; > + #size-cells = <0>; > + > + led@0 { > + chan-name = "R"; > + led-cur = /bits/ 8 <0x20>; > + max-cur = /bits/ 8 <0x60>; > + reg = <0>; > + color = ; > + }; > + > + led@1 { > + chan-name = "G"; > + led-cur = /bits/ 8 <0x20>; > + max-cur = /bits/ 8 <0x60>; > + reg = <1>; > + color = ; > + }; > + > + led@2 { > + chan-name = "B"; > + led-cur = /bits/ 8 <0x20>; > + max-cur = /bits/ 8 <0x60>; > + reg = <2>; > + color = ; > + }; > + }; > + > + eeprom@57 { > + compatible = "atmel,24c128"; > + reg = <0x57>; > + pagesize = <64>; > + status = "okay"; The "okay" status is only needed to flip a "disabled" one. > + }; > + > + touchscreen: touchscreen@5c { > + compatible = "pixcir,pixcir_tangoc"; > + reg = <0x5c>; > + pinctrl-0 = <&pinctrl_touch>; > + interrupt-parent = <&gpio4>; > + interrupts = <5 IRQ_TYPE_EDGE_FALLING>; > + attb-gpio = <&gpio4 5 GPIO_ACTIVE_HIGH>; > + reset-gpios = <&gpio1 2 GPIO_ACTIVE_HIGH>; > + touchscreen-size-x = <800>; > + touchscreen-size-y = <480>; > + status = "disabled"; > + }; > + > + rtc: rtc@68 { > + compatible = "dallas,ds1341"; > + reg = <0x68>; > + status = "okay"; Ditto Shawn > + }; > +}; > + > +&i2c3 { > + clock-frequency = <100000>; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_i2c3>; > + status = "disabled"; > + > + oled_1309: oled@3c { > + compatible = "solomon,ssd1309fb-i2c"; > + reg = <0x3c>; > + solomon,height = <64>; > + solomon,width = <128>; > + solomon,page-offset = <0>; > + solomon,segment-no-remap; > + solomon,prechargep2 = <15>; > + reset-gpios = <&gpio_oled 1 GPIO_ACTIVE_LOW>; > + vbat-supply = <&sw2_reg>; > + status = "disabled"; > + }; > + > + oled_1305: oled@3d { > + compatible = "solomon,ssd1305fb-i2c"; > + reg = <0x3d>; > + solomon,height = <64>; > + solomon,width = <128>; > + solomon,page-offset = <0>; > + solomon,col-offset = <4>; > + solomon,prechargep2 = <15>; > + reset-gpios = <&gpio_oled 1 GPIO_ACTIVE_LOW>; > + vbat-supply = <&sw2_reg>; > + status = "disabled"; > + }; > + > + gpio_oled: gpio@41 { > + compatible = "nxp,pca9536"; > + gpio-controller; > + #gpio-cells = <2>; > + reg = <0x41>; > + vcc-supply = <&sw2_reg>; > + status = "disabled"; > + }; > + > + touchkeys: keys@5a { > + compatible = "fsl,mpr121-touchkey"; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_touchkeys>; > + reg = <0x5a>; > + vdd-supply = <&sw2_reg>; > + autorepeat; > + linux,keycodes = , , , , , > + , , , , > + , , ; > + poll-interval = <50>; > + status = "disabled"; > + }; > +}; > + > +&iomuxc { > + pinctrl_enet: enetgrp { > + fsl,pins = < > + MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b020 > + MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b020 > + MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b020 > + MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b020 > + MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b020 > + MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b020 > + MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b020 > + MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b020 > + MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b020 > + MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b020 > + MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b020 > + MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b020 > + MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b020 > + MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b020 > + MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b010 > + MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x1b010 > + MX6QDL_PAD_ENET_CRS_DV__GPIO1_IO25 0x1b098 > + >; > + }; > + > + pinctrl_gpio_keys: gpiokeysgrp { > + fsl,pins = < > + MX6QDL_PAD_GPIO_0__GPIO1_IO00 0x1b0b0 > + >; > + }; > + > + pinctrl_i2c2: i2c2grp { > + fsl,pins = < > + MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b899 > + MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b899 > + >; > + }; > + > + pinctrl_i2c3: i2c3grp { > + fsl,pins = < > + MX6QDL_PAD_GPIO_3__I2C3_SCL 0x4001b899 > + MX6QDL_PAD_GPIO_6__I2C3_SDA 0x4001b899 > + >; > + }; > + > + pinctrl_ipu1: ipu1grp { > + fsl,pins = < > + MX6QDL_PAD_EIM_DA7__GPIO3_IO07 0x1b0b0 > + MX6QDL_PAD_DI0_DISP_CLK__IPU1_DI0_DISP_CLK 0x10 > + MX6QDL_PAD_DI0_PIN2__IPU1_DI0_PIN02 0x10 > + MX6QDL_PAD_DI0_PIN3__IPU1_DI0_PIN03 0x10 > + MX6QDL_PAD_DISP0_DAT0__IPU1_DISP0_DATA00 0x10 > + MX6QDL_PAD_DISP0_DAT1__IPU1_DISP0_DATA01 0x10 > + MX6QDL_PAD_DISP0_DAT2__IPU1_DISP0_DATA02 0x10 > + MX6QDL_PAD_DISP0_DAT3__IPU1_DISP0_DATA03 0x10 > + MX6QDL_PAD_DISP0_DAT4__IPU1_DISP0_DATA04 0x10 > + MX6QDL_PAD_DISP0_DAT5__IPU1_DISP0_DATA05 0x10 > + MX6QDL_PAD_DISP0_DAT6__IPU1_DISP0_DATA06 0x10 > + MX6QDL_PAD_DISP0_DAT7__IPU1_DISP0_DATA07 0x10 > + MX6QDL_PAD_DISP0_DAT8__IPU1_DISP0_DATA08 0x10 > + MX6QDL_PAD_DISP0_DAT9__IPU1_DISP0_DATA09 0x10 > + MX6QDL_PAD_DISP0_DAT10__IPU1_DISP0_DATA10 0x10 > + MX6QDL_PAD_DISP0_DAT11__IPU1_DISP0_DATA11 0x10 > + MX6QDL_PAD_DISP0_DAT12__IPU1_DISP0_DATA12 0x10 > + MX6QDL_PAD_DISP0_DAT13__IPU1_DISP0_DATA13 0x10 > + MX6QDL_PAD_DISP0_DAT14__IPU1_DISP0_DATA14 0x10 > + MX6QDL_PAD_DISP0_DAT15__IPU1_DISP0_DATA15 0x10 > + MX6QDL_PAD_DISP0_DAT16__IPU1_DISP0_DATA16 0x10 > + MX6QDL_PAD_DISP0_DAT17__IPU1_DISP0_DATA17 0x10 > + MX6QDL_PAD_DISP0_DAT18__IPU1_DISP0_DATA18 0x10 > + MX6QDL_PAD_DISP0_DAT19__IPU1_DISP0_DATA19 0x10 > + MX6QDL_PAD_DISP0_DAT20__IPU1_DISP0_DATA20 0x10 > + MX6QDL_PAD_DISP0_DAT21__IPU1_DISP0_DATA21 0x10 > + MX6QDL_PAD_DISP0_DAT22__IPU1_DISP0_DATA22 0x10 > + MX6QDL_PAD_DISP0_DAT23__IPU1_DISP0_DATA23 0x10 > + >; > + }; > + > + pinctrl_pmic: pmicgrp { > + fsl,pins = < > + MX6QDL_PAD_GPIO_18__GPIO7_IO13 0x1b098 > + >; > + }; > + > + pinctrl_pwm1: pwm1grp { > + fsl,pins = < > + MX6QDL_PAD_GPIO_9__PWM1_OUT 0x8 > + >; > + }; > + > + pinctrl_touch: touchgrp { > + fsl,pins = < > + MX6QDL_PAD_GPIO_19__GPIO4_IO05 0x1b098 > + MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x1b098 > + >; > + }; > + > + pinctrl_touchkeys: touchkeysgrp { > + fsl,pins = < > + MX6QDL_PAD_GPIO_17__GPIO7_IO12 0x1b098 > + MX6QDL_PAD_GPIO_5__GPIO1_IO05 0x1b098 > + >; > + }; > + > + pinctrl_uart1: uart1grp { > + fsl,pins = < > + MX6QDL_PAD_CSI0_DAT10__UART1_TX_DATA 0x1b0a8 > + MX6QDL_PAD_CSI0_DAT11__UART1_RX_DATA 0x1b0a8 > + >; > + }; > + > + pinctrl_uart2: uart2grp { > + fsl,pins = < > + MX6QDL_PAD_GPIO_7__UART2_TX_DATA 0x1b098 > + MX6QDL_PAD_GPIO_8__UART2_RX_DATA 0x1b098 > + >; > + }; > + > + pinctrl_usbh1: usbh1grp { > + fsl,pins = < > + MX6QDL_PAD_EIM_D30__USB_H1_OC 0x1b098 > + >; > + }; > + > + pinctrl_usbh1_vbus: usbh1-vbus { > + fsl,pins = < > + MX6QDL_PAD_ENET_TXD1__GPIO1_IO29 0x98 > + >; > + }; > + > + pinctrl_usbotg: usbotggrp { > + fsl,pins = < > + MX6QDL_PAD_ENET_RX_ER__USB_OTG_ID 0x1b098 > + MX6QDL_PAD_EIM_D21__USB_OTG_OC 0x1b098 > + >; > + }; > + > + pinctrl_usbotg_vbus: usbotg-vbus { > + fsl,pins = < > + MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x98 > + >; > + }; > + > + pinctrl_usdhc4: usdhc4grp { > + fsl,pins = < > + MX6QDL_PAD_SD4_CMD__SD4_CMD 0x1f069 > + MX6QDL_PAD_SD4_CLK__SD4_CLK 0x10069 > + MX6QDL_PAD_SD4_DAT0__SD4_DATA0 0x17069 > + MX6QDL_PAD_SD4_DAT1__SD4_DATA1 0x17069 > + MX6QDL_PAD_SD4_DAT2__SD4_DATA2 0x17069 > + MX6QDL_PAD_SD4_DAT3__SD4_DATA3 0x17069 > + MX6QDL_PAD_SD4_DAT4__SD4_DATA4 0x17069 > + MX6QDL_PAD_SD4_DAT5__SD4_DATA5 0x17069 > + MX6QDL_PAD_SD4_DAT6__SD4_DATA6 0x17069 > + MX6QDL_PAD_SD4_DAT7__SD4_DATA7 0x17069 > + >; > + }; > + > + pinctrl_wdog: wdoggrp { > + fsl,pins = < > + MX6QDL_PAD_GPIO_1__WDOG2_B 0x1b0b0 > + >; > + }; > +}; > + > +&ipu1_di0_disp0 { > + remote-endpoint = <&lcd_display_in>; > +}; > + > +&pwm1 { > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_pwm1>; > + status = "disabled"; > +}; > + > +&uart1 { > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_uart1>; > + status = "okay"; > +}; > + > +&uart2 { > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_uart2>; > + status = "disabled"; > +}; > + > +&usbh1 { > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_usbh1>; > + vbus-supply = <®_usb_h1_vbus>; > + over-current-active-low; > + status = "disabled"; > +}; > + > +&usbotg { > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_usbotg>; > + vbus-supply = <®_usb_otg_vbus>; > + over-current-active-low; > + srp-disable; > + hnp-disable; > + adp-disable; > + status = "okay"; > +}; > + > +&usbphy1 { > + fsl,tx-d-cal = <106>; > + status = "okay"; > +}; > + > +&usbphy2 { > + fsl,tx-d-cal = <109>; > + status = "disabled"; > +}; > + > +&usdhc4 { > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_usdhc4>; > + bus-width = <8>; > + non-removable; > + no-1-8-v; > + keep-power-in-suspend; > + vmmc-supply = <&sw2_reg>; > + status = "okay"; > +}; > + > +&wdog1 { > + status = "disabled"; > +}; > + > +&wdog2 { > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_wdog>; > + fsl,ext-reset-output; > + status = "okay"; > +}; > diff --git a/arch/arm/boot/dts/imx6q-yapp4-pegasus.dts b/arch/arm/boot/dts/imx6q-yapp4-pegasus.dts > new file mode 100644 > index 000000000000..ec6651ba4ba2 > --- /dev/null > +++ b/arch/arm/boot/dts/imx6q-yapp4-pegasus.dts > @@ -0,0 +1,58 @@ > +// SPDX-License-Identifier: GPL-2.0 > +// > +// Copyright (C) 2021 Y Soft Corporation, a.s. > + > +/dts-v1/; > + > +#include "imx6q.dtsi" > +#include "imx6dl-yapp43-common.dtsi" > + > +/ { > + model = "Y Soft IOTA Pegasus i.MX6Quad board"; > + compatible = "ysoft,imx6q-yapp4-pegasus", "fsl,imx6q"; > + > + memory@10000000 { > + device_type = "memory"; > + reg = <0x10000000 0xf0000000>; > + }; > +}; > + > +&gpio_oled { > + status = "okay"; > +}; > + > +&i2c3 { > + status = "okay"; > +}; > + > +&leds { > + status = "okay"; > +}; > + > +&oled_1305 { > + status = "okay"; > +}; > + > +&oled_1309 { > + status = "okay"; > +}; > + > +®_pu { > + regulator-always-on; > +}; > + > +®_usb_h1_vbus { > + status = "okay"; > +}; > + > +&touchkeys { > + status = "okay"; > +}; > + > +&usbh1 { > + status = "okay"; > +}; > + > +&usbphy2 { > + status = "okay"; > +}; > diff --git a/arch/arm/boot/dts/imx6qp-yapp4-pegasus-plus.dts b/arch/arm/boot/dts/imx6qp-yapp4-pegasus-plus.dts > new file mode 100644 > index 000000000000..4a961a33bf2d > --- /dev/null > +++ b/arch/arm/boot/dts/imx6qp-yapp4-pegasus-plus.dts > @@ -0,0 +1,58 @@ > +// SPDX-License-Identifier: GPL-2.0 > +// > +// Copyright (C) 2021 Y Soft Corporation, a.s. > + > +/dts-v1/; > + > +#include "imx6qp.dtsi" > +#include "imx6dl-yapp43-common.dtsi" > + > +/ { > + model = "Y Soft IOTA Pegasus+ i.MX6QuadPlus board"; > + compatible = "ysoft,imx6qp-yapp4-pegasus-plus", "fsl,imx6qp"; > + > + memory@10000000 { > + device_type = "memory"; > + reg = <0x10000000 0xf0000000>; > + }; > +}; > + > +&gpio_oled { > + status = "okay"; > +}; > + > +&i2c3 { > + status = "okay"; > +}; > + > +&leds { > + status = "okay"; > +}; > + > +&oled_1305 { > + status = "okay"; > +}; > + > +&oled_1309 { > + status = "okay"; > +}; > + > +®_pu { > + regulator-always-on; > +}; > + > +®_usb_h1_vbus { > + status = "okay"; > +}; > + > +&touchkeys { > + status = "okay"; > +}; > + > +&usbh1 { > + status = "okay"; > +}; > + > +&usbphy2 { > + status = "okay"; > +}; > -- > 2.25.1 >