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 E05FDEB64DA for ; Wed, 19 Jul 2023 08:10:15 +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:MIME-Version:In-Reply-To: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=WhlIlK+URODW98jIDqVy7pd3Qtyg1l70iDU119ihjFY=; b=F6l3jRD9l+U0uO T3FvXCAYrBieSKNekjZMiymhlVu2gHEk2l/woF1q1y9Yo/6B4aF6h+iLgyMst+fmbAvxq/DIo/Bpd HqH+ztS5gXhmseWgq77q+dT/ANubcjncdPNIA1zXDz5QeM/yMHVuPQT13XLDSUpzlAIGeIIsjrbWr qywYfmSs0d51HKtgWQCsSkklbALTm3U72WSV06ecqO/AkPTVxIRCUitPBp/q01NkrucIpM7zt0Ebd RZVdf9ZIuFMwjo7vNs+lrb9CtTvE093qgsRZZ7uQtk6Ku38YI8fYF471BBXibaOgzu2e9Q/rqDa+h ABju8C8kyK5YJSVb7RTg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1qM2Ft-006F0F-0n; Wed, 19 Jul 2023 08:09:53 +0000 Received: from desiato.infradead.org ([2001:8b0:10b:1:d65d:64ff:fe57:4e05]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1qM2Fm-006EwF-05 for linux-arm-kernel@bombadil.infradead.org; Wed, 19 Jul 2023 08:09:46 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=desiato.20200630; h=MIME-Version:In-Reply-To: Content-Transfer-Encoding:Content-Type:References:Message-ID:Subject:Cc:To: From:Date:Sender:Reply-To:Content-ID:Content-Description; bh=i/Exr4CBwcQQPFLxTOfk6DCRJh4vSdBTP9udqy71/T0=; b=CjCMXaaY9/MIaL8VCGMHqCTm6O PlNjac972Py4kM4wKAQ5xakHL2/GM6T6h3JxztzSIht529xJs6tqkAZwaNmUAIbuZchM0M9cnHnYf zdYqfq7ScJmV9i5x+0/aM0KIwVM3YnA8SqAHFHjOpF3LZswXugTFoH6JXu69V6UGgtVXhZzV2wGw5 6A06qWBC/djlgFOy+uBton7ap17EMf9O8hfnupF59WQBjw5dMlSFMjVslD7+BE3K4TDYn9WLAjO1Y 90RRNHKM+or0K9VcWcVbsv8oAt0CDXi3SRpsboPOBovdXjf5r/qrY+FYR7uwHJ4PZZkWlKsIgTcIo BOH9MtGA==; Received: from mail-vi1eur05on20619.outbound.protection.outlook.com ([2a01:111:f400:7d00::619] helo=EUR05-VI1-obe.outbound.protection.outlook.com) by desiato.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1qLT5v-009DHM-0l for linux-arm-kernel@lists.infradead.org; Mon, 17 Jul 2023 18:37:17 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jaHp1TAoScKVHS2T0n3aOEQA22MdBuznCYst5fYiuc7QarAzhh+oWcbkgU0Z1/V5G67OepynC7QZp9EibCrwumt9eNcUtmEB/K71rW8fZr0jaUy0Afbf4NKCjKN4r8jEHQ3bSkqbX6TBRHFMg6nZLa1SFu9B+fkSygnBuhr2vDuSU6I3wI01MaMR1fyvy3l2qyXYBRvE75gQHEc0gvZqrHtBF1E9NVnwQB+iCDxynXt0/aHh7egIaJeSCh0OMrLQlJiVxfDShYHXX0ozUuejKlQq8Fx2PMCwJg+jf6E4xdS4pEfAoPQCgXCLBhzWvSaB8zR+bo0EIFsOAyYp0jUvFQ== 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=i/Exr4CBwcQQPFLxTOfk6DCRJh4vSdBTP9udqy71/T0=; b=TvaNpbApYRou0avmWLfLwOFR6He+988ycbcuzYIl6/2oK/6tr1hGqS6EyS1TAQUy5wuP8nVbAxKYa7hoqI3ldU0FnNhnc0tL9t7e7gsKrc8lNfbNPuDoDklNXowzFEq9fE5G+42hckrRu+1J5PQUzU6L0eYCL4Q80GkaTplEDfDD8dk04ODmuOc/3/W/aQffLaoo/2vc+pJePV09mFyXxce049d3Sy4Oixv9ejc8qzK70avgzHl5f5hCUSQlKe7blhruvJuKZTd5pjBC2ykWOhIwnfUelb9TNtPZOy9H11U9MwpcMW7QfeW8/FBYepJhurPjHuifS5u9ugaX29QJjA== 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=i/Exr4CBwcQQPFLxTOfk6DCRJh4vSdBTP9udqy71/T0=; b=FKRsQ7U1FMHIoAaudc2TEqnnEpGpcZHorw/WKKO1es4LuylEqcQMgHPVfQ4/m/iF+IMt1H9gOP/+8kUXuL6KaQsCgaCosoaA8+jfUIJ1QuLov/VWeKJFCALPxN1uo1W6vSNyqQIJz/GjEdG4vbR3k1dOjoYaSuPUeZpLAUifAWQ= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from AM6PR04MB4838.eurprd04.prod.outlook.com (2603:10a6:20b:4::16) by AM9PR04MB8194.eurprd04.prod.outlook.com (2603:10a6:20b:3e6::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6588.32; Mon, 17 Jul 2023 18:36:33 +0000 Received: from AM6PR04MB4838.eurprd04.prod.outlook.com ([fe80::6cc2:14b2:ca51:6c0]) by AM6PR04MB4838.eurprd04.prod.outlook.com ([fe80::6cc2:14b2:ca51:6c0%4]) with mapi id 15.20.6588.031; Mon, 17 Jul 2023 18:36:33 +0000 Date: Mon, 17 Jul 2023 14:36:19 -0400 From: Frank Li To: Manivannan Sadhasivam Cc: helgaas@kernel.org, imx@lists.linux.dev, bhelgaas@google.com, devicetree@vger.kernel.org, gustavo.pimentel@synopsys.com, kw@linux.com, leoyang.li@nxp.com, linux-arm-kernel@lists.infradead.org, linux-imx@nxp.com, linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org, lorenzo.pieralisi@arm.com, minghuan.lian@nxp.com, mingkai.hu@nxp.com, robh+dt@kernel.org, roy.zang@nxp.com, shawnguo@kernel.org, zhiqiang.hou@nxp.com Subject: Re: [PATCH v3 1/2] PCI: dwc: Implement general suspend/resume functionality for L2/L3 transitions Message-ID: References: <20230419164118.596300-1-Frank.Li@nxp.com> <20230717164526.GC35455@thinkpad> Content-Disposition: inline In-Reply-To: <20230717164526.GC35455@thinkpad> X-ClientProxiedBy: BY5PR20CA0033.namprd20.prod.outlook.com (2603:10b6:a03:1f4::46) To AM6PR04MB4838.eurprd04.prod.outlook.com (2603:10a6:20b:4::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM6PR04MB4838:EE_|AM9PR04MB8194:EE_ X-MS-Office365-Filtering-Correlation-Id: c681b8a5-b743-43c3-296e-08db86f4be5a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 5mAdSNZ125wzMJ5SkiBCmUeS8KltMCOlVn9gJJHMvNNNDSyelGFrhd0obCtawD09s7AnF3xTTrdjBMtWjJb2IPrSZZUnE7AbbW4oC4Crs04wGFXhaaGtaeOdoLgBptTw20I6zdHKC1ljXOctAHS/ZfFycdWXd7CxDUwGGyHEfoNXX0a8KiXn/BsIJOcRlFpgCtfRL/04oWyYy2TtxU8E/muT15mNkwSpUHAmE4x1+KLO4FawGm6hxHUm1TePOLBaHF2rTrlayVNSye1JDoi6QToRkzfZbp2Dkmli4TUUW6iwANZ1LLSPyxrZqXmCP2vUMKJKPaHO5tBx+h9zt28E0miS/x5G+Vy/tWBOGJAG07xIG52zKSzSPpBH5fjZMmZu3LFj/9HiAiRep74DoXMHz7cYqT/j0XP0Jf9aAQ/5kXq8jXhkkNaNf7TKzGinlKaPqr4YKRA/at1LV1EU/y0bC8zm15SueoDof4Vy4qoxkn4CRLrR9o0RwQHVbut3CzsFfHgdIecVkuSXWnww8h//ZBVNbiSWQYZX74RecCnvWS3MyPVTuB8rfIV3JtRaHAKJUBMdm4bIL9yGknbGh4nltslLz2lCACdbZNobuc9x/caYG3RsoPC+ElTaOt9aP8cw X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR04MB4838.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(7916004)(4636009)(136003)(39860400002)(366004)(396003)(376002)(346002)(451199021)(7416002)(86362001)(2906002)(33716001)(15650500001)(6512007)(186003)(83380400001)(26005)(9686003)(6506007)(38100700002)(38350700002)(6666004)(52116002)(6486002)(8936002)(6916009)(66946007)(66556008)(66476007)(316002)(4326008)(41300700001)(478600001)(5660300002)(8676002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?U3RQYnJuR2hHWk5hM0w1bGlqQ25JNUxsZUJsdDhGTFFXZXZmTXBQZFdGWWo3?= =?utf-8?B?cjZKTXQ5L1QvbzRHeVBhVm1xaFdDb0ZJM2MyUklRdU5sc2xncmhWRy9jOVhE?= =?utf-8?B?L0h2NnpHRGgvZnVreml3RTh5cG9ycGZyRGx4d2ZQOWRmTlMxV3dWaElYbjZw?= =?utf-8?B?ZDhFUHZ2K0VrZFlHTTY1Wm5EanNmeFJtWU5KTVllaVM1Y2xIZHNYNlFFVDBl?= =?utf-8?B?UnBEWEdINVkwMHBnYkptV0ZRZmVJajRLbWZ2SjRmUUMwcDJzY3dnS2toR3RO?= =?utf-8?B?aGZ3c2k1MEJvWEJSVTN6K3d5RzBGZXlxNDBRZ2I5dFp2cW1TVmlFUFNmSGFL?= =?utf-8?B?MTZtbTlOLzM0VlFqRDRyV2R3UXIxYjJUWTZnbThGZC8wVWIxZ3pLaHUzaEtz?= =?utf-8?B?NGVYcnVWa2NCVVBMZFpWMjFYRkFSR2dNZVc1MWFUNFAxSTFYdUZBaENVOFB3?= =?utf-8?B?ajFraTBCdHRqSkpEeVQwWGhKeXY3dTMreGlqa1lYN0N2SzNadXZvMy9NT28z?= =?utf-8?B?aHpreVM0SXkyZlIzZDRTNElUZG95ajgwMFRkazdJU29XWVA5SGJzcUhlMEx1?= =?utf-8?B?czlDeURDNFYzSDJYcjRIeU9tRGZ6UlM5dnFITk9uR1dmaGo3bGQ3N0hzZ1pS?= =?utf-8?B?MzQzQ0FDd3hIQ3haNHVhOXVnVndQMlZuc3RWYTRxRWtpRWJBSU53UjVCTlkw?= =?utf-8?B?dDBnUkh3a1pOVjA2V0srczQxTmlLZWFJVGR5bHUrQit2c1pXWmVRR0ZnYTMr?= =?utf-8?B?dU9OVUg0ZmlISkhnbWtCZUtzeTZGaE4wdUFrTUU4Q2tOV3VJWW1kMlQ0TU1l?= =?utf-8?B?Uk5tbFg4S1NnenAzYU1SL1JXQ0FjMURzd0FCYjV5TjBvQ3hqcVYrOHZ2TkdX?= =?utf-8?B?eGdEVTRkenVmNUxZRjQ4L1NxUDFzOWd4eG85SS8yN3d1TkE3MUU1djluY0xo?= =?utf-8?B?UHNaVnNacHhGOGI0L3ZqdXBoOEtQamRkWldMWW9xRExsOEh0YTNJdXZDckRU?= =?utf-8?B?V3Z6cWwrczlzY3pTYmM3S0RuTHlsV29vdTh2c2tVY2dKZi8vbHcrZHRPVWVD?= =?utf-8?B?VEVQUG5rOHVmTDJwcTZkWURNaXpmcTd1b3NlWU5RT2ZucytWN2tJYVlPR0Zy?= =?utf-8?B?QVNBVC9PQWZpeTdEK2p2NkNGZXNGU3FodklJdEJTcjJWYmpWR2tuYnowWXhq?= =?utf-8?B?d2lMV0diZ3paMU9VSmhOSXBvYmY1MzJVZWx5d2F5UnQydHQzeHphaGZHb3Y5?= =?utf-8?B?U3JvTk1tUTcyYnJEOTZwMlFtL2JIUTVyQm1MOG9mZHQ1TzRrdDlkNmVoUEZQ?= =?utf-8?B?WW9rR1lnWTNBOFo5TzNiYWhsM1F0Rzd3eWcrSi9vSUw0RHRjbEFzRjJIN0Y5?= =?utf-8?B?SGYza0lZVkpyWWozZ0p0Uzg1R2tHelZ5dTdrcHE4TFhvY21ra2pWeC9qZm9u?= =?utf-8?B?ald3OGtXaTFmNTNOUDdCU3BTYUFHb21wL0JRNG1qQnFERmZQb1VOS0s4K1kw?= =?utf-8?B?b2cwS0VIakNsQTZzdHl4Ti9yUXViMDBpYUx4MDM2dlRSK2Q1aGNTeXlBOU1R?= =?utf-8?B?RTJrRC8xS3dZM0VqRWJtbDFOS0dYcUFCaUI5M1oycERlQk1GVXpzNVJMNjRV?= =?utf-8?B?ZEg4NW9SenZNYURQZkRZYzZMV0dMK1JUcm1WdWtIVzE2WTJBVU5PaDVZaW1v?= =?utf-8?B?bW80a3dPbVpkUUkrMlhYQUV5c0dtK3RhUGoxQkdPYmp5T2NCdDUwazVmVTdK?= =?utf-8?B?Y3pxOGVLbWd5aCtDU0xhTHg5ZmZ2TGs5ditBeTdZdU9velRBRmpxeEd3SWc0?= =?utf-8?B?dHNzdTNXVy80ZmFwRSs1T2dMcUN6dXY5S1dkYVlBeXJVbGYwMFVHOXNrWWI2?= =?utf-8?B?dXhRcjJhd0lpOGxMRXhGT0wwNEMybXpMamtiZzNCeU1Lb0NidnZQeWplc2hB?= =?utf-8?B?Z1NFVjVZWEVLcDFyYVJBc2t0TTcrUzIwNS8xc0YwMjZYTDlYMTRHZW9QU21O?= =?utf-8?B?ei9KRUFJOUtnYUlwV1Y2K21RK0d3ckNQVmxVL2RlQlpwT05DMGh4dkduK2pq?= =?utf-8?B?WU5BV00va0VsZ2JvYUJld1RrZ0pob1JlZGo2T2NkM1ZiZ0tyWElBV01Xdmli?= =?utf-8?Q?GxKM2ud+ozuC9x59MWhOqFPoz?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: c681b8a5-b743-43c3-296e-08db86f4be5a X-MS-Exchange-CrossTenant-AuthSource: AM6PR04MB4838.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jul 2023 18:36:32.9533 (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: pxmRiGu7MliC5v57Hc03k7x3qZyeACg3vV0IDepLEJC64cr2ag3+pPNE/lLbBlfBZVkEZSjr7ZKCT7FBIob9UQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8194 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230717_193715_584539_32F89537 X-CRM114-Status: GOOD ( 35.30 ) 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 T24gTW9uLCBKdWwgMTcsIDIwMjMgYXQgMTA6MTU6MjZQTSArMDUzMCwgTWFuaXZhbm5hbiBTYWRo YXNpdmFtIHdyb3RlOgo+IE9uIFdlZCwgQXByIDE5LCAyMDIzIGF0IDEyOjQxOjE3UE0gLTA0MDAs IEZyYW5rIExpIHdyb3RlOgo+ID4gSW50cm9kdWNlZCBoZWxwZXIgZnVuY3Rpb24gZHdfcGNpZV9n ZXRfbHRzc20gdG8gcmV0cmlldmUgU01MSF9MVFNTX1NUQVRFLgo+ID4gQWRkZWQgQVBJIHBtZV90 dXJuX29mZiBhbmQgZXhpdF9mcm9tX2wyIGZvciBtYW5hZ2luZyBMMi9MMyBzdGF0ZSB0cmFuc2l0 aW9ucy4KPiA+IAo+ID4gVHlwaWNhbCBMMiBlbnRyeSB3b3JrZmxvdzoKPiA+IAo+ID4gMS4gVHJh bnNtaXQgUE1FIHR1cm4gb2ZmIHNpZ25hbCB0byBQQ0kgZGV2aWNlcy4KPiA+IDIuIEF3YWl0IGxp bmsgZW50ZXJpbmcgTDJfSURMRSBzdGF0ZS4KPiAKPiBBRkFJSywgdHlwaWNhbCB3b3JrZmxvdyBp cyB0byB3YWl0IGZvciBQTUVfVG9fQWNrLgoKMSBBbHJlYWR5IHdhaXQgZm9yIFBNRV90b19BQ0ss ICAyLCBqdXN0IHdhaXQgZm9yIGxpbmsgYWN0dWFsIGVudGVyIEwyLgpJIHRoaW5rIFBDSSBSQyBu ZWVkcyBzb21lIHRpbWUgdG8gc2V0IGxpbmsgZW50ZXIgTDIgYWZ0ZXIgZ2V0IEFDSyBmcm9tClBN RS4KCj4gCj4gPiAzLiBUcmFuc2l0aW9uIFJvb3QgY29tcGxleCB0byBEMyBzdGF0ZS4KPiA+IAo+ ID4gVHlwaWNhbCBMMiBleGl0IHdvcmtmbG93Ogo+ID4gCj4gPiAxLiBUcmFuc2l0aW9uIFJvb3Qg Y29tcGxleCB0byBEMCBzdGF0ZS4KPiA+IDIuIElzc3VlIGV4aXQgZnJvbSBMMiBjb21tYW5kLgo+ ID4gMy4gUmVpbml0aWFsaXplIFBDSSBob3N0Lgo+ID4gNC4gV2FpdCBmb3IgbGluayB0byBiZWNv bWUgYWN0aXZlLgo+ID4gCj4gPiBTaWduZWQtb2ZmLWJ5OiBGcmFuayBMaSA8RnJhbmsuTGlAbnhw LmNvbT4KPiA+IC0tLQo+ID4gQ2hhbmdlIGZyb20gdjIgdG8gdjM6IAo+ID4gLSBCYXNpYyByZXdy aXRlIHdob2xlIHBhdGNoIGFjY29yZGluZyByb2IgaGVycnkgc3VnZ2VzdGlvbi4gCj4gPiAgIHB1 dCBjb21tb24gZnVuY3Rpb24gaW50byBkd2MsIHNvIG1vcmUgc29jIGNhbiBzaGFyZSB0aGUgc2Ft ZSBsb2dpYy4KPiA+ICAgCj4gPiAgLi4uL3BjaS9jb250cm9sbGVyL2R3Yy9wY2llLWRlc2lnbndh cmUtaG9zdC5jIHwgODAgKysrKysrKysrKysrKysrKysrKwo+ID4gIGRyaXZlcnMvcGNpL2NvbnRy b2xsZXIvZHdjL3BjaWUtZGVzaWdud2FyZS5oICB8IDI4ICsrKysrKysKPiA+ICAyIGZpbGVzIGNo YW5nZWQsIDEwOCBpbnNlcnRpb25zKCspCj4gPiAKPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL3Bj aS9jb250cm9sbGVyL2R3Yy9wY2llLWRlc2lnbndhcmUtaG9zdC5jIGIvZHJpdmVycy9wY2kvY29u dHJvbGxlci9kd2MvcGNpZS1kZXNpZ253YXJlLWhvc3QuYwo+ID4gaW5kZXggOTk1MjA1N2M4ODE5 Li5lZjY4Njk0ODhiZGUgMTAwNjQ0Cj4gPiAtLS0gYS9kcml2ZXJzL3BjaS9jb250cm9sbGVyL2R3 Yy9wY2llLWRlc2lnbndhcmUtaG9zdC5jCj4gPiArKysgYi9kcml2ZXJzL3BjaS9jb250cm9sbGVy L2R3Yy9wY2llLWRlc2lnbndhcmUtaG9zdC5jCj4gPiBAQCAtOCw2ICs4LDcgQEAKPiA+ICAgKiBB dXRob3I6IEppbmdvbyBIYW4gPGpnMS5oYW5Ac2Ftc3VuZy5jb20+Cj4gPiAgICovCj4gPiAgCj4g PiArI2luY2x1ZGUgPGxpbnV4L2lvcG9sbC5oPgo+ID4gICNpbmNsdWRlIDxsaW51eC9pcnFjaGlw L2NoYWluZWRfaXJxLmg+Cj4gPiAgI2luY2x1ZGUgPGxpbnV4L2lycWRvbWFpbi5oPgo+ID4gICNp bmNsdWRlIDxsaW51eC9tc2kuaD4KPiA+IEBAIC04MDcsMyArODA4LDgyIEBAIGludCBkd19wY2ll X3NldHVwX3JjKHN0cnVjdCBkd19wY2llX3JwICpwcCkKPiA+ICAJcmV0dXJuIDA7Cj4gPiAgfQo+ ID4gIEVYUE9SVF9TWU1CT0xfR1BMKGR3X3BjaWVfc2V0dXBfcmMpOwo+ID4gKwo+ID4gKy8qCj4g PiArICogVGhlcmUgYXJlIGZvciBjb25maWd1cmluZyBob3N0IGNvbnRyb2xsZXJzLCB3aGljaCBh cmUgYnJpZGdlcyAqdG8qIFBDSSBkZXZpY2VzCj4gPiArICogYnV0IGFyZSBub3QgUENJIGRldmlj ZXMgdGhlbXNlbHZlcy4KPiAKPiBOb25lIG9mIHRoZSBmdW5jdGlvbnMgYXBwbGljYWJsZSB0byB0 aGUgZGV2aWNlcy4gU28gdGhlcmUgaXMgbm8gbmVlZCBmb3IgdGhpcwo+IGNvbW1lbnQuCgpJIGNv cHkgY29tbWVudHMgaW4gZHJpdmVycy9wY2kvY29udHJvbGxlci9kd2MvcGNpZS1kZXNpZ253YXJl LmMuCgovKgogKiBUaGVzZSBpbnRlcmZhY2VzIHJlc2VtYmxlIHRoZSBwY2lfZmluZF8qY2FwYWJp bGl0eSgpIGludGVyZmFjZXMsIGJ1dCB0aGVzZQogKiBhcmUgZm9yIGNvbmZpZ3VyaW5nIGhvc3Qg Y29udHJvbGxlcnMsIHdoaWNoIGFyZSBicmlkZ2VzICp0byogUENJIGRldmljZXMgYnV0CiAqIGFy ZSBub3QgUENJIGRldmljZXMgdGhlbXNlbHZlcy4KICovCnN0YXRpYyB1OCBfX2R3X3BjaWVfZmlu ZF9uZXh0X2NhcChzdHJ1Y3QgZHdfcGNpZSAqcGNpLCB1OCBjYXBfcHRyLAogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgdTggY2FwKQoKCkkgdGhpbmsgaXQgaXMgcmVhc29uYWxibGUg YmVjYXVzZSBpdCBpcyB0b28gc2ltaWxhciB3aXRoIHN0YW5kYXJkIEFQSQpwY2lfc2V0X3Bvd2Vy X3N0YXRlKCk7Cgo+IAo+ID4gKyAqLwo+ID4gK3N0YXRpYyB2b2lkIGR3X3BjaWVfc2V0X2RzdGF0 ZShzdHJ1Y3QgZHdfcGNpZSAqcGNpLCB1MzIgZHN0YXRlKQo+IAo+IFBsZWFzZSB1c2UgcGNpX3Bv d2VyX3QgZGVmaW5lcyBmb3IgZHN0YXRlcy4KCkFsdGhvdWdoIGR3YyB1c2UgdGhlIHNhbWUgZGVm aW5lLCBpdCBpcyBkaWZmZXJlbmNlIHRoaW5ncy4gCgo+IAo+ID4gK3sKPiA+ICsJdTggb2Zmc2V0 ID0gZHdfcGNpZV9maW5kX2NhcGFiaWxpdHkocGNpLCBQQ0lfQ0FQX0lEX1BNKTsKPiA+ICsJdTMy IHZhbDsKPiA+ICsKPiA+ICsJdmFsID0gZHdfcGNpZV9yZWFkd19kYmkocGNpLCBvZmZzZXQgKyBQ Q0lfUE1fQ1RSTCk7Cj4gCj4gUGxlYXNlIHVzZSBQQ0kgYWNjZXNzb3JzIGZvciBhY2Nlc3Npbmcg c3BlYyBjb21wbGlhbnQgcmVnaXN0ZXJzLgoKQWNjb3JkaW5nIHRvIGNvbW1lbnRzIGluIHBjaWUt ZGVzaWdud2FyZS5jLCBpdCBpcyBkaWZmZXJlbmNlIGNvbmNlcHQKZXZlbiB0aG91Z2ggcmVnaXN0 ZXIgZGVmaW5lIGlzIHRoZSBzYW1lIGFzIFBDSSBzcGVjLiBJdCB3YXMgdXNlZCB0bwpjb250cm9s IHJvb3QgYnJpZGdlcy4KCj4gCj4gPiArCXZhbCAmPSB+UENJX1BNX0NUUkxfU1RBVEVfTUFTSzsK PiA+ICsJdmFsIHw9IGRzdGF0ZTsKPiA+ICsJZHdfcGNpZV93cml0ZXdfZGJpKHBjaSwgb2Zmc2V0 ICsgUENJX1BNX0NUUkwsIHZhbCk7Cj4gPiArfQo+ID4gKwo+ID4gK2ludCBkd19wY2llX3N1c3Bl bmRfbm9pcnEoc3RydWN0IGR3X3BjaWUgKnBjaSkKPiA+ICt7Cj4gPiArCXUzMiB2YWw7Cj4gPiAr CWludCByZXQ7Cj4gPiArCj4gPiArCWlmIChkd19wY2llX2dldF9sdHNzbShwY2kpIDw9IERXX1BD SUVfTFRTU01fREVURUNUX0FDVCkKPiA+ICsJCXJldHVybiAwOwo+ID4gKwo+ID4gKwlwY2ktPnBw Lm9wcy0+cG1lX3R1cm5fb2ZmKCZwY2ktPnBwKTsKPiAKPiBZb3Ugc2hvdWxkIGZpcnN0IGNoZWNr IGZvciB0aGUgZXhpc3RlbmNlIG9mIHRoZSBjYWxsYmFjayBiZWZvcmUgaW52b2tpbmcuIFRoaXMK PiBhcHBsaWVzIHRvIGFsbCBjYWxsYmFja3MgaW4gdGhpcyBwYXRjaC4KClllcywgSSB3aWxsIHVw ZGF0ZS4KCj4gCj4gPiArCj4gPiArCS8qCj4gPiArCSAqIFBDSSBFeHByZXNzIEJhc2UgU3BlY2lm aWNhdGlvbiBSZXYgNC4wCj4gPiArCSAqIDUuMy4zLjIuMSBQTUUgU3luY2hyb25pemF0aW9uCj4g PiArCSAqIFJlY29tbWFuZCAxbXMgdG8gMTBtcyB0aW1lb3V0IHRvIGNoZWNrIEwyIHJlYWR5Cj4g PiArCSAqLwo+ID4gKwlyZXQgPSByZWFkX3BvbGxfdGltZW91dChkd19wY2llX2dldF9sdHNzbSwg dmFsLCB2YWwgPT0gRFdfUENJRV9MVFNTTV9MMl9JRExFLAo+ID4gKwkJCQkxMDAsIDEwMDAwLCBm YWxzZSwgcGNpKTsKPiAKPiBJcyB0aGVyZSBubyB3YXkgdG8gd2FpdCBmb3IgUE1FX1RvX0FjayBU TFA/CgoKU3VwcG9zZSBQTUVfdHVybl9vZmYgc2hvdWxkIHdhaXQgZm9yIEFDSyBiZWZvcmUgcmV0 dXJuLiAKSGVyZSwganVzdCBtYWtlIHN1cmUgTGluayBlbnRlciBMMiBzdGF0dXMuIEhhcmR3YXJl IG5lZWQgc29tZSB0aW1lIHRvIHB1dApsaW5rIHRvIEwyIGFmdGVyIGdldCBBQ0sgZnJvbSBidXMs IGV2ZW4gaXQgaXMgdmVyeSBzaG9ydCBnZW5lcmFsbHkuCgo+IAo+ID4gKwlpZiAocmV0KSB7Cj4g PiArCQlkZXZfZXJyKHBjaS0+ZGV2LCAiUENJZSBsaW5rIGVudGVyIEwyIHRpbWVvdXQhIGx0c3Nt ID0gMHgleFxuIiwgdmFsKTsKPiA+ICsJCXJldHVybiByZXQ7Cj4gPiArCX0KPiA+ICsKPiA+ICsJ ZHdfcGNpZV9zZXRfZHN0YXRlKHBjaSwgMHgzKTsKPiA+ICsKPiA+ICsJcGNpLT5zdXNwZW5kZWQg PSB0cnVlOwo+ID4gKwo+ID4gKwlyZXR1cm4gcmV0Owo+ID4gK30KPiA+ICtFWFBPUlRfU1lNQk9M X0dQTChkd19wY2llX3N1c3BlbmRfbm9pcnEpOwo+ID4gKwo+ID4gK2ludCBkd19wY2llX3Jlc3Vt ZV9ub2lycShzdHJ1Y3QgZHdfcGNpZSAqcGNpKQo+ID4gK3sKPiA+ICsJaW50IHJldDsKPiA+ICsK PiA+ICsJaWYgKCFwY2ktPnN1c3BlbmRlZCkKPiA+ICsJCXJldHVybiAwOwo+ID4gKwo+ID4gKwlw Y2ktPnN1c3BlbmRlZCA9IGZhbHNlOwo+ID4gKwo+ID4gKwlkd19wY2llX3NldF9kc3RhdGUocGNp LCAweDApOwo+ID4gKwo+ID4gKwlwY2ktPnBwLm9wcy0+ZXhpdF9mcm9tX2wyKCZwY2ktPnBwKTsK PiA+ICsKPiA+ICsJLyogZGVsYXkgMTAgbXMgdG8gYWNjZXNzIEVQICovCj4gCj4gSXMgdGhpcyBk ZWxheSBhcyBwYXJ0IG9mIHRoZSBEV0Mgc3BlYz8gSWYgc28sIHBsZWFzZSBxdW90ZSB0aGUgc2Vj dGlvbi4KPiAKPiA+ICsJbWRlbGF5KDEwKTsKPiA+ICsKPiA+ICsJcmV0ID0gcGNpLT5wcC5vcHMt Pmhvc3RfaW5pdCgmcGNpLT5wcCk7Cj4gPiArCWlmIChyZXQpIHsKPiA+ICsJCWRldl9lcnIocGNp LT5kZXYsICJsc19wY2llX2hvc3RfaW5pdCBmYWlsZWQhIHJldCA9IDB4JXhcbiIsIHJldCk7Cj4g Cj4gcy9sc19wY2llX2hvc3RfaW5pdC9Ib3N0IGluaXQKPiAKPiA+ICsJCXJldHVybiByZXQ7Cj4g PiArCX0KPiA+ICsKPiA+ICsJZHdfcGNpZV9zZXR1cF9yYygmcGNpLT5wcCk7Cj4gPiArCj4gCj4g RG9uJ3QgeW91IG5lZWQgdG8gY29uZmlndXJlIGlBVFU/Cj4gCj4gPiArCXJldCA9IGR3X3BjaWVf d2FpdF9mb3JfbGluayhwY2kpOwo+IAo+IERvbid0IHlvdSBuZWVkIHRvIHN0YXJ0IHRoZSBsaW5r IGJlZm9yZWhhbmQ/CgpTdXBwb3NlIG5lZWQgc3RhcnQgbGluaywgaXQgd29ya3MgYXQgbGF5ZXJz Y2FwZSBwbGF0Zm9ybSBqdXN0IGJlY2F1c2UgZHdjCmhhdmUgbm90IGZ1bGwgcG93ZXIgb2ZmLiBz b21lIHN0YXRlIHN0aWxsIGtlcHQuCgo+IAo+ID4gKwlpZiAocmV0KSB7Cj4gPiArCQlkZXZfZXJy KHBjaS0+ZGV2LCAid2FpdCBsaW5rIHVwIHRpbWVvdXQhIHJldCA9IDB4JXhcbiIsIHJldCk7Cj4g Cj4gZHdfcGNpZV93YWl0X2Zvcl9saW5rKCkgaXRzZWxmIHByaW50cyBlcnJvciBtZXNzYWdlIG9u IGZhaWx1cmUuIFNvIG5vIG5lZWQgdG8gZG8KPiB0aGUgc2FtZSBoZXJlLgoKT2theQoKPiAKPiAt IE1hbmkKPiAKPiA+ICsJCXJldHVybiByZXQ7Cj4gPiArCX0KPiA+ICsKPiA+ICsJcmV0dXJuIHJl dDsKPiA+ICt9Cj4gPiArRVhQT1JUX1NZTUJPTF9HUEwoZHdfcGNpZV9yZXN1bWVfbm9pcnEpOwo+ ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvcGNpL2NvbnRyb2xsZXIvZHdjL3BjaWUtZGVzaWdud2Fy ZS5oIGIvZHJpdmVycy9wY2kvY29udHJvbGxlci9kd2MvcGNpZS1kZXNpZ253YXJlLmgKPiA+IGlu ZGV4IDc5NzEzY2UwNzVjYy4uZWZmYjA3YTUwNmU0IDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVycy9w Y2kvY29udHJvbGxlci9kd2MvcGNpZS1kZXNpZ253YXJlLmgKPiA+ICsrKyBiL2RyaXZlcnMvcGNp L2NvbnRyb2xsZXIvZHdjL3BjaWUtZGVzaWdud2FyZS5oCj4gPiBAQCAtMjg4LDEwICsyODgsMjEg QEAgZW51bSBkd19wY2llX2NvcmVfcnN0IHsKPiA+ICAJRFdfUENJRV9OVU1fQ09SRV9SU1RTCj4g PiAgfTsKPiA+ICAKPiA+ICtlbnVtIGR3X3BjaWVfbHRzc20gewo+ID4gKwlEV19QQ0lFX0xUU1NN X1VOS05PV04gPSAweEZGRkZGRkZGLAo+ID4gKwkvKiBOZWVkIGFsaWduIFBDSUVfUE9SVF9ERUJV RzAgYml0MDo1ICovCj4gPiArCURXX1BDSUVfTFRTU01fREVURUNUX1FVSUVUID0gMHgwLAo+ID4g KwlEV19QQ0lFX0xUU1NNX0RFVEVDVF9BQ1QgPSAweDEsCj4gPiArCURXX1BDSUVfTFRTU01fTDAg PSAweDExLAo+ID4gKwlEV19QQ0lFX0xUU1NNX0wyX0lETEUgPSAweDE1LAo+ID4gK307Cj4gPiAr Cj4gPiAgc3RydWN0IGR3X3BjaWVfaG9zdF9vcHMgewo+ID4gIAlpbnQgKCpob3N0X2luaXQpKHN0 cnVjdCBkd19wY2llX3JwICpwcCk7Cj4gPiAgCXZvaWQgKCpob3N0X2RlaW5pdCkoc3RydWN0IGR3 X3BjaWVfcnAgKnBwKTsKPiA+ICAJaW50ICgqbXNpX2hvc3RfaW5pdCkoc3RydWN0IGR3X3BjaWVf cnAgKnBwKTsKPiA+ICsJdm9pZCAoKnBtZV90dXJuX29mZikoc3RydWN0IGR3X3BjaWVfcnAgKnBw KTsKPiA+ICsJdm9pZCAoKmV4aXRfZnJvbV9sMikoc3RydWN0IGR3X3BjaWVfcnAgKnBwKTsKPiA+ ICB9Owo+ID4gIAo+ID4gIHN0cnVjdCBkd19wY2llX3JwIHsKPiA+IEBAIC0zNjQsNiArMzc1LDcg QEAgc3RydWN0IGR3X3BjaWVfb3BzIHsKPiA+ICAJdm9pZCAgICAoKndyaXRlX2RiaTIpKHN0cnVj dCBkd19wY2llICpwY2llLCB2b2lkIF9faW9tZW0gKmJhc2UsIHUzMiByZWcsCj4gPiAgCQkJICAg ICAgc2l6ZV90IHNpemUsIHUzMiB2YWwpOwo+ID4gIAlpbnQJKCpsaW5rX3VwKShzdHJ1Y3QgZHdf cGNpZSAqcGNpZSk7Cj4gPiArCWVudW0gZHdfcGNpZV9sdHNzbSAoKmdldF9sdHNzbSkoc3RydWN0 IGR3X3BjaWUgKnBjaWUpOwo+ID4gIAlpbnQJKCpzdGFydF9saW5rKShzdHJ1Y3QgZHdfcGNpZSAq cGNpZSk7Cj4gPiAgCXZvaWQJKCpzdG9wX2xpbmspKHN0cnVjdCBkd19wY2llICpwY2llKTsKPiA+ ICB9Owo+ID4gQEAgLTM5Myw2ICs0MDUsNyBAQCBzdHJ1Y3QgZHdfcGNpZSB7Cj4gPiAgCXN0cnVj dCByZXNldF9jb250cm9sX2J1bGtfZGF0YQlhcHBfcnN0c1tEV19QQ0lFX05VTV9BUFBfUlNUU107 Cj4gPiAgCXN0cnVjdCByZXNldF9jb250cm9sX2J1bGtfZGF0YQljb3JlX3JzdHNbRFdfUENJRV9O VU1fQ09SRV9SU1RTXTsKPiA+ICAJc3RydWN0IGdwaW9fZGVzYwkJKnBlX3JzdDsKPiA+ICsJYm9v bAkJCXN1c3BlbmRlZDsKPiA+ICB9Owo+ID4gIAo+ID4gICNkZWZpbmUgdG9fZHdfcGNpZV9mcm9t X3BwKHBvcnQpIGNvbnRhaW5lcl9vZigocG9ydCksIHN0cnVjdCBkd19wY2llLCBwcCkKPiA+IEBA IC00MzAsNiArNDQzLDkgQEAgdm9pZCBkd19wY2llX2lhdHVfZGV0ZWN0KHN0cnVjdCBkd19wY2ll ICpwY2kpOwo+ID4gIGludCBkd19wY2llX2VkbWFfZGV0ZWN0KHN0cnVjdCBkd19wY2llICpwY2kp Owo+ID4gIHZvaWQgZHdfcGNpZV9lZG1hX3JlbW92ZShzdHJ1Y3QgZHdfcGNpZSAqcGNpKTsKPiA+ ICAKPiA+ICtpbnQgZHdfcGNpZV9zdXNwZW5kX25vaXJxKHN0cnVjdCBkd19wY2llICpwY2kpOwo+ ID4gK2ludCBkd19wY2llX3Jlc3VtZV9ub2lycShzdHJ1Y3QgZHdfcGNpZSAqcGNpKTsKPiA+ICsK PiA+ICBzdGF0aWMgaW5saW5lIHZvaWQgZHdfcGNpZV93cml0ZWxfZGJpKHN0cnVjdCBkd19wY2ll ICpwY2ksIHUzMiByZWcsIHUzMiB2YWwpCj4gPiAgewo+ID4gIAlkd19wY2llX3dyaXRlX2RiaShw Y2ksIHJlZywgMHg0LCB2YWwpOwo+ID4gQEAgLTUwMSw2ICs1MTcsMTggQEAgc3RhdGljIGlubGlu ZSB2b2lkIGR3X3BjaWVfc3RvcF9saW5rKHN0cnVjdCBkd19wY2llICpwY2kpCj4gPiAgCQlwY2kt Pm9wcy0+c3RvcF9saW5rKHBjaSk7Cj4gPiAgfQo+ID4gIAo+ID4gK3N0YXRpYyBpbmxpbmUgZW51 bSBkd19wY2llX2x0c3NtIGR3X3BjaWVfZ2V0X2x0c3NtKHN0cnVjdCBkd19wY2llICpwY2kpCj4g PiArewo+ID4gKwl1MzIgdmFsOwo+ID4gKwo+ID4gKwlpZiAocGNpLT5vcHMgJiYgcGNpLT5vcHMt PmdldF9sdHNzbSkKPiA+ICsJCXJldHVybiBwY2ktPm9wcy0+Z2V0X2x0c3NtKHBjaSk7Cj4gPiAr Cj4gPiArCXZhbCA9IGR3X3BjaWVfcmVhZGxfZGJpKHBjaSwgUENJRV9QT1JUX0RFQlVHMCk7Cj4g PiArCj4gPiArCXJldHVybiAoZW51bSBkd19wY2llX2x0c3NtKUZJRUxEX0dFVChQT1JUX0xPR0lD X0xUU1NNX1NUQVRFX01BU0ssIHZhbCk7Cj4gPiArfQo+ID4gKwo+ID4gICNpZmRlZiBDT05GSUdf UENJRV9EV19IT1NUCj4gPiAgaXJxcmV0dXJuX3QgZHdfaGFuZGxlX21zaV9pcnEoc3RydWN0IGR3 X3BjaWVfcnAgKnBwKTsKPiA+ICBpbnQgZHdfcGNpZV9zZXR1cF9yYyhzdHJ1Y3QgZHdfcGNpZV9y cCAqcHApOwo+ID4gLS0gCj4gPiAyLjM0LjEKPiA+IAo+IAo+IC0tIAo+IOCuruCuo+Cuv+CuteCu o+CvjeCuo+CuqeCvjSDgrprgrqTgrr7grprgrr/grrXgrq7gr40KCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBs aXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5m cmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK