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=-9.6 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=unavailable 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 D6B8CC4741F for ; Thu, 5 Nov 2020 08:07:05 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 6F3E12168B for ; Thu, 5 Nov 2020 08:07:05 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="t1cy+4Pw" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729584AbgKEIHE (ORCPT ); Thu, 5 Nov 2020 03:07:04 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41102 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725827AbgKEIHE (ORCPT ); Thu, 5 Nov 2020 03:07:04 -0500 Received: from mail-ej1-x642.google.com (mail-ej1-x642.google.com [IPv6:2a00:1450:4864:20::642]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id BE536C0613CF; Thu, 5 Nov 2020 00:07:03 -0800 (PST) Received: by mail-ej1-x642.google.com with SMTP id i19so1271430ejx.9; Thu, 05 Nov 2020 00:07:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=Ejbix6obkvCfSt+UMVFN1Q6vNzvWmPHr/OGkrFfoLFs=; b=t1cy+4PwHGXn+yInQGTOcNHpRHZwsTgyldtVz1e6t3/dfyejQaexsQKzx9zUK8oTl2 +1A4K52qrignAy+RjVb3mBmJ31K04QCu44VWPNikzu55lfEClaBKYm9NCs9VlxYkfm1r ydKEIs4EU73mF/MumaK/E4Hqr51W1KWotAT/N3dcG369HNRcrE5Mw358wInGkXF3lHTO FQ/koqKnw/xDdVcyZV6ibxgGWIqlTqUNbr6xzS2HbHfPnRAYSLZtt9d+zdhKPIu3304T wbFzQKSIq2lfhwTN3SFt1nYAeVks61wtEN82F9rJitYUOUxs3q8PSeZKnGampPJDh3VL b4mQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=Ejbix6obkvCfSt+UMVFN1Q6vNzvWmPHr/OGkrFfoLFs=; b=fN+FtgWF1KImMUzi+Qsg5DhPpTngJ81p/EaNL+DDoMyOK3xPngY4ffaXlYFQyfxAOr JrGShW2baQz9VGvVNgyH9cEawe/aO7SaQYrwsmG7GWdlmIqbWW9DevlrXmImoGsy7R+t ccVcONLIe+P3f2NSSP7f0X8UQFNjyPet1RfWVuR0TKG0AZ1Jda8G8SKk8TFfzXZeDbbS ZDRN1voUseMHTXja+CaLXwuNDMXAbRZA6/WWP5rvmt0A/HmgM+y8n3IkGM8mDTd4tD26 d37vSKDfJwlocWR5w8VA0EYvF+TH6dk6NTMjpgFS2IhbdcRuoNysugN/+zzkbOAla3KG USiA== X-Gm-Message-State: AOAM533oQxDHSFuXsK9WAKC5lg0dd1NSBwKfgJYBPxgqzhI+CoFDyRo/ AAECFAn/sWItuBFCiIpV/LszKh4JrVQGVbMX2enUT30sDYb3MA== X-Google-Smtp-Source: ABdhPJz3m2HtnIqDIg/WTO25pDMT0i+QQbqtvao1NdWSwCYoRUQX3lNPLxxIsLy8gXGTJ9Joiv/esRlckHgma7CscM8= X-Received: by 2002:a17:906:a098:: with SMTP id q24mr1098195ejy.191.1604563622509; Thu, 05 Nov 2020 00:07:02 -0800 (PST) MIME-Version: 1.0 References: <20200930143151.23961-1-l.stelmach@samsung.com> <20201001135254.28178-1-l.stelmach@samsung.com> <5ecd2e6d-6aaf-bff5-c000-2c56086ed95b@samsung.com> In-Reply-To: <5ecd2e6d-6aaf-bff5-c000-2c56086ed95b@samsung.com> From: Anand Moon Date: Thu, 5 Nov 2020 13:36:53 +0530 Message-ID: Subject: Re: [PATCH v2] ARM: dts: exynos: Add a placeholder for a MAC address To: Marek Szyprowski Cc: =?UTF-8?Q?=C5=81ukasz_Stelmach?= , Rob Herring , Kukjin Kim , Krzysztof Kozlowski , devicetree , linux-arm-kernel , linux-samsung-soc@vger.kernel.org, Linux Kernel , Bartlomiej Zolnierkiewicz Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Marek, On Mon, 2 Nov 2020 at 21:53, Marek Szyprowski wr= ote: > > Hi Anand, > > On 01.11.2020 15:07, Anand Moon wrote: > > Hi Lukasz, > > > > On Thu, 1 Oct 2020 at 19:25, =C5=81ukasz Stelmach wrote: > >> Add a placeholder for a MAC address. A bootloader may fill it > >> to set the MAC address and override EEPROM settings. > >> > >> Signed-off-by: =C5=81ukasz Stelmach > >> --- > >> Changes in v2: > >> - use local-mac-address and leave mac-address to be added by a bootl= oader > >> > >> arch/arm/boot/dts/exynos5422-odroidxu3.dts | 18 ++++++++++++++++++ > >> 1 file changed, 18 insertions(+) > >> > >> diff --git a/arch/arm/boot/dts/exynos5422-odroidxu3.dts b/arch/arm/boo= t/dts/exynos5422-odroidxu3.dts > >> index db0bc17a667b..d0f6ac5fa79d 100644 > >> --- a/arch/arm/boot/dts/exynos5422-odroidxu3.dts > >> +++ b/arch/arm/boot/dts/exynos5422-odroidxu3.dts > >> @@ -70,3 +70,21 @@ &pwm { > >> &usbdrd_dwc3_1 { > >> dr_mode =3D "peripheral"; > >> }; > >> + > >> +&usbhost2 { > >> + #address-cells =3D <1>; > >> + #size-cells =3D <0>; > >> + > >> + hub@1 { > >> + compatible =3D "usb8087,0024"; > >> + reg =3D <1>; > >> + #address-cells =3D <1>; > >> + #size-cells =3D <0>; > >> + > >> + ethernet: usbether@1 { > >> + compatible =3D "usb0c45,6310"; > >> + reg =3D <1>; > >> + local-mac-address =3D [00 00 00 00 00 00]; /* = Filled in by a bootloader */ > >> + }; > >> + }; > >> +}; > >> -- > >> 2.26.2 > >> > > Thanks for this patch, can you share some example on how to set the > > mac address via u-boot bootargs > > A little bit hacky script to set permanent board unique MAC address: > > # setexp.b u0 *0x10000014; setexp.b u1 *0x10000015; setexp.b u2 > *0x10000016; setexp.b u3 *0x10000017; setenv ethaddr > 0:0:${u0}:${u1}:${u2}:${u3}; setenv usbethaddr ${ethaddr}; > OK this command worked for me. > Then if there is proper ethernet0 alias set, u-boot will then > automatically save the configured MAC address to the device tree. I've > just check this on recent u-boot v2020.10 and Odroid U3 board. > > Lukasz will send updated patch soon (with proper alias entry). > > If you want to hack setting MAC address manually, this will work with > the current patch: > > # setexp.b u0 *0x10000014; setexp.b u1 *0x10000015; setexp.b u2 > *0x10000016; setexp.b u3 *0x10000017; fdt addr ${fdtaddr}; fdt set > /soc/usb@12110000/hub@1/usbether@1 local-mac-address [ 0 0 ${u0} ${u1} > ${u2} ${u3} ] > So do we need a similar patch for u-boot ? I am getting following error on Odroid U3+ and U-Boot 2020.10 Odroid # setexp.b u0 *0x10000014; setexp.b u1 *0x10000015; setexp.b u2 *0x10000016; setexp.b u3 *0x10000017; fdt addr ${fdtaddr}; fdt set /soc/usb@12110000/hub@1/usbether@1 local-mac-address [ 0 0 ${u0} ${u1} ${u2} ${u3} ] No FDT memory address configured. Please configure the FDT address via "fdt addr
" command. Aborting! Also added these command to boot.scr but still observing the failure mmc0(part 0) is current device Scanning mmc 0:1... Found U-Boot script /boot/boot.scr 969 bytes read in 5 ms (188.5 KiB/s) ## Executing script at 42000000 7341440 bytes read in 265 ms (26.4 MiB/s) 53875 bytes read in 56 ms (939.5 KiB/s) 7964187 bytes read in 285 ms (26.6 MiB/s) libfdt fdt_path_offset() returned FDT_ERR_NOTFOUND Kernel image @ 0x41000000 [ 0x000000 - 0x700580 ] ## Flattened Device Tree blob at 40800000 Booting using the fdt blob at 0x40800000 Loading Ramdisk to 4f867000, end 4ffff61b ... OK Loading Device Tree to 4f856000, end 4f866272 ... OK , Best Regards -Anand > > also can you update this patch for exynos5422-odroidxu3-lite.dts and > > exynos4412-odroidu3.dts. > > Also odroid-x2 and odroid-xu. Lukasz will take care of them. > > Best regards > > -- > Marek Szyprowski, PhD > Samsung R&D Institute Poland > 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=-9.5 required=3.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,DKIM_VALID,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED 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 2F8A4C00A89 for ; Thu, 5 Nov 2020 08:08:26 +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 ADFE3206D4 for ; Thu, 5 Nov 2020 08:08:25 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="JQNvoj32"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="t1cy+4Pw" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org ADFE3206D4 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:To:Subject:Message-ID:Date:From:In-Reply-To: References:MIME-Version:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=pS0Ccf0G/iOaq5z/iAZN6HFCOel/8Je5YuvrJ13I2v0=; b=JQNvoj32MDCF5v8TOAflTFNCe e06ncW19n/n9r4XB5h1JREQGkZv/zcQDmlIqIFwd14ypnMZg8Oe7EyRdKymdbgT17EJxx9Y0XiGhj 6R2kE1AVKyuUG1YFurqR4hU+staTO5XZtzvJjdRQsYEdgCOIJ6Ijnps2k5Z1Gi5dR/0z+ElqHSBxF bf+Jcx4AE3kPOIwuwzWISqKptBfHdoYYNIlWlrvE262K5HbFMBceFMGn5LYtt/3bqCKlirSE07fNp cxeel5qcp0hpfiByQhT6007zjzNOR/a7SbB/VVXQSD9V65rDPsEy3Um71Cww019pBGB6bvNjpWInA fVDkGzSTQ==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kaaIW-0008Gm-Oa; Thu, 05 Nov 2020 08:07:08 +0000 Received: from mail-ej1-x643.google.com ([2a00:1450:4864:20::643]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kaaIT-0008Et-Eo for linux-arm-kernel@lists.infradead.org; Thu, 05 Nov 2020 08:07:06 +0000 Received: by mail-ej1-x643.google.com with SMTP id 7so1318636ejm.0 for ; Thu, 05 Nov 2020 00:07:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=Ejbix6obkvCfSt+UMVFN1Q6vNzvWmPHr/OGkrFfoLFs=; b=t1cy+4PwHGXn+yInQGTOcNHpRHZwsTgyldtVz1e6t3/dfyejQaexsQKzx9zUK8oTl2 +1A4K52qrignAy+RjVb3mBmJ31K04QCu44VWPNikzu55lfEClaBKYm9NCs9VlxYkfm1r ydKEIs4EU73mF/MumaK/E4Hqr51W1KWotAT/N3dcG369HNRcrE5Mw358wInGkXF3lHTO FQ/koqKnw/xDdVcyZV6ibxgGWIqlTqUNbr6xzS2HbHfPnRAYSLZtt9d+zdhKPIu3304T wbFzQKSIq2lfhwTN3SFt1nYAeVks61wtEN82F9rJitYUOUxs3q8PSeZKnGampPJDh3VL b4mQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=Ejbix6obkvCfSt+UMVFN1Q6vNzvWmPHr/OGkrFfoLFs=; b=mnLyrWlPz5UD1Uh9ITTS4fAa+F68efPZyaqGUpdR6bkqhuReiy62H7NBgxDpIRn6YN 2PVUEHSMxSrIGhAJCFhXM0pOOeGqAVdjoaxac92V2aQ632BIivCUXW0lJgH73os6/N2S x0w0YPLGZzxI1koPSaZsIBNat15N0MC+YpMJMQWsJEqc028gdfrlAT/UMawRt0yYO/uu KpScLjUlfSL84VEkMuEuBC3FNCOS1ICjBcLbX3J0ra4/jbTJ1wmz8Asq3KCaqISPCQdA xNDmhXDEpKr473N18crqgW3y+Bp4WHVkVsg6p2qeTExj6siSGZAm1PomCuSRgjT+j7dE fmig== X-Gm-Message-State: AOAM530ShcBZsUyyayIARgf1uJ3poBezoRdugKXo1XrEZ5UD7q7zDkgG MjtwNxwj9Hm7tmJRIJabc8jaejQHHRdUy00pVf0= X-Google-Smtp-Source: ABdhPJz3m2HtnIqDIg/WTO25pDMT0i+QQbqtvao1NdWSwCYoRUQX3lNPLxxIsLy8gXGTJ9Joiv/esRlckHgma7CscM8= X-Received: by 2002:a17:906:a098:: with SMTP id q24mr1098195ejy.191.1604563622509; Thu, 05 Nov 2020 00:07:02 -0800 (PST) MIME-Version: 1.0 References: <20200930143151.23961-1-l.stelmach@samsung.com> <20201001135254.28178-1-l.stelmach@samsung.com> <5ecd2e6d-6aaf-bff5-c000-2c56086ed95b@samsung.com> In-Reply-To: <5ecd2e6d-6aaf-bff5-c000-2c56086ed95b@samsung.com> From: Anand Moon Date: Thu, 5 Nov 2020 13:36:53 +0530 Message-ID: Subject: Re: [PATCH v2] ARM: dts: exynos: Add a placeholder for a MAC address To: Marek Szyprowski X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20201105_030705_515181_1713372A X-CRM114-Status: GOOD ( 33.02 ) 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: devicetree , linux-samsung-soc@vger.kernel.org, Bartlomiej Zolnierkiewicz , =?UTF-8?Q?=C5=81ukasz_Stelmach?= , Linux Kernel , Krzysztof Kozlowski , Rob Herring , Kukjin Kim , 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 SGkgTWFyZWssCgpPbiBNb24sIDIgTm92IDIwMjAgYXQgMjE6NTMsIE1hcmVrIFN6eXByb3dza2kg PG0uc3p5cHJvd3NraUBzYW1zdW5nLmNvbT4gd3JvdGU6Cj4KPiBIaSBBbmFuZCwKPgo+IE9uIDAx LjExLjIwMjAgMTU6MDcsIEFuYW5kIE1vb24gd3JvdGU6Cj4gPiBIaSBMdWthc3osCj4gPgo+ID4g T24gVGh1LCAxIE9jdCAyMDIwIGF0IDE5OjI1LCDFgXVrYXN6IFN0ZWxtYWNoIDxsLnN0ZWxtYWNo QHNhbXN1bmcuY29tPiB3cm90ZToKPiA+PiBBZGQgYSBwbGFjZWhvbGRlciBmb3IgYSBNQUMgYWRk cmVzcy4gQSBib290bG9hZGVyIG1heSBmaWxsIGl0Cj4gPj4gdG8gc2V0IHRoZSBNQUMgYWRkcmVz cyBhbmQgb3ZlcnJpZGUgRUVQUk9NIHNldHRpbmdzLgo+ID4+Cj4gPj4gU2lnbmVkLW9mZi1ieTog xYF1a2FzeiBTdGVsbWFjaCA8bC5zdGVsbWFjaEBzYW1zdW5nLmNvbT4KPiA+PiAtLS0KPiA+PiBD aGFuZ2VzIGluIHYyOgo+ID4+ICAgLSB1c2UgbG9jYWwtbWFjLWFkZHJlc3MgYW5kIGxlYXZlIG1h Yy1hZGRyZXNzIHRvIGJlIGFkZGVkIGJ5IGEgYm9vdGxvYWRlcgo+ID4+Cj4gPj4gICBhcmNoL2Fy bS9ib290L2R0cy9leHlub3M1NDIyLW9kcm9pZHh1My5kdHMgfCAxOCArKysrKysrKysrKysrKysr KysKPiA+PiAgIDEgZmlsZSBjaGFuZ2VkLCAxOCBpbnNlcnRpb25zKCspCj4gPj4KPiA+PiBkaWZm IC0tZ2l0IGEvYXJjaC9hcm0vYm9vdC9kdHMvZXh5bm9zNTQyMi1vZHJvaWR4dTMuZHRzIGIvYXJj aC9hcm0vYm9vdC9kdHMvZXh5bm9zNTQyMi1vZHJvaWR4dTMuZHRzCj4gPj4gaW5kZXggZGIwYmMx N2E2NjdiLi5kMGY2YWM1ZmE3OWQgMTAwNjQ0Cj4gPj4gLS0tIGEvYXJjaC9hcm0vYm9vdC9kdHMv ZXh5bm9zNTQyMi1vZHJvaWR4dTMuZHRzCj4gPj4gKysrIGIvYXJjaC9hcm0vYm9vdC9kdHMvZXh5 bm9zNTQyMi1vZHJvaWR4dTMuZHRzCj4gPj4gQEAgLTcwLDMgKzcwLDIxIEBAICZwd20gewo+ID4+ ICAgJnVzYmRyZF9kd2MzXzEgewo+ID4+ICAgICAgICAgIGRyX21vZGUgPSAicGVyaXBoZXJhbCI7 Cj4gPj4gICB9Owo+ID4+ICsKPiA+PiArJnVzYmhvc3QyIHsKPiA+PiArICAgICAgICNhZGRyZXNz LWNlbGxzID0gPDE+Owo+ID4+ICsgICAgICAgI3NpemUtY2VsbHMgPSA8MD47Cj4gPj4gKwo+ID4+ ICsgICAgICAgaHViQDEgewo+ID4+ICsgICAgICAgICAgICAgICBjb21wYXRpYmxlID0gInVzYjgw ODcsMDAyNCI7Cj4gPj4gKyAgICAgICAgICAgICAgIHJlZyA9IDwxPjsKPiA+PiArICAgICAgICAg ICAgICAgI2FkZHJlc3MtY2VsbHMgPSA8MT47Cj4gPj4gKyAgICAgICAgICAgICAgICNzaXplLWNl bGxzID0gPDA+Owo+ID4+ICsKPiA+PiArICAgICAgICAgICAgICAgZXRoZXJuZXQ6IHVzYmV0aGVy QDEgewo+ID4+ICsgICAgICAgICAgICAgICAgICAgICAgIGNvbXBhdGlibGUgPSAidXNiMGM0NSw2 MzEwIjsKPiA+PiArICAgICAgICAgICAgICAgICAgICAgICByZWcgPSA8MT47Cj4gPj4gKyAgICAg ICAgICAgICAgICAgICAgICAgbG9jYWwtbWFjLWFkZHJlc3MgPSBbMDAgMDAgMDAgMDAgMDAgMDBd OyAvKiBGaWxsZWQgaW4gYnkgYSBib290bG9hZGVyICovCj4gPj4gKyAgICAgICAgICAgICAgIH07 Cj4gPj4gKyAgICAgICB9Owo+ID4+ICt9Owo+ID4+IC0tCj4gPj4gMi4yNi4yCj4gPj4KPiA+IFRo YW5rcyBmb3IgdGhpcyBwYXRjaCwgY2FuIHlvdSBzaGFyZSBzb21lIGV4YW1wbGUgb24gaG93IHRv IHNldCB0aGUKPiA+IG1hYyBhZGRyZXNzIHZpYSB1LWJvb3QgYm9vdGFyZ3MKPgo+IEEgbGl0dGxl IGJpdCBoYWNreSBzY3JpcHQgdG8gc2V0IHBlcm1hbmVudCBib2FyZCB1bmlxdWUgTUFDIGFkZHJl c3M6Cj4KPiAjIHNldGV4cC5iIHUwICoweDEwMDAwMDE0OyBzZXRleHAuYiB1MSAqMHgxMDAwMDAx NTsgc2V0ZXhwLmIgdTIKPiAqMHgxMDAwMDAxNjsgc2V0ZXhwLmIgdTMgKjB4MTAwMDAwMTc7IHNl dGVudiBldGhhZGRyCj4gMDowOiR7dTB9OiR7dTF9OiR7dTJ9OiR7dTN9OyBzZXRlbnYgdXNiZXRo YWRkciAke2V0aGFkZHJ9Owo+Ck9LIHRoaXMgY29tbWFuZCB3b3JrZWQgZm9yIG1lLgoKPiBUaGVu IGlmIHRoZXJlIGlzIHByb3BlciBldGhlcm5ldDAgYWxpYXMgc2V0LCB1LWJvb3Qgd2lsbCB0aGVu Cj4gYXV0b21hdGljYWxseSBzYXZlIHRoZSBjb25maWd1cmVkIE1BQyBhZGRyZXNzIHRvIHRoZSBk ZXZpY2UgdHJlZS4gSSd2ZQo+IGp1c3QgY2hlY2sgdGhpcyBvbiByZWNlbnQgdS1ib290IHYyMDIw LjEwIGFuZCBPZHJvaWQgVTMgYm9hcmQuCj4KPiBMdWthc3ogd2lsbCBzZW5kIHVwZGF0ZWQgcGF0 Y2ggc29vbiAod2l0aCBwcm9wZXIgYWxpYXMgZW50cnkpLgo+Cj4gSWYgeW91IHdhbnQgdG8gaGFj ayBzZXR0aW5nIE1BQyBhZGRyZXNzIG1hbnVhbGx5LCB0aGlzIHdpbGwgd29yayB3aXRoCj4gdGhl IGN1cnJlbnQgcGF0Y2g6Cj4KPiAjIHNldGV4cC5iIHUwICoweDEwMDAwMDE0OyBzZXRleHAuYiB1 MSAqMHgxMDAwMDAxNTsgc2V0ZXhwLmIgdTIKPiAqMHgxMDAwMDAxNjsgc2V0ZXhwLmIgdTMgKjB4 MTAwMDAwMTc7IGZkdCBhZGRyICR7ZmR0YWRkcn07IGZkdCBzZXQKPiAvc29jL3VzYkAxMjExMDAw MC9odWJAMS91c2JldGhlckAxIGxvY2FsLW1hYy1hZGRyZXNzIFsgMCAwICR7dTB9ICR7dTF9Cj4g JHt1Mn0gJHt1M30gXQo+CgpTbyBkbyB3ZSBuZWVkIGEgc2ltaWxhciBwYXRjaCBmb3IgdS1ib290 ID8KSSBhbSBnZXR0aW5nIGZvbGxvd2luZyBlcnJvciBvbiBPZHJvaWQgVTMrIGFuZCBVLUJvb3Qg MjAyMC4xMAoKT2Ryb2lkICMgIHNldGV4cC5iIHUwICoweDEwMDAwMDE0OyBzZXRleHAuYiB1MSAq MHgxMDAwMDAxNTsgc2V0ZXhwLmIKdTIgKjB4MTAwMDAwMTY7IHNldGV4cC5iIHUzICoweDEwMDAw MDE3OyBmZHQgYWRkciAke2ZkdGFkZHJ9OyBmZHQgc2V0Ci9zb2MvdXNiQDEyMTEwMDAwL2h1YkAx L3VzYmV0aGVyQDEgbG9jYWwtbWFjLWFkZHJlc3MgWyAwIDAgJHt1MH0gJHt1MX0KJHt1Mn0gJHt1 M30gXQpObyBGRFQgbWVtb3J5IGFkZHJlc3MgY29uZmlndXJlZC4gUGxlYXNlIGNvbmZpZ3VyZQp0 aGUgRkRUIGFkZHJlc3MgdmlhICJmZHQgYWRkciA8YWRkcmVzcz4iIGNvbW1hbmQuCkFib3J0aW5n IQoKQWxzbyBhZGRlZCB0aGVzZSBjb21tYW5kIHRvIGJvb3Quc2NyIGJ1dCBzdGlsbCBvYnNlcnZp bmcgdGhlIGZhaWx1cmUKCm1tYzAocGFydCAwKSBpcyBjdXJyZW50IGRldmljZQpTY2FubmluZyBt bWMgMDoxLi4uCkZvdW5kIFUtQm9vdCBzY3JpcHQgL2Jvb3QvYm9vdC5zY3IKOTY5IGJ5dGVzIHJl YWQgaW4gNSBtcyAoMTg4LjUgS2lCL3MpCiMjIEV4ZWN1dGluZyBzY3JpcHQgYXQgNDIwMDAwMDAK NzM0MTQ0MCBieXRlcyByZWFkIGluIDI2NSBtcyAoMjYuNCBNaUIvcykKNTM4NzUgYnl0ZXMgcmVh ZCBpbiA1NiBtcyAoOTM5LjUgS2lCL3MpCjc5NjQxODcgYnl0ZXMgcmVhZCBpbiAyODUgbXMgKDI2 LjYgTWlCL3MpCmxpYmZkdCBmZHRfcGF0aF9vZmZzZXQoKSByZXR1cm5lZCBGRFRfRVJSX05PVEZP VU5ECktlcm5lbCBpbWFnZSBAIDB4NDEwMDAwMDAgWyAweDAwMDAwMCAtIDB4NzAwNTgwIF0KIyMg RmxhdHRlbmVkIERldmljZSBUcmVlIGJsb2IgYXQgNDA4MDAwMDAKICAgQm9vdGluZyB1c2luZyB0 aGUgZmR0IGJsb2IgYXQgMHg0MDgwMDAwMAogICBMb2FkaW5nIFJhbWRpc2sgdG8gNGY4NjcwMDAs IGVuZCA0ZmZmZjYxYiAuLi4gT0sKICAgTG9hZGluZyBEZXZpY2UgVHJlZSB0byA0Zjg1NjAwMCwg ZW5kIDRmODY2MjcyIC4uLiBPSwosCkJlc3QgUmVnYXJkcwotQW5hbmQKCj4gPiBhbHNvIGNhbiB5 b3UgdXBkYXRlIHRoaXMgcGF0Y2ggZm9yIGV4eW5vczU0MjItb2Ryb2lkeHUzLWxpdGUuZHRzIGFu ZAo+ID4gZXh5bm9zNDQxMi1vZHJvaWR1My5kdHMuCj4KPiBBbHNvIG9kcm9pZC14MiBhbmQgb2Ry b2lkLXh1LiBMdWthc3ogd2lsbCB0YWtlIGNhcmUgb2YgdGhlbS4KPgo+IEJlc3QgcmVnYXJkcwo+ Cj4gLS0KPiBNYXJlayBTenlwcm93c2tpLCBQaEQKPiBTYW1zdW5nIFImRCBJbnN0aXR1dGUgUG9s YW5kCj4KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxp bnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFk ZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4 LWFybS1rZXJuZWwK