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 gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (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 E83D5CD4F24 for ; Wed, 13 May 2026 07:53:36 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 3064810ECFF; Wed, 13 May 2026 07:53:30 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="kXAjj0t6"; dkim-atps=neutral Received: from mail-pj1-f42.google.com (mail-pj1-f42.google.com [209.85.216.42]) by gabe.freedesktop.org (Postfix) with ESMTPS id 2043110E9D8 for ; Tue, 12 May 2026 09:06:50 +0000 (UTC) Received: by mail-pj1-f42.google.com with SMTP id 98e67ed59e1d1-366087480d8so4794352a91.3 for ; Tue, 12 May 2026 02:06:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1778576810; x=1779181610; darn=lists.freedesktop.org; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=1x3QKNa6wEmvoxZX8OKMfbWBrcN6crkcagrWuMBo3Xc=; b=kXAjj0t6iAu0X2OT0jEzwI+Evps779Cg8VeFSxXRHgTpibSrkGynKXcCE3Hh+BB0IV xkVmmPkQiD8HJD/haoIvm+gIQHJ7LQNe0MKe7XP7t+Ay2/3BqxbwEQv8u9NwKW9jvOAb bH9s3sg+M+aVny/9S/di6zH6pnPJ0BH76QB24pdZg6EFjExlG3mwLsMohDjnSrNB92wB YTXv0rNfutPTBZgKXgvdMMgvaRR/FashrtpIrLQfldqmpLkfzjoc2KmSBM7Z/KU1gu+N lSx2scLR2Iv0e6qyhDymNtYQaVav2l88XJm64jneOrK/wWEYbnoNvcX+BiNbaediqtbw u6uA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1778576810; x=1779181610; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=1x3QKNa6wEmvoxZX8OKMfbWBrcN6crkcagrWuMBo3Xc=; b=rjLbLAKueHETyUfvneOrxrOZDM8NAKW0p0leupDcjHj9yKtLPElcnczvs9kGHL0b52 CKOURbaW/rTylqeGzfiFPAuB09wTKD+JIgdUPqLz62/ToXm4EPWHSEkSEyICjGtWe36a OhKuamiDG7ESr+bYtSJeQqgFOQICz/mlZecqawlLHr10kUHACK2Blp9r6L9qmePCpTdW gAZs5142btiTVaKgTKa3/IcHeojTccZ4QGDyCtzedM+Vv8cFuqANMQSwGwO4MUCemB74 sMO1oFogp2PH8FKbKQcltBVd7yoU2OAC0faV6RZTVwvCGZyMICTBRopVLbuUmc8qFTr0 ntmA== X-Forwarded-Encrypted: i=1; AFNElJ85CkLWksDzSHxrtau0fzMNJGeeXLNZmiZb13HS285qQ+a+Ylczl56yZtnKBtnEsi8EscSNJrp/OGg=@lists.freedesktop.org X-Gm-Message-State: AOJu0YxFScPBahf4Ju2EXd8DqXTNRdPKExDcXBp7yQpGiLqEJuPb0iwo AM0Y+lXnhA4oktxN5k2SHQLhnZt3En+fUvzVw4ErqfMBOE0sQcKBfoqQ X-Gm-Gg: Acq92OE1ELqNhTQlQYf2nUImiLwOHoL67SycYz+O4mOt6DIo4cKMavVhGratcsXzprf P820CPvcyHjOj0tnfuChC6LwLxQPkZ7oiqBTvdPezJ3LFHl6NASB2j2m4AEOJN9KkBVyYIJFw5E F2DWLhuM0IU1szG+Jp+vcT7drvxNEgLaj+7maE9TOCRt+zGge7qSQg4E3wTvWzq7SHD2L97hVti iZCKKr+lgjryKw2JTeuqAyjhGASdMPLNdFd+nyeTtq2KmoD7/qJT9YSF0kBxTHi8V+W01q8WIjV yMnXJYZb0UU59ZGpEWzGd/CytGjwjwS43IR/EaT/sfdpcQ1QfGp2pbWFBU6ZlaJ0fDLO8K9vcny cVLTKgcFrIkX28DqkscpMC4uj2gC0FB4Qa8iN55LQIF2RAwfRkTzpzNe2x+Z0IjiNO2dD/zTHt5 zWcgUOT1l0BZPt+R6hH0aHLw8EmqWrjToSQ1aVj1F6Ev7glA5LjTM1HOuWtHIFWAAnetvoeofcM 8mK X-Received: by 2002:a17:90b:3806:b0:367:bf59:6f99 with SMTP id 98e67ed59e1d1-368b26f7b09mr2441610a91.26.1778576809623; Tue, 12 May 2026 02:06:49 -0700 (PDT) Received: from [192.168.0.100] (60-250-196-139.hinet-ip.hinet.net. [60.250.196.139]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-367d625cee7sm10341825a91.2.2026.05.12.02.06.46 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 12 May 2026 02:06:49 -0700 (PDT) Message-ID: Date: Tue, 12 May 2026 17:06:43 +0800 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 2/2] drm/verisilicon: add support for Nuvoton MA35D1 DCUltra Lite display controller To: Icenowy Zheng , maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org Cc: ychuang3@nuvoton.com, schung@nuvoton.com, yclu4@nuvoton.com, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org References: <20260511075142.54752-1-a0987203069@gmail.com> <20260511075142.54752-3-a0987203069@gmail.com> <93e69179dbc495188cfffd8015350b3a55ce7876.camel@iscas.ac.cn> <3b94806073de8bd1d79aa7ec956493f67679e46b.camel@iscas.ac.cn> Content-Language: en-US From: Joey Lu In-Reply-To: <3b94806073de8bd1d79aa7ec956493f67679e46b.camel@iscas.ac.cn> Content-Type: text/plain; charset="utf-8"; format="flowed" Content-Transfer-Encoding: base64 X-Mailman-Approved-At: Wed, 13 May 2026 07:53:28 +0000 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Ck9uIDUvMTIvMjAyNiA0OjExIFBNLCBJY2Vub3d5IFpoZW5nIHdyb3RlOgo+IOWcqCAyMDI2LTA1 LTEy5LqM55qEIDE1OjQ1ICswODAw77yMSm9leSBMdeWGmemBk++8mgo+PiBPbiA1LzExLzIwMjYg NTo0NyBQTSwgSWNlbm93eSBaaGVuZyB3cm90ZToKPj4+IOWcqCAyMDI2LTA1LTEx5LiA55qEIDE1 OjUxICswODAw77yMSm9leSBMdeWGmemBk++8mgo+Pj4+IFRoZSBOdXZvdG9uIE1BMzVEMSBTb0Mg aW50ZWdyYXRlcyBhIFZlcmlzaWxpY29uIERDVWx0cmEgTGl0ZQo+Pj4+IGRpc3BsYXkKPj4+PiBj b250cm9sbGVyLCB3aGljaCBpcyBhIHByZXZpb3VzIGdlbmVyYXRpb24gb2YgdGhlIERDODAwMCBz ZXJpZXMuCj4+Pj4gV2hpbGUKPj4+PiB0aGUgZ2VuZXJhbCByZWdpc3RlciBsYXlvdXQgaXMgc2lt aWxhciB0byB0aGUgREM4MDAwLCB0aGVyZSBhcmUKPj4+PiBzZXZlcmFsCj4+Pj4ga2V5IGRpZmZl cmVuY2VzIHRoYXQgcmVxdWlyZSBwZXItdmFyaWFudCBoYW5kbGluZyBpbiB0aGUgZHJpdmVyLgo+ Pj4+Cj4+Pj4gQWRkIGEgdnNfZGNfaW5mbyBwbGF0Zm9ybSBkYXRhIHN0cnVjdHVyZSAoaW4gdnNf aHdkYi5oKSB0bwo+Pj4+IGRlc2NyaWJlCj4+Pj4gcGVyLUlQLXZhcmlhbnQgY2FwYWJpbGl0aWVz LCBhbmQgdXNlIGl0IHRocm91Z2hvdXQgdGhlIGRyaXZlciB0bwo+Pj4+IHNlbGVjdAo+Pj4+IHRo ZSBjb3JyZWN0IGNvZGUgcGF0aHMgYXQgcnVudGltZS4KPj4+Pgo+Pj4+IEtleSBkaWZmZXJlbmNl cyBiZXR3ZWVuIERDODAwMCBhbmQgRENVbHRyYSBMaXRlIGhhbmRsZWQ6Cj4+PiBXaGF0IHRoZSBk cml2ZXIgc3VwcG9ydHMgbm93IGlzIERDODIwMCwgREM4MDAwIGhhdmUgdGhlIGZvbGxvd2luZwo+ Pj4gcG9pbnQKPj4+IDF+NCB0aGUgc2FtZSB3aXRoIERDVWx0cmFMaXRlIChkaWZmZXJlbnQgdG8g REM4MjAwKS4KPj4gVW5kZXJzdG9vZC4gSSdsbCByZW5hbWUgYWxsIGB2c19kYzgwMDBfKmAgaWRl bnRpZmllcnMgdG8KPj4gYHZzX2RjODIwMF8qYCBpbiB2Mi4gVGhlIGNvbW1pdCBtZXNzYWdlIHdp bGwgYWxzbyBiZSBjb3JyZWN0ZWQgdG8gc2F5Cj4+IHRoYXQgcG9pbnRzIDF+NCBhcmUgZGlmZmVy ZW5jZXMgZnJvbSBEQzgyMDAsIG5vdCBEQzgwMDAuCj4+Pj4gMS4gTm8gY2hpcCBpZGVudGl0eSBy ZWdpc3RlcnMgKDB4MDAyMC0weDAwMzApOiBEQ1VsdHJhIExpdGUgdXNlcwo+Pj4+IHN0YXRpYwo+ Pj4+ICDCoMKgwqAgcGxhdGZvcm0gZGF0YSBpbnN0ZWFkIG9mIHJlYWRpbmcgbW9kZWwvcmV2aXNp b24vY3VzdG9tZXJfaWQKPj4+PiBmcm9tCj4+Pj4gSFcuCj4+PiBNeSB0ZXN0IHNob3dzIHRoYXQg cmV2aXNpb24gYW5kIGN1c3RvbWVyX2lkIGlzIGNvcnJlY3RseSBwcmVzZW50LAo+Pj4gb25seQo+ Pj4gbW9kZWwgaXMgMCAtLSBJIHRoaW5rIHRoaXMgY2FuIGJlIGFsc28gY29uc2lkZXJlZCBhcyBh IHZhbGlkIG1vZGVsCj4+PiB2YWx1ZSBiZWNhdXNlIHRoZSBJUCBuYW1lIGhhcyBhbHNvIG5vIG1v ZGVsIG51bWJlci4KPj4+Cj4+PiBUaGUgcmV2aXNpb24gbnVtYmVyIGlzIDB4NTU2MCBhbmQgY3Vz dG9tZXIgaWQgaXMgMHgzMDUgLgo+PiBUaGFuayB5b3UgZm9yIHRlc3RpbmcuIEknbGwgZHJvcCB0 aGUgYGhhc19jaGlwX2lkYCBmbGFnCj4+IGVudGlyZWx5LiBJbiB2MiwgYHZzX2ZpbGxfY2hpcF9p ZGVudGl0eSgpYCB3aWxsIGJlIGNhbGxlZCBmb3IgYWxsCj4+IHZhcmlhbnRzLiBBIG5ldyBlbnRy eSB3aWxsIGJlIGFkZGVkIHRvIGB2c19jaGlwX2lkZW50aXRpZXNbXWAgaW4KPj4gdnNfaHdkYi5j IHdpdGggbW9kZWw9MHgwLCByZXZpc2lvbj0weDU1NjAsIGN1c3RvbWVyX2lkPTB4MzA1LAo+PiBk aXNwbGF5X2NvdW50PTEsIGFuZCBgdnNfZm9ybWF0c19ub195dXY0NDRgLgo+PiBlLmcuIHZlcmlz aWxpY29uLWRjIDQwMjYwMDAwLmRpc3BsYXk6IEZvdW5kIERDMCByZXYgNTU2MCBjdXN0b21lciAz MDUKPj4+PiAyLiBObyBDT05GSUdfRVggY29tbWl0IG1lY2hhbmlzbTogREM4MDAwIHVzZXMgcmVn aXN0ZXJzIGF0IDB4MUNDMAo+Pj4+ICDCoMKgwqAgKEZCX0NPTkZJR19FWCksIDB4MjREOCAoRkJf VE9QX0xFRlQpLCAweDI0RTAKPj4+PiAoRkJfQk9UVE9NX1JJR0hUKSwKPj4+PiAgwqDCoMKgIDB4 MjUxMCAoRkJfQkxFTkRfQ09ORklHKSwgMHgyNTE4IChQQU5FTF9DT05GSUdfRVgpLiBEQ1VsdHJh Cj4+Pj4gTGl0ZQo+Pj4+ICDCoMKgwqAgb21pdHMgYWxsIG9mIHRoZXNlIGFuZCBpbnN0ZWFkIHVz ZXMgZW5hYmxlL3Jlc2V0IGJpdHMgaW4KPj4+PiBGQl9DT05GSUcKPj4+PiAgwqDCoMKgIChiaXQg MCA9IGVuYWJsZSwgYml0IDQgPSByZXNldCkgZm9yIGRpcmVjdCBmcmFtZWJ1ZmZlcgo+Pj4+IHVw ZGF0ZXMuCj4+Pj4KPj4+PiAzLiBObyBQQU5FTF9TVEFSVCByZWdpc3RlciAoMHgxQ0NDKTogRENV bHRyYSBMaXRlIHBhbmVsIG91dHB1dAo+Pj4+IHN0YXJ0cwo+Pj4+ICDCoMKgwqAgd2hlbiBQQU5F TF9DT05GSUcuUlVOTklORyBpcyBzZXQ7IG5vIHNlcGFyYXRlIG11bHRpLWRpc3BsYXkKPj4+PiBz eW5jCj4+Pj4gIMKgwqDCoCBzdGFydCByZWdpc3RlciBpcyBuZWVkZWQuCj4+Pj4KPj4+PiA0LiBE aWZmZXJlbnQgSVJRIHJlZ2lzdGVyczogRENVbHRyYSBMaXRlIHVzZXMgMHgxNDdDIChJUlFfU1RB KSAvCj4+Pj4gIMKgwqDCoCAweDE0ODAgKElSUV9FTik7IERDODAwMCB1c2VzIDB4MDAxMCAoSVJR X0FDSykgLyAweDAwMTQKPj4+PiAoSVJRX0VOKS4KPj4+Pgo+Pj4+IDUuIERpZmZlcmVudCBjbG9j ay9yZXNldCB0b3BvbG9neTogRENVbHRyYSBMaXRlIHJlcXVpcmVzIG9ubHkKPj4+PiAiY29yZSIK Pj4+PiAgwqDCoMKgIChidXMgZ2F0ZSkgYW5kICJwaXgwIiAocGl4ZWwgZGl2aWRlcikgY2xvY2tz IHdpdGggbm8gcmVzZXQKPj4+PiBsaW5lcwo+Pj4+ICDCoMKgwqAgbWFuYWdlZCBieSB0aGUgZHJp dmVyLiBEQzgwMDAgbmVlZHMgY29yZS9heGkvYWhiIGNsb2NrcyBhbmQKPj4+PiB0aHJlZQo+Pj4+ ICDCoMKgwqAgcmVzZXRzLgo+Pj4gSXQncyBwb3NzaWJsZSB0aGF0IHlvdXIgU29DIGludGVncmF0 aW9uIGNvbWJpbmVzIGNvcmUgY2xvY2sgZ2F0ZQo+Pj4gd2l0aAo+Pj4gYnVzIGNsb2NrIGdhdGUg aW5zdGVhZCBvZiBidXMgY2xvY2sgZ2F0ZSBub3QgZXhpc3RpbmcuCj4+IEFncmVlZC4gSW4gdjIg SSdsbCByZW1vdmUgdGhlIGZhbWlseS1nYXRlZCBjbG9jayBoYW5kbGluZyBhbmQKPj4gaW5zdGVh ZCB1c2UgYGRldm1fY2xrX2dldF9vcHRpb25hbF9lbmFibGVkKClgIGZvciB0aGUgYXhpIGFuZCBh aGIKPj4gY2xvY2tzLCBzbyB0aGV5IGFyZSBzaW1wbHkgc2tpcHBlZCBpZiBub3QgcHJlc2VudCBp biBEVC4gUmVzZXRzIGFyZQo+PiBhbHJlYWR5IG9wdGlvbmFsLiBUaGlzIGtlZXBzIHRoZSBwcm9i ZSBwYXRoIHVuaWZvcm0gYW5kIGhhbmRsZXMgYW55Cj4+IFNvQy1zcGVjaWZpYyBjbG9jayBjb21i aW5hdGlvbnMgbmF0dXJhbGx5Lgo+IE1heWJlIHRoaXMgY291bGQgYmUgc3BsaXR0ZWQgYXMgYW5v dGhlciBwYXRjaCwgdG8gbWFrZSBzaW5nbGUgY29tbWl0cwo+IHNtYWxsZXIuCkdvdCBpdC4KPj4+ PiA2LiBTaW5nbGUgb3V0cHV0IG9ubHk6IERDVWx0cmEgTGl0ZSBoYXMgb25lIGRpc3BsYXkgb3V0 cHV0OyBwZXItCj4+Pj4gb3V0cHV0Cj4+Pj4gIMKgwqDCoCBpbmRleCBsb2dpYyBpcyBzdGlsbCBp biBwbGFjZSBidXQgZGlzcGxheV9jb3VudCBpcyBmaXhlZCBhdAo+Pj4+IDEuCj4+Pj4KPj4+PiA3 LiBSZWR1Y2VkIHJlZ2lzdGVyIHNwYWNlOiBtYXhfcmVnaXN0ZXIgaXMgMHgyMDAwIHZzIERDODAw MCdzCj4+Pj4gMHgyNTQ0Lgo+Pj4+Cj4+Pj4gQWRkIHRoZSAibnV2b3RvbixtYTM1ZDEtZGN1IiBj b21wYXRpYmxlIHN0cmluZyB0byB0aGUgT0YgbWF0Y2gKPj4+PiB0YWJsZSwKPj4+PiBleHRlbmQg S2NvbmZpZyB0byBhbGxvdyBidWlsZGluZyBvbiBBUkNIX01BMzUgcGxhdGZvcm1zLCBhbmQKPj4+ PiBleHBvc2UKPj4+PiB2c19mb3JtYXRzX25vX3l1djQ0NCBhcyB0aGUgZGVmYXVsdCBmb3JtYXQg dGFibGUgZm9yIERDVWx0cmEgTGl0ZQo+Pj4+IChZVVY0NDQgYmxlbmRpbmcgaXMgYSBEQzgwMDAt b25seSBmZWF0dXJlKS4KPj4+Pgo+Pj4+IEFsbCBjaGFuZ2VzIGhhdmUgYmVlbiB0ZXN0ZWQgb24g TnV2b3RvbiBNQTM1RDEgaGFyZHdhcmUgYW5kIGFyZQo+Pj4+IGZ1bmN0aW9uaW5nIGNvcnJlY3Rs eS4KPj4+Pgo+Pj4+IFNpZ25lZC1vZmYtYnk6IEpvZXkgTHUgPGEwOTg3MjAzMDY5QGdtYWlsLmNv bT4KPj4+PiAtLS0KPj4+PiAgwqDCoGRyaXZlcnMvZ3B1L2RybS92ZXJpc2lsaWNvbi9LY29uZmln wqDCoMKgwqDCoMKgwqDCoMKgwqAgfMKgwqAgMiArLQo+Pj4+ICDCoMKgZHJpdmVycy9ncHUvZHJt L3ZlcmlzaWxpY29uL3ZzX2JyaWRnZS5jwqDCoMKgwqDCoMKgIHzCoCAyOCArKy0tCj4+Pj4gIMKg wqBkcml2ZXJzL2dwdS9kcm0vdmVyaXNpbGljb24vdnNfY3J0Yy5jwqDCoMKgwqDCoMKgwqDCoCB8 wqAgMTMgKy0KPj4+PiAgwqDCoGRyaXZlcnMvZ3B1L2RybS92ZXJpc2lsaWNvbi92c19kYy5jwqDC oMKgwqDCoMKgwqDCoMKgwqAgfCAxMjkKPj4+PiArKysrKysrKysrKystLS0tCj4+Pj4gLS0KPj4+ PiAgwqDCoGRyaXZlcnMvZ3B1L2RybS92ZXJpc2lsaWNvbi92c19kYy5owqDCoMKgwqDCoMKgwqDC oMKgwqAgfMKgwqAgMSArCj4+Pj4gIMKgwqBkcml2ZXJzL2dwdS9kcm0vdmVyaXNpbGljb24vdnNf ZHJtLmPCoMKgwqDCoMKgwqDCoMKgwqAgfMKgIDE2ICsrLQo+Pj4+ICDCoMKgZHJpdmVycy9ncHUv ZHJtL3ZlcmlzaWxpY29uL3ZzX2h3ZGIuY8KgwqDCoMKgwqDCoMKgwqAgfMKgwqAgMiArLQo+Pj4+ ICDCoMKgZHJpdmVycy9ncHUvZHJtL3ZlcmlzaWxpY29uL3ZzX2h3ZGIuaMKgwqDCoMKgwqDCoMKg wqAgfMKgIDI1ICsrKysKPj4+PiAgwqDCoC4uLi9ncHUvZHJtL3ZlcmlzaWxpY29uL3ZzX3ByaW1h cnlfcGxhbmUuY8KgwqDCoCB8wqAgNDMgKysrLS0tCj4+Pj4gIMKgwqAuLi4vZHJtL3ZlcmlzaWxp Y29uL3ZzX3ByaW1hcnlfcGxhbmVfcmVncy5owqDCoCB8wqDCoCAyICsKPj4+PiAgwqDCoDEwIGZp bGVzIGNoYW5nZWQsIDE4NyBpbnNlcnRpb25zKCspLCA3NCBkZWxldGlvbnMoLSkKPj4+Pgo+Pj4+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdmVyaXNpbGljb24vS2NvbmZpZwo+Pj4+IGIv ZHJpdmVycy9ncHUvZHJtL3ZlcmlzaWxpY29uL0tjb25maWcKPj4+PiBpbmRleCA3Y2NlODZlYzg2 MDMuLjI5NWQyNDZlYjRiNCAxMDA2NDQKPj4+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vdmVyaXNp bGljb24vS2NvbmZpZwo+Pj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS92ZXJpc2lsaWNvbi9LY29u ZmlnCj4+Pj4gQEAgLTIsNyArMiw3IEBACj4+Pj4gIMKgwqBjb25maWcgRFJNX1ZFUklTSUxJQ09O X0RDCj4+Pj4gIMKgwqAJdHJpc3RhdGUgIkRSTSBTdXBwb3J0IGZvciBWZXJpc2lsaWNvbiBEQy1z ZXJpZXMgZGlzcGxheQo+Pj4+IGNvbnRyb2xsZXJzIgo+Pj4+ICDCoMKgCWRlcGVuZHMgb24gRFJN ICYmIENPTU1PTl9DTEsKPj4+PiAtCWRlcGVuZHMgb24gUklTQ1YgfHwgQ09NUElMRV9URVNUCj4+ Pj4gKwlkZXBlbmRzIG9uIFJJU0NWIHx8IEFSQ0hfTUEzNSB8fCBDT01QSUxFX1RFU1QKPj4+PiAg wqDCoAlzZWxlY3QgRFJNX0JSSURHRV9DT05ORUNUT1IKPj4+PiAgwqDCoAlzZWxlY3QgRFJNX0NM SUVOVF9TRUxFQ1RJT04KPj4+PiAgwqDCoAlzZWxlY3QgRFJNX0RJU1BMQVlfSEVMUEVSCj4+Pj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS92ZXJpc2lsaWNvbi92c19icmlkZ2UuYwo+Pj4+ IGIvZHJpdmVycy9ncHUvZHJtL3ZlcmlzaWxpY29uL3ZzX2JyaWRnZS5jCj4+Pj4gaW5kZXggN2E5 MzA0OTM2OGRiLi4yMjVhZjMyMmRlMzIgMTAwNjQ0Cj4+Pj4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L3ZlcmlzaWxpY29uL3ZzX2JyaWRnZS5jCj4+Pj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3Zlcmlz aWxpY29uL3ZzX2JyaWRnZS5jCj4+Pj4gQEAgLTE2NCwxMyArMTY0LDE2IEBAIHN0YXRpYyB2b2lk IHZzX2JyaWRnZV9lbmFibGVfY29tbW9uKHN0cnVjdAo+Pj4+IHZzX2NydGMgKmNydGMsCj4+Pj4g IMKgwqAJCQlWU0RDX0RJU1BfUEFORUxfQ09ORklHX0NMS19FTik7Cj4+Pj4gIMKgwqAJcmVnbWFw X3NldF9iaXRzKGRjLT5yZWdzLAo+Pj4+IFZTRENfRElTUF9QQU5FTF9DT05GSUcob3V0cHV0KSwK Pj4+PiAgwqDCoAkJCVZTRENfRElTUF9QQU5FTF9DT05GSUdfUlVOTklORyk7Cj4+Pj4gLQlyZWdt YXBfY2xlYXJfYml0cyhkYy0+cmVncywgVlNEQ19ESVNQX1BBTkVMX1NUQVJULAo+Pj4+IC0JCQkK Pj4+PiBWU0RDX0RJU1BfUEFORUxfU1RBUlRfTVVMVElfRElTUF9TWU5DKTsKPj4+PiAtCXJlZ21h cF9zZXRfYml0cyhkYy0+cmVncywgVlNEQ19ESVNQX1BBTkVMX1NUQVJULAo+Pj4+IC0JCQlWU0RD X0RJU1BfUEFORUxfU1RBUlRfUlVOTklORyhvdXRwdXQpKTsKPj4+PiAgICAKPj4+PiAtCXJlZ21h cF9zZXRfYml0cyhkYy0+cmVncywKPj4+PiBWU0RDX0RJU1BfUEFORUxfQ09ORklHX0VYKGNydGMt Cj4+Pj4+IGlkKSwKPj4+PiAtCQkJVlNEQ19ESVNQX1BBTkVMX0NPTkZJR19FWF9DT01NSVQpOwo+ Pj4+ICsJaWYgKGRjLT5pbmZvLT5oYXNfY29uZmlnX2V4KSB7Cj4+Pj4gKwkJcmVnbWFwX2NsZWFy X2JpdHMoZGMtPnJlZ3MsCj4+Pj4gVlNEQ19ESVNQX1BBTkVMX1NUQVJULAo+Pj4+ICsJCQkJCj4+ Pj4gVlNEQ19ESVNQX1BBTkVMX1NUQVJUX01VTFRJX0RJU1BfU1lOQyk7Cj4+Pj4gKwkJcmVnbWFw X3NldF9iaXRzKGRjLT5yZWdzLCBWU0RDX0RJU1BfUEFORUxfU1RBUlQsCj4+Pj4gKwkJCQlWU0RD X0RJU1BfUEFORUxfU1RBUlRfUlVOTklORyhvdQo+Pj4+IHRwdXQKPj4+PiApKTsKPj4+PiArCj4+ Pj4gKwkJcmVnbWFwX3NldF9iaXRzKGRjLT5yZWdzLAo+Pj4+IFZTRENfRElTUF9QQU5FTF9DT05G SUdfRVgoY3J0Yy0+aWQpLAo+Pj4+ICsJCQkJVlNEQ19ESVNQX1BBTkVMX0NPTkZJR19FWF9DT01N SVQKPj4+PiApOwo+Pj4gU2hvdWxkIHRoZSBjb21taXQgb3BlcmF0aW9uIGhhcHBlbiBvbiBEQzgw MDAvRENVbHRyYUxpdGUgdG9vPyAoQnkKPj4+IHdyaXRpbmcgdG8gRGNyZWdGcmFtZUJ1ZmZlckNv bmZpZzAuVkFMSUQpLgo+Pj4KPj4+IE1hbnkgcmVnaXN0ZXJzIHdyaXR0ZW4gaGFzICJOb3RlOiBU aGlzIGZpZWxkIGlzIGRvdWJsZSBidWZmZXJlZCIgaW4KPj4+IHRoZQo+Pj4gRENVbHRyYUxpdGUg ZG9jdW1lbnRhdGlvbi4KPj4+Cj4+PiBJIHN1Z2dlc3QgY3JlYXRlIGEgc3RhdGljIGZ1bmN0aW9u IGZvciBjb21taXQgLS0gd3JpdGUgdG8gdGhlCj4+PiBjb3JyZXNwb25kaW5nIGNvbW1pdCBiaXQg b24gREM4MjAwLCBhbmQgd3JpdGUgdG8KPj4+IERjcmVnRnJhbWVCdWZmZXJDb25maWcwLlZBTElE IG9uIERDODAwMC9EQ1VsdHJhTGl0ZS4KPj4gW2FdIFRoZXJlIGlzIG5vIGNvbW1pdCBvcGVyYXRp b24gZm9yIERDVWx0cmEgTGl0ZS4KPj4gSSdsbCBub3QgYWRkIGEgYFZTRENfRkJfQ09ORklHX1ZB TElEYCBtYWNyby4gVkFMSUQgKEJJVCgzKSkgaXMgYQo+PiBoYXJkd2FyZS1tYW5hZ2VkIGRvdWJs ZS1idWZmZXIgc3RhdHVzIGJpdDogaGFyZHdhcmUgd3JpdGVzIDE9UEVORElORwo+PiB3aGVuIGEg bmV3IHJlZ2lzdGVyIHNldCBpcyByZWFkeSBhbmQgY2xlYXJzIHRvIDA9V09SS0lORyBhZnRlciB0 aGUKPj4gVkJMQU5LIGNvcHkuIFNvZnR3YXJlIG11c3QgbmV2ZXIgd3JpdGUgaXQsIGFuZCB0aGVy ZSBpcyBubyBwb2xsaW5nCj4+IHVzZQo+IEl0IHNlZW1zIHRvIGJlIHdyaXRhYmxlIGFuZCBjb250 cm9scyB3aGV0aGVyIHJlZ2lzdGVyIGJ1ZmZlcmluZyBpcwo+IGVuYWJsZWQsIHNlZSBbMV0uCj4K PiBUaGUgZGVzY3JpcHRpb24gb2YgdGhpcyBiaXQgaW4gTUEzNUQxIFRSTSBzYXlzICJUaGlzIGVu c3VyZXMgYSBmcmFtZQo+IHdpbGwgYWx3YXlzIHN0YXJ0IHdpdGggYSB2YWxpZCB3b3JraW5nIHNl dCBpZiB0aGlzIHJlZ2lzdGVyIGlzCj4gcHJvZ3JhbW1lZCBsYXN0LCB3aGljaCByZWR1Y2VzIHRo ZSBuZWVkIGZvciBTVyB0byB3YWl0IGZvciB0aGUgc3RhcnQgb2YKPiBhIFZCTEFOSyBzaWduYWwg aW4gb3JkZXIgdG8gZW5zdXJlIGFsbCBzdGF0ZXMgYXJlIGxvYWRlZCBiZWZvcmUgdGhlCj4gbmV4 dCBWQkxBTksiLCB3aGljaCBpbmRpY2F0ZXMgc29tZSBraW5kIG9mICJjb21taXR0aW5nIHdyaXRl IiwgYWx0aG91Z2gKPiB0aGUgY29kZSBhdCBbMV0gc2VlbXMgdG8gaW5kaWNhdGUgdGhhdCBkb3Vi bGUgYnVmZmVyaW5nIGlzIG9ubHkgZW5hYmxlZAo+IHdoZW4gYml0IGlzIGNsZWFyZWQuCj4KPiBB bnl3YXkgdGhpcyBiaXQgc2hvdWxkIGJlIHByb2dyYW1tYWJsZSwgYW5kICJTb2Z0d2FyZSBtdXN0 IG5ldmVyIHdyaXRlCj4gaXQiIGNvbnRyYWRpY3RzIHdpdGggdGhlIE1BMzVEMSBUUk0uCj4KPiBU aGFua3MsCj4gSWNlbm93eQo+Cj4gWzFdCj4gaHR0cHM6Ly9naXRodWIuY29tL3JvY2tvcy1yaXNj di9yb2Nrb3Mta2VybmVsL2Jsb2Ivcm9ja29zLXY2LjYueS9kcml2ZXJzL2dwdS9kcm0vZXN3aW4v ZXNfZGNfaHcuYyNMOTkzClRoYW5rIHlvdSBmb3IgdGhlIGNvcnJlY3Rpb24uIEknbGwgYWRkCmAj ZGVmaW5lIFZTRENfRkJfQ09ORklHX1ZBTElEIEJJVCgzKWAgdG8gdnNfcHJpbWFyeV9wbGFuZV9y ZWdzLmggYW5kCndyaXRlIGl0IGluIGB2c19wcmltYXJ5X3BsYW5lX2NvbW1pdCgpYCBmb3Igbm9u LWNvbmZpZ19leCB2YXJpYW50cy4KPj4gY2FzZSBpbiB0aGUgZHJpdmVyIHRoYXQgcmVxdWlyZXMg YSBuYW1lZCBjb25zdGFudC4gRm9yIG5vbi1jb25maWdfZXgKPj4gdmFyaWFudHMsIGB2c19wcmlt YXJ5X3BsYW5lX2NvbW1pdCgpYCBwZXJmb3JtcyBubyBjb21taXQgb3BlcmF0aW9uIOKAlAo+PiBg VlNEQ19GQl9DT05GSUdfRU5BQkxFYCAoT1VUUFVULCBCSVQoMCkpIGlzIHNldCBpbgo+PiBgdnNf Y3J0Y19hdG9taWNfZW5hYmxlKClgIGFuZCBgVlNEQ19GQl9DT05GSUdfUkVTRVRgIChCSVQoNCkp IGlzCj4+IHNldC9jbGVhcmVkIGluIHRoZSBicmlkZ2UgZW5hYmxlL2Rpc2FibGUgcGF0aHMuCj4g PT09PT09PT09IDg8ID09PT09PT09PT0KPgo=