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 CFF80C77B61 for ; Thu, 27 Apr 2023 11:28:39 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S243152AbjD0L2i (ORCPT ); Thu, 27 Apr 2023 07:28:38 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40606 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233094AbjD0L2h (ORCPT ); Thu, 27 Apr 2023 07:28:37 -0400 Received: from esa.microchip.iphmx.com (esa.microchip.iphmx.com [68.232.153.233]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8B69CE4 for ; Thu, 27 Apr 2023 04:28:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=microchip.com; i=@microchip.com; q=dns/txt; s=mchp; t=1682594910; x=1714130910; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=O4P9y79+rqCqETpw6leUdwvt3W3w4UBMPlrbo4hiL4w=; b=ecbaSn9SoDkxr+yC1ZWdWv00DtA/Bey8qMBv/FUztx7lb0zNeB1q3com QTDaeFGkE/Wi8MfhbH+dju0c3Pv0bgkAxDGY4YN94shKKhBki5cx30cH2 h9G281vNnnDUeXJA+0rJNqRVcormBsKU8cqxpsNvmfqNlNSLTRz05rl5O OZ4aE54HPtzdhEG0xoAs/gTMGN1moJyBbA7Dg7kS9brWkVNcXWQ8K6Fg2 Whub7bMAGFGGrQA5I6I4qDDsO1qo/+4mjYl/kHgPqBP00gCustQ/YI9F0 CMZCLeg/JKx6GXzJj7ak1imJFxUCGyMJxU2HqisC7P3XE5utk2aeWPSoD A==; X-IronPort-AV: E=Sophos;i="5.99,230,1677567600"; d="scan'208";a="210947028" X-Amp-Result: SKIPPED(no attachment in message) Received: from unknown (HELO email.microchip.com) ([170.129.1.10]) by esa3.microchip.iphmx.com with ESMTP/TLS/AES256-SHA256; 27 Apr 2023 04:28:30 -0700 Received: from chn-vm-ex03.mchp-main.com (10.10.85.151) by chn-vm-ex04.mchp-main.com (10.10.85.152) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.21; Thu, 27 Apr 2023 04:28:28 -0700 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (10.10.215.89) by email.microchip.com (10.10.87.152) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.21 via Frontend Transport; Thu, 27 Apr 2023 04:28:28 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WUh9tIqXCZmy23YXrXbC07kNhjjbjQPkiReQI6156StmVnR/HQ0cQa3wLn1cTcF5q51JvjXpY7qGWGirJYyDJVCYYsUTywr2gK4gMDu/pQaI9rsfoSBBSMa16melXA8ztqsEg0hcvDO14WZDzmgNNYFkKUFuIGMxJWo12KmkGPPiX+VHSMIa1yzwRoLBTF1ofdzzx8ejeKfewqB/3x/wKDwzw1XuqpzWb10rAdbfyXSHTGAGaFk7E0qMBF4gjumdc9YA0GcnDS3R2uFafpqwp+FoZ15hiHDKAQW5iCnRlpOMNGwlOj3o7ug3DUCt2rURg8vJokZR5yMFplc1tBKBRw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=O4P9y79+rqCqETpw6leUdwvt3W3w4UBMPlrbo4hiL4w=; b=FgBfyk2suhRBn8YwaCFUFg0OVaqVYIUFK7R2WsspogTrCBmAqJeshafP1fjGuElZECZlaKdenxSGK700+8n70N4VP476awXmcd8IJRURplV0EKN1AfvfD99NTx2rw2wGeJRp0BSGjzypAu9pXWGRHKXi1inv0CZvQt2XjmGUNytzAi/OGMQACaGroxKEu9IBGJKZmn+EBxcXiehDL92KUdC9j/+rbIJDai8zKf/5gKtQo2+48liwYhDfo/AELWt3Mjoep5upQFZtoOPC76AhaX0yotbViiFOsggpXe9p7Hd2ChcwktEs17JnHUbKMmv9izCAiqPBawL+2bT8nOrVbg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=microchip.com; dmarc=pass action=none header.from=microchip.com; dkim=pass header.d=microchip.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=microchiptechnology.onmicrosoft.com; s=selector2-microchiptechnology-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=O4P9y79+rqCqETpw6leUdwvt3W3w4UBMPlrbo4hiL4w=; b=JJVsmiAg8BLXxWHo+XcIxYRmDe9YtJwhK3HdqK502pNSST58x4XKBve/dY4LKSnAnNSIdfT27r7JKEdbJiu0rcOaX2pa7twVPFhrFYfHas7gxuSzdJUrxm4nxSez3Pr9gCRZSALrKn3vc2HBBYbdyIi/wn2X6DVIBg1GegCIADo= Received: from DM6PR11MB3532.namprd11.prod.outlook.com (2603:10b6:5:70::25) by SJ0PR11MB5086.namprd11.prod.outlook.com (2603:10b6:a03:2d1::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6340.22; Thu, 27 Apr 2023 11:28:25 +0000 Received: from DM6PR11MB3532.namprd11.prod.outlook.com ([fe80::1c94:f1ec:9898:11df]) by DM6PR11MB3532.namprd11.prod.outlook.com ([fe80::1c94:f1ec:9898:11df%5]) with mapi id 15.20.6340.021; Thu, 27 Apr 2023 11:28:25 +0000 From: To: CC: , , , , , Subject: Re: [PATCH net-next 2/2] net: phy: microchip_t1s: add support for Microchip LAN865x Rev.B0 PHYs Thread-Topic: [PATCH net-next 2/2] net: phy: microchip_t1s: add support for Microchip LAN865x Rev.B0 PHYs Thread-Index: AQHZeDS4+uhGlxLTVEmm8UA24iRXs68+GckAgADszwA= Date: Thu, 27 Apr 2023 11:28:25 +0000 Message-ID: References: <20230426114655.93672-1-Parthiban.Veerasooran@microchip.com> <20230426114655.93672-3-Parthiban.Veerasooran@microchip.com> <20230426212144.xze2t4vfggziuhk6@soft-dev3-1> In-Reply-To: <20230426212144.xze2t4vfggziuhk6@soft-dev3-1> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.10.0 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=microchip.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DM6PR11MB3532:EE_|SJ0PR11MB5086:EE_ x-ms-office365-filtering-correlation-id: 0e436728-c818-4b77-d9fa-08db4712842a x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: DPnFAq7S241PDD3xbgoXykOHMeLb5vBLTNfzTri0C4Uw3DN82kKg/wzDx3adCiXbymM+JsleFRWqGFnlJPKH8RY3xI8pre5dEIryayPyQflIBYNjUpqp3+0YuWYQCG6QBkoN/UoQxzqXaH4xZ4ib63tDgkAjjK7atAR6C6VUxxPYEGBlasIxL2Jd7c9pDPZoENlmYYXaDa5R4/vPXVomb/nY9TDkFg1NAQaOq8o4NCQsIo+cOMs4tMeRmXSUpxL2qKugbR3jNjapMgmV6/NRITFC4mZwlE6Ejmf6lrIGKiqhztaZpJtk5L8somrRCazAjI9/nCXB0UNtiucNpUgtg8tn4SkacQaDjjYKx3Z3H2iLa7ERm8+I3fyhgykxt96QNH/kbDTEoWCwzpJeeOc5l3ICLwXNl/mW5BToLVZTi8WPOC3Phc0pMpVtf0gNq7hR7DWD6BZlNsO149rWLQUnflDs0EsHbARSthNrm7To7A8NoZd2YuW3MC/1CbyBjj2afTf1zPv2xoCffwTKKofD6YyFTDDW3n4FZjAb92KAo79i1YMEHmvAHbolIjrSVoifFRndE6DD6B3rDuWIN9mVGEjXq+CYg0jdCmsX8y0KszoJHqV/AKtf8XleyTlQttS5rZsdBcTLIBf/ALhD85nwxjTO4CCBU93PlQHGM1NBGqcwhCLnDsjKFTvxPKrdVliR x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR11MB3532.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(366004)(136003)(376002)(39860400002)(396003)(451199021)(6486002)(71200400001)(36756003)(83380400001)(66574015)(2616005)(186003)(86362001)(122000001)(38100700002)(31696002)(38070700005)(26005)(6512007)(53546011)(6506007)(91956017)(316002)(30864003)(76116006)(2906002)(66946007)(4326008)(66556008)(66476007)(64756008)(66446008)(37006003)(5660300002)(6862004)(8676002)(8936002)(41300700001)(31686004)(6636002)(54906003)(478600001)(45980500001)(43740500002);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?OEd6M3ZKMmdVSTFWb3o4d2JwYytPaXRjbGgzSFNxNEtqQXBuVFh6VTJidkRY?= =?utf-8?B?d1lQNkVLSUJ2Lzhnc0dNUWd3eitjL2dVeXNvRStHbkVzNTV6SlVIWGlLMEdY?= =?utf-8?B?V1ZoYVE5UlRuLzF0MmdiZTh2WEdwM3p5RkFyQjBYVWUyeG4zZWd6bkViZEN4?= =?utf-8?B?ckw3UEF2SHdLYW12MHNtd0pvaS9OVmxTVkZoMnVYcjl4NHZsam1teEkxUkFT?= =?utf-8?B?UVpXekIxc1I3UHNmUWVlVjRwK3l1aXlQMDc5Rk8rUy94bndyVklmODhGU2ZI?= =?utf-8?B?a0lBdXh1ZnFBZmZPb1lrS3RSL2ZzamV1UVlva0JwT1VaZHMzT2MycjB0WUcw?= =?utf-8?B?Q3d0d1dKMHE3SVJSa3Btb1NIOHdvSS9FaW5mbXk4cXkyeHM2ZERSL0FaNWU3?= =?utf-8?B?K0owYUN5aU1ocUlQUUxoWWZkK1AyVDFFS3k4Y2k2RmFKTGx2M1VzMkhoOE12?= =?utf-8?B?QjZlYlYvWjRkem9UbWtJR055NkdETDdBbk1IK2hEcVNONzlHekFkV1diZnVl?= =?utf-8?B?VTU5OHBMbXdaOUdONTVIWUs3T0c0cEphSENFd05aWmwyU0Q0TzJXNVZ3b2Fk?= =?utf-8?B?VWhKYnJoR3VvV21iZHNVUmtvS3M1Q09QbFV1VjJnbjNUb1ZYZUxoVzJsNjZY?= =?utf-8?B?S09Mamp6NVlXRWpRRlNobDAreHU5SXJ3YU9LakZBNnc4MWNaWDBDMUJSZDRE?= =?utf-8?B?eTJVUWh3YnFtY3d0cHlISFpVMEozZU42eDYrR1cyNE1KRzRaakZDdUJRWEJy?= =?utf-8?B?WjU1RjZBVFQ1MFl3a2JpaU5aR21WTUhHNTFWa3I4bk9MM0NNVVFvTGs2RDJE?= =?utf-8?B?eEZNY2NpejB4aHROWE5CL21ZekVhTzRKTlZRL29pVWRvRmRxSk9QSzFpOXVM?= =?utf-8?B?MCtzVnM5a0M1U25GOGs2N01sYWhiNnYyQ1NBMTh6eStLTFExVnZkclJYQU5t?= =?utf-8?B?blljZ29kRHJxMWg5MWVsdnJIbU5BazVmNW0vdjFxbmIraGhlLytGZnVyRVBm?= =?utf-8?B?dkZITSt6WUIvZ1pZazBvbUswNHFqei9FM0cycm14ZmF3d2RGL215T01qSEp5?= =?utf-8?B?M21ySXBrK2JXVlM0anl2WlZ1ckVDbzh5d0JKY0IvUE02SUdFM0ZWdmwyaGRB?= =?utf-8?B?cjhLZDdtUHVmYWY0U0ttREIzT0xkTFh2SHhlQjd2ZlN3dWFiUm1PeWU0cW10?= =?utf-8?B?b3FzVWd0cy9MUS9jU1BhRzQrZXlaL2FEMzI3LzNNVXV1N1dBeUJydC9NdUQx?= =?utf-8?B?STlxWGFYR2lwSFJQSTVYczErYkhuSm1WdHdWY1FRdW5lb1lrRFJIc3lmbjNZ?= =?utf-8?B?STRFeWdHQmJkR2U5T1lLZEFHQkp1ZU9sT2RJUlVydUo2eUtxaDg4THVWOEE0?= =?utf-8?B?bnRyOENiQnRoanVwQ2t5YmVNcUVZZHE0V2thTkdHZk9Kb1V3UHIxSzdNZTNM?= =?utf-8?B?SUlCaGRWRUd5TVZxL2lVWTFURlp0dGFIbW9ZeXU2V2NPRGFtVUVsMTNVRzFr?= =?utf-8?B?NFBzbVZybTd6Zmk2YWYvSXNpMStNRGhyR2plS2hNVzAzVU9Cb0x2Z1JxV1Ns?= =?utf-8?B?VDM0YVVlb0thVFowcndLOUkzcnhlc0FoMzc2UmJnaVlnR1NSamZFMDU0ZEpR?= =?utf-8?B?bDB5UkdLZHM0dW1PMzFvWGJHdmY3c0tyd0hENWtyQnhDbG1aNDdaa0o4SllD?= =?utf-8?B?bTZMUEszeEg1allPZVRHMnkzYmdpYnE0YzE5L2t3VXZXNXYveWdDZ1hRWEpq?= =?utf-8?B?VEZqYjcwMmVMMG5CbzZOL3RvR1NRSTdaeEo1WFBqaG9CMW01ejZPTWVESUpU?= =?utf-8?B?TFFYNUZlc1JPQnJ4M3ZSQ2VLbXNNNnVUNjJ2UjlOOWtBY2t6eHA0UlVDekNR?= =?utf-8?B?emdIRlVFZThRNE1RUWxpRTB4Y2lkaWtsNHFmUDVnZFVRc1hONDVhdmFSNUF4?= =?utf-8?B?blhXbWFaeGpQeDVPMjRJY1A1VjJxRFlnSXRrL1puUEpFd2FWUDdaUjY1cFZs?= =?utf-8?B?TGw2enY5b2dOMzhqV0NHL21xckVUMlZ2enp0a2dVMUdZeFp5dlRTVmpxUFJ3?= =?utf-8?B?SlZQQ3U3UGwzeTlpZ1A1WnN3RHhqeFRaVSsyVUtnMExnL3hncVRtOVpKMVJ2?= =?utf-8?B?SFplR1VCanlvNiszc0pIUzhjRXI2OWVWM2QrMHVNMUh1cXVjRmppd3JuMEt6?= =?utf-8?B?Y2c9PQ==?= Content-Type: text/plain; charset="utf-8" Content-ID: <7DF9824FE68B084CAC3DEBA7EB1AB5C4@namprd11.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM6PR11MB3532.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0e436728-c818-4b77-d9fa-08db4712842a X-MS-Exchange-CrossTenant-originalarrivaltime: 27 Apr 2023 11:28:25.5225 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3f4057f3-b418-4d4e-ba84-d55b4e897d88 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: ufqBh9gX+sp1NCAap2GZvOD/DBgArh7m2fYSav6rls+3DjNwpk+qkJIspMuOqQxHcHHVmarCTsDayH5hJiegfbk+ED4Ov56vgQ3cYs2rxHkPYoXZqmfN99Sghq091xfc X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR11MB5086 Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org SGkgSG9yYXRpdSwNCg0KVGhhbmtzIGZvciByZXZpZXdpbmcgbXkgcGF0Y2hlcy4gUGxlYXNlIHNl ZSBteSBjb21tZW50cyBiZWxvdy4NCg0KQmVzdCBSZWdhcmRzLA0KUGFydGhpYmFuIFYNCk9uIDI3 LzA0LzIzIDI6NTEgYW0sIEhvcmF0aXUgVnVsdHVyIHdyb3RlOg0KPiBUaGUgMDQvMjYvMjAyMyAx NzoxNiwgUGFydGhpYmFuIFZlZXJhc29vcmFuIHdyb3RlOg0KPiANCj4gSGkgUGFydGhpYmFuLA0K PiANCj4+DQo+PiBUaGlzIHBhdGNoIGFkZHMgc3VwcG9ydCBmb3IgdGhlIE1pY3JvY2hpcCBMQU44 NjV4IFJldi5CMCAxMEJBU0UtVDFTDQo+PiBJbnRlcm5hbCBQSFlzIChMQU44NjUwLzEpLiBUaGUg TEFOODY1eCBjb21iaW5lcyBhIE1lZGlhIEFjY2VzcyBDb250cm9sbGVyDQo+PiAoTUFDKSBhbmQg YW4gaW50ZXJuYWwgMTBCQVNFLVQxUyBFdGhlcm5ldCBQSFkgdG8gYWNjZXNzIDEwQkFTReKAkVQx Uw0KPj4gbmV0d29ya3MuDQo+IA0KPiBJIHJlYWxseSB0aG91Z2h0IHRoYXQgZmlyc3Qgd2Ugd2ls bCBoYXZlIGFuIGludGVybmFsIHJldmlldyBhcyB3ZQ0KPiBkaXNjdXNzZWQgYmVmb3JlIHNlbmRp bmcgdGhpcyBvdXQhDQpBcyB0aGUgaW5pdGlhbCB2ZXJzaW9uIG9mIHRoZSBtaWNyb2NoaXAgMTBC QVNFLVQxUyBQSFkgZHJpdmVyIGlzIGFscmVhZHkgDQppbiB0aGUgbWFpbmxpbmUgd2l0aCBsYW44 Njd4IHN1cHBvcnQsIEkgc2VudCB0aGVzZSBwYXRjaGVzIGRpcmVjdGx5IHRvIA0KYXBwbHkgb24g dG9wIG9mIHRoYXQuDQpEZWZpbml0ZWx5IGZvciB0aGUgdXBjb21pbmcgbmV3IGRyaXZlcnMgaW4g dGhlIHBpcGVsaW5lLCBJIHdpbGwgYXBwcm9hY2ggDQpmb3IgdGhlIGludGVybmFsIHJldmlldyB3 aXRoIHlvdSBmaXJzdCBiZWZvcmUgZ29pbmcgdG8gdGhlIG1haW5saW5lLg0KDQpTb3JyeSBpZiBJ IGhhZCBhIG1pc2NvbW11bmljYXRpb24gaGVyZS4NCg0KQWxzbyBwbGVhc2UgbGV0IG1lIGtub3cg aWYgeW91IGhhdmUgb3RoZXIgcHJvcG9zYWw/DQo+IA0KPj4NCj4+IFNpZ25lZC1vZmYtYnk6IFBh cnRoaWJhbiBWZWVyYXNvb3JhbiA8UGFydGhpYmFuLlZlZXJhc29vcmFuQG1pY3JvY2hpcC5jb20+ DQo+PiAtLS0NCj4+ICAgZHJpdmVycy9uZXQvcGh5L21pY3JvY2hpcF90MXMuYyB8IDIwMCArKysr KysrKysrKysrKysrKysrKysrKysrKysrKystLQ0KPj4gICAxIGZpbGUgY2hhbmdlZCwgMTkxIGlu c2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pDQo+Pg0KPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv bmV0L3BoeS9taWNyb2NoaXBfdDFzLmMgYi9kcml2ZXJzL25ldC9waHkvbWljcm9jaGlwX3Qxcy5j DQo+PiBpbmRleCA3OTNmYjAyMTA2MDUuLjNkOGQyODViM2MzNCAxMDA2NDQNCj4+IC0tLSBhL2Ry aXZlcnMvbmV0L3BoeS9taWNyb2NoaXBfdDFzLmMNCj4+ICsrKyBiL2RyaXZlcnMvbmV0L3BoeS9t aWNyb2NoaXBfdDFzLmMNCj4+IEBAIC00LDYgKzQsNyBAQA0KPj4gICAgKg0KPj4gICAgKiBTdXBw b3J0OiBNaWNyb2NoaXAgUGh5czoNCj4+ICAgICogIGxhbjg2NzAvMS8yIFJldi5CMQ0KPj4gKyAq ICBsYW44NjUwLzEgUmV2LkIwIEludGVybmFsIFBIWXMNCj4+ICAgICovDQo+Pg0KPj4gICAjaW5j bHVkZSA8bGludXgva2VybmVsLmg+DQo+PiBAQCAtMTEsOSArMTIsMTAgQEANCj4+ICAgI2luY2x1 ZGUgPGxpbnV4L3BoeS5oPg0KPj4NCj4+ICAgI2RlZmluZSBQSFlfSURfTEFOODY3WF9SRVZCMSAw eDAwMDdDMTYyDQo+PiArI2RlZmluZSBQSFlfSURfTEFOODY1WF9SRVZCMCAweDAwMDdDMUIzDQo+ Pg0KPj4gLSNkZWZpbmUgTEFOODY3WF9SRUdfSVJRXzFfQ1RMIDB4MDAxQw0KPj4gLSNkZWZpbmUg TEFOODY3WF9SRUdfSVJRXzJfQ1RMIDB4MDAxRA0KPj4gKyNkZWZpbmUgTEFOODZYWF9SRUdfSVJR XzFfQ1RMIDB4MDAxQw0KPj4gKyNkZWZpbmUgTEFOODZYWF9SRUdfSVJRXzJfQ1RMIDB4MDAxRA0K Pj4NCj4+ICAgLyogVGhlIGFycmF5cyBiZWxvdyBhcmUgcHVsbGVkIGZyb20gdGhlIGZvbGxvd2lu ZyB0YWJsZSBmcm9tIEFOMTY5OQ0KPj4gICAgKiBBY2Nlc3MgTU1EIEFkZHJlc3MgVmFsdWUgTWFz aw0KPj4gQEAgLTQ5LDYgKzUxLDE3NCBAQCBzdGF0aWMgY29uc3QgaW50IGxhbjg2N3hfcmV2YjFf Zml4dXBfbWFza3NbMTJdID0gew0KPj4gICAgICAgICAgMHgwNjAwLCAweDdGMDAsIDB4MjAwMCwg MHhGRkZGLA0KPj4gICB9Ow0KPj4NCj4+ICsvKiBMQU44NjV4IFJldi5CMCBjb25maWd1cmF0aW9u IHBhcmFtZXRlcnMgZnJvbSBBTjE3NjANCj4+ICsgKi8NCj4gDQo+IFlvdSBjYW4gcHV0ICovIG9u IHByZXZpb3VzIGxpbmUuDQpTdXJlLCB3aWxsIGRvLg0KPiANCj4+ICtzdGF0aWMgY29uc3QgaW50 IGxhbjg2NXhfcmV2YjBfZml4dXBfcmVnaXN0ZXJzWzI4XSA9IHsNCj4+ICsgICAgICAgMHgwMDkx LCAweDAwODEsIDB4MDA0MywgMHgwMDQ0LA0KPj4gKyAgICAgICAweDAwNDUsIDB4MDA1MywgMHgw MDU0LCAweDAwNTUsDQo+PiArICAgICAgIDB4MDA0MCwgMHgwMDUwLCAweDAwRDAsIDB4MDBFOSwN Cj4+ICsgICAgICAgMHgwMEY1LCAweDAwRjQsIDB4MDBGOCwgMHgwMEY5LA0KPj4gKyAgICAgICAw eDAwQjAsIDB4MDBCMSwgMHgwMEIyLCAweDAwQjMsDQo+PiArICAgICAgIDB4MDBCNCwgMHgwMEI1 LCAweDAwQjYsIDB4MDBCNywNCj4+ICsgICAgICAgMHgwMEI4LCAweDAwQjksIDB4MDBCQSwgMHgw MEJCLA0KPj4gK307DQo+PiArDQo+PiArc3RhdGljIGNvbnN0IGludCBsYW44NjV4X3JldmIwX2Zp eHVwX3ZhbHVlc1syOF0gPSB7DQo+IA0KPiBDYW4ndCB0aGlzIGJlIHUxNj8gQXMgdGhpcyBpcyB1 c2VkIG9ubHkgYnkgcGh5X3dyaXRlX21tZCB3aGljaCBnZXRzIGFuDQo+IHUxNi4NCnllcywgd2ls bCBkbyBpdC4NCj4gDQo+PiArICAgICAgIDB4OTY2MCwgMHgwMEMwLCAweDAwRkYsIDB4RkZGRiwN Cj4+ICsgICAgICAgMHgwMDAwLCAweDAwRkYsIDB4RkZGRiwgMHgwMDAwLA0KPj4gKyAgICAgICAw eDAwMDIsIDB4MDAwMiwgMHg1RjIxLCAweDlFNTAsDQo+PiArICAgICAgIDB4MUNGOCwgMHhDMDIw LCAweDlCMDAsIDB4NEU1MywNCj4+ICsgICAgICAgMHgwMTAzLCAweDA5MTAsIDB4MUQyNiwgMHgw MDJBLA0KPj4gKyAgICAgICAweDAxMDMsIDB4MDcwRCwgMHgxNzIwLCAweDAwMjcsDQo+PiArICAg ICAgIDB4MDUwOSwgMHgwRTEzLCAweDFDMjUsIDB4MDAyQiwNCj4+ICt9Ow0KPj4gKw0KPj4gKy8q IGluZGlyZWN0IHJlYWQgcHNldWRvY29kZSBmcm9tIEFOMTc2MA0KPiANCj4gSW4gdGhlIGVudGly ZSBmaWxlLCBzb21ldGltZXMgd2hlbiB5b3Ugd3JpdGUgdGhlIGNvbW1lbnQgeW91IHN0YXJ0IHdp dGgNCj4gYSBsb3dlciBjYXNlLCBzb21ldGltZXMgd2l0aCBhbiB1cHBlciBjYXNlLCBwbGVhc2Ug YmUgY29uc2lzdGVudC4NClN1cmUsIEkgd2lsbC4NCj4gDQo+PiArICogd3JpdGVfcmVnaXN0ZXIo MHg0LCAweDAwRDgsIGFkZHIpDQo+PiArICogd3JpdGVfcmVnaXN0ZXIoMHg0LCAweDAwREEsIDB4 MikNCj4+ICsgKiByZXR1cm4gKGludDgpKHJlYWRfcmVnaXN0ZXIoMHg0LCAweDAwRDkpKQ0KPj4g KyAqLw0KPj4gK3N0YXRpYyBpbnQgbGFuODY1eF9yZXZiMF9pbmRpcmVjdF9yZWFkKHN0cnVjdCBw aHlfZGV2aWNlICpwaHlkZXYsIHUxNiBhZGRyKQ0KPj4gK3sNCj4+ICsgICAgICAgaW50IHJldDsN Cj4+ICsNCj4+ICsgICAgICAgcmV0ID0gcGh5X3dyaXRlX21tZChwaHlkZXYsIE1ESU9fTU1EX1ZF TkQyLCAweEQ4LCBhZGRyKTsNCj4+ICsgICAgICAgaWYgKHJldCkNCj4+ICsgICAgICAgICAgICAg ICByZXR1cm4gcmV0Ow0KPj4gKw0KPj4gKyAgICAgICByZXQgPSBwaHlfd3JpdGVfbW1kKHBoeWRl diwgTURJT19NTURfVkVORDIsIDB4REEsIDB4MDAwMik7DQo+PiArICAgICAgIGlmIChyZXQpDQo+ PiArICAgICAgICAgICAgICAgcmV0dXJuIHJldDsNCj4+ICsNCj4+ICsgICAgICAgcmV0ID0gcGh5 X3JlYWRfbW1kKHBoeWRldiwgTURJT19NTURfVkVORDIsIDB4RDkpOw0KPiANCj4gWW91IGNhbiBy ZXR1cm4gcGh5X3JlYWRfbW1kLCB0aGVyZSBpcyBubyBwb2ludCB0byBjaGVjayB0aGUgcmV0IGhl cmUuDQpBaCBnb29kIGlkZWEuDQo+IA0KPj4gKyAgICAgICBpZiAocmV0IDwgMCkNCj4+ICsgICAg ICAgICAgICAgICByZXR1cm4gcmV0Ow0KPj4gKw0KPj4gKyAgICAgICByZXR1cm4gcmV0Ow0KPj4g K30NCj4+ICsNCj4+ICtzdGF0aWMgaW50IGxhbjg2NXhfc2V0dXBfY2ZncGFyYW0oc3RydWN0IHBo eV9kZXZpY2UgKnBoeWRldikNCj4+ICt7DQo+PiArICAgICAgIHM4IG9mZnNldDE7DQo+PiArICAg ICAgIHM4IG9mZnNldDI7DQo+PiArICAgICAgIHM4IHZhbHVlOw0KPj4gKyAgICAgICB1MTYgY2Zn cGFyYW07DQo+PiArICAgICAgIGludCByZXQ7DQo+IA0KPiBQbGVhc2UgdXNlIHJldmVyc2UgY2hy aXN0bWFzIG5vdGF0aW9uDQpTdXJlLCBJIHdpbGwuDQo+IA0KPj4gKw0KPj4gKyAgICAgICByZXQg PSBsYW44NjV4X3JldmIwX2luZGlyZWN0X3JlYWQocGh5ZGV2LCAweDAwMDQpOw0KPj4gKyAgICAg ICBpZiAocmV0IDwgMCkNCj4+ICsgICAgICAgICAgICAgICByZXR1cm4gcmV0Ow0KPj4gKyAgICAg ICB2YWx1ZSA9IChzOClyZXQ7DQo+PiArICAgICAgIC8qIENhbGN1bGF0aW9uIG9mIGNvbmZpZ3Vy YXRpb24gb2Zmc2V0IDEgZnJvbSBBTjE3NjANCj4+ICsgICAgICAgICovDQo+IA0KPiBBZ2Fpbiwg eW91IGNhbiBwdXQgKi8gb24gdGhlIHByZXZpb3VzIGxpbmUuIFRoZXJlIG90aGVyIHBsYWNlcyBp biB0aGUNCj4gZmlsZSwgSSB3aWxsIG5vdCBtZW50aW9uIGFsbCBvZiB0aGVtLg0KU3VyZSwgSSB3 aWxsLg0KPiANCj4+ICsgICAgICAgaWYgKCh2YWx1ZSAmIDB4MTApICE9IDApDQo+PiArICAgICAg ICAgICAgICAgb2Zmc2V0MSA9IHZhbHVlIHwgMHhFMDsNCj4+ICsgICAgICAgZWxzZQ0KPj4gKyAg ICAgICAgICAgICAgIG9mZnNldDEgPSB2YWx1ZTsNCj4+ICsNCj4+ICsgICAgICAgcmV0ID0gbGFu ODY1eF9yZXZiMF9pbmRpcmVjdF9yZWFkKHBoeWRldiwgMHgwMDA4KTsNCj4+ICsgICAgICAgaWYg KHJldCA8IDApDQo+PiArICAgICAgICAgICAgICAgcmV0dXJuIHJldDsNCj4+ICsgICAgICAgdmFs dWUgPSAoczgpcmV0Ow0KPj4gKyAgICAgICAvKiBDYWxjdWxhdGlvbiBvZiBjb25maWd1cmF0aW9u IG9mZnNldCAyIGZyb20gQU4xNzYwDQo+PiArICAgICAgICAqLw0KPj4gKyAgICAgICBpZiAoKHZh bHVlICYgMHgxMCkgIT0gMCkNCj4+ICsgICAgICAgICAgICAgICBvZmZzZXQyID0gdmFsdWUgfCAw eEUwOw0KPj4gKyAgICAgICBlbHNlDQo+PiArICAgICAgICAgICAgICAgb2Zmc2V0MiA9IHZhbHVl Ow0KPj4gKw0KPj4gKyAgICAgICAvKiBjYWxjdWxhdGUgYW5kIHdyaXRlIHRoZSBjb25maWd1cmF0 aW9uIHBhcmFtZXRlcnMgaW4gdGhlDQo+PiArICAgICAgICAqIDB4MDA4NCwgMHgwMDhBLCAweDAw QUQsIDB4MDBBRSBhbmQgMHgwMEFGIHJlZ2lzdGVycyAoZnJvbSBBTjE3NjApDQo+PiArICAgICAg ICAqLw0KPj4gKyAgICAgICByZXQgPSBwaHlfcmVhZF9tbWQocGh5ZGV2LCBNRElPX01NRF9WRU5E MiwgMHgwMDg0KTsNCj4+ICsgICAgICAgaWYgKHJldCA8IDApDQo+PiArICAgICAgICAgICAgICAg cmV0dXJuIHJldDsNCj4+ICsgICAgICAgY2ZncGFyYW0gPSAocmV0ICYgMHhGKSB8ICgoKDkgKyBv ZmZzZXQxKSA8PCAxMCkgfA0KPj4gKyAgICAgICAgICAgICAgICAgICAoKDE0ICsgb2Zmc2V0MSkg PDwgNCkpOw0KPiANCj4gV2hhdCBhYm91dCB1c2luZyBGSUVMRF9QUkVQIHRvIHNraXAgYWxsIDw8 Pw0KT2sgbm90ZWQuDQo+IA0KPj4gKyAgICAgICByZXQgPSBwaHlfd3JpdGVfbW1kKHBoeWRldiwg TURJT19NTURfVkVORDIsIDB4ODQsIGNmZ3BhcmFtKTsNCj4+ICsgICAgICAgaWYgKHJldCkNCj4+ ICsgICAgICAgICAgICAgICByZXR1cm4gcmV0Ow0KPj4gKw0KPj4gKyAgICAgICByZXQgPSBwaHlf cmVhZF9tbWQocGh5ZGV2LCBNRElPX01NRF9WRU5EMiwgMHgwMDhBKTsNCj4gDQo+IFNtYWxsIHRo aW5nLCBoZXJlIHlvdSB1c2UgMHgwMDhBLCBhbmQgZmV3IGxpbmVzIGJlbGxvdyBvbmx5IDBYOEEs IHBsZWFzZQ0KPiBiZSBjb25zaXN0ZW50DQpTdXJlLCBJIHdpbGwuDQo+IA0KPj4gKyAgICAgICBp ZiAocmV0IDwgMCkNCj4+ICsgICAgICAgICAgICAgICByZXR1cm4gcmV0Ow0KPj4gKyAgICAgICBj ZmdwYXJhbSA9IChyZXQgJiAweDNGRikgfCAoKDQwICsgb2Zmc2V0MikgPDwgMTApOw0KPj4gKyAg ICAgICByZXQgPSBwaHlfd3JpdGVfbW1kKHBoeWRldiwgTURJT19NTURfVkVORDIsIDB4OEEsIGNm Z3BhcmFtKTsNCj4+ICsgICAgICAgaWYgKHJldCkNCj4+ICsgICAgICAgICAgICAgICByZXR1cm4g cmV0Ow0KPj4gKw0KPj4gKyAgICAgICByZXQgPSBwaHlfcmVhZF9tbWQocGh5ZGV2LCBNRElPX01N RF9WRU5EMiwgMHgwMEFEKTsNCj4+ICsgICAgICAgaWYgKHJldCA8IDApDQo+PiArICAgICAgICAg ICAgICAgcmV0dXJuIHJldDsNCj4+ICsgICAgICAgY2ZncGFyYW0gPSAocmV0ICYgMHhDMEMwKSB8 ICgoKDUgKyBvZmZzZXQxKSA8PCA4KSB8ICg5ICsgb2Zmc2V0MSkpOw0KPj4gKyAgICAgICByZXQg PSBwaHlfd3JpdGVfbW1kKHBoeWRldiwgTURJT19NTURfVkVORDIsIDB4QUQsIGNmZ3BhcmFtKTsN Cj4+ICsgICAgICAgaWYgKHJldCkNCj4+ICsgICAgICAgICAgICAgICByZXR1cm4gcmV0Ow0KPj4g Kw0KPj4gKyAgICAgICByZXQgPSBwaHlfcmVhZF9tbWQocGh5ZGV2LCBNRElPX01NRF9WRU5EMiwg MHgwMEFFKTsNCj4+ICsgICAgICAgaWYgKHJldCA8IDApDQo+PiArICAgICAgICAgICAgICAgcmV0 dXJuIHJldDsNCj4+ICsgICAgICAgY2ZncGFyYW0gPSAocmV0ICYgMHhDMEMwKSB8ICgoKDkgKyBv ZmZzZXQxKSA8PCA4KSB8ICgxNCArIG9mZnNldDEpKTsNCj4+ICsgICAgICAgcmV0ID0gcGh5X3dy aXRlX21tZChwaHlkZXYsIE1ESU9fTU1EX1ZFTkQyLCAweEFFLCBjZmdwYXJhbSk7DQo+PiArICAg ICAgIGlmIChyZXQpDQo+PiArICAgICAgICAgICAgICAgcmV0dXJuIHJldDsNCj4+ICsNCj4+ICsg ICAgICAgcmV0ID0gcGh5X3JlYWRfbW1kKHBoeWRldiwgTURJT19NTURfVkVORDIsIDB4MDBBRik7 DQo+PiArICAgICAgIGlmIChyZXQgPCAwKQ0KPj4gKyAgICAgICAgICAgICAgIHJldHVybiByZXQ7 DQo+PiArICAgICAgIGNmZ3BhcmFtID0gKHJldCAmIDB4QzBDMCkgfCAoKCgxNyArIG9mZnNldDEp IDw8IDgpIHwgKDIyICsgb2Zmc2V0MSkpOw0KPj4gKyAgICAgICByZXR1cm4gcGh5X3dyaXRlX21t ZChwaHlkZXYsIE1ESU9fTU1EX1ZFTkQyLCAweEFGLCBjZmdwYXJhbSk7DQo+IA0KPiBUaGVyZSBh cmUgcXVpdGUgYSBsb3Qgb2YgaGFyZGNvZGVkIHZhbHVlcyBpbiB0aGUgcHJldmlvdXMgY29kZSwg Y2FuIHlvdSBhZGQNCj4gc29tZSBjb21tZW50cyB3aGF0IHRoZXkgbWVhbiwgb3IgYWRkIGRlZmlu ZXMgZm9yIHRoZW0uDQpTdXJlLCBJIHdpbGwgY2hlY2sgdGhpcy4NCj4gDQo+PiArfQ0KPj4gKw0K Pj4gK3N0YXRpYyBpbnQgbGFuODY1eF9yZXZiMF9jb25maWdfaW5pdChzdHJ1Y3QgcGh5X2Rldmlj ZSAqcGh5ZGV2KQ0KPj4gK3sNCj4+ICsgICAgICAgaW50IGFkZHI7DQo+PiArICAgICAgIGludCB2 YWx1ZTsNCj4+ICsgICAgICAgaW50IHJldDsNCj4gDQo+IFBsZWFzZSB1c2UgcmV2ZXJzZSB4LW1h cw0KT2sgbm90ZWQuDQo+IA0KPj4gKw0KPj4gKyAgICAgICAvKiBBcyBwZXIgQU4xNzYwLCB0aGUg YmVsb3cgY29uZmlndXJhdGlvbiBhcHBsaWVzIG9ubHkgdG8gdGhlIExBTjg2NTAvMQ0KPj4gKyAg ICAgICAgKiBoYXJkd2FyZSByZXZpc2lvbiBSZXYuQjAuDQo+PiArICAgICAgICAqLw0KPj4gKyAg ICAgICBmb3IgKGludCBpID0gMDsgaSA8IEFSUkFZX1NJWkUobGFuODY1eF9yZXZiMF9maXh1cF9y ZWdpc3RlcnMpOyBpKyspIHsNCj4+ICsgICAgICAgICAgICAgICBhZGRyID0gbGFuODY1eF9yZXZi MF9maXh1cF9yZWdpc3RlcnNbaV07DQo+PiArICAgICAgICAgICAgICAgdmFsdWUgPSBsYW44NjV4 X3JldmIwX2ZpeHVwX3ZhbHVlc1tpXTsNCj4gDQo+IERvZXNuJ3Qgc2VlbSB0aGF0IHlvdSBuZWVk IHRoZSB2YXJpYWJsZSB2YWx1ZSBoZXJlLg0KT2sgbm90ZWQuDQo+IA0KPj4gKyAgICAgICAgICAg ICAgIHJldCA9IHBoeV93cml0ZV9tbWQocGh5ZGV2LCBNRElPX01NRF9WRU5EMiwgYWRkciwgdmFs dWUpOw0KPj4gKyAgICAgICAgICAgICAgIGlmIChyZXQpDQo+PiArICAgICAgICAgICAgICAgICAg ICAgICByZXR1cm4gcmV0Ow0KPj4gKyAgICAgICB9DQo+PiArICAgICAgIC8qIGZ1bmN0aW9uIHRv IGNhbGN1bGF0ZSBhbmQgd3JpdGUgdGhlIGNvbmZpZ3VyYXRpb24gcGFyYW1ldGVycyBpbiB0aGUN Cj4+ICsgICAgICAgICogMHgwMDg0LCAweDAwOEEsIDB4MDBBRCwgMHgwMEFFIGFuZCAweDAwQUYg cmVnaXN0ZXJzIChmcm9tIEFOMTc2MCkNCj4+ICsgICAgICAgICovDQo+PiArICAgICAgIHJldCA9 IGxhbjg2NXhfc2V0dXBfY2ZncGFyYW0ocGh5ZGV2KTsNCj4+ICsgICAgICAgaWYgKHJldCA8IDAp DQo+PiArICAgICAgICAgICAgICAgcmV0dXJuIHJldDsNCj4+ICsNCj4+ICsgICAgICAgLyogZGlz YWJsZSBhbGwgdGhlIGludGVycnVwdHMNCj4+ICsgICAgICAgICovDQo+PiArICAgICAgIHJldCA9 IHBoeV93cml0ZV9tbWQocGh5ZGV2LCBNRElPX01NRF9WRU5EMiwgTEFOODZYWF9SRUdfSVJRXzFf Q1RMLCAweEZGRkYpOw0KPj4gKyAgICAgICBpZiAocmV0KQ0KPj4gKyAgICAgICAgICAgICAgIHJl dHVybiByZXQ7DQo+PiArICAgICAgIHJldHVybiBwaHlfd3JpdGVfbW1kKHBoeWRldiwgTURJT19N TURfVkVORDIsIExBTjg2WFhfUkVHX0lSUV8yX0NUTCwgMHhGRkZGKTsNCj4gDQo+IFlvdSBjYW4g dXNlIEdFTk1BU0sgaW5zdGVhZCBvZiAweEZGRkYNCk9rIG5vdGVkLg0KPiANCj4+ICt9DQo+PiAr DQo+PiArc3RhdGljIGludCBsYW44NjV4X3JldmIwX3BsY2Ffc2V0X2NmZyhzdHJ1Y3QgcGh5X2Rl dmljZSAqcGh5ZGV2LA0KPj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj b25zdCBzdHJ1Y3QgcGh5X3BsY2FfY2ZnICpwbGNhX2NmZykNCj4+ICt7DQo+PiArICAgICAgIGlu dCByZXQ7DQo+PiArDQo+PiArICAgICAgIHJldCA9IGdlbnBoeV9jNDVfcGxjYV9zZXRfY2ZnKHBo eWRldiwgcGxjYV9jZmcpOw0KPj4gKyAgICAgICBpZiAocmV0KQ0KPj4gKyAgICAgICAgICAgICAg IHJldHVybiByZXQ7DQo+PiArDQo+PiArICAgICAgIC8qIERpc2FibGUgdGhlIGNvbGxpc2lvbiBk ZXRlY3Rpb24gd2hlbiBQTENBIGlzIGVuYWJsZWQgYW5kIGVuYWJsZQ0KPj4gKyAgICAgICAgKiBj b2xsaXNpb24gZGV0ZWN0aW9uIHdoZW4gQ1NNQS9DRCBtb2RlIGlzIGVuYWJsZWQuDQo+PiArICAg ICAgICAqLw0KPj4gKyAgICAgICBpZiAocGxjYV9jZmctPmVuYWJsZWQpDQo+PiArICAgICAgICAg ICAgICAgcmV0dXJuIHBoeV93cml0ZV9tbWQocGh5ZGV2LCBNRElPX01NRF9WRU5EMiwgMHgwMDg3 LCAweDAwMDApOw0KPj4gKyAgICAgICBlbHNlDQo+PiArICAgICAgICAgICAgICAgcmV0dXJuIHBo eV93cml0ZV9tbWQocGh5ZGV2LCBNRElPX01NRF9WRU5EMiwgMHgwMDg3LCAweDAwODMpOw0KPj4g K30NCj4+ICsNCj4+ICAgc3RhdGljIGludCBsYW44Njd4X3JldmIxX2NvbmZpZ19pbml0KHN0cnVj dCBwaHlfZGV2aWNlICpwaHlkZXYpDQo+PiAgIHsNCj4+ICAgICAgICAgIC8qIEhXIHF1aXJrOiBN aWNyb2NoaXAgc3RhdGVzIGluIHRoZSBhcHBsaWNhdGlvbiBub3RlIChBTjE2OTkpIGZvciB0aGUg cGh5DQo+PiBAQCAtOTAsMTMgKzI2MCwxMyBAQCBzdGF0aWMgaW50IGxhbjg2N3hfcmV2YjFfY29u ZmlnX2luaXQoc3RydWN0IHBoeV9kZXZpY2UgKnBoeWRldikNCj4+ICAgICAgICAgICAqIGZvciBp dCBlaXRoZXIuDQo+PiAgICAgICAgICAgKiBTbyB3ZSdsbCBqdXN0IGRpc2FibGUgYWxsIGludGVy cnVwdHMgb24gdGhlIGNoaXAuDQo+PiAgICAgICAgICAgKi8NCj4+IC0gICAgICAgZXJyID0gcGh5 X3dyaXRlX21tZChwaHlkZXYsIE1ESU9fTU1EX1ZFTkQyLCBMQU44NjdYX1JFR19JUlFfMV9DVEws IDB4RkZGRik7DQo+PiArICAgICAgIGVyciA9IHBoeV93cml0ZV9tbWQocGh5ZGV2LCBNRElPX01N RF9WRU5EMiwgTEFOODZYWF9SRUdfSVJRXzFfQ1RMLCAweEZGRkYpOw0KPj4gICAgICAgICAgaWYg KGVyciAhPSAwKQ0KPj4gICAgICAgICAgICAgICAgICByZXR1cm4gZXJyOw0KPj4gLSAgICAgICBy ZXR1cm4gcGh5X3dyaXRlX21tZChwaHlkZXYsIE1ESU9fTU1EX1ZFTkQyLCBMQU44NjdYX1JFR19J UlFfMl9DVEwsIDB4RkZGRik7DQo+PiArICAgICAgIHJldHVybiBwaHlfd3JpdGVfbW1kKHBoeWRl diwgTURJT19NTURfVkVORDIsIExBTjg2WFhfUkVHX0lSUV8yX0NUTCwgMHhGRkZGKTsNCj4+ICAg fQ0KPj4NCj4+IC1zdGF0aWMgaW50IGxhbjg2N3hfcmVhZF9zdGF0dXMoc3RydWN0IHBoeV9kZXZp Y2UgKnBoeWRldikNCj4+ICtzdGF0aWMgaW50IGxhbjg2eHhfcmVhZF9zdGF0dXMoc3RydWN0IHBo eV9kZXZpY2UgKnBoeWRldikNCj4+ICAgew0KPj4gICAgICAgICAgLyogVGhlIHBoeSBoYXMgc29t ZSBsaW1pdGF0aW9ucywgbmFtZWx5Og0KPj4gICAgICAgICAgICogIC0gYWx3YXlzIHJlcG9ydHMg bGluayB1cA0KPj4gQEAgLTExMSwyMyArMjgxLDM0IEBAIHN0YXRpYyBpbnQgbGFuODY3eF9yZWFk X3N0YXR1cyhzdHJ1Y3QgcGh5X2RldmljZSAqcGh5ZGV2KQ0KPj4gICAgICAgICAgcmV0dXJuIDA7 DQo+PiAgIH0NCj4+DQo+PiAtc3RhdGljIHN0cnVjdCBwaHlfZHJpdmVyIGxhbjg2N3hfcmV2YjFf ZHJpdmVyW10gPSB7DQo+PiArc3RhdGljIHN0cnVjdCBwaHlfZHJpdmVyIGxhbjg2eHhfZHJpdmVy W10gPSB7DQo+PiAgICAgICAgICB7DQo+PiAgICAgICAgICAgICAgICAgIFBIWV9JRF9NQVRDSF9F WEFDVChQSFlfSURfTEFOODY3WF9SRVZCMSksDQo+PiAgICAgICAgICAgICAgICAgIC5uYW1lICAg ICAgICAgICAgICAgPSAiTEFOODY3WCBSZXYuQjEiLA0KPj4gICAgICAgICAgICAgICAgICAuZmVh dHVyZXMgICAgICAgICAgID0gUEhZX0JBU0lDX1QxU19QMk1QX0ZFQVRVUkVTLA0KPj4gICAgICAg ICAgICAgICAgICAuY29uZmlnX2luaXQgICAgICAgID0gbGFuODY3eF9yZXZiMV9jb25maWdfaW5p dCwNCj4+IC0gICAgICAgICAgICAgICAucmVhZF9zdGF0dXMgICAgICAgID0gbGFuODY3eF9yZWFk X3N0YXR1cywNCj4+ICsgICAgICAgICAgICAgICAucmVhZF9zdGF0dXMgICAgICAgID0gbGFuODZ4 eF9yZWFkX3N0YXR1cywNCj4+ICAgICAgICAgICAgICAgICAgLmdldF9wbGNhX2NmZyAgICAgICA9 IGdlbnBoeV9jNDVfcGxjYV9nZXRfY2ZnLA0KPj4gICAgICAgICAgICAgICAgICAuc2V0X3BsY2Ff Y2ZnICAgICAgID0gZ2VucGh5X2M0NV9wbGNhX3NldF9jZmcsDQo+PiAgICAgICAgICAgICAgICAg IC5nZXRfcGxjYV9zdGF0dXMgICAgPSBnZW5waHlfYzQ1X3BsY2FfZ2V0X3N0YXR1cywNCj4+IC0g ICAgICAgfQ0KPj4gKyAgICAgICB9LA0KPj4gKyAgICAgICB7DQo+PiArICAgICAgICAgICAgICAg UEhZX0lEX01BVENIX0VYQUNUKFBIWV9JRF9MQU44NjVYX1JFVkIwKSwNCj4+ICsgICAgICAgICAg ICAgICAubmFtZSAgICAgICAgICAgICAgID0gIkxBTjg2NVggUmV2LkIwIEludGVybmFsIFBoeSIs DQo+PiArICAgICAgICAgICAgICAgLmZlYXR1cmVzICAgICAgICAgICA9IFBIWV9CQVNJQ19UMVNf UDJNUF9GRUFUVVJFUywNCj4+ICsgICAgICAgICAgICAgICAuY29uZmlnX2luaXQgICAgICAgID0g bGFuODY1eF9yZXZiMF9jb25maWdfaW5pdCwNCj4+ICsgICAgICAgICAgICAgICAucmVhZF9zdGF0 dXMgICAgICAgID0gbGFuODZ4eF9yZWFkX3N0YXR1cywNCj4+ICsgICAgICAgICAgICAgICAuZ2V0 X3BsY2FfY2ZnICAgICAgID0gZ2VucGh5X2M0NV9wbGNhX2dldF9jZmcsDQo+PiArICAgICAgICAg ICAgICAgLnNldF9wbGNhX2NmZyAgICAgICA9IGxhbjg2NXhfcmV2YjBfcGxjYV9zZXRfY2ZnLA0K Pj4gKyAgICAgICAgICAgICAgIC5nZXRfcGxjYV9zdGF0dXMgICAgPSBnZW5waHlfYzQ1X3BsY2Ff Z2V0X3N0YXR1cywNCj4+ICsgICAgICAgfSwNCj4+ICAgfTsNCj4+DQo+PiAtbW9kdWxlX3BoeV9k cml2ZXIobGFuODY3eF9yZXZiMV9kcml2ZXIpOw0KPj4gK21vZHVsZV9waHlfZHJpdmVyKGxhbjg2 eHhfZHJpdmVyKTsNCj4+DQo+PiAgIHN0YXRpYyBzdHJ1Y3QgbWRpb19kZXZpY2VfaWQgX19tYXli ZV91bnVzZWQgdGJsW10gPSB7DQo+PiAgICAgICAgICB7IFBIWV9JRF9NQVRDSF9FWEFDVChQSFlf SURfTEFOODY3WF9SRVZCMSkgfSwNCj4+ICsgICAgICAgeyBQSFlfSURfTUFUQ0hfRVhBQ1QoUEhZ X0lEX0xBTjg2NVhfUkVWQjApIH0sDQo+PiAgICAgICAgICB7IH0NCj4+ICAgfTsNCj4+DQo+PiBA QCAtMTM1LDQgKzMxNiw1IEBAIE1PRFVMRV9ERVZJQ0VfVEFCTEUobWRpbywgdGJsKTsNCj4+DQo+ PiAgIE1PRFVMRV9ERVNDUklQVElPTigiTWljcm9jaGlwIDEwQkFTRS1UMVMgUGh5IGRyaXZlciIp Ow0KPj4gICBNT0RVTEVfQVVUSE9SKCJSYW3Ds24gTm9yZGluIFJvZHJpZ3VleiIpOw0KPj4gK01P RFVMRV9BVVRIT1IoIlBhcnRoaWJhbiBWZWVyYXNvb3JhbiA8cGFydGhpYmFuLnZlZXJhc29vcmFu QG1pY3JvY2hpcC5jb20+Iik7DQo+PiAgIE1PRFVMRV9MSUNFTlNFKCJHUEwiKTsNCj4+IC0tDQo+ PiAyLjM0LjENCj4+DQo+IA0KDQo=