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 smtp4.osuosl.org (smtp4.osuosl.org [140.211.166.137]) (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 283E7C77B75 for ; Mon, 15 May 2023 16:51:50 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp4.osuosl.org (Postfix) with ESMTP id A3476418C5; Mon, 15 May 2023 16:51:50 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 smtp4.osuosl.org A3476418C5 Authentication-Results: smtp4.osuosl.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256 header.s=k20201202 header.b=r5lYF9P9 X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp4.osuosl.org ([127.0.0.1]) by localhost (smtp4.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id QhXlLRh_DGGx; Mon, 15 May 2023 16:51:49 +0000 (UTC) Received: from lists.linuxfoundation.org (lf-lists.osuosl.org [140.211.9.56]) by smtp4.osuosl.org (Postfix) with ESMTPS id 1DEEE418C9; Mon, 15 May 2023 16:51:49 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 smtp4.osuosl.org 1DEEE418C9 Received: from lf-lists.osuosl.org (localhost [127.0.0.1]) by lists.linuxfoundation.org (Postfix) with ESMTP id EB1EDC0037; Mon, 15 May 2023 16:51:48 +0000 (UTC) Received: from smtp2.osuosl.org (smtp2.osuosl.org [140.211.166.133]) by lists.linuxfoundation.org (Postfix) with ESMTP id B6BA1C002A for ; Mon, 15 May 2023 16:51:47 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp2.osuosl.org (Postfix) with ESMTP id 8A798403C2 for ; Mon, 15 May 2023 16:51:47 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 smtp2.osuosl.org 8A798403C2 Authentication-Results: smtp2.osuosl.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256 header.s=k20201202 header.b=r5lYF9P9 X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp2.osuosl.org ([127.0.0.1]) by localhost (smtp2.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id HHSMH1EdCrFC for ; Mon, 15 May 2023 16:51:46 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.8.0 DKIM-Filter: OpenDKIM Filter v2.11.0 smtp2.osuosl.org 1F7F540320 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by smtp2.osuosl.org (Postfix) with ESMTPS id 1F7F540320 for ; Mon, 15 May 2023 16:51:46 +0000 (UTC) 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 dfw.source.kernel.org (Postfix) with ESMTPS id 17EDB6298D; Mon, 15 May 2023 16:51:45 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 490EBC433A1; Mon, 15 May 2023 16:51:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1684169504; bh=bPE6tiox0+6DYFmbI4QGtsVQa2DaVX/N5GVaQuozKI4=; h=Date:From:To:Cc:Subject:In-Reply-To:From; b=r5lYF9P9/n/gsCAddF//yyaqmOhUFn8yhkNNIKkC11P6EixEI2iKTyl03mCckUz6f jhhxJh/c+fK44jKDuA9ifyIwidPJMmw4TQXNEwN8FC0WBQgEuUPWVbsuzhk8SglgV/ Sj9y/5rPK+nJz+ucIdXaBQyzO9WqPZal7B6UpO+iCh82qP0DXw9mlRwdqMKOKY4HD/ B3kh5/ZO+SUUpHz7s+xgMj0ngIwbYOtfh7ZcUefOZvd8IYoJBcWdOrY8gEUZa1qnfc yHw+Z8PE4938YrTDfF7gGQp4ZGL/iiH9BlO5SCs1c4/m+01RARk4kxuICrjmFOxPEu n479RmOkxMnUw== Date: Mon, 15 May 2023 11:51:42 -0500 From: Bjorn Helgaas To: Peter Geis Subject: Re: [PATCH v1] drivers: pci: introduce configurable delay for Rockchip PCIe bus scan Message-ID: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: Cc: robh@kernel.org, heiko@sntech.de, kw@linux.com, linux-pci@vger.kernel.org, shawn.lin@rock-chips.com, linux-kernel@vger.kernel.org, lgirdwood@gmail.com, linux-rockchip@lists.infradead.org, broonie@kernel.org, linux-arm-kernel@lists.infradead.org, Catalin Marinas , bhelgaas@google.com, Dan Johansen , Will Deacon , lpieralisi@kernel.org, linux-kernel-mentees@lists.linuxfoundation.org, Robin Murphy X-BeenThere: linux-kernel-mentees@lists.linuxfoundation.org X-Mailman-Version: 2.1.15 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 Errors-To: linux-kernel-mentees-bounces@lists.linuxfoundation.org Sender: "Linux-kernel-mentees" T24gU2F0LCBNYXkgMTMsIDIwMjMgYXQgMDc6NDA6MTJBTSAtMDQwMCwgUGV0ZXIgR2VpcyB3cm90 ZToKPiBPbiBGcmksIE1heSAxMiwgMjAyMyBhdCA5OjI04oCvUE0gQmpvcm4gSGVsZ2FhcyA8aGVs Z2Fhc0BrZXJuZWwub3JnPiB3cm90ZToKPiA+Cj4gPiBbK2NjIEFSTTY0IGZvbGtzLCBpbiBjYXNl IHlvdSBoYXZlIGFib3J0IGhhbmRsaW5nIHRpcHM7IHRocmVhZCBhdDoKPiA+IGh0dHBzOi8vbG9y ZS5rZXJuZWwub3JnL3IvMjAyMzA1MDkxNTM5MTIuNTE1MjE4LTEtdmluY2Vuem9wYWxhenpvZGV2 QGdtYWlsLmNvbV0KPiA+Cj4gPiBQaW5lNjQgUm9ja1BybzY0IHBhbmljcyB3aGlsZSBlbnVtZXJh dGluZyBzb21lIFBDSWUgZGV2aWNlcy4gIEFkZGluZyBhCj4gPiBkZWxheSBhdm9pZHMgdGhlIHBh bmljLiAgTXkgdGhlb3J5IGlzIGEgUENJZSBSZXF1ZXN0IFJldHJ5IFN0YXR1cyB0byBhCj4gPiBW ZW5kb3IgSUQgY29uZmlnIHJlYWQgY2F1c2VzIGFuIGFib3J0IHRoYXQgd2UgZG9uJ3QgaGFuZGxl Lgo+ID4KPiA+ID4gT24gVHVlLCBNYXkgMDksIDIwMjMgYXQgMDU6Mzk6MTJQTSArMDIwMCwgVmlu Y2Vuem8gUGFsYXp6byB3cm90ZToKPiA+ID4+IC4uLgo+ID4gPj4gWyAgICAxLjIyOTg1Nl0gU0Vy cm9yIEludGVycnVwdCBvbiBDUFU0LCBjb2RlIDB4YmYwMDAwMDIgLS0gU0Vycm9yCj4gPiA+PiBb ICAgIDEuMjI5ODYwXSBDUFU6IDQgUElEOiAxIENvbW06IHN3YXBwZXIvMCBOb3QgdGFpbnRlZCA1 LjkuOS0yLjAtTUFOSkFSTy1BUk0KPiA+ID4+ICMxCj4gPiA+PiBbICAgIDEuMjI5ODYyXSBIYXJk d2FyZSBuYW1lOiBQaW5lNjQgUm9ja1BybzY0IHYyLjEgKERUKQo+ID4gPj4gWyAgICAxLjIyOTg2 NF0gcHN0YXRlOiA2MDAwMDA4NSAoblpDdiBkYUlmIC1QQU4gLVVBTyBCVFlQRT0tLSkKPiA+ID4+ IFsgICAgMS4yMjk4NjZdIHBjIDogcm9ja2NoaXBfcGNpZV9yZF9jb25mKzB4YjQvMHgyNzAKPiA+ ID4+IFsgICAgMS4yMjk4NjhdIGxyIDogcm9ja2NoaXBfcGNpZV9yZF9jb25mKzB4MWI0LzB4Mjcw Cj4gPiA+PiAuLi4KPiA+ID4+IFsgICAgMS4yMjk5MzldIEtlcm5lbCBwYW5pYyAtIG5vdCBzeW5j aW5nOiBBc3luY2hyb25vdXMgU0Vycm9yIEludGVycnVwdAo+ID4gPj4gLi4uCj4gPiA+PiBbICAg IDEuMjI5OTU1XSAgbm1pX3BhbmljKzB4OGMvMHg5MAo+ID4gPj4gWyAgICAxLjIyOTk1Nl0gIGFy bTY0X3NlcnJvcl9wYW5pYysweDc4LzB4ODQKPiA+ID4+IFsgICAgMS4yMjk5NThdICBkb19zZXJy b3IrMHgxNWMvMHgxNjAKPiA+ID4+IFsgICAgMS4yMjk5NjBdICBlbDFfZXJyb3IrMHg4NC8weDEw MAo+ID4gPj4gWyAgICAxLjIyOTk2Ml0gIHJvY2tjaGlwX3BjaWVfcmRfY29uZisweGI0LzB4Mjcw Cj4gPiA+PiBbICAgIDEuMjI5OTY0XSAgcGNpX2J1c19yZWFkX2NvbmZpZ19kd29yZCsweDZjLzB4 ZDAKPiA+ID4+IFsgICAgMS4yMjk5NjZdICBwY2lfYnVzX2dlbmVyaWNfcmVhZF9kZXZfdmVuZG9y X2lkKzB4MzQvMHgxYjAKPiA+ID4+IFsgICAgMS4yMjk5NjhdICBwY2lfc2Nhbl9zaW5nbGVfZGV2 aWNlKzB4YTQvMHgxNDQKPiA+Cj4gPiBPbiBGcmksIE1heSAxMiwgMjAyMyBhdCAxMjo0NjoyMVBN ICswMjAwLCBWaW5jZW56byBQYWxhenpvIHdyb3RlOgo+ID4gPiAuLi4gSXMgdGhlcmUgYW55IHdh eSB0byB0ZWxsIHRoZSBrZXJuZWwgImhleSB3ZSBuZWVkIHNvbWUgbW9yZSB0aW1lCj4gPiA+IGhl cmUiPwo+ID4KPiA+IFdlIGVudW1lcmF0ZSBQQ0kgZGV2aWNlcyBieSB0cnlpbmcgdG8gcmVhZCB0 aGUgVmVuZG9yIElEIG9mIGV2ZXJ5Cj4gPiBwb3NzaWJsZSBkZXZpY2UgYWRkcmVzcyAoc2VlIHBj aV9zY2FuX3Nsb3QoKSkuICBPbiBQQ0llLCBpZiBhIGRldmljZQo+ID4gZG9lc24ndCBleGlzdCBh dCB0aGF0IGFkZHJlc3MsIHRoZSBWZW5kb3IgSUQgY29uZmlnIHJlYWQgd2lsbCBiZQo+ID4gdGVy bWluYXRlZCB3aXRoIFVuc3VwcG9ydGVkIFJlcXVlc3QgKFVSKSBzdGF0dXMuICBUaGlzIGlzIG5v cm1hbAo+ID4gYW5kIGhhcHBlbnMgZXZlcnkgdGltZSB3ZSBlbnVtZXJhdGUgZGV2aWNlcy4KPiA+ Cj4gPiBUaGUgY3Jhc2ggZG9lc24ndCBoYXBwZW4gZXZlcnkgdGltZSB3ZSBlbnVtZXJhdGUsIHNv IEkgZG9uJ3QgdGhpbmsKPiA+IHRoaXMgVVIgaXMgdGhlIHByb2JsZW0uICBBbHNvLCBpZiBpdCAq d2VyZSogdGhlIHByb2JsZW0sIGFkZGluZyBhCj4gPiBkZWxheSB3b3VsZCBub3QgbWFrZSBhbnkg ZGlmZmVyZW5jZS4KPiAKPiBJcyB0aGlzIGJlaGF2aW9yIGRpZmZlcmVudCBpZiB0aGVyZSBpcyBh IHN3aXRjaCBkZXZpY2UgZm9yd2FyZGluZyBvbgo+IHRoZSBVUj8gT24gcmszMzk5IHN3aXRjaGVz IGFyZSBjb21wbGV0ZWx5IG5vbi1mdW5jdGlvbmFsIGJlY2F1c2Ugb2YKPiB0aGUgcGFuaWMsIHdo aWNoIGlzIG9ic2VydmVkIGluIHRoZSBvdXRwdXQgb2YgdGhlIGRtZXNnIGluIFsyXSB3aXRoCj4g dGhlIGhhY2sgcGF0Y2ggZW5hYmxlZC4gQ29uc2lkZXJpbmcgd2hhdCB5b3UganVzdCBkZXNjcmli ZWQgaXQgbG9va3MKPiBsaWtlIHRoZSBmb3J3YXJkZWQgVVIgZm9yIGVhY2ggbm9uLWV4aXN0ZW50 IGRldmljZSBiZWhpbmQgdGhlIHN3aXRjaAo+IGlzIGNhdXNpbmcgYW4gc2Vycm9yLgoKSSBkb24n dCBrbm93IGV4YWN0bHkgd2hhdCB0aGUgcGFuaWMgbG9va3MgbGlrZSwgYnV0IEkgd291bGRuJ3Qg ZXhwZWN0ClVSIGhhbmRsaW5nIHRvIGJlIGRpZmZlcmVudCB3aGVuIHRoZXJlJ3MgYSBzd2l0Y2gu CgpwY2llLXJvY2tjaGlwLWhvc3QuYyBkb2VzIGhhbmRsZSBkZXZpY2VzIG9uIHRoZSByb290IGJ1 cyAoMDApCmRpZmZlcmVudGx5IHRoYW4gb3RoZXJzIGJlY2F1c2Ugcm9ja2NoaXBfcGNpZV92YWxp ZF9kZXZpY2UoKSBrbm93cwp0aGF0IGRldmljZSAwMDowMCBpcyB0aGUgb25seSBkZXZpY2Ugb24g dGhlIHJvb3QgYnVzLiAgVGhhdCBwYXJ0IG1ha2VzCnNlbnNlIGJlY2F1c2UgMDA6MDAgaXMgYnVp bHQgaW50byB0aGUgU29DLgoKSSdtIGEgbGl0dGxlIHN1c3BpY2lvdXMgb2YgdGhlIGZhY3QgdGhh dCByb2NrY2hpcF9wY2llX3ZhbGlkX2RldmljZSgpCmFsc28gZW5mb3JjZXMgdGhhdCBidXMgMDEg Y2FuIG9ubHkgaGF2ZSBhIHNpbmdsZSBkZXZpY2Ugb24gaXQuICBObwpvdGhlciAqX3BjaWVfdmFs aWRfZGV2aWNlKCkgaW1wbGVtZW50YXRpb25zIGVuZm9yY2UgdGhhdC4gIEl0J3MgdHJ1ZQp0aGF0 IHRyYWRpdGlvbmFsIFBDSWUgZGV2aWNlcyBjYW4gb25seSBpbXBsZW1lbnQgZGV2aWNlIDAwLCBi dXQgQVJJCnJlbGF4ZXMgdGhhdCBieSByZXVzaW5nIHRoZSBEZXZpY2UgTnVtYmVyIGFzIGV4dGVu ZGVkIEZ1bmN0aW9uIE51bWJlcgpiaXRzLgoKPiA+IFRoZXJlICppcyogYSB3YXkgZm9yIGEgUENJ ZSBkZXZpY2UgdG8gc2F5ICJJIG5lZWQgbW9yZSB0aW1lIi4gIEl0IGRvZXMKPiA+IHRoaXMgYnkg cmVzcG9uZGluZyB0byB0aGF0IFZlbmRvciBJRCBjb25maWcgcmVhZCB3aXRoIFJlcXVlc3QgUmV0 cnkKPiA+IFN0YXR1cyAoUlJTLCBha2EgQ1JTIGluIG9sZGVyIHNwZWNzKSwgd2hpY2ggbWVhbnMg IkknbSBub3QgcmVhZHkgeWV0LAo+ID4gYnV0IEkgd2lsbCBiZSByZWFkeSBpbiB0aGUgZnV0dXJl LiIgIEFkZGluZyBhIGRlbGF5IHdvdWxkIGRlZmluaXRlbHkKPiA+IG1ha2UgYSBkaWZmZXJlbmNl IGhlcmUsIHNvIG15IGd1ZXNzIGlzIHRoaXMgaXMgd2hhdCdzIGhhcHBlbmluZy4KPiA+Cj4gPiBN b3N0IHJvb3QgY29tcGxleGVzIHJldHVybiB+MCBkYXRhIHRvIHRoZSBDUFUgd2hlbiBhIGNvbmZp ZyByZWFkCj4gPiB0ZXJtaW5hdGVzIHdpdGggVVIgb3IgUlJTLiAgSXQgc291bmRzIGxpa2Ugcm9j a2NoaXAgZG9lcyB0aGlzIGZvciBVUgo+ID4gYnV0IHBvc3NpYmx5IG5vdCBmb3IgUlJTLgo+ID4K PiA+IFRoZXJlIGlzIGEgIlJSUyBTb2Z0d2FyZSBWaXNpYmlsaXR5IiBmZWF0dXJlLCB3aGljaCBp cyBzdXBwb3NlZCB0bwo+ID4gdHVybiB0aGUgUlJTIGludG8gYSBzcGVjaWFsIHZhbHVlIChWZW5k b3IgSUQgPT0gMHgwMDAxKSwgYnV0IHBlciBbMV0sCj4gPiByb2NrY2hpcCBkb2Vzbid0IHN1cHBv cnQgaXQgKGxzcGNpIGNhbGxzIGl0ICJDUlNWaXNpYmxlIikuCj4gPgo+ID4gQnV0IHRoZSBDUFUg bG9hZCBpbnN0cnVjdGlvbiBjb3JyZXNwb25kaW5nIHRvIHRoZSBjb25maWcgcmVhZCBoYXMgdG8K PiA+IGNvbXBsZXRlIGJ5IHJlYWRpbmcgKnNvbWV0aGluZyogb3IgZWxzZSBiZSBhYm9ydGVkLiAg SXQgc291bmRzIGxpa2UKPiA+IGl0J3MgYWJvcnRlZCBpbiB0aGlzIGNhc2UuICBJIGRvbid0IGtu b3cgdGhlIGFybTY0IGRldGFpbHMsIGJ1dCBpZiB3ZQo+ID4gY291bGQgY2F0Y2ggdGhhdCBhYm9y dCBhbmQgZGV0ZXJtaW5lIHRoYXQgaXQgd2FzIGFuIFJSUyBhbmQgbm90IGEgVVIsCj4gPiBtYXli ZSB3ZSBjb3VsZCBmYWJyaWNhdGUgdGhlIG1hZ2ljIFJSUyAweDAwMDEgdmFsdWUuCj4gPgo+ID4g aW14NnFfcGNpZV9hYm9ydF9oYW5kbGVyKCkgZG9lcyBzb21ldGhpbmcgbGlrZSB0aGF0LCBhbHRo b3VnaCBJIHRoaW5rCj4gPiBpdCdzIGZvciBhcm0zMiwgbm90IGFybTY0LiAgQnV0IG9idmlvdXNs eSB3ZSBhbHJlYWR5IGNhdGNoIHRoZSBhYm9ydAo+ID4gZW5vdWdoIHRvIGR1bXAgdGhlIHJlZ2lz dGVyIHN0YXRlIGFuZCBwYW5pYywgc28gbWF5YmUgdGhlcmUncyBhIHdheSB0bwo+ID4gZXh0ZW5k IHRoYXQ/Cj4gCj4gUGVyaGFwcyBhIGhvb2sgbWVjaGFuaXNtIHRoYXQgYWxsb3dzIGRyaXZlcnMg dG8gcmVnaXN0ZXIgd2l0aCB0aGUKPiBzZXJyb3IgaGFuZGxlciBhbmQgb2ZmZXIgdG8gaGFuZGxl IHNwZWNpZmljIGVycm9ycyBiZWZvcmUgdGhlIGdlbmVyaWMKPiBjb2RlIGNhdXNlcyB0aGUgc3lz dGVtIHBhbmljPwo+IAo+IFZlcnkgUmVzcGVjdGZ1bGx5LAo+IFBldGVyIEdlaXMKPiAKPiBbMl0g aHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvbGludXgtcGNpL0NBTWRZellxbjNMN3gtdmMrX0s2akcw RVZUaVBHYno4cFEtTjFRMW1SYmNWWEU4MjJZZ0BtYWlsLmdtYWlsLmNvbS8KPiAKPiA+Cj4gPiBC am9ybgo+ID4KPiA+IFsxXSBodHRwczovL2xvcmUua2VybmVsLm9yZy9saW51eC1wY2kvQ0FNZFl6 WXBPRkFWcTMwTitPMmdPeFhpUnRwb0hwYWtGZzNMS3EzVEVacTRTNlkweTBnQG1haWwuZ21haWwu Y29tLwo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4g TGludXgta2VybmVsLW1lbnRlZXMgbWFpbGluZyBsaXN0Cj4gTGludXgta2VybmVsLW1lbnRlZXNA bGlzdHMubGludXhmb3VuZGF0aW9uLm9yZwo+IGh0dHBzOi8vbGlzdHMubGludXhmb3VuZGF0aW9u Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWtlcm5lbC1tZW50ZWVzCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkxpbnV4LWtlcm5lbC1tZW50ZWVzIG1h aWxpbmcgbGlzdApMaW51eC1rZXJuZWwtbWVudGVlc0BsaXN0cy5saW51eGZvdW5kYXRpb24ub3Jn Cmh0dHBzOi8vbGlzdHMubGludXhmb3VuZGF0aW9uLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4 LWtlcm5lbC1tZW50ZWVzCg== 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 E956BC77B7D for ; Mon, 15 May 2023 16:52:04 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S243122AbjEOQwD (ORCPT ); Mon, 15 May 2023 12:52:03 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57478 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S243121AbjEOQvr (ORCPT ); Mon, 15 May 2023 12:51:47 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [IPv6:2604:1380:4641:c500::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8F9CD18C; Mon, 15 May 2023 09:51:45 -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 dfw.source.kernel.org (Postfix) with ESMTPS id 248166298E; Mon, 15 May 2023 16:51:45 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 490EBC433A1; Mon, 15 May 2023 16:51:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1684169504; bh=bPE6tiox0+6DYFmbI4QGtsVQa2DaVX/N5GVaQuozKI4=; h=Date:From:To:Cc:Subject:In-Reply-To:From; b=r5lYF9P9/n/gsCAddF//yyaqmOhUFn8yhkNNIKkC11P6EixEI2iKTyl03mCckUz6f jhhxJh/c+fK44jKDuA9ifyIwidPJMmw4TQXNEwN8FC0WBQgEuUPWVbsuzhk8SglgV/ Sj9y/5rPK+nJz+ucIdXaBQyzO9WqPZal7B6UpO+iCh82qP0DXw9mlRwdqMKOKY4HD/ B3kh5/ZO+SUUpHz7s+xgMj0ngIwbYOtfh7ZcUefOZvd8IYoJBcWdOrY8gEUZa1qnfc yHw+Z8PE4938YrTDfF7gGQp4ZGL/iiH9BlO5SCs1c4/m+01RARk4kxuICrjmFOxPEu n479RmOkxMnUw== Date: Mon, 15 May 2023 11:51:42 -0500 From: Bjorn Helgaas To: Peter Geis Cc: robh@kernel.org, heiko@sntech.de, Will Deacon , kw@linux.com, linux-pci@vger.kernel.org, shawn.lin@rock-chips.com, linux-kernel@vger.kernel.org, lgirdwood@gmail.com, linux-rockchip@lists.infradead.org, broonie@kernel.org, Catalin Marinas , bhelgaas@google.com, Robin Murphy , linux-kernel-mentees@lists.linuxfoundation.org, lpieralisi@kernel.org, linux-arm-kernel@lists.infradead.org, Dan Johansen Subject: Re: [PATCH v1] drivers: pci: introduce configurable delay for Rockchip PCIe bus scan Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org On Sat, May 13, 2023 at 07:40:12AM -0400, Peter Geis wrote: > On Fri, May 12, 2023 at 9:24 PM Bjorn Helgaas wrote: > > > > [+cc ARM64 folks, in case you have abort handling tips; thread at: > > https://lore.kernel.org/r/20230509153912.515218-1-vincenzopalazzodev@gmail.com] > > > > Pine64 RockPro64 panics while enumerating some PCIe devices. Adding a > > delay avoids the panic. My theory is a PCIe Request Retry Status to a > > Vendor ID config read causes an abort that we don't handle. > > > > > On Tue, May 09, 2023 at 05:39:12PM +0200, Vincenzo Palazzo wrote: > > >> ... > > >> [ 1.229856] SError Interrupt on CPU4, code 0xbf000002 -- SError > > >> [ 1.229860] CPU: 4 PID: 1 Comm: swapper/0 Not tainted 5.9.9-2.0-MANJARO-ARM > > >> #1 > > >> [ 1.229862] Hardware name: Pine64 RockPro64 v2.1 (DT) > > >> [ 1.229864] pstate: 60000085 (nZCv daIf -PAN -UAO BTYPE=--) > > >> [ 1.229866] pc : rockchip_pcie_rd_conf+0xb4/0x270 > > >> [ 1.229868] lr : rockchip_pcie_rd_conf+0x1b4/0x270 > > >> ... > > >> [ 1.229939] Kernel panic - not syncing: Asynchronous SError Interrupt > > >> ... > > >> [ 1.229955] nmi_panic+0x8c/0x90 > > >> [ 1.229956] arm64_serror_panic+0x78/0x84 > > >> [ 1.229958] do_serror+0x15c/0x160 > > >> [ 1.229960] el1_error+0x84/0x100 > > >> [ 1.229962] rockchip_pcie_rd_conf+0xb4/0x270 > > >> [ 1.229964] pci_bus_read_config_dword+0x6c/0xd0 > > >> [ 1.229966] pci_bus_generic_read_dev_vendor_id+0x34/0x1b0 > > >> [ 1.229968] pci_scan_single_device+0xa4/0x144 > > > > On Fri, May 12, 2023 at 12:46:21PM +0200, Vincenzo Palazzo wrote: > > > ... Is there any way to tell the kernel "hey we need some more time > > > here"? > > > > We enumerate PCI devices by trying to read the Vendor ID of every > > possible device address (see pci_scan_slot()). On PCIe, if a device > > doesn't exist at that address, the Vendor ID config read will be > > terminated with Unsupported Request (UR) status. This is normal > > and happens every time we enumerate devices. > > > > The crash doesn't happen every time we enumerate, so I don't think > > this UR is the problem. Also, if it *were* the problem, adding a > > delay would not make any difference. > > Is this behavior different if there is a switch device forwarding on > the UR? On rk3399 switches are completely non-functional because of > the panic, which is observed in the output of the dmesg in [2] with > the hack patch enabled. Considering what you just described it looks > like the forwarded UR for each non-existent device behind the switch > is causing an serror. I don't know exactly what the panic looks like, but I wouldn't expect UR handling to be different when there's a switch. pcie-rockchip-host.c does handle devices on the root bus (00) differently than others because rockchip_pcie_valid_device() knows that device 00:00 is the only device on the root bus. That part makes sense because 00:00 is built into the SoC. I'm a little suspicious of the fact that rockchip_pcie_valid_device() also enforces that bus 01 can only have a single device on it. No other *_pcie_valid_device() implementations enforce that. It's true that traditional PCIe devices can only implement device 00, but ARI relaxes that by reusing the Device Number as extended Function Number bits. > > There *is* a way for a PCIe device to say "I need more time". It does > > this by responding to that Vendor ID config read with Request Retry > > Status (RRS, aka CRS in older specs), which means "I'm not ready yet, > > but I will be ready in the future." Adding a delay would definitely > > make a difference here, so my guess is this is what's happening. > > > > Most root complexes return ~0 data to the CPU when a config read > > terminates with UR or RRS. It sounds like rockchip does this for UR > > but possibly not for RRS. > > > > There is a "RRS Software Visibility" feature, which is supposed to > > turn the RRS into a special value (Vendor ID == 0x0001), but per [1], > > rockchip doesn't support it (lspci calls it "CRSVisible"). > > > > But the CPU load instruction corresponding to the config read has to > > complete by reading *something* or else be aborted. It sounds like > > it's aborted in this case. I don't know the arm64 details, but if we > > could catch that abort and determine that it was an RRS and not a UR, > > maybe we could fabricate the magic RRS 0x0001 value. > > > > imx6q_pcie_abort_handler() does something like that, although I think > > it's for arm32, not arm64. But obviously we already catch the abort > > enough to dump the register state and panic, so maybe there's a way to > > extend that? > > Perhaps a hook mechanism that allows drivers to register with the > serror handler and offer to handle specific errors before the generic > code causes the system panic? > > Very Respectfully, > Peter Geis > > [2] https://lore.kernel.org/linux-pci/CAMdYzYqn3L7x-vc+_K6jG0EVTiPGbz8pQ-N1Q1mRbcVXE822Yg@mail.gmail.com/ > > > > > Bjorn > > > > [1] https://lore.kernel.org/linux-pci/CAMdYzYpOFAVq30N+O2gOxXiRtpoHpakFg3LKq3TEZq4S6Y0y0g@mail.gmail.com/ > _______________________________________________ > Linux-kernel-mentees mailing list > Linux-kernel-mentees@lists.linuxfoundation.org > https://lists.linuxfoundation.org/mailman/listinfo/linux-kernel-mentees 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 9914BC7EE2C for ; Mon, 15 May 2023 16:51:58 +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: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:References: List-Owner; bh=/PprNzgkA3s4qlp/nIy6FdeFYoRGEDi5KK4ZaX0RgUg=; b=eifYTa0Fi98CMG y9uf35Ch9K7kfge5YB44fOskiSSw64l53XWvXLLjiq0xP4sFSVxzjrr0NZAeXuZN0lehRV9f8EyfW mQnTlV8FQP/Kj/6rHfsEe0+t6Wy19rOqm6/KWnrTISi4sFhYJh6lw6tfFLPJyP2WcKbKLjXivU5dj POsq7cTDUoY2Hr2dLuo+dXFeMEG/ZzGPgU4Q6YpF93KGg6Xo404Vtr4FNGUZmWTdXE1VucAB0bFWX H5cbsoMF8FdnpVwaFGKWwDnL7mJFAddwMiJ2yo6mITzX5JHrZLRZHLe09rnLBS5510jqYXASQhBE6 LV/b5BGTLVsRM5aiSVvw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1pybQL-002pSz-1h; Mon, 15 May 2023 16:51:49 +0000 Received: from dfw.source.kernel.org ([2604:1380:4641:c500::1]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1pybQH-002pRq-2x; Mon, 15 May 2023 16:51:47 +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 dfw.source.kernel.org (Postfix) with ESMTPS id 17EDB6298D; Mon, 15 May 2023 16:51:45 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 490EBC433A1; Mon, 15 May 2023 16:51:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1684169504; bh=bPE6tiox0+6DYFmbI4QGtsVQa2DaVX/N5GVaQuozKI4=; h=Date:From:To:Cc:Subject:In-Reply-To:From; b=r5lYF9P9/n/gsCAddF//yyaqmOhUFn8yhkNNIKkC11P6EixEI2iKTyl03mCckUz6f jhhxJh/c+fK44jKDuA9ifyIwidPJMmw4TQXNEwN8FC0WBQgEuUPWVbsuzhk8SglgV/ Sj9y/5rPK+nJz+ucIdXaBQyzO9WqPZal7B6UpO+iCh82qP0DXw9mlRwdqMKOKY4HD/ B3kh5/ZO+SUUpHz7s+xgMj0ngIwbYOtfh7ZcUefOZvd8IYoJBcWdOrY8gEUZa1qnfc yHw+Z8PE4938YrTDfF7gGQp4ZGL/iiH9BlO5SCs1c4/m+01RARk4kxuICrjmFOxPEu n479RmOkxMnUw== Date: Mon, 15 May 2023 11:51:42 -0500 From: Bjorn Helgaas To: Peter Geis Cc: robh@kernel.org, heiko@sntech.de, Will Deacon , kw@linux.com, linux-pci@vger.kernel.org, shawn.lin@rock-chips.com, linux-kernel@vger.kernel.org, lgirdwood@gmail.com, linux-rockchip@lists.infradead.org, broonie@kernel.org, Catalin Marinas , bhelgaas@google.com, Robin Murphy , linux-kernel-mentees@lists.linuxfoundation.org, lpieralisi@kernel.org, linux-arm-kernel@lists.infradead.org, Dan Johansen Subject: Re: [PATCH v1] drivers: pci: introduce configurable delay for Rockchip PCIe bus scan Message-ID: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230515_095146_063866_C8367FA7 X-CRM114-Status: GOOD ( 47.22 ) X-BeenThere: linux-rockchip@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Upstream kernel work for Rockchip platforms List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "Linux-rockchip" Errors-To: linux-rockchip-bounces+linux-rockchip=archiver.kernel.org@lists.infradead.org T24gU2F0LCBNYXkgMTMsIDIwMjMgYXQgMDc6NDA6MTJBTSAtMDQwMCwgUGV0ZXIgR2VpcyB3cm90 ZToKPiBPbiBGcmksIE1heSAxMiwgMjAyMyBhdCA5OjI04oCvUE0gQmpvcm4gSGVsZ2FhcyA8aGVs Z2Fhc0BrZXJuZWwub3JnPiB3cm90ZToKPiA+Cj4gPiBbK2NjIEFSTTY0IGZvbGtzLCBpbiBjYXNl IHlvdSBoYXZlIGFib3J0IGhhbmRsaW5nIHRpcHM7IHRocmVhZCBhdDoKPiA+IGh0dHBzOi8vbG9y ZS5rZXJuZWwub3JnL3IvMjAyMzA1MDkxNTM5MTIuNTE1MjE4LTEtdmluY2Vuem9wYWxhenpvZGV2 QGdtYWlsLmNvbV0KPiA+Cj4gPiBQaW5lNjQgUm9ja1BybzY0IHBhbmljcyB3aGlsZSBlbnVtZXJh dGluZyBzb21lIFBDSWUgZGV2aWNlcy4gIEFkZGluZyBhCj4gPiBkZWxheSBhdm9pZHMgdGhlIHBh bmljLiAgTXkgdGhlb3J5IGlzIGEgUENJZSBSZXF1ZXN0IFJldHJ5IFN0YXR1cyB0byBhCj4gPiBW ZW5kb3IgSUQgY29uZmlnIHJlYWQgY2F1c2VzIGFuIGFib3J0IHRoYXQgd2UgZG9uJ3QgaGFuZGxl Lgo+ID4KPiA+ID4gT24gVHVlLCBNYXkgMDksIDIwMjMgYXQgMDU6Mzk6MTJQTSArMDIwMCwgVmlu Y2Vuem8gUGFsYXp6byB3cm90ZToKPiA+ID4+IC4uLgo+ID4gPj4gWyAgICAxLjIyOTg1Nl0gU0Vy cm9yIEludGVycnVwdCBvbiBDUFU0LCBjb2RlIDB4YmYwMDAwMDIgLS0gU0Vycm9yCj4gPiA+PiBb ICAgIDEuMjI5ODYwXSBDUFU6IDQgUElEOiAxIENvbW06IHN3YXBwZXIvMCBOb3QgdGFpbnRlZCA1 LjkuOS0yLjAtTUFOSkFSTy1BUk0KPiA+ID4+ICMxCj4gPiA+PiBbICAgIDEuMjI5ODYyXSBIYXJk d2FyZSBuYW1lOiBQaW5lNjQgUm9ja1BybzY0IHYyLjEgKERUKQo+ID4gPj4gWyAgICAxLjIyOTg2 NF0gcHN0YXRlOiA2MDAwMDA4NSAoblpDdiBkYUlmIC1QQU4gLVVBTyBCVFlQRT0tLSkKPiA+ID4+ IFsgICAgMS4yMjk4NjZdIHBjIDogcm9ja2NoaXBfcGNpZV9yZF9jb25mKzB4YjQvMHgyNzAKPiA+ ID4+IFsgICAgMS4yMjk4NjhdIGxyIDogcm9ja2NoaXBfcGNpZV9yZF9jb25mKzB4MWI0LzB4Mjcw Cj4gPiA+PiAuLi4KPiA+ID4+IFsgICAgMS4yMjk5MzldIEtlcm5lbCBwYW5pYyAtIG5vdCBzeW5j aW5nOiBBc3luY2hyb25vdXMgU0Vycm9yIEludGVycnVwdAo+ID4gPj4gLi4uCj4gPiA+PiBbICAg IDEuMjI5OTU1XSAgbm1pX3BhbmljKzB4OGMvMHg5MAo+ID4gPj4gWyAgICAxLjIyOTk1Nl0gIGFy bTY0X3NlcnJvcl9wYW5pYysweDc4LzB4ODQKPiA+ID4+IFsgICAgMS4yMjk5NThdICBkb19zZXJy b3IrMHgxNWMvMHgxNjAKPiA+ID4+IFsgICAgMS4yMjk5NjBdICBlbDFfZXJyb3IrMHg4NC8weDEw MAo+ID4gPj4gWyAgICAxLjIyOTk2Ml0gIHJvY2tjaGlwX3BjaWVfcmRfY29uZisweGI0LzB4Mjcw Cj4gPiA+PiBbICAgIDEuMjI5OTY0XSAgcGNpX2J1c19yZWFkX2NvbmZpZ19kd29yZCsweDZjLzB4 ZDAKPiA+ID4+IFsgICAgMS4yMjk5NjZdICBwY2lfYnVzX2dlbmVyaWNfcmVhZF9kZXZfdmVuZG9y X2lkKzB4MzQvMHgxYjAKPiA+ID4+IFsgICAgMS4yMjk5NjhdICBwY2lfc2Nhbl9zaW5nbGVfZGV2 aWNlKzB4YTQvMHgxNDQKPiA+Cj4gPiBPbiBGcmksIE1heSAxMiwgMjAyMyBhdCAxMjo0NjoyMVBN ICswMjAwLCBWaW5jZW56byBQYWxhenpvIHdyb3RlOgo+ID4gPiAuLi4gSXMgdGhlcmUgYW55IHdh eSB0byB0ZWxsIHRoZSBrZXJuZWwgImhleSB3ZSBuZWVkIHNvbWUgbW9yZSB0aW1lCj4gPiA+IGhl cmUiPwo+ID4KPiA+IFdlIGVudW1lcmF0ZSBQQ0kgZGV2aWNlcyBieSB0cnlpbmcgdG8gcmVhZCB0 aGUgVmVuZG9yIElEIG9mIGV2ZXJ5Cj4gPiBwb3NzaWJsZSBkZXZpY2UgYWRkcmVzcyAoc2VlIHBj aV9zY2FuX3Nsb3QoKSkuICBPbiBQQ0llLCBpZiBhIGRldmljZQo+ID4gZG9lc24ndCBleGlzdCBh dCB0aGF0IGFkZHJlc3MsIHRoZSBWZW5kb3IgSUQgY29uZmlnIHJlYWQgd2lsbCBiZQo+ID4gdGVy bWluYXRlZCB3aXRoIFVuc3VwcG9ydGVkIFJlcXVlc3QgKFVSKSBzdGF0dXMuICBUaGlzIGlzIG5v cm1hbAo+ID4gYW5kIGhhcHBlbnMgZXZlcnkgdGltZSB3ZSBlbnVtZXJhdGUgZGV2aWNlcy4KPiA+ Cj4gPiBUaGUgY3Jhc2ggZG9lc24ndCBoYXBwZW4gZXZlcnkgdGltZSB3ZSBlbnVtZXJhdGUsIHNv IEkgZG9uJ3QgdGhpbmsKPiA+IHRoaXMgVVIgaXMgdGhlIHByb2JsZW0uICBBbHNvLCBpZiBpdCAq d2VyZSogdGhlIHByb2JsZW0sIGFkZGluZyBhCj4gPiBkZWxheSB3b3VsZCBub3QgbWFrZSBhbnkg ZGlmZmVyZW5jZS4KPiAKPiBJcyB0aGlzIGJlaGF2aW9yIGRpZmZlcmVudCBpZiB0aGVyZSBpcyBh IHN3aXRjaCBkZXZpY2UgZm9yd2FyZGluZyBvbgo+IHRoZSBVUj8gT24gcmszMzk5IHN3aXRjaGVz IGFyZSBjb21wbGV0ZWx5IG5vbi1mdW5jdGlvbmFsIGJlY2F1c2Ugb2YKPiB0aGUgcGFuaWMsIHdo aWNoIGlzIG9ic2VydmVkIGluIHRoZSBvdXRwdXQgb2YgdGhlIGRtZXNnIGluIFsyXSB3aXRoCj4g dGhlIGhhY2sgcGF0Y2ggZW5hYmxlZC4gQ29uc2lkZXJpbmcgd2hhdCB5b3UganVzdCBkZXNjcmli ZWQgaXQgbG9va3MKPiBsaWtlIHRoZSBmb3J3YXJkZWQgVVIgZm9yIGVhY2ggbm9uLWV4aXN0ZW50 IGRldmljZSBiZWhpbmQgdGhlIHN3aXRjaAo+IGlzIGNhdXNpbmcgYW4gc2Vycm9yLgoKSSBkb24n dCBrbm93IGV4YWN0bHkgd2hhdCB0aGUgcGFuaWMgbG9va3MgbGlrZSwgYnV0IEkgd291bGRuJ3Qg ZXhwZWN0ClVSIGhhbmRsaW5nIHRvIGJlIGRpZmZlcmVudCB3aGVuIHRoZXJlJ3MgYSBzd2l0Y2gu CgpwY2llLXJvY2tjaGlwLWhvc3QuYyBkb2VzIGhhbmRsZSBkZXZpY2VzIG9uIHRoZSByb290IGJ1 cyAoMDApCmRpZmZlcmVudGx5IHRoYW4gb3RoZXJzIGJlY2F1c2Ugcm9ja2NoaXBfcGNpZV92YWxp ZF9kZXZpY2UoKSBrbm93cwp0aGF0IGRldmljZSAwMDowMCBpcyB0aGUgb25seSBkZXZpY2Ugb24g dGhlIHJvb3QgYnVzLiAgVGhhdCBwYXJ0IG1ha2VzCnNlbnNlIGJlY2F1c2UgMDA6MDAgaXMgYnVp bHQgaW50byB0aGUgU29DLgoKSSdtIGEgbGl0dGxlIHN1c3BpY2lvdXMgb2YgdGhlIGZhY3QgdGhh dCByb2NrY2hpcF9wY2llX3ZhbGlkX2RldmljZSgpCmFsc28gZW5mb3JjZXMgdGhhdCBidXMgMDEg Y2FuIG9ubHkgaGF2ZSBhIHNpbmdsZSBkZXZpY2Ugb24gaXQuICBObwpvdGhlciAqX3BjaWVfdmFs aWRfZGV2aWNlKCkgaW1wbGVtZW50YXRpb25zIGVuZm9yY2UgdGhhdC4gIEl0J3MgdHJ1ZQp0aGF0 IHRyYWRpdGlvbmFsIFBDSWUgZGV2aWNlcyBjYW4gb25seSBpbXBsZW1lbnQgZGV2aWNlIDAwLCBi dXQgQVJJCnJlbGF4ZXMgdGhhdCBieSByZXVzaW5nIHRoZSBEZXZpY2UgTnVtYmVyIGFzIGV4dGVu ZGVkIEZ1bmN0aW9uIE51bWJlcgpiaXRzLgoKPiA+IFRoZXJlICppcyogYSB3YXkgZm9yIGEgUENJ ZSBkZXZpY2UgdG8gc2F5ICJJIG5lZWQgbW9yZSB0aW1lIi4gIEl0IGRvZXMKPiA+IHRoaXMgYnkg cmVzcG9uZGluZyB0byB0aGF0IFZlbmRvciBJRCBjb25maWcgcmVhZCB3aXRoIFJlcXVlc3QgUmV0 cnkKPiA+IFN0YXR1cyAoUlJTLCBha2EgQ1JTIGluIG9sZGVyIHNwZWNzKSwgd2hpY2ggbWVhbnMg IkknbSBub3QgcmVhZHkgeWV0LAo+ID4gYnV0IEkgd2lsbCBiZSByZWFkeSBpbiB0aGUgZnV0dXJl LiIgIEFkZGluZyBhIGRlbGF5IHdvdWxkIGRlZmluaXRlbHkKPiA+IG1ha2UgYSBkaWZmZXJlbmNl IGhlcmUsIHNvIG15IGd1ZXNzIGlzIHRoaXMgaXMgd2hhdCdzIGhhcHBlbmluZy4KPiA+Cj4gPiBN b3N0IHJvb3QgY29tcGxleGVzIHJldHVybiB+MCBkYXRhIHRvIHRoZSBDUFUgd2hlbiBhIGNvbmZp ZyByZWFkCj4gPiB0ZXJtaW5hdGVzIHdpdGggVVIgb3IgUlJTLiAgSXQgc291bmRzIGxpa2Ugcm9j a2NoaXAgZG9lcyB0aGlzIGZvciBVUgo+ID4gYnV0IHBvc3NpYmx5IG5vdCBmb3IgUlJTLgo+ID4K PiA+IFRoZXJlIGlzIGEgIlJSUyBTb2Z0d2FyZSBWaXNpYmlsaXR5IiBmZWF0dXJlLCB3aGljaCBp cyBzdXBwb3NlZCB0bwo+ID4gdHVybiB0aGUgUlJTIGludG8gYSBzcGVjaWFsIHZhbHVlIChWZW5k b3IgSUQgPT0gMHgwMDAxKSwgYnV0IHBlciBbMV0sCj4gPiByb2NrY2hpcCBkb2Vzbid0IHN1cHBv cnQgaXQgKGxzcGNpIGNhbGxzIGl0ICJDUlNWaXNpYmxlIikuCj4gPgo+ID4gQnV0IHRoZSBDUFUg bG9hZCBpbnN0cnVjdGlvbiBjb3JyZXNwb25kaW5nIHRvIHRoZSBjb25maWcgcmVhZCBoYXMgdG8K PiA+IGNvbXBsZXRlIGJ5IHJlYWRpbmcgKnNvbWV0aGluZyogb3IgZWxzZSBiZSBhYm9ydGVkLiAg SXQgc291bmRzIGxpa2UKPiA+IGl0J3MgYWJvcnRlZCBpbiB0aGlzIGNhc2UuICBJIGRvbid0IGtu b3cgdGhlIGFybTY0IGRldGFpbHMsIGJ1dCBpZiB3ZQo+ID4gY291bGQgY2F0Y2ggdGhhdCBhYm9y dCBhbmQgZGV0ZXJtaW5lIHRoYXQgaXQgd2FzIGFuIFJSUyBhbmQgbm90IGEgVVIsCj4gPiBtYXli ZSB3ZSBjb3VsZCBmYWJyaWNhdGUgdGhlIG1hZ2ljIFJSUyAweDAwMDEgdmFsdWUuCj4gPgo+ID4g aW14NnFfcGNpZV9hYm9ydF9oYW5kbGVyKCkgZG9lcyBzb21ldGhpbmcgbGlrZSB0aGF0LCBhbHRo b3VnaCBJIHRoaW5rCj4gPiBpdCdzIGZvciBhcm0zMiwgbm90IGFybTY0LiAgQnV0IG9idmlvdXNs eSB3ZSBhbHJlYWR5IGNhdGNoIHRoZSBhYm9ydAo+ID4gZW5vdWdoIHRvIGR1bXAgdGhlIHJlZ2lz dGVyIHN0YXRlIGFuZCBwYW5pYywgc28gbWF5YmUgdGhlcmUncyBhIHdheSB0bwo+ID4gZXh0ZW5k IHRoYXQ/Cj4gCj4gUGVyaGFwcyBhIGhvb2sgbWVjaGFuaXNtIHRoYXQgYWxsb3dzIGRyaXZlcnMg dG8gcmVnaXN0ZXIgd2l0aCB0aGUKPiBzZXJyb3IgaGFuZGxlciBhbmQgb2ZmZXIgdG8gaGFuZGxl IHNwZWNpZmljIGVycm9ycyBiZWZvcmUgdGhlIGdlbmVyaWMKPiBjb2RlIGNhdXNlcyB0aGUgc3lz dGVtIHBhbmljPwo+IAo+IFZlcnkgUmVzcGVjdGZ1bGx5LAo+IFBldGVyIEdlaXMKPiAKPiBbMl0g aHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvbGludXgtcGNpL0NBTWRZellxbjNMN3gtdmMrX0s2akcw RVZUaVBHYno4cFEtTjFRMW1SYmNWWEU4MjJZZ0BtYWlsLmdtYWlsLmNvbS8KPiAKPiA+Cj4gPiBC am9ybgo+ID4KPiA+IFsxXSBodHRwczovL2xvcmUua2VybmVsLm9yZy9saW51eC1wY2kvQ0FNZFl6 WXBPRkFWcTMwTitPMmdPeFhpUnRwb0hwYWtGZzNMS3EzVEVacTRTNlkweTBnQG1haWwuZ21haWwu Y29tLwo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4g TGludXgta2VybmVsLW1lbnRlZXMgbWFpbGluZyBsaXN0Cj4gTGludXgta2VybmVsLW1lbnRlZXNA bGlzdHMubGludXhmb3VuZGF0aW9uLm9yZwo+IGh0dHBzOi8vbGlzdHMubGludXhmb3VuZGF0aW9u Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWtlcm5lbC1tZW50ZWVzCgpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpMaW51eC1yb2NrY2hpcCBtYWlsaW5n IGxpc3QKTGludXgtcm9ja2NoaXBAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5m cmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LXJvY2tjaGlwCg== 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 B9D4BC77B7D for ; Mon, 15 May 2023 16:52:09 +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: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:References: List-Owner; bh=mDgR+bTTYXBIWPPrwrNpUGT/W5MGXQg9xceYM9xbiRw=; b=m0I+VOdX1d/+4R O0cEzWV6e4N53ZwwxRhK5FNi743tHMRDw+7ZGYrLExXaO+gWG0jkspICvQwI86I3j2+ln8nUGM2Zt ub6uQVIdJr1C3tYrp7ldvt9hpdypEqFAP3RcRy1jLCGejUb6XzPPW1jilhYtPc8+GMQvQrvYGfpT1 Z3Ft1JF+Ou8494otQOJa3+uz7Dt/tiMyW1e9EN2iVtX9yY8yU89/evejUcyCZvH6CeJazZRN30bNZ iUUXBpdPr+Ik4zZbWJfK9RdYu3Vs9IKNK1fKWAYLyT2vPNVWAjVtTmhzTlKLuU4ELEfZF9ae938k/ kRZBVVF2eosa/l0Nyl/g==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1pybQL-002pSh-09; Mon, 15 May 2023 16:51:49 +0000 Received: from dfw.source.kernel.org ([2604:1380:4641:c500::1]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1pybQH-002pRq-2x; Mon, 15 May 2023 16:51:47 +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 dfw.source.kernel.org (Postfix) with ESMTPS id 17EDB6298D; Mon, 15 May 2023 16:51:45 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 490EBC433A1; Mon, 15 May 2023 16:51:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1684169504; bh=bPE6tiox0+6DYFmbI4QGtsVQa2DaVX/N5GVaQuozKI4=; h=Date:From:To:Cc:Subject:In-Reply-To:From; b=r5lYF9P9/n/gsCAddF//yyaqmOhUFn8yhkNNIKkC11P6EixEI2iKTyl03mCckUz6f jhhxJh/c+fK44jKDuA9ifyIwidPJMmw4TQXNEwN8FC0WBQgEuUPWVbsuzhk8SglgV/ Sj9y/5rPK+nJz+ucIdXaBQyzO9WqPZal7B6UpO+iCh82qP0DXw9mlRwdqMKOKY4HD/ B3kh5/ZO+SUUpHz7s+xgMj0ngIwbYOtfh7ZcUefOZvd8IYoJBcWdOrY8gEUZa1qnfc yHw+Z8PE4938YrTDfF7gGQp4ZGL/iiH9BlO5SCs1c4/m+01RARk4kxuICrjmFOxPEu n479RmOkxMnUw== Date: Mon, 15 May 2023 11:51:42 -0500 From: Bjorn Helgaas To: Peter Geis Cc: robh@kernel.org, heiko@sntech.de, Will Deacon , kw@linux.com, linux-pci@vger.kernel.org, shawn.lin@rock-chips.com, linux-kernel@vger.kernel.org, lgirdwood@gmail.com, linux-rockchip@lists.infradead.org, broonie@kernel.org, Catalin Marinas , bhelgaas@google.com, Robin Murphy , linux-kernel-mentees@lists.linuxfoundation.org, lpieralisi@kernel.org, linux-arm-kernel@lists.infradead.org, Dan Johansen Subject: Re: [PATCH v1] drivers: pci: introduce configurable delay for Rockchip PCIe bus scan Message-ID: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230515_095146_063866_C8367FA7 X-CRM114-Status: GOOD ( 47.22 ) 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 T24gU2F0LCBNYXkgMTMsIDIwMjMgYXQgMDc6NDA6MTJBTSAtMDQwMCwgUGV0ZXIgR2VpcyB3cm90 ZToKPiBPbiBGcmksIE1heSAxMiwgMjAyMyBhdCA5OjI04oCvUE0gQmpvcm4gSGVsZ2FhcyA8aGVs Z2Fhc0BrZXJuZWwub3JnPiB3cm90ZToKPiA+Cj4gPiBbK2NjIEFSTTY0IGZvbGtzLCBpbiBjYXNl IHlvdSBoYXZlIGFib3J0IGhhbmRsaW5nIHRpcHM7IHRocmVhZCBhdDoKPiA+IGh0dHBzOi8vbG9y ZS5rZXJuZWwub3JnL3IvMjAyMzA1MDkxNTM5MTIuNTE1MjE4LTEtdmluY2Vuem9wYWxhenpvZGV2 QGdtYWlsLmNvbV0KPiA+Cj4gPiBQaW5lNjQgUm9ja1BybzY0IHBhbmljcyB3aGlsZSBlbnVtZXJh dGluZyBzb21lIFBDSWUgZGV2aWNlcy4gIEFkZGluZyBhCj4gPiBkZWxheSBhdm9pZHMgdGhlIHBh bmljLiAgTXkgdGhlb3J5IGlzIGEgUENJZSBSZXF1ZXN0IFJldHJ5IFN0YXR1cyB0byBhCj4gPiBW ZW5kb3IgSUQgY29uZmlnIHJlYWQgY2F1c2VzIGFuIGFib3J0IHRoYXQgd2UgZG9uJ3QgaGFuZGxl Lgo+ID4KPiA+ID4gT24gVHVlLCBNYXkgMDksIDIwMjMgYXQgMDU6Mzk6MTJQTSArMDIwMCwgVmlu Y2Vuem8gUGFsYXp6byB3cm90ZToKPiA+ID4+IC4uLgo+ID4gPj4gWyAgICAxLjIyOTg1Nl0gU0Vy cm9yIEludGVycnVwdCBvbiBDUFU0LCBjb2RlIDB4YmYwMDAwMDIgLS0gU0Vycm9yCj4gPiA+PiBb ICAgIDEuMjI5ODYwXSBDUFU6IDQgUElEOiAxIENvbW06IHN3YXBwZXIvMCBOb3QgdGFpbnRlZCA1 LjkuOS0yLjAtTUFOSkFSTy1BUk0KPiA+ID4+ICMxCj4gPiA+PiBbICAgIDEuMjI5ODYyXSBIYXJk d2FyZSBuYW1lOiBQaW5lNjQgUm9ja1BybzY0IHYyLjEgKERUKQo+ID4gPj4gWyAgICAxLjIyOTg2 NF0gcHN0YXRlOiA2MDAwMDA4NSAoblpDdiBkYUlmIC1QQU4gLVVBTyBCVFlQRT0tLSkKPiA+ID4+ IFsgICAgMS4yMjk4NjZdIHBjIDogcm9ja2NoaXBfcGNpZV9yZF9jb25mKzB4YjQvMHgyNzAKPiA+ ID4+IFsgICAgMS4yMjk4NjhdIGxyIDogcm9ja2NoaXBfcGNpZV9yZF9jb25mKzB4MWI0LzB4Mjcw Cj4gPiA+PiAuLi4KPiA+ID4+IFsgICAgMS4yMjk5MzldIEtlcm5lbCBwYW5pYyAtIG5vdCBzeW5j aW5nOiBBc3luY2hyb25vdXMgU0Vycm9yIEludGVycnVwdAo+ID4gPj4gLi4uCj4gPiA+PiBbICAg IDEuMjI5OTU1XSAgbm1pX3BhbmljKzB4OGMvMHg5MAo+ID4gPj4gWyAgICAxLjIyOTk1Nl0gIGFy bTY0X3NlcnJvcl9wYW5pYysweDc4LzB4ODQKPiA+ID4+IFsgICAgMS4yMjk5NThdICBkb19zZXJy b3IrMHgxNWMvMHgxNjAKPiA+ID4+IFsgICAgMS4yMjk5NjBdICBlbDFfZXJyb3IrMHg4NC8weDEw MAo+ID4gPj4gWyAgICAxLjIyOTk2Ml0gIHJvY2tjaGlwX3BjaWVfcmRfY29uZisweGI0LzB4Mjcw Cj4gPiA+PiBbICAgIDEuMjI5OTY0XSAgcGNpX2J1c19yZWFkX2NvbmZpZ19kd29yZCsweDZjLzB4 ZDAKPiA+ID4+IFsgICAgMS4yMjk5NjZdICBwY2lfYnVzX2dlbmVyaWNfcmVhZF9kZXZfdmVuZG9y X2lkKzB4MzQvMHgxYjAKPiA+ID4+IFsgICAgMS4yMjk5NjhdICBwY2lfc2Nhbl9zaW5nbGVfZGV2 aWNlKzB4YTQvMHgxNDQKPiA+Cj4gPiBPbiBGcmksIE1heSAxMiwgMjAyMyBhdCAxMjo0NjoyMVBN ICswMjAwLCBWaW5jZW56byBQYWxhenpvIHdyb3RlOgo+ID4gPiAuLi4gSXMgdGhlcmUgYW55IHdh eSB0byB0ZWxsIHRoZSBrZXJuZWwgImhleSB3ZSBuZWVkIHNvbWUgbW9yZSB0aW1lCj4gPiA+IGhl cmUiPwo+ID4KPiA+IFdlIGVudW1lcmF0ZSBQQ0kgZGV2aWNlcyBieSB0cnlpbmcgdG8gcmVhZCB0 aGUgVmVuZG9yIElEIG9mIGV2ZXJ5Cj4gPiBwb3NzaWJsZSBkZXZpY2UgYWRkcmVzcyAoc2VlIHBj aV9zY2FuX3Nsb3QoKSkuICBPbiBQQ0llLCBpZiBhIGRldmljZQo+ID4gZG9lc24ndCBleGlzdCBh dCB0aGF0IGFkZHJlc3MsIHRoZSBWZW5kb3IgSUQgY29uZmlnIHJlYWQgd2lsbCBiZQo+ID4gdGVy bWluYXRlZCB3aXRoIFVuc3VwcG9ydGVkIFJlcXVlc3QgKFVSKSBzdGF0dXMuICBUaGlzIGlzIG5v cm1hbAo+ID4gYW5kIGhhcHBlbnMgZXZlcnkgdGltZSB3ZSBlbnVtZXJhdGUgZGV2aWNlcy4KPiA+ Cj4gPiBUaGUgY3Jhc2ggZG9lc24ndCBoYXBwZW4gZXZlcnkgdGltZSB3ZSBlbnVtZXJhdGUsIHNv IEkgZG9uJ3QgdGhpbmsKPiA+IHRoaXMgVVIgaXMgdGhlIHByb2JsZW0uICBBbHNvLCBpZiBpdCAq d2VyZSogdGhlIHByb2JsZW0sIGFkZGluZyBhCj4gPiBkZWxheSB3b3VsZCBub3QgbWFrZSBhbnkg ZGlmZmVyZW5jZS4KPiAKPiBJcyB0aGlzIGJlaGF2aW9yIGRpZmZlcmVudCBpZiB0aGVyZSBpcyBh IHN3aXRjaCBkZXZpY2UgZm9yd2FyZGluZyBvbgo+IHRoZSBVUj8gT24gcmszMzk5IHN3aXRjaGVz IGFyZSBjb21wbGV0ZWx5IG5vbi1mdW5jdGlvbmFsIGJlY2F1c2Ugb2YKPiB0aGUgcGFuaWMsIHdo aWNoIGlzIG9ic2VydmVkIGluIHRoZSBvdXRwdXQgb2YgdGhlIGRtZXNnIGluIFsyXSB3aXRoCj4g dGhlIGhhY2sgcGF0Y2ggZW5hYmxlZC4gQ29uc2lkZXJpbmcgd2hhdCB5b3UganVzdCBkZXNjcmli ZWQgaXQgbG9va3MKPiBsaWtlIHRoZSBmb3J3YXJkZWQgVVIgZm9yIGVhY2ggbm9uLWV4aXN0ZW50 IGRldmljZSBiZWhpbmQgdGhlIHN3aXRjaAo+IGlzIGNhdXNpbmcgYW4gc2Vycm9yLgoKSSBkb24n dCBrbm93IGV4YWN0bHkgd2hhdCB0aGUgcGFuaWMgbG9va3MgbGlrZSwgYnV0IEkgd291bGRuJ3Qg ZXhwZWN0ClVSIGhhbmRsaW5nIHRvIGJlIGRpZmZlcmVudCB3aGVuIHRoZXJlJ3MgYSBzd2l0Y2gu CgpwY2llLXJvY2tjaGlwLWhvc3QuYyBkb2VzIGhhbmRsZSBkZXZpY2VzIG9uIHRoZSByb290IGJ1 cyAoMDApCmRpZmZlcmVudGx5IHRoYW4gb3RoZXJzIGJlY2F1c2Ugcm9ja2NoaXBfcGNpZV92YWxp ZF9kZXZpY2UoKSBrbm93cwp0aGF0IGRldmljZSAwMDowMCBpcyB0aGUgb25seSBkZXZpY2Ugb24g dGhlIHJvb3QgYnVzLiAgVGhhdCBwYXJ0IG1ha2VzCnNlbnNlIGJlY2F1c2UgMDA6MDAgaXMgYnVp bHQgaW50byB0aGUgU29DLgoKSSdtIGEgbGl0dGxlIHN1c3BpY2lvdXMgb2YgdGhlIGZhY3QgdGhh dCByb2NrY2hpcF9wY2llX3ZhbGlkX2RldmljZSgpCmFsc28gZW5mb3JjZXMgdGhhdCBidXMgMDEg Y2FuIG9ubHkgaGF2ZSBhIHNpbmdsZSBkZXZpY2Ugb24gaXQuICBObwpvdGhlciAqX3BjaWVfdmFs aWRfZGV2aWNlKCkgaW1wbGVtZW50YXRpb25zIGVuZm9yY2UgdGhhdC4gIEl0J3MgdHJ1ZQp0aGF0 IHRyYWRpdGlvbmFsIFBDSWUgZGV2aWNlcyBjYW4gb25seSBpbXBsZW1lbnQgZGV2aWNlIDAwLCBi dXQgQVJJCnJlbGF4ZXMgdGhhdCBieSByZXVzaW5nIHRoZSBEZXZpY2UgTnVtYmVyIGFzIGV4dGVu ZGVkIEZ1bmN0aW9uIE51bWJlcgpiaXRzLgoKPiA+IFRoZXJlICppcyogYSB3YXkgZm9yIGEgUENJ ZSBkZXZpY2UgdG8gc2F5ICJJIG5lZWQgbW9yZSB0aW1lIi4gIEl0IGRvZXMKPiA+IHRoaXMgYnkg cmVzcG9uZGluZyB0byB0aGF0IFZlbmRvciBJRCBjb25maWcgcmVhZCB3aXRoIFJlcXVlc3QgUmV0 cnkKPiA+IFN0YXR1cyAoUlJTLCBha2EgQ1JTIGluIG9sZGVyIHNwZWNzKSwgd2hpY2ggbWVhbnMg IkknbSBub3QgcmVhZHkgeWV0LAo+ID4gYnV0IEkgd2lsbCBiZSByZWFkeSBpbiB0aGUgZnV0dXJl LiIgIEFkZGluZyBhIGRlbGF5IHdvdWxkIGRlZmluaXRlbHkKPiA+IG1ha2UgYSBkaWZmZXJlbmNl IGhlcmUsIHNvIG15IGd1ZXNzIGlzIHRoaXMgaXMgd2hhdCdzIGhhcHBlbmluZy4KPiA+Cj4gPiBN b3N0IHJvb3QgY29tcGxleGVzIHJldHVybiB+MCBkYXRhIHRvIHRoZSBDUFUgd2hlbiBhIGNvbmZp ZyByZWFkCj4gPiB0ZXJtaW5hdGVzIHdpdGggVVIgb3IgUlJTLiAgSXQgc291bmRzIGxpa2Ugcm9j a2NoaXAgZG9lcyB0aGlzIGZvciBVUgo+ID4gYnV0IHBvc3NpYmx5IG5vdCBmb3IgUlJTLgo+ID4K PiA+IFRoZXJlIGlzIGEgIlJSUyBTb2Z0d2FyZSBWaXNpYmlsaXR5IiBmZWF0dXJlLCB3aGljaCBp cyBzdXBwb3NlZCB0bwo+ID4gdHVybiB0aGUgUlJTIGludG8gYSBzcGVjaWFsIHZhbHVlIChWZW5k b3IgSUQgPT0gMHgwMDAxKSwgYnV0IHBlciBbMV0sCj4gPiByb2NrY2hpcCBkb2Vzbid0IHN1cHBv cnQgaXQgKGxzcGNpIGNhbGxzIGl0ICJDUlNWaXNpYmxlIikuCj4gPgo+ID4gQnV0IHRoZSBDUFUg bG9hZCBpbnN0cnVjdGlvbiBjb3JyZXNwb25kaW5nIHRvIHRoZSBjb25maWcgcmVhZCBoYXMgdG8K PiA+IGNvbXBsZXRlIGJ5IHJlYWRpbmcgKnNvbWV0aGluZyogb3IgZWxzZSBiZSBhYm9ydGVkLiAg SXQgc291bmRzIGxpa2UKPiA+IGl0J3MgYWJvcnRlZCBpbiB0aGlzIGNhc2UuICBJIGRvbid0IGtu b3cgdGhlIGFybTY0IGRldGFpbHMsIGJ1dCBpZiB3ZQo+ID4gY291bGQgY2F0Y2ggdGhhdCBhYm9y dCBhbmQgZGV0ZXJtaW5lIHRoYXQgaXQgd2FzIGFuIFJSUyBhbmQgbm90IGEgVVIsCj4gPiBtYXli ZSB3ZSBjb3VsZCBmYWJyaWNhdGUgdGhlIG1hZ2ljIFJSUyAweDAwMDEgdmFsdWUuCj4gPgo+ID4g aW14NnFfcGNpZV9hYm9ydF9oYW5kbGVyKCkgZG9lcyBzb21ldGhpbmcgbGlrZSB0aGF0LCBhbHRo b3VnaCBJIHRoaW5rCj4gPiBpdCdzIGZvciBhcm0zMiwgbm90IGFybTY0LiAgQnV0IG9idmlvdXNs eSB3ZSBhbHJlYWR5IGNhdGNoIHRoZSBhYm9ydAo+ID4gZW5vdWdoIHRvIGR1bXAgdGhlIHJlZ2lz dGVyIHN0YXRlIGFuZCBwYW5pYywgc28gbWF5YmUgdGhlcmUncyBhIHdheSB0bwo+ID4gZXh0ZW5k IHRoYXQ/Cj4gCj4gUGVyaGFwcyBhIGhvb2sgbWVjaGFuaXNtIHRoYXQgYWxsb3dzIGRyaXZlcnMg dG8gcmVnaXN0ZXIgd2l0aCB0aGUKPiBzZXJyb3IgaGFuZGxlciBhbmQgb2ZmZXIgdG8gaGFuZGxl IHNwZWNpZmljIGVycm9ycyBiZWZvcmUgdGhlIGdlbmVyaWMKPiBjb2RlIGNhdXNlcyB0aGUgc3lz dGVtIHBhbmljPwo+IAo+IFZlcnkgUmVzcGVjdGZ1bGx5LAo+IFBldGVyIEdlaXMKPiAKPiBbMl0g aHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvbGludXgtcGNpL0NBTWRZellxbjNMN3gtdmMrX0s2akcw RVZUaVBHYno4cFEtTjFRMW1SYmNWWEU4MjJZZ0BtYWlsLmdtYWlsLmNvbS8KPiAKPiA+Cj4gPiBC am9ybgo+ID4KPiA+IFsxXSBodHRwczovL2xvcmUua2VybmVsLm9yZy9saW51eC1wY2kvQ0FNZFl6 WXBPRkFWcTMwTitPMmdPeFhpUnRwb0hwYWtGZzNMS3EzVEVacTRTNlkweTBnQG1haWwuZ21haWwu Y29tLwo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4g TGludXgta2VybmVsLW1lbnRlZXMgbWFpbGluZyBsaXN0Cj4gTGludXgta2VybmVsLW1lbnRlZXNA bGlzdHMubGludXhmb3VuZGF0aW9uLm9yZwo+IGh0dHBzOi8vbGlzdHMubGludXhmb3VuZGF0aW9u Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWtlcm5lbC1tZW50ZWVzCgpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51eC1hcm0ta2VybmVsIG1haWxp bmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3Rz LmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1hcm0ta2VybmVsCg==