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 0B730C5AD4E for ; Sun, 9 Aug 2026 13:35:35 +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:MIME-Version:Reply-To:List-Subscribe: List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:Message-Id:Date: References:In-Reply-To:Cc:To:Subject:From:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=1fI3DJ7vnzFuY5YC++xg4wGvpwItjWk5qTWeFSjIzAs=; b=wHgwbLNxnMSHXA yuwRWh8DpZ6Y6B16HBPXp0D/Z7taZlqoYgao09M1fd4kFWFsigngQIq8Ovz0D4rCAvvlyAZBYO+tE JPGzxvTlr9IiLzhiHAIl0Vtd6MqPDStPYNA4FK4R5jZcftjQvt+27kxK2Qxt/e1YbhE2Yb/JgT34Z H5ILBXPYkYxw9jXFroZJ5g9EB4H7OJzucSwn6hfdvipwjpK1R5Qc2JqPgTHzIP8+4eTp9N0ccphBW A27RD8YfjYzx5fO+zLSxqDuA8WxWyOBZ8mxGhnNM1XX9VrLRNmowl31vRsnLcmVEnH0qcmN5PpMfj Z/zCMBhUT0ssQpFS/vBg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1wt3gc-0000000AMMj-368Y; Sun, 09 Aug 2026 13:35:34 +0000 Received: from sea.source.kernel.org ([172.234.252.31]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1wt3gb-0000000AMMd-3anF for linux-phy@lists.infradead.org; Sun, 09 Aug 2026 13:35:33 +0000 Received: from smtp.kernel.org (quasi.space.kernel.org [100.103.45.18]) by sea.source.kernel.org (Postfix) with ESMTP id 7E2B340946; Sun, 9 Aug 2026 13:35:31 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9A5571F000E9; Sun, 9 Aug 2026 13:35:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1786282531; bh=927VDy+W9OJhCJrIe7xI6bBSIoS9rsBuAeo8D7ujAr8=; h=From:Subject:Reply-To:To:Cc:In-Reply-To:References:Date; b=Ar6NuZ/r5u/DnX3HaMSZHyVeCpQU6UC9V2Aa/N6Dd9k2GJolsO+r0MPqKzR7ppQa1 rkWvgUafxNUwExTryRhH1HZFlnxIlF3ALMXROk+NwNorsSoqMmwzaqEizBI7s/46Qe DHhHUN0T1brhLDUcRpjkPrSy1bs2804+gsx9STmBbfojSMa8mQX5FCyOPImij4nbqw 6vtRSpLKi7LYuE/XJYCwLy/UvFp/AiJN5SqxFov/Iwfg1whIk/3W53/6tYbl+2S42o fUFnC2QS59AAO+gMsPF4vUBLBc9llqHlo08kGJHSffgnIWLPwh72vs9qezgusO7tCw J/OW5WpUG2Ygg== From: sashiko-bot@kernel.org Subject: Re: [PATCH v2 10/17] drm/spacemit: add Saturn DPU KMS pipeline To: "Cody Kang" Cc: vkoul@kernel.org, dri-devel@lists.freedesktop.org, conor+dt@kernel.org, devicetree@vger.kernel.org, olteanv@gmail.com, linux-phy@lists.infradead.org, neil.armstrong@linaro.org, robh@kernel.org In-Reply-To: <20260809-k3-display-v2-10-327d7910bf71@gmail.com> References: <20260809-k3-display-v2-0-327d7910bf71@gmail.com> <20260809-k3-display-v2-10-327d7910bf71@gmail.com> Date: Sun, 09 Aug 2026 13:35:28 +0000 Message-Id: <20260809133529.9A5571F000E9@smtp.kernel.org> 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: , Reply-To: sashiko-reviews@lists.linux.dev MIME-Version: 1.0 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 VGhhbmsgeW91IGZvciB5b3VyIGNvbnRyaWJ1dGlvbiEgU2FzaGlrbyBBSSByZXZpZXcgZm91bmQg OSBwb3RlbnRpYWwgaXNzdWUocykgdG8gY29uc2lkZXI6Ci0gW0NyaXRpY2FsXSBFYXJseSByZXR1 cm4gaW4gYXRvbWljX2Rpc2FibGUgZHVlIHRvIGRybV9kZXZfZW50ZXIgc2tpcHMgaGFyZHdhcmUg dGVhcmRvd24gYW5kIHRpbWVyIGNhbmNlbGxhdGlvbi4KLSBbQ3JpdGljYWxdIFBlcm1hbmVudCBw aHlzaWNhbCBtZW1vcnkgbGVhayBkdWUgdG8gdW5iYWxhbmNlZCBwYWdlIHBpbm5pbmcgaW4gc3Bh Y2VtaXRfZG1tdV9tYXAuCi0gW0hpZ2hdIFNsZWVwaW5nIGZ1bmN0aW9ucyBjYWxsZWQgZnJvbSBh dG9taWMgY29udGV4dCBpbiBDUlRDIGF0b21pY19lbmFibGUgYW5kIGF0b21pY19kaXNhYmxlIGNh bGxiYWNrcy4KLSBbSGlnaF0gUGxhbmUgYXRvbWljX3VwZGF0ZSBjYWxsYmFjayBpbnZva2VzIHNs ZWVwaW5nIEdFTSBoZWxwZXJzLgotIFtIaWdoXSBJbnRlcnJ1cHQgc3Rvcm0gZHVlIHRvIHVuaGFu ZGxlZCBJUlEgZHVyaW5nIGRldmljZSBiaW5kLgotIFtIaWdoXSBSYWNlIGNvbmRpdGlvbiBiZXR3 ZWVuIElSUSBzeW5jaHJvbml6YXRpb24gYW5kIGNsb2NrIGdhdGluZy4KLSBbSGlnaF0gTWVtb3J5 IGxlYWsgb2YgRFJNIGRldmljZSBvbiBjb21wb25lbnQgdW5iaW5kLgotIFtIaWdoXSBVbmNvbmRp dGlvbmFsIGludGVycnVwdCBlbmFibGUgdmlhIHNwaW5fdW5sb2NrX2lycSBpbiBhdG9taWMgY29u dGV4dC4KLSBbSGlnaF0gSWdub3JlZCByZXR1cm4gdmFsdWUgb2YgZ2V0X2NsX3JkbWFfYnVmIGxl YWRzIHRvIFVzZS1BZnRlci1GcmVlIG9mIGNvbW1hbmQgbGlzdCByZWdpc3RlcnMuCi0tCgotLS0g UGF0Y2ggWzEwXTogW1BBVENIIHYyIDEwLzE3XSBkcm0vc3BhY2VtaXQ6IGFkZCBTYXR1cm4gRFBV IEtNUyBwaXBlbGluZSAtLS0KY29tbWl0IGY5NTcyYTk0YjA4ZWVmZGQ4NGExMzQ5NjA1NGZiYzAw YjQyODM3YjcKQXV0aG9yOiBDb2R5IEthbmcgPGNvZHlrYW5nLmhrQGdtYWlsLmNvbT4KU3ViamVj dDogZHJtL3NwYWNlbWl0OiBhZGQgU2F0dXJuIERQVSBLTVMgcGlwZWxpbmUKCkFkZCB0aGUgYXRv bWljIEtNUyBpbXBsZW1lbnRhdGlvbiBvbiB0b3Agb2YgdGhlIGhhcmR3YXJlIGJhY2tlbmQ6IG9u ZQpDUlRDIGFuZCBvbmUgcHJpbWFyeSBwbGFuZSBwZXIgRFBVIGluc3RhbmNlLiBhdG9taWNfY2hl Y2sgdmFsaWRhdGVzCnRoZSBwbGFuZSByZWN0YW5nbGUgMToxIGFnYWluc3QgdGhlIG1vZGUgYW5k IHNpemVzIHRoZSBwZXItY2hhbm5lbCBGQkMKbGluZSBidWZmZXI7IGF0b21pYyBjb21taXQgYnVp bGRzIHRoZSBjbWRsaXN0IGJhdGNoZXMsIG1hcHMgdGhlCmZyYW1lYnVmZmVyIHRocm91Z2ggdGhl IERNTVUgYW5kIGFybXMgdGhlIGNmZy1yZWFkeSBoYW5kc2hha2UsIHdpdGgKdmJsYW5rIGV2ZW50 cyBkcml2ZW4gZnJvbSB0aGUgRFBVIGludGVycnVwdC4KCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9zcGFjZW1pdC9zcGFjZW1pdF9jcnRjLmMgYi9kcml2ZXJzL2dwdS9kcm0vc3BhY2Vt aXQvc3BhY2VtaXRfY3J0Yy5jCj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9zcGFjZW1pdC9zcGFjZW1pdF9jcnRjLmMKClsgLi4uIF0KCj4gQEAgLTk2LDI1ICs5NiwyNSBA QCBzdGF0aWMgdm9pZCBzcGFjZW1pdF9jcnRjX2F0b21pY19lbmFibGUoc3RydWN0IGRybV9jcnRj ICpjcnRjLAo+IAkJCQkJc3RydWN0IGRybV9hdG9taWNfY29tbWl0ICpvbGRfc3RhdGUpCj4gewoK WyAuLi4gXQoKPiAJaWYgKHVubGlrZWx5KGFfY3J0Yy0+Zmlyc3RfbW9kZXNldCkpIHsKPiAJCXJl dCA9IHJlc2V0X2NvbnRyb2xfYnVsa19hc3NlcnQoQVJSQVlfU0laRShwcml2LT5waXBlX3Jlc2V0 cyksCj4gCQkJCQkJcHJpdi0+cGlwZV9yZXNldHMpOwo+IAkJaWYgKHJldCkKPiAJCQlkZXZfd2Fy bihhX2NydGMtPmRldiwKPiAJCQkJICJmYWlsZWQgdG8gYXNzZXJ0IHJlc2V0czogJWRcbiIsIHJl dCk7Cj4gCQl1c2xlZXBfcmFuZ2UoMTAwMDAsIDIwMDAwKTsKPiAJCWFfY3J0Yy0+Zmlyc3RfbW9k ZXNldCA9IGZhbHNlOwo+IAl9Cj4gCj4gCWlmICghYV9jcnRjLT5jbG9ja3Nfb24pIHsKPiAJCWRw dV9wbV9yZXN1bWUoYV9jcnRjLT5kZXYpOwo+IAkJYV9jcnRjLT5jbG9ja3Nfb24gPSB0cnVlOwo+ IAo+IAkJLyoKPiAJCSAqIFRoZSBEUFUgbXVzdCBzZXR0bGUgYWZ0ZXIgcmVzZXQgZGVhc3NlcnQg b3IgQ0ZHX1JEWSByYWNlcwo+IAkJICogdGhlIGZsdXNoLgo+IAkJICovCj4gCQl1c2xlZXBfcmFu Z2UoMTAwMDAsIDIwMDAwKTsKPiAJfQoKW1NldmVyaXR5OiBIaWdoXQpDb3VsZCB0aGUgdXNsZWVw X3JhbmdlKCkgY2FsbHMgY2F1c2Ugc3lzdGVtIGluc3RhYmlsaXR5PwoKVGhlIERSTSBzdWJzeXN0 ZW0gcmVxdWlyZXMgQ1JUQyBhdG9taWNfZW5hYmxlIGFuZCBhdG9taWNfZGlzYWJsZSBjYWxsYmFj a3MgdG8KZXhlY3V0ZSBpbiBhdG9taWMgY29udGV4dCwgd2hlcmUgc2xlZXBpbmcgaXMgc3RyaWN0 bHkgZm9yYmlkZGVuLgoKQmVjYXVzZSB1c2xlZXBfcmFuZ2UoKSBzbGVlcHMsIGNhbGxpbmcgaXQg ZGlyZWN0bHkgaGVyZSB2aW9sYXRlcyB0aGUgYXRvbWljCmNvbnRleHQgY29uc3RyYWludHMuCgpb IC4uLiBdCgo+IEBAIC0xMzEsMjMgKzEyOSwyMCBAQCBzdGF0aWMgdm9pZCBzcGFjZW1pdF9jcnRj X2F0b21pY19kaXNhYmxlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKPiAJCQkJCSBzdHJ1Y3QgZHJt X2F0b21pY19jb21taXQgKm9sZF9zdGF0ZSkKPiB7Cj4gCXN0cnVjdCBzcGFjZW1pdF9jcnRjICph X2NydGMgPSB0b19zcGFjZW1pdF9jcnRjKGNydGMpOwo+IAlzdHJ1Y3QgZHJtX2RldmljZSAqZHJt ID0gYV9jcnRjLT5jcnRjLmRldjsKPiAJaW50IGlkeDsKPiAKPiAJaWYgKCFkcm1fZGV2X2VudGVy KGRybSwgJmlkeCkpCj4gCQlyZXR1cm47CgpbU2V2ZXJpdHk6IENyaXRpY2FsXQpEb2VzIGNoZWNr aW5nIGRybV9kZXZfZW50ZXIoKSBoZXJlIGluYWR2ZXJ0ZW50bHkgc2tpcCBoYXJkd2FyZSB0ZWFy ZG93bgpkdXJpbmcgdW5iaW5kPwoKRHVyaW5nIGRyaXZlciB1bmJpbmQsIHNwYWNlbWl0X2RybV9t YXN0ZXJfdW5iaW5kKCkgY2FsbHMgZHJtX2Rldl91bnJlZ2lzdGVyKCksCndoaWNoIHNldHMgdGhl IHVucGx1Z2dlZCBmbGFnLiBJdCB0aGVuIGNhbGxzIGRybV9hdG9taWNfaGVscGVyX3NodXRkb3du KCksCndoaWNoIGludm9rZXMgc3BhY2VtaXRfY3J0Y19hdG9taWNfZGlzYWJsZSgpLgoKQmVjYXVz ZSB0aGUgZGV2aWNlIGlzIGFscmVhZHkgbWFya2VkIHVucGx1Z2dlZCwgZHJtX2Rldl9lbnRlcigp IGV2YWx1YXRlcyB0bwpmYWxzZS4gVGhpcyBjYXVzZXMgYW4gaW1tZWRpYXRlIHJldHVybiwgYnlw YXNzaW5nIHRoZSB0aW1lciBjYW5jZWxsYXRpb24KKHdoaWNoIGxlYXZlcyBhIHBlbmRpbmcgdGlt ZXIgcG9pbnRpbmcgdG8gZnJlZWQgbWVtb3J5KSBhbmQgdGhlIFZCTEFOSyBldmVudApzaWduYWxp bmcgKHdoaWNoIGNhbiBzdGFsbCB0aGUgdGVhcmRvd24gY29tbWl0KS4KClsgLi4uIF0KCj4gCS8q Cj4gCSAqIE1NSU8gb24gYSBjbG9jay1nYXRlZCBEUFUgc3RhbGxzIHRoZSBidXMsIHNvIGFuIGlu LWZsaWdodCBoYW5kbGVyCj4gCSAqIG11c3QgZmluaXNoIGl0cyBzdGF0dXMgcmVhZHMgYmVmb3Jl IGRwdV9wbV9zdXNwZW5kKCkgZ2F0ZXMgdGhlCj4gCSAqIGNsb2Nrcy4KPiAJICovCj4gCWlmIChh X2NydGMtPmlycV9vbmxpbmUgPiAwKQo+IAkJc3luY2hyb25pemVfaXJxKGFfY3J0Yy0+aXJxX29u bGluZSk7CgpbU2V2ZXJpdHk6IEhpZ2hdCklzIGl0IHNhZmUgdG8gY2FsbCBzeW5jaHJvbml6ZV9p cnEoKSBpbiBhdG9taWMgY29udGV4dD8KClRoaXMgZnVuY3Rpb24gY2FuIHNsZWVwLCB3aGljaCB2 aW9sYXRlcyB0aGUgcmVxdWlyZW1lbnQgdGhhdCBhdG9taWNfZGlzYWJsZQpjYWxsYmFja3MgZXhl Y3V0ZSBpbiBhdG9taWMgY29udGV4dCB3aXRob3V0IHNsZWVwaW5nLgoKPiAJLyoKPiAJICogTm90 aGluZyBlbHNlIGNhbmNlbHMgdGhlIHdhdGNoZG9nOyBpdCB3b3VsZCBmaXJlIGFnYWluc3QgZnJl ZWQgc3RhdGUuCj4gCSAqLwo+IAl0aW1lcl9kZWxldGVfc3luYygmYV9jcnRjLT5jZmdfcmR5X3Rp bWVyKTsKPiAKPiAJLyogQ2xvc2UgdGhlIElTUidzIE1NSU8gZ2F0ZSBiZWZvcmUgdGhlIGNsb2Nr cyBhY3R1YWxseSBzdG9wLiAqLwo+IAlhX2NydGMtPmNsb2Nrc19vbiA9IGZhbHNlOwo+IAlkcHVf cG1fc3VzcGVuZChhX2NydGMtPmRldik7CgpbU2V2ZXJpdHk6IEhpZ2hdCk1pZ2h0IHRoaXMgc2Vx dWVuY2UgYWxsb3cgYSBuZXcgaW50ZXJydXB0IHRvIHNsaXAgaW4/CgpJZiBzeW5jaHJvbml6ZV9p cnEoKSBjb21wbGV0ZXMsIGl0IG9ubHkgZ3VhcmFudGVlcyB0aGF0IGluLWZsaWdodCBoYW5kbGVy cwpoYXZlIGZpbmlzaGVkLiBCZWNhdXNlIGFfY3J0Yy0+Y2xvY2tzX29uIGlzIHN0aWxsIHRydWUg d2hlbiBpdCByZXR1cm5zLCBhCm5ld2x5IHRyaWdnZXJlZCBpbnRlcnJ1cHQgY291bGQgaW1tZWRp YXRlbHkgZW50ZXIgdGhlIElTUi4KCk1lYW53aGlsZSwgdGhpcyB0aHJlYWQgY29udGludWVzLCBz ZXR0aW5nIGFfY3J0Yy0+Y2xvY2tzX29uIHRvIGZhbHNlIGFuZApjYWxsaW5nIGRwdV9wbV9zdXNw ZW5kKCkgdG8gZ2F0ZSB0aGUgY2xvY2tzLiBJZiB0aGUgcmFjaW5nIElTUiBhdHRlbXB0cwpNTUlP IHJlYWRzIG9uIHRoZSBjbG9jay1nYXRlZCBoYXJkd2FyZSwgaXQgY291bGQgc3RhbGwgdGhlIHN5 c3RlbSBidXMuCgpBZGRpdGlvbmFsbHksIGRvZXMgZHB1X3BtX3N1c3BlbmQoKSBzbGVlcCBpbiB0 aGlzIGF0b21pYyBjb250ZXh0PyBJdAppbnZva2VzIHVzbGVlcF9yYW5nZSgpIGludGVybmFsbHks IHdoaWNoIHdvdWxkIHZpb2xhdGUgdGhlIGF0b21pY19kaXNhYmxlCmNvbnN0cmFpbnRzLgoKPiAJ c3Bpbl9sb2NrX2lycSgmZHJtLT5ldmVudF9sb2NrKTsKPiAJaWYgKGNydGMtPnN0YXRlLT5ldmVu dCkgewo+IAkJZHJtX2NydGNfc2VuZF92YmxhbmtfZXZlbnQoY3J0YywgY3J0Yy0+c3RhdGUtPmV2 ZW50KTsKPiAJCWNydGMtPnN0YXRlLT5ldmVudCA9IE5VTEw7Cj4gCX0KPiAJc3Bpbl91bmxvY2tf aXJxKCZkcm0tPmV2ZW50X2xvY2spOwoKW1NldmVyaXR5OiBIaWdoXQpXaWxsIHRoaXMgdW5jb25k aXRpb25hbGx5IHJlLWVuYWJsZSBsb2NhbCBpbnRlcnJ1cHRzPwoKQmVjYXVzZSBzcGFjZW1pdF9j cnRjX2F0b21pY19kaXNhYmxlKCkgZXhlY3V0ZXMgaW4gYXRvbWljIGNvbnRleHQsIHRoZSBjYWxs ZXIKbWlnaHQgaGF2ZSBhbHJlYWR5IGRpc2FibGVkIGludGVycnVwdHMuIENhbGxpbmcgc3Bpbl91 bmxvY2tfaXJxKCkgcmUtZW5hYmxlcwp0aGVtIHVuY29uZGl0aW9uYWxseS4KCldvdWxkIGl0IGJl IGJldHRlciB0byB1c2Ugc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgpIHRvIHByZXNlcnZlIHRoZSBv cmlnaW5hbApDUFUgaW50ZXJydXB0IHN0YXRlPwoKWyAuLi4gXQoKPiBAQCAtNDY3LDIwICs0NjUs MTkgQEAgc3RhdGljIGludCBzcGFjZW1pdF9kcm1fbWFzdGVyX2JpbmQoc3RydWN0IGRldmljZSAq ZGV2KQo+IHsKClsgLi4uIF0KCj4gCWttcyA9IGRldm1fZHJtX2Rldl9hbGxvYyhkZXYsICZzcGFj ZW1pdF9kcm1fZHJ2LAo+IAkJCQkgc3RydWN0IHNwYWNlbWl0X2ttcywgZHJtKTsKPiAJaWYgKElT X0VSUihrbXMpKQo+IAkJcmV0dXJuIFBUUl9FUlIoa21zKTsKCltTZXZlcml0eTogSGlnaF0KV2ls bCB0aGlzIGxlYWsgdGhlIERSTSBkZXZpY2Ugc3RydWN0dXJlIG9uIGNvbXBvbmVudCB1bmJpbmQ/ CgpUaGUgS01TIHN0cnVjdHVyZSBpcyBhbGxvY2F0ZWQgd2l0aCBkZXZtX2RybV9kZXZfYWxsb2Mo KSBpbnNpZGUKc3BhY2VtaXRfZHJtX21hc3Rlcl9iaW5kKCkuIFRoZSBkZXZtXyogbGlmZWN5Y2xl IGlzIHRpZWQgdG8gdGhlIHBsYXRmb3JtCmRldmljZSdzIHByb2JlIGFuZCByZW1vdmUgY3ljbGUs IG5vdCB0aGUgY29tcG9uZW50IGJpbmQgYW5kIHVuYmluZCBjeWNsZS4KCldoZW4gc3BhY2VtaXRf ZHJtX21hc3Rlcl91bmJpbmQoKSBpcyBjYWxsZWQsIHRoZSBEUk0gZGV2aWNlIGlzIHVucmVnaXN0 ZXJlZApidXQgbmV2ZXIgZnJlZWQgYmVjYXVzZSB0aGUgcGxhdGZvcm0gZGV2aWNlIGlzIG5vdCBy ZW1vdmVkLiBBIHN1YnNlcXVlbnQKcmUtYmluZCB3b3VsZCBhbGxvY2F0ZSBhIG5ldyBpbnN0YW5j ZSwgcGVybWFuZW50bHkgbGVha2luZyB0aGUgb2xkIG9uZSBhbG9uZwp3aXRoIGFsbCBkcm1tXyog bWFuYWdlZCBhbGxvY2F0aW9ucy4KClsgLi4uIF0KCj4gCWVuYWJsZV9pcnEocHJpdi0+aXJxX29u bGluZSk7Cj4gCj4gCXJldCA9IGRybV9kZXZfcmVnaXN0ZXIoZHJtLCAwKTsKCltTZXZlcml0eTog SGlnaF0KQ291bGQgZW5hYmxpbmcgdGhlIElSUSBoZXJlIGxlYWQgdG8gYW4gaW50ZXJydXB0IHN0 b3JtPwoKQXQgdGhpcyBwb2ludCBkdXJpbmcgYmluZCwgdGhlIGhhcmR3YXJlIG1pZ2h0IG5vdCBi ZSBmdWxseSByZXNldCBhbmQKYV9jcnRjLT5jbG9ja3Nfb24gaXMgc3RpbGwgZmFsc2UuIElmIGEg Ym9vdGxvYWRlciBsZWZ0IHRoZSBkaXNwbGF5IHBpcGVsaW5lCmFjdGl2ZSwgdGhlIGhhcmR3YXJl IHdpbGwgY29udGludW91c2x5IGFzc2VydCB0aGUgaW50ZXJydXB0LgoKV2hlbiB0aGUgSVNSIGZp cmVzLCBpdCBzZWVzICFhX2NydGMtPmNsb2Nrc19vbiBhbmQgaW1tZWRpYXRlbHkgcmV0dXJucwpJ UlFfTk9ORSB3aXRob3V0IGNsZWFyaW5nIHRoZSBoYXJkd2FyZSBpbnRlcnJ1cHQgc3RhdHVzLiBU aGlzIGNhdXNlcyB0aGUKaW50ZXJydXB0IHRvIGZpcmUgcmVwZWF0ZWRseSwgcG90ZW50aWFsbHkg aGFuZ2luZyB0aGUgc3lzdGVtLgoKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3NwYWNl bWl0L3NwYWNlbWl0X3BsYW5lcy5jIGIvZHJpdmVycy9ncHUvZHJtL3NwYWNlbWl0L3NwYWNlbWl0 X3BsYW5lcy5jCj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9zcGFjZW1p dC9zcGFjZW1pdF9wbGFuZXMuYwoKWyAuLi4gXQoKPiBAQCAtMTcwLDI1ICsxNzAsMjQgQEAgc3Rh dGljIHZvaWQgc3BhY2VtaXRfcGxhbmVfYXRvbWljX3VwZGF0ZShzdHJ1Y3QgZHJtX3BsYW5lICpw bGFuZSwKPiAJCQkJCSBzdHJ1Y3QgZHJtX2F0b21pY19jb21taXQgKnN0YXRlKQo+IHsKClsgLi4u IF0KCj4gCWh3ZGV2LT5nZXRfY2xfcmRtYV9idWYoYV9jcnRjKTsKCltTZXZlcml0eTogSGlnaF0K V2hhdCBoYXBwZW5zIGlmIGh3ZGV2LT5nZXRfY2xfcmRtYV9idWYoKSBmYWlscyBoZXJlPwoKSWYg dGhlIHJldHVybiB2YWx1ZSBpcyBpZ25vcmVkIGFuZCBpdCBmYWlscyB0byBhbGxvY2F0ZSwgYV9j cnRjLT5jbF9yZG1hIGNvdWxkCnJlbWFpbiB1bmluaXRpYWxpemVkIG9yIHJldGFpbiBhIGRhbmds aW5nIHBvaW50ZXIgZnJvbSBhIHByZXZpb3VzIGl0ZXJhdGlvbi4KCkxhdGVyLCBmcmVlX2NtZGxp c3RfcmVncyhhX2NydGMtPmNsX3JkbWEpIGZyZWVzIHRoZSBwb2ludGVyIGJ1dCBkb2VzIG5vdCBz ZXQKaXQgdG8gTlVMTC4gSWYgYSBzdWJzZXF1ZW50IHBsYW5lIHVwZGF0ZSBmYWlscyBpdHMgYWxs b2NhdGlvbiwgaXQgd291bGQKZG91YmxlLWZyZWUgdGhlIG9sZCBwb2ludGVyLgoKPiAJaHdkZXYt PnBsYW5lX3VwZGF0ZV9od19jaGFubmVsKHBsYW5lKTsKPiAKPiAJLyogU29saWQtZmlsbCBsYXll cnMgaGF2ZSBubyBSRE1BIGFuZCBubyBwYWdlIHRhYmxlICovCj4gCWlmIChyZG1hX2lkIDwgaHdk ZXYtPnJkbWFfbnVtcyAmJiBzcGFjZW1pdF9wc3RhdGUtPm1tdV90YmwudmEpIHsKPiAJCXU4IHRi dV9pZCA9IHJkbWFfaWQgKiAyOwo+IAo+IAkJcmV0ID0gc3BhY2VtaXRfZG1tdV9tYXAocGxhbmUt PnN0YXRlLT5mYiwKPiAJCQkJCSZzcGFjZW1pdF9wc3RhdGUtPm1tdV90YmwsIHRidV9pZCwKPiAJ CQkJCWFfY3J0Yy0+Y2xfcmRtYSwgcGxhbmUpOwoKW1NldmVyaXR5OiBIaWdoXQpEb2VzIHRoaXMg cGF0aCBpbnZva2Ugc2xlZXBpbmcgZnVuY3Rpb25zIGZyb20gYXRvbWljIGNvbnRleHQ/CgpUaGUg c3BhY2VtaXRfcGxhbmVfYXRvbWljX3VwZGF0ZSgpIGNhbGxiYWNrIGV4ZWN1dGVzIGluIGF0b21p YyBjb250ZXh0LgpIb3dldmVyLCBpdCBjYWxscyBzcGFjZW1pdF9kbW11X21hcCgpLCB3aGljaCBz dWJzZXF1ZW50bHkgY2FsbHMKZHJtX2dlbV9zaG1lbV9nZXRfcGFnZXNfc2d0KCkuCgpUaGUgZHJt X2dlbV9zaG1lbV9nZXRfcGFnZXNfc2d0KCkgaGVscGVyIGFjcXVpcmVzIHRoZSBwYWdlc19sb2Nr IG11dGV4IGFuZApjYW4gYmxvY2sgZm9yIGRpc2sgSS9PIG9yIEdGUF9LRVJORUwgYWxsb2NhdGlv bnMsIHdoaWNoIGlzIHVuc2FmZSBpbgphdG9taWMgY29udGV4dC4gU2hvdWxkIHRoaXMgbWFwcGlu ZyBiZSBkZWZlcnJlZCB0byB0aGUgcHJlcGFyZV9mYiBwaGFzZT8KCltTZXZlcml0eTogQ3JpdGlj YWxdCklzIHRoZXJlIGEgbWlzc2luZyB1bnBpbiBmb3IgdGhlIHBhZ2VzIGFjcXVpcmVkIGluc2lk ZSB0aGUgbWFwcGluZyBmdW5jdGlvbj8KCkNhbGxpbmcgZHJtX2dlbV9zaG1lbV9nZXRfcGFnZXNf c2d0KCkgcmV0cmlldmVzIHRoZSBzY2F0dGVyLWdhdGhlciB0YWJsZQphbmQgaW1wbGljaXRseSBw aW5zIHRoZSBiYWNraW5nIHBoeXNpY2FsIHBhZ2VzIGJ5IGluY3JlbWVudGluZyB0aGUgb2JqZWN0 J3MKcGFnZXNfdXNlX2NvdW50LgoKU2luY2UgdGhpcyBvY2N1cnMgb24gZXZlcnkgcGxhbmUgYXRv bWljIHVwZGF0ZSwgYW5kIHRoZXJlIGFwcGVhcnMgdG8gYmUgbm8KbWF0Y2hpbmcgZHJtX2dlbV9z aG1lbV9wdXRfcGFnZXMoKSBjYWxsIGR1cmluZyBjbGVhbnVwLCB0aGUgcGFnZXNfdXNlX2NvdW50 CndpbGwgY29udGludWFsbHkgaW5mbGF0ZS4gVGhpcyBwcmV2ZW50cyB0aGUgR0VNIFNITUVNIGNv cmUgZnJvbSByZWxlYXNpbmcgdGhlCnBoeXNpY2FsIHBhZ2VzIHdoZW4gdGhlIGZyYW1lYnVmZmVy IGlzIGRlc3Ryb3llZCwgbGVhZGluZyB0byBhIHBlcm1hbmVudAptZW1vcnkgbGVhay4KCi0tIApT YXNoaWtvIEFJIHJldmlldyDCtyBodHRwczovL3Nhc2hpa28uZGV2LyMvcGF0Y2hzZXQvMjAyNjA4 MDktazMtZGlzcGxheS12Mi0wLTMyN2Q3OTEwYmY3MUBnbWFpbC5jb20/cGFydD0xMAoKLS0gCmxp bnV4LXBoeSBtYWlsaW5nIGxpc3QKbGludXgtcGh5QGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cHM6 Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtcGh5Cg==