Received: by 2002:a05:6358:d09b:b0:dc:cd0c:909e with SMTP id jc27csp981307rwb; Thu, 15 Dec 2022 05:09:04 -0800 (PST) X-Google-Smtp-Source: AA0mqf7Y51ssPA93PXG2OGwr/UiaojmUVA/Aj+XJjcOYXA2Vh8NchYy+ltrIwdXQMpekKpgx9Bv+ X-Received: by 2002:a05:6a20:9c8f:b0:9d:efbf:6623 with SMTP id mj15-20020a056a209c8f00b0009defbf6623mr20072854pzb.49.1671109744770; Thu, 15 Dec 2022 05:09:04 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1671109744; cv=none; d=google.com; s=arc-20160816; b=xWrKNdWkIPm+qX5Co9Ty13fO9uTgy62JtqOxH1jcpO2GtplTlgzzu2Zh23B+sbjCR0 8r3jsMewMOdrE0gUP9H3gPoW6ch0Mtrt2GTFGLRL+e3XW4SpCa2lHW2eyQz7rHFhY3Yb 9gCviF4ZtgkoRnpIk7s0nVCxi0LJc71BIlQb5/43NvJOVcQeTb+RTE2xzEn4zBQS8elB b+V78lBKiMRdeLopwPhBdFVpL+3QRRp4sqdHzXKxrRy06FOT134OxVpSJhDtxH0nki/B XSG/njLkggjYyT0Z47EuVtNrmWcrBoqOAC9FuaeM7JWi9PfnjAtn90udclNU81iUoEEF pe1w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:content-transfer-encoding :content-id:user-agent:content-language:accept-language:in-reply-to :references:message-id:date:thread-index:thread-topic:subject:cc:to :from:authenticated-by; bh=1e7Uw2/7PCLRVyqYJlZhP4HCCqs1riCwsZq/o39Vx7c=; b=YIULJkxgwslISErvlh3haElipm7rn3dlKB7J0RRU0EifJM6DbFulwj7r8GS4YtPXyh Js4wJsGH/JPtZsgdV6sZ4fxmQUXIIJfGjDrIjxOfmogR5k967qH9GZyONgMcaWRuDoC/ +8ja+5hN4SfdVz4lSJU6VK191OMSiJrH6CfBWx88A3qZaAKu46yRckrpwz0ko1Ade1to EbAzTMVkRl+t0jSOruxcXJLxVOH8qHGJL/weCRtxJWNQuoEr/pgzs2hfkRvZa0SM6YUc ocuoj51nrtkNI8DfW/2qt1bNNQEsEfUQyFeJolpjI53XXrI6u/YQgy6DO5UaGgWfUWHC xgxQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id x27-20020aa79adb000000b0056301324a24si2785458pfp.133.2022.12.15.05.08.53; Thu, 15 Dec 2022 05:09:04 -0800 (PST) Received-SPF: pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229733AbiLONAr (ORCPT + 66 others); Thu, 15 Dec 2022 08:00:47 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42364 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229460AbiLONAq (ORCPT ); Thu, 15 Dec 2022 08:00:46 -0500 Received: from rtits2.realtek.com.tw (rtits2.realtek.com [211.75.126.72]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 47407114D for ; Thu, 15 Dec 2022 05:00:41 -0800 (PST) Authenticated-By: X-SpamFilter-By: ArmorX SpamTrap 5.77 with qID 2BFCxkPrB010344, This message is accepted by code: ctloc85258 Received: from mail.realtek.com (rtexh36506.realtek.com.tw[172.21.6.27]) by rtits2.realtek.com.tw (8.15.2/2.81/5.90) with ESMTPS id 2BFCxkPrB010344 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=FAIL); Thu, 15 Dec 2022 20:59:47 +0800 Received: from RTEXDAG02.realtek.com.tw (172.21.6.101) by RTEXH36506.realtek.com.tw (172.21.6.27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.9; Thu, 15 Dec 2022 21:00:36 +0800 Received: from RTEXMBS04.realtek.com.tw (172.21.6.97) by RTEXDAG02.realtek.com.tw (172.21.6.101) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.7; Thu, 15 Dec 2022 21:00:36 +0800 Received: from RTEXMBS04.realtek.com.tw ([fe80::15b5:fc4b:72f3:424b]) by RTEXMBS04.realtek.com.tw ([fe80::15b5:fc4b:72f3:424b%5]) with mapi id 15.01.2375.007; Thu, 15 Dec 2022 21:00:36 +0800 From: Ping-Ke Shih To: "linux-wireless@vger.kernel.org" , "rtl8821cerfe2@gmail.com" CC: "Jes.Sorensen@gmail.com" , "andrea.merello@gmail.com" , "ap420073@gmail.com" Subject: Re: [PATCH v2 4/5] wifi: rtl8xxxu: Support new chip RTL8188EU Thread-Topic: [PATCH v2 4/5] wifi: rtl8xxxu: Support new chip RTL8188EU Thread-Index: AQHZDxjLJwVKkNAA3Eevnk9ZKM9jE65uZdmA Date: Thu, 15 Dec 2022 13:00:36 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-US, zh-TW Content-Language: zh-TW X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Evolution 3.36.1-2 x-originating-ip: [125.224.56.228] x-kse-serverinfo: RTEXDAG02.realtek.com.tw, 9 x-kse-attachmentfiltering-interceptor-info: no applicable attachment filtering rules found x-kse-antivirus-interceptor-info: scan successful x-kse-antivirus-info: =?utf-8?B?Q2xlYW4sIGJhc2VzOiAyMDIyLzEyLzE1IOS4iuWNiCAwNzo1MTowMA==?= x-kse-bulkmessagesfiltering-scan-result: protection disabled Content-Type: text/plain; charset="utf-8" Content-ID: <757DD8B3AC38F64CB7F76E47D334200B@realtek.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,SPF_HELO_NONE, SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org T24gVHVlLCAyMDIyLTEyLTEzIGF0IDE5OjMxICswMjAwLCBCaXR0ZXJibHVlIFNtaXRoIHdyb3Rl Og0KPiBGcm9tOiBKZXMgU29yZW5zZW4gPEplcy5Tb3JlbnNlbkBnbWFpbC5jb20+DQo+IA0KPiBU aGlzIGNoaXAgaXMgZm91bmQgaW4gY2hlYXAgVVNCIGRldmljZXMgZnJvbSBUUC1MaW5rLCBELUxp bmssIGV0Yy4NCj4gDQo+IEZlYXR1cmVzOiAyLjQgR0h6LCBiL2cvbiBtb2RlLCAxVDFSLCAxNTAg TWJwcy4NCj4gDQo+IENoaXAgdmVyc2lvbnMgb2xkZXIgdGhhbiAiSSBjdXQiIG5lZWQgc29mdHdh cmUgcmF0ZSBjb250cm9sLiBUaGF0IHdpbGwNCj4gYmUgaW4gdGhlIG5leHQgY29tbWl0LiBVbnRp bCB0aGVuIE1DUzcgaXMgdXNlZCBmb3IgYWxsIGRhdGEgZnJhbWVzLg0KPiANCj4gVGhlICJJIGN1 dCIgY2hpcHMgYXJlIG5vdCBzdXBwb3J0ZWQuIFRoZXkgcmVxdWlyZSBkaWZmZXJlbnQgZmlybXdh cmUNCj4gYW5kIGluaXRpYWxpc2F0aW9uIHRhYmxlcy4gU3VwcG9ydCBjYW4gYmUgYWRkZWQgaWYg c29tZW9uZSBoYXMgdGhlDQo+IGhhcmR3YXJlIHRvIHRlc3QgaXQuDQo+IA0KPiBDby1kZXZlbG9w ZWQtYnk6IEFuZHJlYSBNZXJlbGxvIDxhbmRyZWEubWVyZWxsb0BnbWFpbC5jb20+DQo+IFNpZ25l ZC1vZmYtYnk6IEFuZHJlYSBNZXJlbGxvIDxhbmRyZWEubWVyZWxsb0BnbWFpbC5jb20+DQo+IENv LWRldmVsb3BlZC1ieTogVGFlaGVlIFlvbyA8YXA0MjAwNzNAZ21haWwuY29tPg0KPiBTaWduZWQt b2ZmLWJ5OiBUYWVoZWUgWW9vIDxhcDQyMDA3M0BnbWFpbC5jb20+DQo+IFNpZ25lZC1vZmYtYnk6 IEplcyBTb3JlbnNlbiA8SmVzLlNvcmVuc2VuQGdtYWlsLmNvbT4NCj4gQ28tZGV2ZWxvcGVkLWJ5 OiBCaXR0ZXJibHVlIFNtaXRoIDxydGw4ODIxY2VyZmUyQGdtYWlsLmNvbT4NCj4gU2lnbmVkLW9m Zi1ieTogQml0dGVyYmx1ZSBTbWl0aCA8cnRsODgyMWNlcmZlMkBnbWFpbC5jb20+DQo+IC0tLQ0K PiBTbyB0aGlzIHBhdGNoIGlzIDUyIG9mIHRoZSA1NyBwYXRjaGVzIGZvdW5kIGhlcmUsIHNxdWFz aGVkIHRvZ2V0aGVyOg0KPiBodHRwczovL2dpdC5rZXJuZWwub3JnL3B1Yi9zY20vbGludXgva2Vy bmVsL2dpdC9qZXMvbGludXguZ2l0L2xvZy9kcml2ZXJzL25ldC93aXJlbGVzcy9yZWFsdGVrL3J0 bDh4eHh1P2g9cnRsOHh4eHUtODE4OGV1DQo+IA0KPiBTdGFydGluZyBmcm9tIGMzZjg0ZGVkNmY3 NiAoInJ0bDh4eHh1OiBBY2NlcHQgZmlybXdhcmUgc2lnbmF0dXJlIDB4ODhlMCIpDQo+IHVwIHRv IGE5YjA1YzA1OTUxMCAoInJ0bDh4eHh1OiBBZGQgcnB0X3NlbCBlbnRyeSB0byBzdHJ1Y3QgcnRs OHh4eHVfcnhkZXNjMTYiKS4NCj4gDQo+IFRoZXNlIHBhdGNoZXMgd2VyZSBub3QgbmVlZGVkOg0K PiAzMTcwNjIyY2NiNjEgKCJydGw4eHh4dTogRGV0ZWN0IDgxODhldSBwYXJ0cyBjb3JyZWN0bHki KQ0KPiA4ZmI1YmM5MmJjZTAgKCJydGw4eHh4dTogSW5pdGlhbGl6ZSBHUElPIHNldHRpbmdzIGZv ciA4MTg4ZXUiKQ0KPiA2YWI2NDZhZGI1ODUgKCJydGw4eHh4dTogSW1wbGVtZW50IHJ0bDgxODhl X3NldF90eF9wb3dlcigpIikNCj4gMmNjZDFmMWZjNDgwICgicnRsOHh4eHU6IHByb3Blcmx5IGRl dGVjdCBSVEw4MTg4RVUgZGV2aWNlcyIpDQo+IDgwOWEyZTAwMGNhYiAoInJ0bDh4eHh1OiBEbyBu b3Qgc2V0IGF1dG8gcmF0ZSBmYWxsYmFjayBvbiA4MTg4ZXUiKQ0KPiANCj4gT24gdG9wIG9mIHRo YXQsIEkgbWFkZSB2YXJpb3VzIGNoYW5nZXMgcmVxdWlyZWQgZm9yIHRvZGF5J3Mga2VybmVsLA0K PiBwbHVzIGNoYW5nZXMgdG8gbWF0Y2ggdGhlIG5ld2VyIHZlbmRvciBkcml2ZXIgbW9yZSBjbG9z ZWx5LCBwbHVzIHNvbWUNCj4gYnVnIGZpeGVzLg0KPiANCj4gdjI6DQo+ICAtIEltcGxlbWVudCBz dWdnZXN0aW9ucyBmcm9tIFBpbmctS2UgU2hpaDoNCj4gICAgLSBBZGQgX19wYWNrZWQgdG8gc3Ry dWN0IHJ0bDgxODhldV9lZnVzZS4NCj4gICAgLSBVc2UgdTMycF9yZXBsYWNlX2JpdHMoKSBpbiBy dGw4MTg4ZXVfY29uZmlnX2NoYW5uZWwoKS4NCj4gICAgLSBNYWtlIGZ3X25hbWUgY29uc3QgY2hh ciouDQo+ICAgIC0gVXNlIHRoZSBtYXNrcyBkZWZpbmVkIGluIHBhdGNoIDMvNSBpbiBydGw4MTg4 ZV9jY2tfcnNzaSgpLg0KPiAgLSBVc2UgdTMyX2dldF9iaXRzKCkgaW4gYXNzaWdubWVudCB0byBi aXQgZmllbGQgcHJpdi0+cGlfZW5hYmxlZC4NCj4gIC0gUmVtb3ZlIHRoZSBlZnVzZSBkdW1waW5n IGNvZGUuIEl0J3Mgbm90IG5lZWRlZCBhZnRlciBwYXRjaCAxLzUuDQo+ICAtIFVwZGF0ZSB0aGUg bW9kdWxlIGRlc2NyaXB0aW9uLg0KPiAtLS0NCj4gIGRyaXZlcnMvbmV0L3dpcmVsZXNzL3JlYWx0 ZWsvcnRsOHh4eHUvS2NvbmZpZyB8ICAgIDIgKy0NCj4gIC4uLi9uZXQvd2lyZWxlc3MvcmVhbHRl ay9ydGw4eHh4dS9NYWtlZmlsZSAgICB8ICAgIDMgKy0NCj4gIC4uLi9uZXQvd2lyZWxlc3MvcmVh bHRlay9ydGw4eHh4dS9ydGw4eHh4dS5oICB8ICAgNjcgKy0NCj4gIC4uLi9yZWFsdGVrL3J0bDh4 eHh1L3J0bDh4eHh1XzgxODhlLmMgICAgICAgICB8IDEyODYgKysrKysrKysrKysrKysrKysNCj4g IC4uLi9yZWFsdGVrL3J0bDh4eHh1L3J0bDh4eHh1XzgxODhmLmMgICAgICAgICB8ICAgIDQgKy0N Cj4gIC4uLi93aXJlbGVzcy9yZWFsdGVrL3J0bDh4eHh1L3J0bDh4eHh1X2NvcmUuYyB8ICAyMDEg KystDQo+ICAuLi4vd2lyZWxlc3MvcmVhbHRlay9ydGw4eHh4dS9ydGw4eHh4dV9yZWdzLmggfCAg IDQwICstDQo+ICA3IGZpbGVzIGNoYW5nZWQsIDE1NzggaW5zZXJ0aW9ucygrKSwgMjUgZGVsZXRp b25zKC0pDQo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQvd2lyZWxlc3MvcmVhbHRl ay9ydGw4eHh4dS9ydGw4eHh4dV84MTg4ZS5jDQo+IA0KPiANCg0KWy4uLl0NCg0KPiBkaWZmIC0t Z2l0IGEvZHJpdmVycy9uZXQvd2lyZWxlc3MvcmVhbHRlay9ydGw4eHh4dS9ydGw4eHh4dS5oDQo+ IGIvZHJpdmVycy9uZXQvd2lyZWxlc3MvcmVhbHRlay9ydGw4eHh4dS9ydGw4eHh4dS5oDQo+IGlu ZGV4IDE1YmIyYjUyMTFhOC4uMjlmNWRiZWUxNmIwIDEwMDY0NA0KPiAtLS0gYS9kcml2ZXJzL25l dC93aXJlbGVzcy9yZWFsdGVrL3J0bDh4eHh1L3J0bDh4eHh1LmgNCj4gKysrIGIvZHJpdmVycy9u ZXQvd2lyZWxlc3MvcmVhbHRlay9ydGw4eHh4dS9ydGw4eHh4dS5oDQo+IEBAIC0zNiw2ICszNiw3 IEBADQo+ICANCj4gICNkZWZpbmUgVFhfVE9UQUxfUEFHRV9OVU0JCTB4ZjgNCj4gICNkZWZpbmUg VFhfVE9UQUxfUEFHRV9OVU1fODE4OEYJCTB4ZjcNCj4gKyNkZWZpbmUgVFhfVE9UQUxfUEFHRV9O VU1fODE4OEUJCTB4YTkNCj4gICNkZWZpbmUgVFhfVE9UQUxfUEFHRV9OVU1fODE5MkUJCTB4ZjMN Cj4gICNkZWZpbmUgVFhfVE9UQUxfUEFHRV9OVU1fODcyM0IJCTB4ZjcNCj4gIC8qIChIUFEgKyBM UFEgKyBOUFEgKyBQVUJRKSA9IFRYX1RPVEFMX1BBR0VfTlVNICovDQo+IEBAIC00OSw2ICs1MCwx MSBAQA0KPiAgI2RlZmluZSBUWF9QQUdFX05VTV9MT19QUV84MTg4RgkJMHgwMg0KPiAgI2RlZmlu ZSBUWF9QQUdFX05VTV9OT1JNX1BRXzgxODhGCTB4MDINCj4gIA0KPiArI2RlZmluZSBUWF9QQUdF X05VTV9QVUJRXzgxODhFCQkweDQ3DQo+ICsjZGVmaW5lIFRYX1BBR0VfTlVNX0hJX1BRXzgxODhF CQkweDI5DQo+ICsjZGVmaW5lIFRYX1BBR0VfTlVNX0xPX1BRXzgxODhFCQkweDFjDQo+ICsjZGVm aW5lIFRYX1BBR0VfTlVNX05PUk1fUFFfODE4OEUJMHgxYw0KPiArDQo+ICAjZGVmaW5lIFRYX1BB R0VfTlVNX1BVQlFfODE5MkUJCTB4ZTcNCj4gICNkZWZpbmUgVFhfUEFHRV9OVU1fSElfUFFfODE5 MkUJCTB4MDgNCj4gICNkZWZpbmUgVFhfUEFHRV9OVU1fTE9fUFFfODE5MkUJCTB4MGMNCj4gQEAg LTE1Myw3ICsxNTksOCBAQCBzdHJ1Y3QgcnRsOHh4eHVfcnhkZXNjMTYgew0KPiAgCXUzMiBodGM6 MTsNCj4gIAl1MzIgZW9zcDoxOw0KPiAgCXUzMiBic3NpZGZpdDoyOw0KPiAtCXUzMiByZXNlcnZl ZDE6MTY7DQo+ICsJdTMyIHJwdF9zZWw6MjsJCS8qIDgxODhlICovDQo+ICsJdTMyIHJlc2VydmVk MToxNDsNCj4gIAl1MzIgdW5pY2FzdHdha2U6MTsNCj4gIAl1MzIgbWFnaWN3YWtlOjE7DQo+ICAN Cj4gQEAgLTIxMSw3ICsyMTgsOCBAQCBzdHJ1Y3QgcnRsOHh4eHVfcnhkZXNjMTYgew0KPiAgDQo+ ICAJdTMyIG1hZ2ljd2FrZToxOw0KPiAgCXUzMiB1bmljYXN0d2FrZToxOw0KPiAtCXUzMiByZXNl cnZlZDE6MTY7DQo+ICsJdTMyIHJlc2VydmVkMToxNDsNCj4gKwl1MzIgcnB0X3NlbDoyOwkJLyog ODE4OGUgKi8NCj4gIAl1MzIgYnNzaWRmaXQ6MjsNCj4gIAl1MzIgZW9zcDoxOw0KPiAgCXUzMiBo dGM6MTsNCg0KTWlzc2luZyBfX3BhY2tlZCBvbiB0aGlzIHN0cnVjdC4NCkhvd2V2ZXIsIGl0IGhh cyBleGlzdGVkLCBzbyBtYXliZSB5b3UgY2FuIHJldmlldyBzdHJ1Y3QgYW5kIA0KdXNlIGFub3Ro ZXIgcGF0Y2ggdG8gYWRkIF9fcGFja2VkLg0KDQoNCj4gQEAgLTUwMiw2ICs1MTAsOCBAQCBzdHJ1 Y3QgcnRsOHh4eHVfdHhkZXNjNDAgew0KPiAgI2RlZmluZSBUWERFU0NfQU1QRFVfREVOU0lUWV9T SElGVAkyMA0KPiAgI2RlZmluZSBUWERFU0M0MF9CVF9JTlQJCQlCSVQoMjMpDQo+ICAjZGVmaW5l IFRYREVTQzQwX0dJRF9TSElGVAkJMjQNCj4gKyNkZWZpbmUgVFhERVNDX0FOVEVOTkFfU0VMRUNU X0EJCUJJVCgyNCkNCj4gKyNkZWZpbmUgVFhERVNDX0FOVEVOTkFfU0VMRUNUX0IJCUJJVCgyNSkN Cj4gIA0KDQpbLi4uXQ0KDQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC93aXJlbGVzcy9yZWFs dGVrL3J0bDh4eHh1L3J0bDh4eHh1XzgxODhlLmMNCj4gYi9kcml2ZXJzL25ldC93aXJlbGVzcy9y ZWFsdGVrL3J0bDh4eHh1L3J0bDh4eHh1XzgxODhlLmMNCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQN Cj4gaW5kZXggMDAwMDAwMDAwMDAwLi41ODc1NTVkYTliY2UNCj4gLS0tIC9kZXYvbnVsbA0KPiAr KysgYi9kcml2ZXJzL25ldC93aXJlbGVzcy9yZWFsdGVrL3J0bDh4eHh1L3J0bDh4eHh1XzgxODhl LmMNCj4gDQoNClsuLi5dDQoNCj4gK3N0YXRpYyBpbnQgcnRsODE4OGV1X2lkZW50aWZ5X2NoaXAo c3RydWN0IHJ0bDh4eHh1X3ByaXYgKnByaXYpDQo+ICt7DQo+ICsJc3RydWN0IGRldmljZSAqZGV2 ID0gJnByaXYtPnVkZXYtPmRldjsNCj4gKwl1MzIgc3lzX2NmZywgdmVuZG9yOw0KPiArCWludCBy ZXQgPSAwOw0KPiArDQo+ICsJc3Ryc2NweShwcml2LT5jaGlwX25hbWUsICI4MTg4RVUiLCBzaXpl b2YocHJpdi0+Y2hpcF9uYW1lKSk7DQo+ICsJcHJpdi0+cnRsX2NoaXAgPSBSVEw4MTg4RTsNCj4g Kwlwcml2LT5yZl9wYXRocyA9IDE7DQo+ICsJcHJpdi0+cnhfcGF0aHMgPSAxOw0KPiArCXByaXYt PnR4X3BhdGhzID0gMTsNCj4gKwlwcml2LT5oYXNfd2lmaSA9IDE7DQo+ICsNCj4gKwlzeXNfY2Zn ID0gcnRsOHh4eHVfcmVhZDMyKHByaXYsIFJFR19TWVNfQ0ZHKTsNCj4gKwlwcml2LT5jaGlwX2N1 dCA9IHUzMl9nZXRfYml0cyhzeXNfY2ZnLCBTWVNfQ0ZHX0NISVBfVkVSU0lPTl9NQVNLKTsNCj4g KwlpZiAoc3lzX2NmZyAmIFNZU19DRkdfVFJQX1ZBVVhfRU4pIHsNCj4gKwkJZGV2X2luZm8oZGV2 LCAiVW5zdXBwb3J0ZWQgdGVzdCBjaGlwXG4iKTsNCj4gKwkJcmV0ID0gLUVPUE5PVFNVUFA7DQo+ ICsJCWdvdG8gb3V0Ow0KPiArCX0NCj4gKw0KPiArCS8qDQo+ICsJICogVE9ETzogQXQgYSBnbGFu Y2UsIEkgY3V0IHJlcXVpcmVzIGEgZGlmZmVyZW50IGZpcm13YXJlLA0KPiArCSAqIGRpZmZlcmVu dCBpbml0aWFsaXNhdGlvbiB0YWJsZXMsIGFuZCBubyBzb2Z0d2FyZSByYXRlDQo+ICsJICogY29u dHJvbC4gVGhlIHZlbmRvciBkcml2ZXIgaXMgbm90IGNvbmZpZ3VyZWQgdG8gaGFuZGxlDQo+ICsJ ICogSSBjdXQgY2hpcHMgYnkgZGVmYXVsdC4gQXJlIHRoZXJlIGFueSBpbiB0aGUgd2lsZD8NCj4g KwkgKi8NCj4gKwlpZiAocHJpdi0+Y2hpcF9jdXQgPT0gOCkgew0KPiArCQlkZXZfaW5mbyhkZXYs ICJSVEw4MTg4RVUgY3V0IEkgaXMgbm90IHN1cHBvcnRlZC4gUGxlYXNlIGNvbXBsYWluIGFib3V0 IGl0IGF0IA0KPiBsaW51eC13aXJlbGVzc0B2Z2VyLmtlcm5lbC5vcmcuXG4iKTsNCj4gKwkJcmV0 ID0gLUVPUE5PVFNVUFA7DQo+ICsJCWdvdG8gb3V0Ow0KDQpuaXQ6IFNpbmNlIHlvdSBkb24ndCBu ZWVkIGFueSBlcnJvciBoYW5kbGluZywganVzdCByZXR1cm4gLUVPUE5PVFNVUFA7DQoNCg0KPiAr CX0NCj4gKw0KPiArCXZlbmRvciA9IHN5c19jZmcgJiBTWVNfQ0ZHX1ZFTkRPUl9JRDsNCj4gKwly dGw4eHh4dV9pZGVudGlmeV92ZW5kb3JfMWJpdChwcml2LCB2ZW5kb3IpOw0KPiArDQo+ICsJcmV0 ID0gcnRsOHh4eHVfY29uZmlnX2VuZHBvaW50c19ub19zaWUocHJpdik7DQo+ICsNCj4gK291dDoN Cj4gKwlyZXR1cm4gcmV0Ow0KPiArfQ0KPiArDQoNClsuLi5dDQoNCg0K