Received: by 2002:a05:6a10:5bc5:0:0:0:0 with SMTP id os5csp4266230pxb; Mon, 25 Oct 2021 00:25:57 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxbJrBSRRQlbCXZYaQq8G5KgaGBKSRXHipOl7ZlKj3zdUIs2b+zGfTbRLKcrEsF4Lkr0/49 X-Received: by 2002:aa7:c78f:: with SMTP id n15mr24388965eds.338.1635146757779; Mon, 25 Oct 2021 00:25:57 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1635146757; cv=pass; d=google.com; s=arc-20160816; b=V/db8q40NPONM/Chg1eOJOpa9w+lUga2VSSG+ALH26QmWgz/X+zmBWDASrcz2uS8vu HulJy1JYkBRcrULDv3taQ8uOBB9x63kShG73ZCAznp2R/DXY3FLF1+zCYfS79IfKkCBX 5AmOHDE4/xSFVq41Yw+3hlTYXCiVFafguTSVfee+GXUpNBy274Pn19x4SuevEDSWUdxQ 6x1HzPHCeztMt089GNusm61rEVLyQkmPw2/ghF6a2qCu+y+kE24T4vy4NPMdS0QPNxrV 4yGOEthz3a9VSnro2n1MdurKwxpltWuU0LKN2YlU9vFJKCi7khQBv3lQr9/v053JFPZl Bafg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:content-transfer-encoding :content-language:accept-language:in-reply-to:references:message-id :date:thread-index:thread-topic:subject:cc:to:from:dkim-signature; bh=1O6huxb050myhED3tyLZl7FCFYq1NkzQS41Dh78b5Po=; b=ZH1MJ2Av0j+lpdcv+LRYMqStv1I/K9b4wBPAl1kjTMzmpM7zttOgtxD9stdh+8fBYW hPuoCcd8Bo1kmMxfrj3a+grfJ5m7KQEgI7OW4RfA6LjRKIIAF9bYrVcGDCkogEwi6y3B 5Fw7hfLUpChiBalYhOoqRECYXx3RNAbUEZSDFdKTyEByCrjZN00mwBHwibpI7DhVI4FS 0nsZQfG7FkBlRqWheL7YrVPJBeDJ4dAvZeWrv775AC5VKkxwQi/XAzFq5oCIncLLfdUY IpJ72iOwrAyGVjiBxqqoqzVdSFaYcj6qhrD8fB2Q7R1dhR20Jh7uyh06AQ9EeeClvT0P O6GA== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@nxp.com header.s=selector2 header.b=qIhp0rVV; arc=pass (i=1 spf=pass spfdomain=nxp.com dkim=pass dkdomain=nxp.com dmarc=pass fromdomain=nxp.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=nxp.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id t2si20490244ejo.96.2021.10.25.00.25.34; Mon, 25 Oct 2021 00:25:57 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@nxp.com header.s=selector2 header.b=qIhp0rVV; arc=pass (i=1 spf=pass spfdomain=nxp.com dkim=pass dkdomain=nxp.com dmarc=pass fromdomain=nxp.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=nxp.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231189AbhJYH0M (ORCPT + 99 others); Mon, 25 Oct 2021 03:26:12 -0400 Received: from mail-am6eur05on2080.outbound.protection.outlook.com ([40.107.22.80]:13954 "EHLO EUR05-AM6-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S230015AbhJYH0L (ORCPT ); Mon, 25 Oct 2021 03:26:11 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=j/CGhYrcZ08hQiugSdVl41EPzWH/lZtrvtmPKKranh/KxT8YvQeIyi4ygbvQrabp1a3OvnTOcEIpuPHSRVelDlHBxLHD2yS5OTNa6GCUf3jM68iL3NFA0NLid9Llr4yg23S1aSuKB0aoOHhD73JWkprr23yfRlTht3Jg9npUL3LTIjBvG7ADKJPKiwRscoOqxDZnn3y4LpKAo/hP98PMXpNOz1Z+eXCUvtbwbk/infGc4mKVjMWpC0jxqGrSQkOjHC7rXplQ/Dcr8RWHLlXZQLGdnA5ZWOBpZASlLDfHMeZM5YesAbEsZtVjGjH/KcMIgfOrCjPThLWYiiMJp634VQ== 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=1O6huxb050myhED3tyLZl7FCFYq1NkzQS41Dh78b5Po=; b=kBSo+ret2m3x+7TnfINuvrysKai463g9QUmNvCpHRzwOBgrijaHaCXVfU8cS8O4ni4RsioVEQtMx2Ycbq8HKAwyiUJk49ucJpVYbk7wwLUUVI9QRM3mTRAdu8b7Sx54Ecws7puM8CJMDip3SKQi0gaJUAz07IYNdFsxrpCY4KyNTcbhQpRnwaFm5dBAjr3P4C4X1eHUT4MUoNBb1Nf1y5yzAnY/c5FtiFFOEb3pUSbXLXzaM0oYX/qSBX2UkZFk5K/488v/797TJeyD8PRZRgxyR6ybWIv9xJExJ5ADsX3/0s+Z3C2JaEbViGb0mWFY2a20tUWFQt2h8Bhz4Cc0/oA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1O6huxb050myhED3tyLZl7FCFYq1NkzQS41Dh78b5Po=; b=qIhp0rVVmUOuKGjhN43DwpZmGgpQ/WXRli0tHNZDakuUMcUmVt2HNGngri3wT3Oq+3HqwU8RL4OScufyhXC/Rg1l8JxJgAmFO5aLVKKwS/D+AzuYZhqDssq3jIV255jy6uaWbwNHVpp86M+nLywrEveoQDPanK+owO5+4Wpwbp8= Received: from AS8PR04MB8676.eurprd04.prod.outlook.com (2603:10a6:20b:42b::10) by AS8PR04MB8945.eurprd04.prod.outlook.com (2603:10a6:20b:42c::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4628.16; Mon, 25 Oct 2021 07:23:47 +0000 Received: from AS8PR04MB8676.eurprd04.prod.outlook.com ([fe80::b059:46c6:685b:e0fc]) by AS8PR04MB8676.eurprd04.prod.outlook.com ([fe80::b059:46c6:685b:e0fc%4]) with mapi id 15.20.4628.020; Mon, 25 Oct 2021 07:23:47 +0000 From: Richard Zhu To: "tharvey@gateworks.com" CC: Lucas Stach , Kishon Vijay Abraham I , "vkoul@kernel.org" , Rob Herring , "galak@kernel.crashing.org" , Shawn Guo , "linux-phy@lists.infradead.org" , Device Tree Mailing List , Linux ARM Mailing List , open list , Sascha Hauer , dl-linux-imx Subject: RE: [PATCH v3 0/9] add the imx8m pcie phy driver and imx8mm pcie support Thread-Topic: [PATCH v3 0/9] add the imx8m pcie phy driver and imx8mm pcie support Thread-Index: AQHXwf8T9WRZIWT4CUunBVSnJ63L4qvZhp6ggAD4IYCAAKk/cIABRTmAgABCoVCAAPyvgIAAhMLwgAEGQACAAA+SAIADuD4QgABZ2ZA= Date: Mon, 25 Oct 2021 07:23:47 +0000 Message-ID: References: <1634028078-2387-1-git-send-email-hongxing.zhu@nxp.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 7f76db8f-2d27-448b-6635-08d9978862cd x-ms-traffictypediagnostic: AS8PR04MB8945: x-ld-processed: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635,ExtAddr x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: IRdP/2otnl1zKnF+p4EniA1H+tXoyYaoxbE5fNI1k0Sk0k70CwMcXQeXpMCHYHT/vMVKNpfTt1iCqJp6wnE7uCHuKHHIfSQLWZSq5USadNYPqBraEHIdHaf5JoHH4H6RYWIKqGf3Qyi2I15P1Uh97G9nP3xVOoFOuMd6ivKk9svXw5iJEDKiClxoYwEEULEm/JCnd/ATaE1uNql+b2+tT79FQPDJ/qEbGA3+mRTw98Rohmd+MHWKxbjNtHL5YIfuLvhItYBlxEFOJ0/95zAkVtlKLGf5oLXFqjKlNlL9cxaUzal8mI9cUg8cOsWBEcsRsnAFSxSghOz8bs4ZT9PxA6vqpJ0mtX+byrSzM581Nqxdqw+CaPjl6vlccffGTQD8lqnSxUrJCohZH9X9/10tbtP2HCVQYkJpuPR5wddHqod4Cfw2HJ/gnzpBqiiPB2MlZcwagq1EAm2zPx7n1YPsipnmEqVhM0xhMtHaYAb+nQPgSKD04z78W5VwPCSzXwpmS9ERiIBqGbIUCleS7gm2QBYtC1SbJMEgo/1rLjxSO0PjXDNMYp26QO/4XO5B2TBEZDXAMT+2+mz1K9TmEh8cBYKs8YMRvLBRXppK92q7V2l8w6eFznttcmCku4D+CJ33VSwY+yEJ/beZ/E12CZ2oA+nwb48rnMn4Oedx57yc8ErzVCjeDudI+y1iUGGENn4fSiUfnlcE2CgPbnMX7l302JCS/tqykU+XX9FDJ3TroxE= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8676.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(2906002)(122000001)(54906003)(5660300002)(52536014)(66446008)(66946007)(64756008)(66556008)(8936002)(66476007)(38070700005)(86362001)(186003)(55016002)(7696005)(9686003)(508600001)(8676002)(71200400001)(2940100002)(83380400001)(38100700002)(6506007)(33656002)(26005)(7416002)(76116006)(6916009)(4326008)(316002)(32563001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?MVhleTFxQ1l4a1VpeUtka2kzTE9YNUh0U3FhTXpwbWY2SUpBWXJBdnozQ0FZ?= =?utf-8?B?aFdmUzJOT2NmWGVlOU5FTmxpM1h4eGdMRXdaZzRPUjMxU3VySDJ0NGNFWVh1?= =?utf-8?B?MHdqaWh3aVgvNzNaTW1BZ0NtNUkrYTlheHV4VmJ6N1AzWU51dElEd0FndnNU?= =?utf-8?B?ZUFFd2U5SEdraGpVR3lUY3ZCak1Tc0RMakRCZFhQM1M4UjY3aENueFJqMTFZ?= =?utf-8?B?UFFld3lnMjlTeHBHUmtnakJrR2Q4d3ByK2l5TGE2RStKaW84MldidkhxenlH?= =?utf-8?B?VExFK3FQZDBUMVAvNjRKbjQwMFpzVTlRcnNKWmJhOFpjQTMydkZUc0lZYWxB?= =?utf-8?B?dUtDbnB0ZnZNOWRKeFZ0OFFuUGRBdjNJY2J3VHVIM0VieEk1VklTYTcxenJm?= =?utf-8?B?RHFMcDJaY3ZialdmMkRNSlFiS0tZTHhHZDg0WktWRGVydGRENy9qdUZQY1hx?= =?utf-8?B?dENleDVXbnpHclhqc05SZFFqeE00TVNzOE9NS2tRdjEwMUJIeGZxQk9WSnVa?= =?utf-8?B?TmwzU0FIY1VMYk1OTTFoSGc2ekYxUVk0K1BndVE5WFdSL0E3cExyR2NTdU1H?= =?utf-8?B?UWhiWDNEeHlZbzM3cUVicWIrQmo1b1QwY0pLWWhRRy9QcjdYWGpzcXdZOTJW?= =?utf-8?B?U3lNajV1VmNIbkE4dEx4MXM2VGd1b0FSb0p1QkNTNFdYMGVyc1VFYXhqdE92?= =?utf-8?B?alRsaUlxUHVRenU3UzBKRWRiY01OKzV3ckNDVDVwbEU4ajF6NE44ZXVJejNh?= =?utf-8?B?YkRaSUVUVVp0aEpXYTh5emRCeXY5SHBvblVwbERPYTlLVnprUXYvNnMrcEJT?= =?utf-8?B?SWxLM3hDdnFlN1NWL1dTcFdydXFaNGFxRlFHNmx2eXd1aWpIRnZJeFFjNjhW?= =?utf-8?B?bW9oMlZCMXBkajRrNzEwa0Q3MDZOQ0Q3K0VBckQ0UnUwRWFvWEExT2N0cVV6?= =?utf-8?B?T2lrL0JnZW5pTllWOFA2eWIzd3lWR1RaWHJuN1VER1NlMGt2NWloVVJER2Nq?= =?utf-8?B?MUxsTDlFbks1aHZQZTlIMjBqNUVtWmRGYTJ1ZExXdlF3bnF1c3NuUXpjVE9E?= =?utf-8?B?SEdjeFJsWUhGVG85M280YmlZdURsbkozVU9hSWtYMHlCSThVbG52T1NuT3Zs?= =?utf-8?B?VXI0UUJvNlk2MkNnenRMVlg4SytnQWdLd1RScDZPZmhNU3ZTTzFhNFBYOEVV?= =?utf-8?B?STVFRHVDYS9BN052dGYycDRHZ3J6eHgvTEs4MUNmL2FiMGF6dlRxRXRVRWNX?= =?utf-8?B?N3V4WDJGYkVEY1FWNGxXY2hrdkJYbTZLZWVEcmN3Rm9rZCt2NGlUeXo1UWM2?= =?utf-8?B?Z1hMQlcvL2NJUmtQK3BhZ2xwdDBvOUNVQUg1TGgzYW5pQnJML1Z5TTNrYTcy?= =?utf-8?B?ZklpSUl4ckY5YW9wQkZzYlBNRDk1Z3QwdVI1SkNGVWltV09ROFVFQjYxeitn?= =?utf-8?B?V1JNcXFpcUczK3JDQWZCZ2VaQktPdER4U2dGZE9mTjExSmlPcG9tZ2tkM0Mx?= =?utf-8?B?cithNWY2RlJuMnJHaUJJcjBkUkRrcXVUclJobTFiNlVGWmw2RWU2NTVUVkhy?= =?utf-8?B?MXJoUUlSbXh2YklMR0dqamgzTDhOZ0l0NmdpaTViSVY4OGY3SVVYV3kxV09W?= =?utf-8?B?Q3BXN3ozZG9ncG5aandlNWNnSGxTaDIvdnVoNjgzeXN2cVBzdWFoclFmUGd0?= =?utf-8?B?bnRsdTYvTnkzTlBQbGpkU2MwaE9qRDZTT0d0RFZhaE00dlJFQmJLZjZMTEZH?= =?utf-8?B?S3NkRTZTRkNmcCtxaXRwdU9MMmxnWFAzdjZDRmNVN1IxUlhrY3BheVZDVmRy?= =?utf-8?B?TGJ0bWQwRjI1YWtkWGdER3c0dVYxVGJsQW9HTlNuK2FhdjU4NmZXbkNzVkxp?= =?utf-8?B?VHNnTW9ncGhuSUZtOWRkZFFJa2NYdzdJZHZKcU5xOFBYUFB4cnhwRC9aR2Nj?= =?utf-8?B?S2lMdTF5SE0xMDQ1YTBEOW90bjJpelkxUmQzemhoek93MU43KzJvRS93Q2Nn?= =?utf-8?B?bmlscUV3eG5Sd0VjVWZ6MXkrUDFHeUhkMmdlYzdCQU1MK3pIZTlFc1dtTDA2?= =?utf-8?B?dHZBcS9pRjRwSG1pRFZOZVhhQyt5K0JHS25tb3p1NzR3N3dETStjR3BuUFBy?= =?utf-8?B?VThIRlc4NEtlT0lVRkZPT2hVRkc1bGtJdGV1MHBYMTZUNjVlMTdPRWxrUVZO?= =?utf-8?B?UkE9PQ==?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8676.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7f76db8f-2d27-448b-6635-08d9978862cd X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Oct 2021 07:23:47.7903 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: K9P1sujez+Zf9rDlGSusMkNm7NuZTAf9MHOIWvxx4d0/9ikuFJTyKSqFu2K0noSOKfHvJ5ZFhWN6KjOGM4tlww== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8945 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org U25pcHBlZC4uLg0KDQo+ID4gPiA+ID4gPiA+IE15IGJvYXJkcyBkbyBub3QgdXNlIENMS1JFUSMg c28gSSBkbyBub3QgaGF2ZSB0aGF0IGRlZmluZWQNCj4gPiA+ID4gPiA+ID4gaW4gcGlubXV4IGFu ZCBJIGZvdW5kIHRoYXQgaWYgSSBhZGQNCj4gPiA+ID4gPiA+ID4gTVg4TU1fSU9NVVhDX0kyQzRf U0NMX1BDSUUxX0NMS1JFUV9CDQo+ID4gPiA+ID4gUENJZQ0KPiA+ID4gPiA+ID4gPiB3b3JrcyBv biBteSBib2FyZCBidXQgdGhpcyBpc24ndCBhIHNvbHV0aW9uIGp1c3QgYQ0KPiA+ID4gPiA+ID4g PiB3b3JrLWFyb3VuZCAoSSBoYXZlIGJvYXJkcyB0aGF0IHVzZSB0aGUgb25seSB0d28gcG9zc2li bGUNCj4gPiA+ID4gPiA+ID4gcGlucyBmb3IgQ0xLUkVRIGFzIG90aGVyDQo+ID4gPiA+ID4gZmVh dHVyZXMpLg0KPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiBTaW1pbGFybHkgeW91IHdpbGwg ZmluZCBvbiB0aGUgaW14OG1tLWV2ayBpZiB5b3UgY29tbWVudCBvdXQNCj4gPiA+ID4gPiA+ID4g dGhlIENMS1JFUSAod2hpY2ggaXNuJ3QgcmVxdWlyZWQpIHRoZSBpbXg4bW1ldmsgd2lsbCBlbmQg dXANCj4gPiA+ID4gPiA+ID4gaGFuZ2luZyBsaWtlIG15DQo+ID4gPiA+ID4gYm9hcmRzOg0KPiA+ ID4gPiA+ID4gW1JpY2hhcmQgWmh1XSBIaSBUaW06DQo+ID4gPiA+ID4gPiBSZWdhcmRpbmcgdGhl IFNQRUMsIHRoZSBDTEtSRVEjIGlzIG1hbmRhdG9yeSByZXF1aXJlZCwgYW5kDQo+ID4gPiA+ID4g PiBzaG91bGQgYmUNCj4gPiA+ID4gPiBjb25maWd1cmVkIGFzIGFuIG9wZW4gZHJhaW4sIGFjdGl2 ZSBsb3cgc2lnbmFsLg0KPiA+ID4gPiA+ID4gQW5kIHRoaXMgc2lnbmFsIHNob3VsZCBiZSBkcml2 ZW4gbG93IGJ5IHRoZSBQQ0llIE0uMiBkZXZpY2UgdG8NCj4gPiA+ID4gPiA+IHJlcXVlc3QgdGhl DQo+ID4gPiA+ID4gUkVGIGNsb2NrIGJlIGF2YWlsYWJsZShhY3RpdmUgbG93KS4NCj4gPiA+ID4g PiA+IFNvLCB0aGVyZSBpcyBzdWNoIGtpbmQgb2YgQ0xLUkVRIyBwaW4gZGVmaW5pdGlvbiBvbiBp Lk1YOE1NDQo+ID4gPiA+ID4gPiBFVksNCj4gPiBib2FyZC4NCj4gPiA+ID4gPiA+DQo+ID4gPiA+ ID4gPiBBbnl3YXksIEkgdGhpbmsgdGhlIGV4dGVybmFsIE9TQyBjaXJjdWl0IHNob3VsZCBiZSBh bHdheXMNCj4gPiA+ID4gPiA+IHJ1bm5pbmcgaWYgdGhlcmUgaXMNCj4gPiA+ID4gPiBubyBDTEtS RVEjIG9uIHlvdXIgSFcgYm9hcmQgZGVzaWduLg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPg0KPiA+ ID4gPiA+IFRoZSB3YXkgSSB1bmRlcnN0YW5kIGl0IGlzIENMS1JFUSMgYWxsb3dzIHRoZSBob3N0 IHRvIGRpc2FibGUNCj4gPiA+ID4gPiB0aGUgUkVGQ0xLIHdoZW4gbm90IG5lZWRlZCBmb3IgcG93 ZXIgc2F2aW5ncyBzbyBpdCB3b3VsZCBzZWVtDQo+ID4gPiA+ID4gb3B0aW9uYWwgdG8gaW1wbGVt ZW50IHRoYXQgYW5kIGlmIG5vdCBpbXBsZW1lbnRlZCBzaG91bGQgYmUgbGVmdA0KPiA+ID4gPiA+ IHVuY29ubmVjdGVkIG9uDQo+ID4gdGhlIGNhcmQuDQo+ID4gPiA+ID4NCj4gPiA+ID4gW1JpY2hh cmQgWmh1XSBObywgbm90IHRoYXQgd2F5LiBSZWdhcmRpbmcgdGhlIFNQRUMsIHRoaXMgc2lnbmFs IGlzDQo+ID4gbWFuZGF0b3J5IHJlcXVpcmVkLg0KPiA+ID4gPiBFc3BlY2lhbGx5IGZvciB0aGUg TDFzcyB1c2FnZXMuIFRoaXMgc2lnbmFsIHdvdWxkIGJlIE9EKG9wZW4NCj4gPiA+ID4gZHJhaW4p LCBiaS1kaXJlY3Rpb25hbCwgYW5kIG1pZ2h0IGJlIGRyaXZlbiBsb3cvaGlnaCBieSBSQyBvciBF UA0KPiA+ID4gPiBhdXRvbWF0aWNhbGx5IGlmDQo+ID4gTDFzcyBtb2RlcyBhcmUgZW5hYmxlZC4N Cj4gPiA+ID4gWW91IGNhbiBtYWtlIHJlZmVyZW5jZSB0byB0aGUNCj4gPiA+ID4gIkVDTl9MMV9Q TV9TdWJzdGF0ZXNfd2l0aF9DTEtSRVFfMzFfTWF5XzIwMTNfUmV2MTBhIiwgb3IgdGhlDQo+ID4g Y2hhcHRlciA1LjUgTDEgUE0gU3Vic3RhdGVzIG9mICJQQ0kgRXhwcmVzcyBCYXNlIFNwZWNpZmlj YXRpb24sIFJldi4NCj4gPiA0LjAgVmVyc2lvbiAxLjAiLg0KPiA+ID4gPg0KPiA+ID4NCj4gPiA+ IENMS1JFUSBpcyBvbmx5IG1hbmRhdG9yeSBpZiB5b3Ugd2lzaCB0byBzdXBwb3J0IGNsb2NrIHBv d2VyDQo+ID4gPiBtYW5hZ2VtZW50LiBNYW55IGJvYXJkcyB3aXRoIGEgUENJIGhvc3QgY29udHJv bGxlciBkbyBub3Qgc3VwcG9ydA0KPiA+ID4gdGhpcy4NCj4gW1JpY2hhcmQgWmh1XSBPa2F5LCB1 bmRlcnN0b29kLg0KPiANCj4gPiA+DQo+ID4gPiA+ID4gPiA+IGRpZmYgLS1naXQgYS9hcmNoL2Fy bTY0L2Jvb3QvZHRzL2ZyZWVzY2FsZS9pbXg4bW0tZXZrLmR0c2kNCj4gPiA+ID4gPiA+ID4gYi9h cmNoL2FybTY0L2Jvb3QvZHRzL2ZyZWVzY2FsZS9pbXg4bW0tZXZrLmR0c2kNCj4gPiA+ID4gPiA+ ID4gaW5kZXggNWNlNDNkYWEwYzhiLi5mMDAyM2I0OGY0NzUgMTAwNjQ0DQo+ID4gPiA+ID4gPiA+ IC0tLSBhL2FyY2gvYXJtNjQvYm9vdC9kdHMvZnJlZXNjYWxlL2lteDhtbS1ldmsuZHRzaQ0KPiA+ ID4gPiA+ID4gPiArKysgYi9hcmNoL2FybTY0L2Jvb3QvZHRzL2ZyZWVzY2FsZS9pbXg4bW0tZXZr LmR0c2kNCj4gPiA+ID4gPiA+ID4gQEAgLTQ0OCw3ICs0NDgsOSBAQA0KPiA+ID4gPiA+ID4gPg0K PiA+ID4gPiA+ID4gPiAgICAgICAgIHBpbmN0cmxfcGNpZTA6IHBjaWUwZ3JwIHsNCj4gPiA+ID4g PiA+ID4gICAgICAgICAgICAgICAgIGZzbCxwaW5zID0gPA0KPiA+ID4gPiA+ID4gPiArLyoNCj4g PiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gTVg4TU1fSU9NVVhDX0kyQzRfU0NMX1BDSUUxX0NM S1JFUV9CICAgIDB4NjENCj4gPiA+ID4gPiA+ID4gKyovDQo+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ ID4gTVg4TU1fSU9NVVhDX1NBSTJfUlhGU19HUElPNF9JTzIxDQo+ID4gPiA+ID4gPiA+IDB4NDEN Cj4gPiA+ID4gPiA+ID4gICAgICAgICAgICAgICAgID47DQo+ID4gPiA+ID4gPiA+ICAgICAgICAg fTsNCj4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gSSBoYXZlIFBDSWUgd29ya2luZyB3aXRo IGEgZHJpdmVyIHRoYXQgSSBwb3J0ZWQgZnJvbSBOWFAncw0KPiA+ID4gPiA+ID4gPiBrZXJuZWwg d2hpY2ggZGlmZmVycyBmcm9tIHlvdXIgZHJpdmVyIGluIHRoYXQgdGhlIFBDSWUgUEhZDQo+ID4g PiA+ID4gPiA+IGlzIG5vdCBhYnN0cmFjdGVkIHRvIGl0cyBvd24gZHJpdmVyIHNvIEkgdGhpbmsg dGhpcyBoYXMNCj4gPiA+ID4gPiA+ID4gc29tZXRoaW5nIHRvIGRvIHdpdGggdGhlIG9yZGVyIGlu IHdoaWNoIHRoZSBwaHkgaXMgcmVzZXQgb3INCj4gaW5pdGlhbGl6ZWQ/DQo+ID4gPiA+ID4gPiA+ IFRoZSBjb25maWd1cmF0aW9uIG9mDQo+ID4gPiA+ID4gZ3ByMTQgYml0cyBsb29rcyBjb3JyZWN0 IHRvIG1lLg0KPiA+ID4gPiA+ID4gW1JpY2hhcmQgWmh1XSBUaGUgQ0xLUkVRIyBQSU4gZGVmaW5p dGlvbiBzaG91bGRuJ3QgYmUgbWFza2VkLg0KPiA+ID4gPiA+ID4gSW4gdGhlIE5YUCdzIGxvY2Fs IEJTUCBrZXJuZWwsIEkganVzdCBmb3JjZSBDTEtSRVEjIGxvdyB0bw0KPiA+ID4gPiA+ID4gbGV2 ZWwgdXAgdGhlIEhXDQo+ID4gPiA+ID4gY29tcGF0aWJpbGl0eS4NCj4gPiA+ID4gPiA+IFRoYXQn cyBtaWdodCB0aGUgcmVhc29uIHdoeSB0aGUgUENJZSB3b3JrcyBvbiB5b3VyIEhXIGJvYXJkDQo+ ID4gPiA+ID4gPiBhbHRob3VnaCB0aGUNCj4gPiA+ID4gPiBDTEtSRVEjIFBJTiBpcyBub3QgZGVm aW5lZC4NCj4gPiA+ID4gPiA+IFRoaXMgbWV0aG9kIGlzIGEgbGl0dGxlIHJ1ZGUgYW5kIHZpb2xh dGUgdGhlIFNQRUMsIGFuZCBub3QNCj4gPiA+ID4gPiA+IHJlY29tbWVuZGVkDQo+ID4gPiA+ID4g YWx0aG91Z2ggaXQgbGV2ZWxzIHVwIHRoZSBIVyBjb21wYXRpYmlsaXR5Lg0KPiA+ID4gPiA+ID4g U28gSSBkcm9wIHRoaXMgbWV0aG9kIGluIHRoaXMgc2VyaWVzLg0KPiA+ID4gPiA+ID4NCj4gPiA+ ID4gPg0KPiA+ID4gPiA+IFNvcnJ5LCBJIGRvbid0IHVuZGVyc3RhbmQgd2hhdCB5b3UgYXJlIHNh eWluZyBoZXJlLiBJcyB0aGVyZSBhDQo+ID4gPiA+ID4gY2hhbmdlIHlvdSBhcmUgZ29pbmcgdG8g bWFrZSB0byB2NCB0aGF0IHdpbGwgbWFrZSB0aGlzIHdvcmsgZm9yDQo+ID4gPiA+ID4gdGhlIGV2 ayBhbmQgbXkgYm9hcmRzPyBXaGF0IGlzIHRoYXQgY2hhbmdlIGV4YWN0bHk/DQo+ID4gPiA+IFtS aWNoYXJkIFpodV0gTm8uIFdoYXQgSSBzYWlkIGFib3ZlIGlzIHRoYXQgdGhlIENMS1JFUSMgaXMg Zm9yY2VkDQo+ID4gPiA+IHRvIGJlIGxvdyBpbiBOWFAgbG9jYWwgQlNQIGtlcm5lbC4gSSBndWVz cyB0aGlzIG1pZ2h0IGJlIHRoZQ0KPiA+ID4gPiByZWFzb24gd2h5IHlvdXINCj4gPiBib2FyZCB3 b3Jrcy4NCj4gPiA+ID4NCj4gPiA+ID4gQklUMTEgYW5kIEJJVDEwIG9mIElPTVVYQ19HUFIxNCBj YW4gYmUgdXNlZCB0byBmb3JjZSB0aGUgQ0xLUkVRIw0KPiA+ID4gPiB0bw0KPiA+IGJlIGxvdy4N Cj4gPiA+ID4gU2V0IENMS1JFUV9PVkVSUklERV9FTihiaXQxMCkgMWIxLCB0aGVuIHdyaXRlIG9u ZSB6ZXJvIHRvDQo+ID4gQ0xLUkVRX09WRVJSSURFKGJpdDExKS4NCj4gPiA+ID4NCj4gPiA+DQo+ ID4gPiBPaywgdGhhdCBtYWtlcyBzZW5zZS4gVGhvc2UgYml0cyBhcmUgbm90IGV4cGxhaW5lZCB3 ZWxsIGluIHRoZQ0KPiA+ID4gSU1YOE1NUk0uIEFzIG15IGJvYXJkJ3MgZXh0ZXJuYWwgUkVGQ0xL IGlzIGFsd2F5cyBlbmFibGVkIHRoYXQgbXVzdA0KPiA+ID4gZ2F0ZSB0aGUgY2xvY2sgaW50ZXJu YWxseSB0byB0aGUgaG9zdCBjb250cm9sbGVyIGJsb2NrLg0KPiA+ID4NCj4gPiA+IEkgY2FuIGNv bmZpcm0gdGhhdCBhc3NlcnRpbmcgdGhvc2UgR1BSMTQgYml0cyBkb2VzIHJlc29sdmUgbXkgaXNz dWU6DQo+ID4gPg0KPiA+ID4gI2RlZmluZSBJTVg4TU1fR1BSX1BDSUVfQ0xLUkVRX09WRVJSSURF X1ZBTCAgICBCSVQoMTEpDQo+ID4gPiAjZGVmaW5lIElNWDhNTV9HUFJfUENJRV9DTEtSRVFfT1ZF UlJJREVfRU4gICAgIEJJVCgxMCkNCj4gPiA+DQo+ID4gPiAgICAgICAgLyoNCj4gPiA+ICAgICAg ICAgKiBmb3IgYm9hcmRzIHRoYXQgZG8gbm90IGNvbm5lY3QgQ0xLUkVRIywNCj4gPiA+ICAgICAg ICAgKiBvdmVycmlkZSBDTEtSRVEjIGFuZCBkcml2ZSBpdCBsb3cgaW50ZXJuYWxseQ0KPiA+ID4g ICAgICAgICAqLw0KPiA+ID4gICAgICAgIHJlZ21hcF91cGRhdGVfYml0cyhpbXg4X3BoeS0+aW9t dXhjX2dwciwgSU9NVVhDX0dQUjE0LA0KPiA+ID4NCj4gPiBJTVg4TU1fR1BSX1BDSUVfQ0xLUkVR X09WRVJSSURFX1ZBTCwgMCk7DQo+ID4gPiAgICAgICAgcmVnbWFwX3VwZGF0ZV9iaXRzKGlteDhf cGh5LT5pb211eGNfZ3ByLCBJT01VWENfR1BSMTQsDQo+ID4gPg0KPiA+IElNWDhNTV9HUFJfUENJ RV9DTEtSRVFfT1ZFUlJJREVfRU4sIDEpOw0KPiBbUmljaGFyZCBaaHVdIHJlZ21hcCBiaXRzIG9w ZXJhdGlvbnMgc2hvdWxkIG1hbmlwdWxhdGUgYWNjb3JkaW5nIGJpdHMuDQo+IFRoZSBCSVQoMTAp IGFuZCBCSVQoMTEpIHNob3VsZCBiZSB0b3VjaGVkIGFjdHVhbGx5Lg0KPiANCj4gPiA+DQo+ID4g PiBTaG91bGQgdGhpcyBiZSBhZGRlZCBhcyBhICdmc2wsY2xrcmVxLXVuc3VwcG9ydGVkJyBmbGFn IHRoYXQgbmVlZHMNCj4gPiA+IHRvIGJlIHNldCB0cnVlIHRvIGltcGxlbWVudCB0aGUgYWJvdmUg Y29kZT8NCj4gPiA+DQo+ID4NCj4gPiBSaWNoYXJkLA0KPiA+DQo+ID4gU29ycnkgLSBzcG9rZSB0 b28gc29vbi4gTXkgdGVzdCB3YXMgZmxhd2VkIGFzIEkgc3RpbGwgd2FzIHBpbm11eGluZw0KPiA+ IENMS1JFUSBpbiBteSBkdCB0byB3b3JrIGFyb3VuZCB0aGUgaXNzdWUgYW5kIGFmdGVyIHJlbW92 ZWQgdGhlIGFib3ZlDQo+ID4gZGlkIG5vdCByZXNvbHZlIG15IGlzc3VlLiBUaGUgc2V0dGluZyBv ZiBPVkVSUklERV9FTiB3YXMgd3JvbmcgYWJvdmUNCj4gPiAoc2hvdWxkIG5vdCBiZSBzZXQgdG8g JzEnIGJ1dCBCSVQoMTApIGluc3RlYWQpIGJ1dCB0aGlzIGNvZGUgYWxyZWFkeQ0KPiA+IGV4aXN0 cyBpbiBpbXg2X3BjaWVfZW5hYmxlX3JlZl9jbGsgYW5kIGlzIHVzZWQgZm9yIElNWDhNTSBwZXIg eW91cg0KPiA+IHBhdGNoIHNvIHRoaXMgaXMgbm90IHRoZSBpc3N1ZS4NCj4gPg0KPiA+IFdoYXQg bWFrZXMgbXkgYm9hcmQgd29yayBpcyB0byBjbGVhciBHUFIxNCBiaXQ5IChsaWtlIHRoZSBOWFAg a2VybmVsDQo+ID4gZG9lcykgc28gSSBkb24ndCB0aGluayB0aGlzIGJpdCBkb2VzIHdoYXQgd2Ug dGhpbmsgaXQgZG9lcyAoc2VsZWN0DQo+ID4gYmV0d2VlbiBpbnRlcm5hbCBhbmQgZXh0IGNsayku IEkgdGhpbmsgc2V0dGluZyBpdCBlbmFibGVzIGNsb2NrIGdhdGluZyB2aWENCj4gQ0xLUkVRIy4N Cj4gPg0KPiA+IFRoaXMgYWxzbyBwb2ludHMgb3V0IHRoYXQgcGVyaGFwcyB0aGUgQ0xLUkVRX09W RVJSSURFIGxvZ2ljIHNob3VsZCBiZQ0KPiA+IG1vdmVkIHRvIHRoZSBuZXcgcGh5IGRyaXZlciBm b3IgSU1YOE1NLg0KPiBbUmljaGFyZCBaaHVdIEl0IHNvdW5kcyByZWFzb25hYmxlIHRvIGNvbnNp ZGVyIHRvIGZvcmNlIHRoZSBDTEtSRVEjIHRvIGJlDQo+IGxvdy4NCj4gSSB3aWxsIHRoaW5rIGFi b3V0IHRoYXQgYW5kIGFkZCB0aGlzIGluIGxhdGVyIHY1IHBhdGNoLXNldCBpZiBub2JvZHkgaGFz IGRpZmZlcmVudA0KPiBjb25jZXJucy4NCj4gVGhhbmtzLg0KW1JpY2hhcmQgWmh1XSBIaSBUaW06 DQpBcyB5b3UgbWVudGlvbmVkIGFib3ZlLCB0aGUgQ0xLUkVRIyBHUElPIFBJTiBpcyBub3QgdXNl ZCBmb3IgUENJZSBvbiB5b3VyIGJvYXJkLCByaWdodD8NCiIgKEkgaGF2ZSBib2FyZHMgdGhhdCB1 c2UgdGhlIG9ubHkgdHdvIHBvc3NpYmxlIHBpbnMgZm9yIENMS1JFUSBhcyBvdGhlciBmZWF0dXJl cykiDQoNCkRpZCB0aGUgb3ZlcnJpZGUgY29uZmlndXJhdGlvbiBvZiB0aGUgY2xrcmVxIyB3aWxs IGJyaW5nIHVuZXhwZWN0ZWQgcmVzdWx0cyBmb3Igb3RoZXIgZmVhdHVyZXMgb24geW91ciBib2Fy ZD8NCg0KQlINClJpY2hhcmQgDQoNCj4gDQo+IEJSDQo+IFJpY2hhcmQNCj4gDQo+ID4NCj4gPiBC ZXN0IHJlZ2FyZHMsDQo+ID4NCj4gPiBUaW0NCg==