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 3EC64EFCE4C for ; Wed, 4 Mar 2026 22:28:14 +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=3BHDMmbqZlV5/LvxX1bSzgB7k7CTCL88RicGJwRUC24=; b=CgSTB+PvLv4KuA O9IxnjIbgm0yMzKxbHnn7VHL4mOte5IabP1NNOngvPNEhDi66U0NBoh5Y8MoEd0dHhN4vwGjdhVBc atdkwpqZbXr688uMT+XiYtwyErNtJVZ6qcclkIRHBmmAEp3mumwU2AGuXVnytNCVe4bp5IvuJeKge CQYiYVJI7e2AcxBwvQ9RJs4RUVrIqb9PYd0/kuXnEorIES1GpuGsaZcJbfHS2DQurNqlOlm5/q9iu uLdYjQequuCGSivKzEaMpj1IUxqc5W+wKl9tTSsWloGh3etxM/VOUt1woP70RMGqt8I+Jm/EF7b7q kPO3UXgP5n2p3+CL0vxg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98.2 #2 (Red Hat Linux)) id 1vxuhR-00000000a79-3mbV; Wed, 04 Mar 2026 22:28:13 +0000 Received: from sea.source.kernel.org ([172.234.252.31]) by bombadil.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux)) id 1vxuhP-00000000a6O-2ArY; Wed, 04 Mar 2026 22:28:12 +0000 Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sea.source.kernel.org (Postfix) with ESMTP id 4E08140583; Wed, 4 Mar 2026 22:28:10 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 02BB7C4CEF7; Wed, 4 Mar 2026 22:28:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1772663290; bh=C0ZGtBuBp1fvpx0er+3GXSEkD2dQthdr27MzlEOeBDM=; h=Date:From:To:Cc:Subject:In-Reply-To:From; b=KBk482hyhP65Ms7Kyp34pncPCtnpwpROK6t1T7wDtjWfFlIGz9vt4q3X6S7MFa1A7 wcjwal0jOUWce4q88axOO7EX5dsUza2y0hpQ3OSPjvRNGOZAWtk6cyUycEBmQII48p 8r7fmT9gmJ8sn3uTxHpgYaS8dVG9BYVxJemEfMboYGLr8qOY1tFbD8AWpdzP8nSanP QCDIsj+2wXtvKUT7Lo7pG7NNxINCMq+PLig+X88cTO+8EA16ySJ5UmubNoO3zEY73O smY7QQQ/n6SMpYfxWuw9Db0SKtabs5DPA4zlR87/ueXy11RVne0Xqb0iq29gIc0fGN UFmAfkKyD28Jg== Date: Wed, 4 Mar 2026 16:28:08 -0600 From: Bjorn Helgaas To: Vladimir Oltean Cc: linux-phy@lists.infradead.org, Vinod Koul , Neil Armstrong , dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-arm-msm@vger.kernel.org, linux-can@vger.kernel.org, linux-gpio@vger.kernel.org, linux-ide@vger.kernel.org, linux-kernel@vger.kernel.org, linux-media@vger.kernel.org, linux-pci@vger.kernel.org, linux-renesas-soc@vger.kernel.org, linux-riscv@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-sunxi@lists.linux.dev, linux-tegra@vger.kernel.org, linux-usb@vger.kernel.org, netdev@vger.kernel.org, spacemit@lists.linux.dev, UNGLinuxDriver@microchip.com, Lorenzo Pieralisi , Krzysztof =?utf-8?Q?Wilczy=C5=84ski?= , Manivannan Sadhasivam , Rob Herring , Bjorn Helgaas , Vignesh Raghavendra , Siddharth Vadapalli Subject: Re: [PATCH phy-next 08/22] PCI: remove device links to PHY Message-ID: <20260304222808.GA41083@bhelgaas> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20260304175735.2660419-9-vladimir.oltean@nxp.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20260304_142811_625438_18538D27 X-CRM114-Status: GOOD ( 27.11 ) X-BeenThere: linux-phy@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Linux Phy Mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-phy" Errors-To: linux-phy-bounces+linux-phy=archiver.kernel.org@lists.infradead.org VXBkYXRlIHN1YmplY3QgbGluZSB0bzoKCiAgUENJOiBSZW1vdmUgcmVkdW5kYW50IGRldmljZSBs aW5rcyB0byBQSFkKCk9uIFdlZCwgTWFyIDA0LCAyMDI2IGF0IDA3OjU3OjIxUE0gKzAyMDAsIFZs YWRpbWlyIE9sdGVhbiB3cm90ZToKPiBUaGlzIGlzIHByYWN0aWNhbGx5IGEgZnVsbCByZXZlcnQg b2YgY29tbWl0Cj4gN2E0ZGI2NTZhNjM1ICgiUENJOiBkcmE3eHg6IENyZWF0ZSBmdW5jdGlvbmFs IGRlcGVuZGVuY3kgYmV0d2VlbiBQQ0llIGFuZCBQSFkiKQo+IGFuZCBhIHBhcnRpYWwgcmV2ZXJ0 IG9mIHRoZSBkZXZpY2UgbGluayBwaWVjZXMgZnJvbSBjb21taXRzCj4gZGZiODA1MzQ2OTJkICgi UENJOiBjYWRlbmNlOiBBZGQgZ2VuZXJpYyBQSFkgc3VwcG9ydCB0byBob3N0IGFuZCBFUCBkcml2 ZXJzIikKPiA0OTIyOTIzOGFiNDcgKCJQQ0k6IGtleXN0b25lOiBDbGVhbnVwIFBIWSBoYW5kbGlu ZyIpCj4gCj4gVGhlIHRyb3VibGUgd2l0aCB0aGVzZSBjb21taXRzIGlzIHRoYXQgdGhleSBkZXJl ZmVyZW5jZSBmaWVsZHMgaW5zaWRlCj4gc3RydWN0IHBoeSBmcm9tIGEgY29uc3VtZXIgZHJpdmVy LCB3aGljaCB3aWxsIGJlY29tZSBubyBsb25nZXIgcG9zc2libGUuCj4gCj4gU2luY2UgY29tbWl0 IDk4NzM1MWUxZWE3NyAoInBoeTogY29yZTogQWRkIGNvbnN1bWVyIGRldmljZSBsaW5rCj4gc3Vw cG9ydCIpIGZyb20gMjAxOSwgdGhlIFBIWSBjb3JlIGFsc28gYWRkcyBhIGRldmljZSBsaW5rIHRv IG9yZGVyIFBIWQo+IHByb3ZpZGVyIGFuZCBjb25zdW1lciBzdXNwZW5kL3Jlc3VtZSBvcGVyYXRp b25zLiBBbGwgcmV2ZXJ0ZWQgY29tbWl0cwo+IGFyZSBmcm9tIDIwMTctMjAxOCwgYW5kIHdoYXQg dGhleSBkbyBzaG91bGQgYWN0dWFsbHkgYmUgcmVkdW5kYW50IG5vdy4KPiAKPiBTaWduZWQtb2Zm LWJ5OiBWbGFkaW1pciBPbHRlYW4gPHZsYWRpbWlyLm9sdGVhbkBueHAuY29tPgoKV2l0aCBzdWJq ZWN0IGxpbmUgdXBkYXRlOgoKQWNrZWQtYnk6IEJqb3JuIEhlbGdhYXMgPGJoZWxnYWFzQGdvb2ds ZS5jb20+CgpUaGFua3MgZm9yIGRvaW5nIHRoaXM7IGl0J3MgZ3JlYXQgdG8gZ2V0IHJpZCBvZiBh bGwgdGhhdCBjb2RlLgoKPiAtLS0KPiBDYzogTG9yZW56byBQaWVyYWxpc2kgPGxwaWVyYWxpc2lA a2VybmVsLm9yZz4KPiBDYzogIktyenlzenRvZiBXaWxjennFhHNraSIgPGt3aWxjenluc2tpQGtl cm5lbC5vcmc+Cj4gQ2M6IE1hbml2YW5uYW4gU2FkaGFzaXZhbSA8bWFuaUBrZXJuZWwub3JnPgo+ IENjOiBSb2IgSGVycmluZyA8cm9iaEBrZXJuZWwub3JnPgo+IENjOiBCam9ybiBIZWxnYWFzIDxi aGVsZ2Fhc0Bnb29nbGUuY29tPgo+IENjOiBWaWduZXNoIFJhZ2hhdmVuZHJhIDx2aWduZXNockB0 aS5jb20+Cj4gQ2M6IFNpZGRoYXJ0aCBWYWRhcGFsbGkgPHMtdmFkYXBhbGxpQHRpLmNvbT4KPiAt LS0KPiAgZHJpdmVycy9wY2kvY29udHJvbGxlci9jYWRlbmNlL3BjaWUtY2FkZW5jZS5jIHwgMTYg Ky0tLS0tLS0tLQo+ICBkcml2ZXJzL3BjaS9jb250cm9sbGVyL2R3Yy9wY2ktZHJhN3h4LmMgICAg ICAgfCAxNiAtLS0tLS0tLS0tCj4gIGRyaXZlcnMvcGNpL2NvbnRyb2xsZXIvZHdjL3BjaS1rZXlz dG9uZS5jICAgICB8IDMxICsrKy0tLS0tLS0tLS0tLS0tLS0KPiAgMyBmaWxlcyBjaGFuZ2VkLCA1 IGluc2VydGlvbnMoKyksIDU4IGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJz L3BjaS9jb250cm9sbGVyL2NhZGVuY2UvcGNpZS1jYWRlbmNlLmMgYi9kcml2ZXJzL3BjaS9jb250 cm9sbGVyL2NhZGVuY2UvcGNpZS1jYWRlbmNlLmMKPiBpbmRleCBhMWVhZGE1NmVkYmEuLjBhYzk4 MDI0OTk0MSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL3BjaS9jb250cm9sbGVyL2NhZGVuY2UvcGNp ZS1jYWRlbmNlLmMKPiArKysgYi9kcml2ZXJzL3BjaS9jb250cm9sbGVyL2NhZGVuY2UvcGNpZS1j YWRlbmNlLmMKPiBAQCAtMjIyLDcgKzIyMiw2IEBAIGludCBjZG5zX3BjaWVfaW5pdF9waHkoc3Ry dWN0IGRldmljZSAqZGV2LCBzdHJ1Y3QgY2Ruc19wY2llICpwY2llKQo+ICAJc3RydWN0IGRldmlj ZV9ub2RlICpucCA9IGRldi0+b2Zfbm9kZTsKPiAgCWludCBwaHlfY291bnQ7Cj4gIAlzdHJ1Y3Qg cGh5ICoqcGh5Owo+IC0Jc3RydWN0IGRldmljZV9saW5rICoqbGluazsKPiAgCWludCBpOwo+ICAJ aW50IHJldDsKPiAgCWNvbnN0IGNoYXIgKm5hbWU7Cj4gQEAgLTIzOCwxMCArMjM3LDYgQEAgaW50 IGNkbnNfcGNpZV9pbml0X3BoeShzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBjZG5zX3BjaWUg KnBjaWUpCj4gIAlpZiAoIXBoeSkKPiAgCQlyZXR1cm4gLUVOT01FTTsKPiAgCj4gLQlsaW5rID0g ZGV2bV9rY2FsbG9jKGRldiwgcGh5X2NvdW50LCBzaXplb2YoKmxpbmspLCBHRlBfS0VSTkVMKTsK PiAtCWlmICghbGluaykKPiAtCQlyZXR1cm4gLUVOT01FTTsKPiAtCj4gIAlmb3IgKGkgPSAwOyBp IDwgcGh5X2NvdW50OyBpKyspIHsKPiAgCQlvZl9wcm9wZXJ0eV9yZWFkX3N0cmluZ19pbmRleChu cCwgInBoeS1uYW1lcyIsIGksICZuYW1lKTsKPiAgCQlwaHlbaV0gPSBkZXZtX3BoeV9nZXQoZGV2 LCBuYW1lKTsKPiBAQCAtMjQ5LDE3ICsyNDQsMTAgQEAgaW50IGNkbnNfcGNpZV9pbml0X3BoeShz dHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBjZG5zX3BjaWUgKnBjaWUpCj4gIAkJCXJldCA9IFBU Ul9FUlIocGh5W2ldKTsKPiAgCQkJZ290byBlcnJfcGh5Owo+ICAJCX0KPiAtCQlsaW5rW2ldID0g ZGV2aWNlX2xpbmtfYWRkKGRldiwgJnBoeVtpXS0+ZGV2LCBETF9GTEFHX1NUQVRFTEVTUyk7Cj4g LQkJaWYgKCFsaW5rW2ldKSB7Cj4gLQkJCWRldm1fcGh5X3B1dChkZXYsIHBoeVtpXSk7Cj4gLQkJ CXJldCA9IC1FSU5WQUw7Cj4gLQkJCWdvdG8gZXJyX3BoeTsKPiAtCQl9Cj4gIAl9Cj4gIAo+ICAJ cGNpZS0+cGh5X2NvdW50ID0gcGh5X2NvdW50Owo+ICAJcGNpZS0+cGh5ID0gcGh5Owo+IC0JcGNp ZS0+bGluayA9IGxpbms7Cj4gIAo+ICAJcmV0ID0gIGNkbnNfcGNpZV9lbmFibGVfcGh5KHBjaWUp Owo+ICAJaWYgKHJldCkKPiBAQCAtMjY4LDEwICsyNTYsOCBAQCBpbnQgY2Ruc19wY2llX2luaXRf cGh5KHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IGNkbnNfcGNpZSAqcGNpZSkKPiAgCXJldHVy biAwOwo+ICAKPiAgZXJyX3BoeToKPiAtCXdoaWxlICgtLWkgPj0gMCkgewo+IC0JCWRldmljZV9s aW5rX2RlbChsaW5rW2ldKTsKPiArCXdoaWxlICgtLWkgPj0gMCkKPiAgCQlkZXZtX3BoeV9wdXQo ZGV2LCBwaHlbaV0pOwo+IC0JfQo+ICAKPiAgCXJldHVybiByZXQ7Cj4gIH0KPiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9wY2kvY29udHJvbGxlci9kd2MvcGNpLWRyYTd4eC5jIGIvZHJpdmVycy9wY2kv Y29udHJvbGxlci9kd2MvcGNpLWRyYTd4eC5jCj4gaW5kZXggZDVkMjYyMjkwNjNmLi5iOTFhYjM3 ODQ1YzkgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9wY2kvY29udHJvbGxlci9kd2MvcGNpLWRyYTd4 eC5jCj4gKysrIGIvZHJpdmVycy9wY2kvY29udHJvbGxlci9kd2MvcGNpLWRyYTd4eC5jCj4gQEAg LTksNyArOSw2IEBACj4gIAo+ICAjaW5jbHVkZSA8bGludXgvY2xrLmg+Cj4gICNpbmNsdWRlIDxs aW51eC9kZWxheS5oPgo+IC0jaW5jbHVkZSA8bGludXgvZGV2aWNlLmg+Cj4gICNpbmNsdWRlIDxs aW51eC9lcnIuaD4KPiAgI2luY2x1ZGUgPGxpbnV4L2ludGVycnVwdC5oPgo+ICAjaW5jbHVkZSA8 bGludXgvaXJxLmg+Cj4gQEAgLTY4Myw3ICs2ODIsNiBAQCBzdGF0aWMgaW50IGRyYTd4eF9wY2ll X3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpCj4gIAlpbnQgaTsKPiAgCWludCBw aHlfY291bnQ7Cj4gIAlzdHJ1Y3QgcGh5ICoqcGh5Owo+IC0Jc3RydWN0IGRldmljZV9saW5rICoq bGluazsKPiAgCXZvaWQgX19pb21lbSAqYmFzZTsKPiAgCXN0cnVjdCBkd19wY2llICpwY2k7Cj4g IAlzdHJ1Y3QgZHJhN3h4X3BjaWUgKmRyYTd4eDsKPiBAQCAtNzMxLDEwICs3MjksNiBAQCBzdGF0 aWMgaW50IGRyYTd4eF9wY2llX3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpCj4g IAlpZiAoIXBoeSkKPiAgCQlyZXR1cm4gLUVOT01FTTsKPiAgCj4gLQlsaW5rID0gZGV2bV9rY2Fs bG9jKGRldiwgcGh5X2NvdW50LCBzaXplb2YoKmxpbmspLCBHRlBfS0VSTkVMKTsKPiAtCWlmICgh bGluaykKPiAtCQlyZXR1cm4gLUVOT01FTTsKPiAtCj4gIAlkcmE3eHgtPmNsayA9IGRldm1fY2xr X2dldF9vcHRpb25hbChkZXYsIE5VTEwpOwo+ICAJaWYgKElTX0VSUihkcmE3eHgtPmNsaykpCj4g IAkJcmV0dXJuIGRldl9lcnJfcHJvYmUoZGV2LCBQVFJfRVJSKGRyYTd4eC0+Y2xrKSwKPiBAQCAt NzQ5LDEyICs3NDMsNiBAQCBzdGF0aWMgaW50IGRyYTd4eF9wY2llX3Byb2JlKHN0cnVjdCBwbGF0 Zm9ybV9kZXZpY2UgKnBkZXYpCj4gIAkJcGh5W2ldID0gZGV2bV9waHlfZ2V0KGRldiwgbmFtZSk7 Cj4gIAkJaWYgKElTX0VSUihwaHlbaV0pKQo+ICAJCQlyZXR1cm4gUFRSX0VSUihwaHlbaV0pOwo+ IC0KPiAtCQlsaW5rW2ldID0gZGV2aWNlX2xpbmtfYWRkKGRldiwgJnBoeVtpXS0+ZGV2LCBETF9G TEFHX1NUQVRFTEVTUyk7Cj4gLQkJaWYgKCFsaW5rW2ldKSB7Cj4gLQkJCXJldCA9IC1FSU5WQUw7 Cj4gLQkJCWdvdG8gZXJyX2xpbms7Cj4gLQkJfQo+ICAJfQo+ICAKPiAgCWRyYTd4eC0+YmFzZSA9 IGJhc2U7Cj4gQEAgLTg1NiwxMCArODQ0LDYgQEAgc3RhdGljIGludCBkcmE3eHhfcGNpZV9wcm9i ZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2KQo+ICAJcG1fcnVudGltZV9kaXNhYmxlKGRl dik7Cj4gIAlkcmE3eHhfcGNpZV9kaXNhYmxlX3BoeShkcmE3eHgpOwo+ICAKPiAtZXJyX2xpbms6 Cj4gLQl3aGlsZSAoLS1pID49IDApCj4gLQkJZGV2aWNlX2xpbmtfZGVsKGxpbmtbaV0pOwo+IC0K PiAgCXJldHVybiByZXQ7Cj4gIH0KPiAgCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvcGNpL2NvbnRy b2xsZXIvZHdjL3BjaS1rZXlzdG9uZS5jIGIvZHJpdmVycy9wY2kvY29udHJvbGxlci9kd2MvcGNp LWtleXN0b25lLmMKPiBpbmRleCA2NDJlNGM0NWVlZmMuLjA3Njk4YzY0NWUwMiAxMDA2NDQKPiAt LS0gYS9kcml2ZXJzL3BjaS9jb250cm9sbGVyL2R3Yy9wY2kta2V5c3RvbmUuYwo+ICsrKyBiL2Ry aXZlcnMvcGNpL2NvbnRyb2xsZXIvZHdjL3BjaS1rZXlzdG9uZS5jCj4gQEAgLTEzMCw3ICsxMzAs NiBAQCBzdHJ1Y3Qga2V5c3RvbmVfcGNpZSB7Cj4gIAlpbnQJCQludW1fbGFuZXM7Cj4gIAl1MzIJ CQludW1fdmlld3BvcnQ7Cj4gIAlzdHJ1Y3QgcGh5CQkqKnBoeTsKPiAtCXN0cnVjdCBkZXZpY2Vf bGluawkqKmxpbms7Cj4gIAlzdHJ1Y3QJCQlkZXZpY2Vfbm9kZSAqbXNpX2ludGNfbnA7Cj4gIAlz dHJ1Y3QgaXJxX2RvbWFpbgkqaW50eF9pcnFfZG9tYWluOwo+ICAJc3RydWN0IGRldmljZV9ub2Rl CSpucDsKPiBAQCAtMTExOCw3ICsxMTE3LDYgQEAgc3RhdGljIGludCBrc19wY2llX3Byb2JlKHN0 cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpCj4gIAllbnVtIGR3X3BjaWVfZGV2aWNlX21vZGUg bW9kZTsKPiAgCXN0cnVjdCBkd19wY2llICpwY2k7Cj4gIAlzdHJ1Y3Qga2V5c3RvbmVfcGNpZSAq a3NfcGNpZTsKPiAtCXN0cnVjdCBkZXZpY2VfbGluayAqKmxpbms7Cj4gIAlzdHJ1Y3QgZ3Bpb19k ZXNjICpncGlvZDsKPiAgCXN0cnVjdCByZXNvdXJjZSAqcmVzOwo+ICAJdm9pZCBfX2lvbWVtICpi YXNlOwo+IEBAIC0xMTg5LDMxICsxMTg3LDE3IEBAIHN0YXRpYyBpbnQga3NfcGNpZV9wcm9iZShz dHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2KQo+ICAJaWYgKCFwaHkpCj4gIAkJcmV0dXJuIC1F Tk9NRU07Cj4gIAo+IC0JbGluayA9IGRldm1fa2NhbGxvYyhkZXYsIG51bV9sYW5lcywgc2l6ZW9m KCpsaW5rKSwgR0ZQX0tFUk5FTCk7Cj4gLQlpZiAoIWxpbmspCj4gLQkJcmV0dXJuIC1FTk9NRU07 Cj4gLQo+ICAJZm9yIChpID0gMDsgaSA8IG51bV9sYW5lczsgaSsrKSB7Cj4gIAkJc25wcmludGYo bmFtZSwgc2l6ZW9mKG5hbWUpLCAicGNpZS1waHklZCIsIGkpOwo+ICAJCXBoeVtpXSA9IGRldm1f cGh5X29wdGlvbmFsX2dldChkZXYsIG5hbWUpOwo+ICAJCWlmIChJU19FUlIocGh5W2ldKSkgewo+ ICAJCQlyZXQgPSBQVFJfRVJSKHBoeVtpXSk7Cj4gLQkJCWdvdG8gZXJyX2xpbms7Cj4gLQkJfQo+ IC0KPiAtCQlpZiAoIXBoeVtpXSkKPiAtCQkJY29udGludWU7Cj4gLQo+IC0JCWxpbmtbaV0gPSBk ZXZpY2VfbGlua19hZGQoZGV2LCAmcGh5W2ldLT5kZXYsIERMX0ZMQUdfU1RBVEVMRVNTKTsKPiAt CQlpZiAoIWxpbmtbaV0pIHsKPiAtCQkJcmV0ID0gLUVJTlZBTDsKPiAtCQkJZ290byBlcnJfbGlu azsKPiArCQkJZ290byBlcnI7Cj4gIAkJfQo+ICAJfQo+ICAKPiAgCWtzX3BjaWUtPm5wID0gbnA7 Cj4gIAlrc19wY2llLT5wY2kgPSBwY2k7Cj4gLQlrc19wY2llLT5saW5rID0gbGluazsKPiAgCWtz X3BjaWUtPm51bV9sYW5lcyA9IG51bV9sYW5lczsKPiAgCWtzX3BjaWUtPnBoeSA9IHBoeTsKPiAg Cj4gQEAgLTEyMjMsNyArMTIwNyw3IEBAIHN0YXRpYyBpbnQga3NfcGNpZV9wcm9iZShzdHJ1Y3Qg cGxhdGZvcm1fZGV2aWNlICpwZGV2KQo+ICAJCXJldCA9IFBUUl9FUlIoZ3Bpb2QpOwo+ICAJCWlm IChyZXQgIT0gLUVQUk9CRV9ERUZFUikKPiAgCQkJZGV2X2VycihkZXYsICJGYWlsZWQgdG8gZ2V0 IHJlc2V0IEdQSU9cbiIpOwo+IC0JCWdvdG8gZXJyX2xpbms7Cj4gKwkJZ290byBlcnI7Cj4gIAl9 Cj4gIAo+ICAJLyogT2J0YWluIHJlZmVyZW5jZXMgdG8gdGhlIFBIWXMgKi8KPiBAQCAtMTIzOCw3 ICsxMjIyLDcgQEAgc3RhdGljIGludCBrc19wY2llX3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZp Y2UgKnBkZXYpCj4gIAo+ICAJaWYgKHJldCkgewo+ICAJCWRldl9lcnIoZGV2LCAiZmFpbGVkIHRv IGVuYWJsZSBwaHlcbiIpOwo+IC0JCWdvdG8gZXJyX2xpbms7Cj4gKwkJZ290byBlcnI7Cj4gIAl9 Cj4gIAo+ICAJcGxhdGZvcm1fc2V0X2RydmRhdGEocGRldiwga3NfcGNpZSk7Cj4gQEAgLTEzMjUs MjUgKzEzMDksMTggQEAgc3RhdGljIGludCBrc19wY2llX3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9k ZXZpY2UgKnBkZXYpCj4gIAlwbV9ydW50aW1lX2Rpc2FibGUoZGV2KTsKPiAgCWtzX3BjaWVfZGlz YWJsZV9waHkoa3NfcGNpZSk7Cj4gIAo+IC1lcnJfbGluazoKPiAtCXdoaWxlICgtLWkgPj0gMCAm JiBsaW5rW2ldKQo+IC0JCWRldmljZV9saW5rX2RlbChsaW5rW2ldKTsKPiAtCj4gK2VycjoKPiAg CXJldHVybiByZXQ7Cj4gIH0KPiAgCj4gIHN0YXRpYyB2b2lkIGtzX3BjaWVfcmVtb3ZlKHN0cnVj dCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpCj4gIHsKPiAgCXN0cnVjdCBrZXlzdG9uZV9wY2llICpr c19wY2llID0gcGxhdGZvcm1fZ2V0X2RydmRhdGEocGRldik7Cj4gLQlzdHJ1Y3QgZGV2aWNlX2xp bmsgKipsaW5rID0ga3NfcGNpZS0+bGluazsKPiAtCWludCBudW1fbGFuZXMgPSBrc19wY2llLT5u dW1fbGFuZXM7Cj4gIAlzdHJ1Y3QgZGV2aWNlICpkZXYgPSAmcGRldi0+ZGV2Owo+ICAKPiAgCXBt X3J1bnRpbWVfcHV0KGRldik7Cj4gIAlwbV9ydW50aW1lX2Rpc2FibGUoZGV2KTsKPiAgCWtzX3Bj aWVfZGlzYWJsZV9waHkoa3NfcGNpZSk7Cj4gLQl3aGlsZSAobnVtX2xhbmVzLS0pCj4gLQkJZGV2 aWNlX2xpbmtfZGVsKGxpbmtbbnVtX2xhbmVzXSk7Cj4gIH0KPiAgCj4gIHN0YXRpYyBzdHJ1Y3Qg cGxhdGZvcm1fZHJpdmVyIGtzX3BjaWVfZHJpdmVyID0gewo+IC0tIAo+IDIuNDMuMAo+IAoKLS0g CmxpbnV4LXBoeSBtYWlsaW5nIGxpc3QKbGludXgtcGh5QGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0 cHM6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtcGh5Cg==