Received: by 2002:a25:824b:0:0:0:0:0 with SMTP id d11csp418457ybn; Wed, 25 Sep 2019 01:52:47 -0700 (PDT) X-Google-Smtp-Source: APXvYqydbFazGYtH/AA8UAw7nPrWEAmYmWEpDDRxrYKbpUlxUKrLGp6r77RLbeU7MtsO1nmLtN7M X-Received: by 2002:a2e:5358:: with SMTP id t24mr5299408ljd.209.1569401567619; Wed, 25 Sep 2019 01:52:47 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1569401567; cv=pass; d=google.com; s=arc-20160816; b=Kc3oT4zSBGZzaNP7/WAAkolnKbpGAqrd27SW4Vl0McK8yAN4rzbz/ox0lxU4Yswsjg AuZgH/uU4o0Ji3xQEYao+vtamwvsKKJDtHPCgyYBYQzEQyFXb1phx5Z/TUTgQfMdnOpz dd8ak3iaeSx8kwkv8+PODkKqjN40Xl2x+JazlFF8BHkc6xtpaEaQwZ62gsfWuJMerbrn rVukXO6tl87azTw3yURWibJNu7e3HTdblgDVIJNDXVtfn+RAHjCMHppWEWHflHf8zbvN OtI+uqRtLud9YnBX5XjAt+dtKZjIOQi5SPm2QU4qhIdXyIS8pEQ8f2wUAHLdARsilOEv a2yw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:content-transfer-encoding :content-language:accept-language:in-reply-to:references:message-id :date:thread-index:thread-topic:subject:cc:to:from:dkim-signature; bh=ZDbEZebHHNpitTqxBeHDgzmunDSkHdKaWEwMj47N1n8=; b=GYlbW9VcXeL+9awH9C4clZsuAsXE/9yPyaFux3RGP5DKpv48ILBsaHBwlNAXB26Ck6 G7u/PDg8Awtu0gchZ/ErHGmv7ZqYmcBTia/mxMdL86nRT6+3IH0rHb9RG6gJ/aR8B1Q6 fX90BshsMgomfAiQ80wj76qSJYVikFLX2r995P1BNQY4Vru+2ac8iTSPL02SH7Wi07gC uNphZ5kpyqx4oK5tJgGLyJb2Z5amtrL7F61Y/n8Ez0QmPS8AjbwkVlmv2vnra7fElpyV H+NCXVYQ5UdzGr4aVd2+mK2BgOxsyVUkFEOJC2yzUFszkpeVqy2J8BzotkOC4EfxbYlz FLOg== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@nxp.com header.s=selector2 header.b=kjCv2HN6; arc=pass (i=1 spf=pass spfdomain=nxp.com dkim=pass dkdomain=nxp.com dmarc=pass fromdomain=nxp.com); spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=nxp.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id b8si2341525eju.351.2019.09.25.01.52.23; Wed, 25 Sep 2019 01:52:47 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@nxp.com header.s=selector2 header.b=kjCv2HN6; arc=pass (i=1 spf=pass spfdomain=nxp.com dkim=pass dkdomain=nxp.com dmarc=pass fromdomain=nxp.com); spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=nxp.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2407072AbfIWJZE (ORCPT + 99 others); Mon, 23 Sep 2019 05:25:04 -0400 Received: from mail-eopbgr10081.outbound.protection.outlook.com ([40.107.1.81]:13190 "EHLO EUR02-HE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1725816AbfIWJZD (ORCPT ); Mon, 23 Sep 2019 05:25:03 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gep7JoO0ld5B5HIHYGpfpHdNXX5mopvA47jYZ6ru8tT091GWHDaDh/+L2842H9nXICJLazVbhZgiDrEsFYv6ZT8mH2Ylbc/fiQNqrc5WKDRZt1l5x/J41+dGxIBcZV8XwvjwVrveVF3tHDiOMMFZAR1bQZ+bAjCSjhHtPdO9fvLo3C/qSoOM2h5yrclkaFoHQ4oJY1jGM399ORBj7hmMGWxitu8DaeZ/CFRhJoWWecpAJ+3W9Jp0fDOf66Vt9QRrh66Lw+oq+gqOqNZ/PEdyRC5iZJj/CUfyuSNMAQRJdc3yui1sYkxcWNnxpHyW53FAkb2T733EzJKnBAZ+GKKbDw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZDbEZebHHNpitTqxBeHDgzmunDSkHdKaWEwMj47N1n8=; b=dT+avVG8zN0bF7CiM4Fg3PlJzIwL27pHyMedsyU4GqjXCR+/1M2sVlObsYOf3FMe0F9xGcwzb9GCGW2bkx9S4y005927IeTZmEdjEfJir6Aq5L0IG9EB5RodBNK8PXkNCtTmDgK5beaIqs21ukoEupS/1W5XDth8Lh2oiRGSHKdkPJ+dpjjZyhKDYHBFcWXr4YWk8vNR99qQjaMSGqp4qSy4KAdusPtVETHtBe0VPXIRg6oyUP/gVU7jLHtRofr5wKoUsDC30FnkGUU6aUtNTYXdjAmwQhkmLBhwbbMwWNhHKVDV34krMdCAy4ej00ocmuoBuF9mgtvV7Wd2FLAjqA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZDbEZebHHNpitTqxBeHDgzmunDSkHdKaWEwMj47N1n8=; b=kjCv2HN6Tf2cuhkbroJAA86yV2XwUqGKLv0VtiIuTDI344uEY1UmGIM36pRIlENvZRbAXyQKyRQs13KrdUsXnIs0QrYnh0vRWOuOcmUqb1SaryKISlKqi0VBVV75Ki85uve9uoCxg9g8Tbj1hbj0C4cU5+6gYRBv6T5OYvtXza0= Received: from VI1PR04MB4333.eurprd04.prod.outlook.com (52.134.122.155) by VI1PR04MB5695.eurprd04.prod.outlook.com (20.178.126.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2284.18; Mon, 23 Sep 2019 09:24:58 +0000 Received: from VI1PR04MB4333.eurprd04.prod.outlook.com ([fe80::a587:f9f1:d9ae:8c18]) by VI1PR04MB4333.eurprd04.prod.outlook.com ([fe80::a587:f9f1:d9ae:8c18%3]) with mapi id 15.20.2284.023; Mon, 23 Sep 2019 09:24:56 +0000 From: Andy Tang To: "edubezval@gmail.com" , "rui.zhang@intel.com" CC: "daniel.lezcano@linaro.org" , Leo Li , "linux-pm@vger.kernel.org" , "linux-kernel@vger.kernel.org" Subject: RE: [PATCH] thermal: qoriq: add thermal monitor unit version 2 support Thread-Topic: [PATCH] thermal: qoriq: add thermal monitor unit version 2 support Thread-Index: AQHVGoGIf8d5UZJEp066lEJQe1qATqbt0BdwgCSEgECAJ1eqcA== Date: Mon, 23 Sep 2019 09:24:56 +0000 Message-ID: References: <20190604025114.46085-1-andy.tang@nxp.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=andy.tang@nxp.com; x-originating-ip: [119.31.174.73] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: ec29ddb4-e6a9-4198-9e31-08d74007e631 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0;PCL:0;RULEID:(2390118)(7020095)(4652040)(8989299)(5600167)(711020)(4605104)(1401327)(4618075)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(2017052603328)(7193020);SRVR:VI1PR04MB5695; x-ms-traffictypediagnostic: VI1PR04MB5695:|VI1PR04MB5695: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:2657; x-forefront-prvs: 0169092318 x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(4636009)(136003)(39840400004)(376002)(366004)(396003)(346002)(199004)(13464003)(189003)(476003)(6246003)(9686003)(6116002)(7736002)(2501003)(305945005)(55016002)(71200400001)(6506007)(5660300002)(2906002)(256004)(102836004)(14444005)(3846002)(86362001)(6436002)(53546011)(74316002)(66946007)(66446008)(44832011)(64756008)(66556008)(11346002)(446003)(33656002)(71190400001)(229853002)(186003)(81156014)(81166006)(8676002)(4326008)(54906003)(52536014)(316002)(478600001)(486006)(66476007)(76116006)(8936002)(14454004)(110136005)(25786009)(7696005)(66066001)(99286004)(26005)(76176011);DIR:OUT;SFP:1101;SCL:1;SRVR:VI1PR04MB5695;H:VI1PR04MB4333.eurprd04.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;A:1;MX:1; received-spf: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: UeMBgVdI0+JBIo/k2pHy3NOJLTX8n4M1Rm4DGK0JLdtcOVwPeKKCvS7X9nfCyVqDzWwZ1Dzy8a5HdrWYe5Cj4yrJq+axcoMLOeW4dY8lgbU07VpKFgBUezOB/izpdeMQnpQirxkeVE7XSAqZWN8e6YAV2UNYuO+EE3Mwv0pIZgMiuYArQm5habXQIZyh28Q6RbNhI2QteL/kYr9DL9Nlm81MswuTGASyacD94Sy3lCVXteMuaPRuEFOMwu0e9Nrl8MHgoE2AQKjXszNPiaRPgBMY4eUtZ1A7GYMkzJkkdFHk0XWW+WgkyDwovz6daZNOgTm+hKCz7rEVLoFELjnfvoFhI/UstdwuH+tg9+73A0PqDCmhKVHGP0oDKY7oICM/N+IaZRlN6ejgAfIZ/Z4zBNKWtmwxwoTkk60QeukfkCc= Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: ec29ddb4-e6a9-4198-9e31-08d74007e631 X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Sep 2019 09:24:56.6075 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: UaN3t76edJi1DoVUYgpNSdmw8DzyvRwr3WUrH91yTa7wzrbO0lyF2oHUo/Tj7LqavuqGz7NkaP8kupiXbueRBQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB5695 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org SGkgUnVpLCBFZHViZXp2YWwsDQoNCldvdWxkIHlvdSBwbGVhc2UgcmV2aWV3IHRoaXMgcGF0Y2g/ DQoNCkJSLA0KQW5keQ0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IEFu ZHkgVGFuZw0KPiBTZW50OiAyMDE5xOo41MIyOcjVIDE2OjM4DQo+IFRvOiAnZWR1YmV6dmFsQGdt YWlsLmNvbScgPGVkdWJlenZhbEBnbWFpbC5jb20+OyAncnVpLnpoYW5nQGludGVsLmNvbScNCj4g PHJ1aS56aGFuZ0BpbnRlbC5jb20+DQo+IENjOiAnZGFuaWVsLmxlemNhbm9AbGluYXJvLm9yZycg PGRhbmllbC5sZXpjYW5vQGxpbmFyby5vcmc+OyBMZW8gTGkNCj4gPGxlb3lhbmcubGlAbnhwLmNv bT47ICdsaW51eC1wbUB2Z2VyLmtlcm5lbC5vcmcnDQo+IDxsaW51eC1wbUB2Z2VyLmtlcm5lbC5v cmc+OyAnbGludXgta2VybmVsQHZnZXIua2VybmVsLm9yZycNCj4gPGxpbnV4LWtlcm5lbEB2Z2Vy Lmtlcm5lbC5vcmc+DQo+IFN1YmplY3Q6IFJFOiBbUEFUQ0hdIHRoZXJtYWw6IHFvcmlxOiBhZGQg dGhlcm1hbCBtb25pdG9yIHVuaXQgdmVyc2lvbiAyDQo+IHN1cHBvcnQNCj4gDQo+IEhpIFJ1aSwg RWR1YmV6dmFsLA0KPiANCj4gQWxtb3N0IHRocmVlIG1vbnRoZXMgcGFzc2VkLCBJIGhhdmUgbm90 IGdvdCB5b3VyIGNvbW1lbnRzIGZyb20geW91Lg0KPiBDb3VsZCB5b3UgcGxlYXNlIHRha2UgYSBs b29rIGF0IHRoaXMgcGF0Y2g/DQo+IA0KPiBCUiwNCj4gQW5keQ0KPiANCj4gPiAtLS0tLU9yaWdp bmFsIE1lc3NhZ2UtLS0tLQ0KPiA+IEZyb206IEFuZHkgVGFuZw0KPiA+IFNlbnQ6IDIwMTnE6jjU wjbI1SAxMDo1Nw0KPiA+IFRvOiBlZHViZXp2YWxAZ21haWwuY29tOyBydWkuemhhbmdAaW50ZWwu Y29tDQo+ID4gQ2M6IGRhbmllbC5sZXpjYW5vQGxpbmFyby5vcmc7IExlbyBMaSA8bGVveWFuZy5s aUBueHAuY29tPjsNCj4gPiBsaW51eC1wbUB2Z2VyLmtlcm5lbC5vcmc7IGxpbnV4LWtlcm5lbEB2 Z2VyLmtlcm5lbC5vcmcNCj4gPiBTdWJqZWN0OiBSRTogW1BBVENIXSB0aGVybWFsOiBxb3JpcTog YWRkIHRoZXJtYWwgbW9uaXRvciB1bml0IHZlcnNpb24NCj4gPiAyIHN1cHBvcnQNCj4gPg0KPiA+ IEFueSBjb21tZW50cz8NCj4gPg0KPiA+IEJSLA0KPiA+IEFuZHkNCj4gPg0KPiA+ID4gLS0tLS1P cmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiA+IEZyb206IFl1YW50aWFuIFRhbmcgPGFuZHkudGFu Z0BueHAuY29tPg0KPiA+ID4gU2VudDogMjAxOcTqNtTCNMjVIDEwOjUxDQo+ID4gPiBUbzogZWR1 YmV6dmFsQGdtYWlsLmNvbTsgcnVpLnpoYW5nQGludGVsLmNvbQ0KPiA+ID4gQ2M6IGRhbmllbC5s ZXpjYW5vQGxpbmFyby5vcmc7IExlbyBMaSA8bGVveWFuZy5saUBueHAuY29tPjsNCj4gPiA+IGxp bnV4LXBtQHZnZXIua2VybmVsLm9yZzsgbGludXgta2VybmVsQHZnZXIua2VybmVsLm9yZzsgQW5k eSBUYW5nDQo+ID4gPiA8YW5keS50YW5nQG54cC5jb20+DQo+ID4gPiBTdWJqZWN0OiBbUEFUQ0hd IHRoZXJtYWw6IHFvcmlxOiBhZGQgdGhlcm1hbCBtb25pdG9yIHVuaXQgdmVyc2lvbiAyDQo+ID4g PiBzdXBwb3J0DQo+ID4gPg0KPiA+ID4gVGhlcm1hbCBNb25pdG9yIFVuaXQgdjIgaXMgaW50cm9k dWNlZCBvbiBuZXcgTGF5c2NhcGUgU29DLg0KPiA+ID4gQ29tcGFyZWQgdG8gdjEsIFRNVXYyIGhh cyBhIGxpdHRsZSBkaWZmZXJlbnQgcmVnaXN0ZXIgbGF5b3V0IGFuZA0KPiA+ID4gZGlnaXRhbCBv dXRwdXQgaXMgZmFpcmx5IGxpbmVhci4NCj4gPiA+DQo+ID4gPiBTaWduZWQtb2ZmLWJ5OiBZdWFu dGlhbiBUYW5nIDxhbmR5LnRhbmdAbnhwLmNvbT4NCj4gPiA+IC0tLQ0KPiA+ID4gIGRyaXZlcnMv dGhlcm1hbC9xb3JpcV90aGVybWFsLmMgfCAxMjINCj4gPiA+ICsrKysrKysrKysrKysrKysrKysr KysrKystLS0tLS0tDQo+ID4gPiAgMSBmaWxlIGNoYW5nZWQsIDk4IGluc2VydGlvbnMoKyksIDI0 IGRlbGV0aW9ucygtKQ0KPiA+ID4NCj4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL3RoZXJtYWwv cW9yaXFfdGhlcm1hbC5jDQo+ID4gPiBiL2RyaXZlcnMvdGhlcm1hbC9xb3JpcV90aGVybWFsLmMg aW5kZXggM2I1ZjViM2ZiMWJjLi4wZGY2ZGZkZGY4MDQNCj4gPiA+IDEwMDY0NA0KPiA+ID4gLS0t IGEvZHJpdmVycy90aGVybWFsL3FvcmlxX3RoZXJtYWwuYw0KPiA+ID4gKysrIGIvZHJpdmVycy90 aGVybWFsL3FvcmlxX3RoZXJtYWwuYw0KPiA+ID4gQEAgLTEzLDYgKzEzLDE1IEBADQo+ID4gPiAg I2luY2x1ZGUgInRoZXJtYWxfY29yZS5oIg0KPiA+ID4NCj4gPiA+ICAjZGVmaW5lIFNJVEVTX01B WAkxNg0KPiA+ID4gKyNkZWZpbmUgVE1SX0RJU0FCTEUJMHgwDQo+ID4gPiArI2RlZmluZSBUTVJf TUUJCTB4ODAwMDAwMDANCj4gPiA+ICsjZGVmaW5lIFRNUl9BTFBGCTB4MGMwMDAwMDANCj4gPiA+ ICsjZGVmaW5lIFRNUl9BTFBGX1YyCTB4MDMwMDAwMDANCj4gPiA+ICsjZGVmaW5lIFRNVE1JUl9E RUZBVUxUCTB4MDAwMDAwMGYNCj4gPiA+ICsjZGVmaW5lIFRJRVJfRElTQUJMRQkweDANCj4gPiA+ ICsjZGVmaW5lIFRFVU1SMF9WMgkweDUxMDA5QzAwDQo+ID4gPiArI2RlZmluZSBUTVVfVkVSMQkw eDENCj4gPiA+ICsjZGVmaW5lIFRNVV9WRVIyCTB4Mg0KPiA+ID4NCj4gPiA+ICAvKg0KPiA+ID4g ICAqIFFvcklRIFRNVSBSZWdpc3RlcnMNCj4gPiA+IEBAIC0yMywxNyArMzIsNTUgQEAgc3RydWN0 IHFvcmlxX3RtdV9zaXRlX3JlZ3Mgew0KPiA+ID4gIAl1OCByZXMwWzB4OF07DQo+ID4gPiAgfTsN Cj4gPiA+DQo+ID4gPiAtc3RydWN0IHFvcmlxX3RtdV9yZWdzIHsNCj4gPiA+ICtzdHJ1Y3QgcW9y aXFfdG11X3JlZ3NfdjIgew0KPiA+ID4gKwl1MzIgdG1yOwkJLyogTW9kZSBSZWdpc3RlciAqLw0K PiA+ID4gKwl1MzIgdHNyOwkJLyogU3RhdHVzIFJlZ2lzdGVyICovDQo+ID4gPiArCXUzMiB0bXNy OwkJLyogbW9uaXRvciBzaXRlIHJlZ2lzdGVyICovDQo+ID4gPiArCXUzMiB0bXRtaXI7CQkvKiBU ZW1wZXJhdHVyZSBtZWFzdXJlbWVudCBpbnRlcnZhbCBSZWdpc3Rlcg0KPiAqLw0KPiA+ID4gKwl1 OCByZXMwWzB4MTBdOw0KPiA+ID4gKwl1MzIgdGllcjsJCS8qIEludGVycnVwdCBFbmFibGUgUmVn aXN0ZXIgKi8NCj4gPiA+ICsJdTMyIHRpZHI7CQkvKiBJbnRlcnJ1cHQgRGV0ZWN0IFJlZ2lzdGVy ICovDQo+ID4gPiArCXU4IHJlczFbMHg4XTsNCj4gPiA+ICsJdTMyIHRpaXNjcjsJCS8qIGludGVy cnVwdCBpbW1lZGlhdGUgc2l0ZSBjYXB0dXJlIHJlZ2lzdGVyICovDQo+ID4gPiArCXUzMiB0aWFz Y3I7CQkvKiBpbnRlcnJ1cHQgYXZlcmFnZSBzaXRlIGNhcHR1cmUgcmVnaXN0ZXIgKi8NCj4gPiA+ ICsJdTMyIHRpY3NjcjsJCS8qIEludGVycnVwdCBDcml0aWNhbCBTaXRlIENhcHR1cmUgUmVnaXN0 ZXIgKi8NCj4gPiA+ICsJdTMyIHJlczI7DQo+ID4gPiArCXUzMiB0bWh0Y3I7CQkvKiBtb25pdG9y IGhpZ2ggdGVtcGVyYXR1cmUgY2FwdHVyZSByZWdpc3RlciAqLw0KPiA+ID4gKwl1MzIgdG1sdGNy OwkJLyogbW9uaXRvciBsb3cgdGVtcGVyYXR1cmUgY2FwdHVyZSByZWdpc3RlciAqLw0KPiA+ID4g Kwl1MzIgdG1ydHJjcjsJLyogbW9uaXRvciByaXNpbmcgdGVtcGVyYXR1cmUgcmF0ZSBjYXB0dXJl IHJlZ2lzdGVyDQo+ICovDQo+ID4gPiArCXUzMiB0bWZ0cmNyOwkvKiBtb25pdG9yIGZhbGxpbmcg dGVtcGVyYXR1cmUgcmF0ZSBjYXB0dXJlIHJlZ2lzdGVyDQo+ICovDQo+ID4gPiArCXUzMiB0bWh0 aXRyOwkvKiBIaWdoIFRlbXBlcmF0dXJlIEltbWVkaWF0ZSBUaHJlc2hvbGQgKi8NCj4gPiA+ICsJ dTMyIHRtaHRhdHI7CS8qIEhpZ2ggVGVtcGVyYXR1cmUgQXZlcmFnZSBUaHJlc2hvbGQgKi8NCj4g PiA+ICsJdTMyIHRtaHRhY3RyOwkvKiBIaWdoIFRlbXBlcmF0dXJlIEF2ZXJhZ2UgQ3JpdCBUaHJl c2hvbGQgKi8NCj4gPiA+ICsJdTMyIHJlczM7DQo+ID4gPiArCXUzMiB0bWx0aXRyOwkvKiBtb25p dG9yIGxvdyB0ZW1wZXJhdHVyZSBpbW1lZGlhdGUgdGhyZXNob2xkICovDQo+ID4gPiArCXUzMiB0 bWx0YXRyOwkvKiBtb25pdG9yIGxvdyB0ZW1wZXJhdHVyZSBhdmVyYWdlIHRocmVzaG9sZA0KPiBy ZWdpc3RlciAqLw0KPiA+ID4gKwl1MzIgdG1sdGFjdHI7CS8qIG1vbml0b3IgbG93IHRlbXBlcmF0 dXJlIGF2ZXJhZ2UgY3JpdGljYWwNCj4gdGhyZXNob2xkICovDQo+ID4gPiArCXUzMiByZXM0Ow0K PiA+ID4gKwl1MzIgdG1ydHJjdHI7CS8qIG1vbml0b3IgcmlzaW5nIHRlbXBlcmF0dXJlIHJhdGUg Y3JpdGljYWwgdGhyZXNob2xkDQo+ICovDQo+ID4gPiArCXUzMiB0bWZ0cmN0cjsJLyogbW9uaXRv ciBmYWxsaW5nIHRlbXBlcmF0dXJlIHJhdGUgY3JpdGljYWwNCj4gdGhyZXNob2xkKi8NCj4gPiA+ ICsJdTggcmVzNVsweDhdOw0KPiA+ID4gKwl1MzIgdHRjZmdyOwkvKiBUZW1wZXJhdHVyZSBDb25m aWd1cmF0aW9uIFJlZ2lzdGVyICovDQo+ID4gPiArCXUzMiB0c2NmZ3I7CS8qIFNlbnNvciBDb25m aWd1cmF0aW9uIFJlZ2lzdGVyICovDQo+ID4gPiArCXU4IHJlczZbMHg3OF07DQo+ID4gPiArCXN0 cnVjdCBxb3JpcV90bXVfc2l0ZV9yZWdzIHNpdGVbU0lURVNfTUFYXTsNCj4gPiA+ICsJdTggcmVz N1sweDlmOF07DQo+ID4gPiArCXUzMiBpcGJycjA7CQkvKiBJUCBCbG9jayBSZXZpc2lvbiBSZWdp c3RlciAwICovDQo+ID4gPiArCXUzMiBpcGJycjE7CQkvKiBJUCBCbG9jayBSZXZpc2lvbiBSZWdp c3RlciAxICovDQo+ID4gPiArCXU4IHJlczhbMHgzMDBdOw0KPiA+ID4gKwl1MzIgdGV1bXIwOw0K PiA+ID4gKwl1MzIgdGV1bXIxOw0KPiA+ID4gKwl1MzIgdGV1bXIyOw0KPiA+ID4gKwl1MzIgcmVz OTsNCj4gPiA+ICsJdTMyIHR0cmNyWzRdOwkvKiBUZW1wZXJhdHVyZSBSYW5nZSBDb250cm9sIFJl Z2lzdGVyICovDQo+ID4gPiArfTsNCj4gPiA+ICsNCj4gPiA+ICtzdHJ1Y3QgcW9yaXFfdG11X3Jl Z3NfdjEgew0KPiA+ID4gIAl1MzIgdG1yOwkJLyogTW9kZSBSZWdpc3RlciAqLw0KPiA+ID4gLSNk ZWZpbmUgVE1SX0RJU0FCTEUJMHgwDQo+ID4gPiAtI2RlZmluZSBUTVJfTUUJCTB4ODAwMDAwMDAN Cj4gPiA+IC0jZGVmaW5lIFRNUl9BTFBGCTB4MGMwMDAwMDANCj4gPiA+ICAJdTMyIHRzcjsJCS8q IFN0YXR1cyBSZWdpc3RlciAqLw0KPiA+ID4gIAl1MzIgdG10bWlyOwkJLyogVGVtcGVyYXR1cmUg bWVhc3VyZW1lbnQgaW50ZXJ2YWwgUmVnaXN0ZXINCj4gKi8NCj4gPiA+IC0jZGVmaW5lIFRNVE1J Ul9ERUZBVUxUCTB4MDAwMDAwMGYNCj4gPiA+ICAJdTggcmVzMFsweDE0XTsNCj4gPiA+ICAJdTMy IHRpZXI7CQkvKiBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lzdGVyICovDQo+ID4gPiAtI2RlZmluZSBU SUVSX0RJU0FCTEUJMHgwDQo+ID4gPiAgCXUzMiB0aWRyOwkJLyogSW50ZXJydXB0IERldGVjdCBS ZWdpc3RlciAqLw0KPiA+ID4gIAl1MzIgdGlzY3I7CQkvKiBJbnRlcnJ1cHQgU2l0ZSBDYXB0dXJl IFJlZ2lzdGVyICovDQo+ID4gPiAgCXUzMiB0aWNzY3I7CQkvKiBJbnRlcnJ1cHQgQ3JpdGljYWwg U2l0ZSBDYXB0dXJlIFJlZ2lzdGVyICovDQo+ID4gPiBAQCAtNTMsMTAgKzEwMCw3IEBAIHN0cnVj dCBxb3JpcV90bXVfcmVncyB7DQo+ID4gPiAgCXUzMiBpcGJycjA7CQkvKiBJUCBCbG9jayBSZXZp c2lvbiBSZWdpc3RlciAwICovDQo+ID4gPiAgCXUzMiBpcGJycjE7CQkvKiBJUCBCbG9jayBSZXZp c2lvbiBSZWdpc3RlciAxICovDQo+ID4gPiAgCXU4IHJlczZbMHgzMTBdOw0KPiA+ID4gLQl1MzIg dHRyMGNyOwkJLyogVGVtcGVyYXR1cmUgUmFuZ2UgMCBDb250cm9sIFJlZ2lzdGVyICovDQo+ID4g PiAtCXUzMiB0dHIxY3I7CQkvKiBUZW1wZXJhdHVyZSBSYW5nZSAxIENvbnRyb2wgUmVnaXN0ZXIg Ki8NCj4gPiA+IC0JdTMyIHR0cjJjcjsJCS8qIFRlbXBlcmF0dXJlIFJhbmdlIDIgQ29udHJvbCBS ZWdpc3RlciAqLw0KPiA+ID4gLQl1MzIgdHRyM2NyOwkJLyogVGVtcGVyYXR1cmUgUmFuZ2UgMyBD b250cm9sIFJlZ2lzdGVyICovDQo+ID4gPiArCXUzMiB0dHJjcls0XTsJCS8qIFRlbXBlcmF0dXJl IFJhbmdlIENvbnRyb2wgUmVnaXN0ZXIgKi8NCj4gPiA+ICB9Ow0KPiA+ID4NCj4gPiA+ICBzdHJ1 Y3QgcW9yaXFfdG11X2RhdGE7DQo+ID4gPiBAQCAtNzEsNyArMTE1LDkgQEAgc3RydWN0IHFvcmlx X3NlbnNvciB7ICB9Ow0KPiA+ID4NCj4gPiA+ICBzdHJ1Y3QgcW9yaXFfdG11X2RhdGEgew0KPiA+ ID4gLQlzdHJ1Y3QgcW9yaXFfdG11X3JlZ3MgX19pb21lbSAqcmVnczsNCj4gPiA+ICsJaW50IHZl cjsNCj4gPiA+ICsJc3RydWN0IHFvcmlxX3RtdV9yZWdzX3YxIF9faW9tZW0gKnJlZ3M7DQo+ID4g PiArCXN0cnVjdCBxb3JpcV90bXVfcmVnc192MiBfX2lvbWVtICpyZWd2MjsNCj4gPiA+ICAJYm9v bCBsaXR0bGVfZW5kaWFuOw0KPiA+ID4gIAlzdHJ1Y3QgcW9yaXFfc2Vuc29yCSpzZW5zb3JbU0lU RVNfTUFYXTsNCj4gPiA+ICB9Ow0KPiA+ID4gQEAgLTExMSw3ICsxNTcsNyBAQCBzdGF0aWMgY29u c3Qgc3RydWN0IHRoZXJtYWxfem9uZV9vZl9kZXZpY2Vfb3BzDQo+ID4gPiB0bXVfdHpfb3BzID0g eyAgc3RhdGljIGludCBxb3JpcV90bXVfcmVnaXN0ZXJfdG11X3pvbmUoc3RydWN0DQo+ID4gPiBw bGF0Zm9ybV9kZXZpY2UgKnBkZXYpICB7DQo+ID4gPiAgCXN0cnVjdCBxb3JpcV90bXVfZGF0YSAq cWRhdGEgPSBwbGF0Zm9ybV9nZXRfZHJ2ZGF0YShwZGV2KTsNCj4gPiA+IC0JaW50IGlkLCBzaXRl cyA9IDA7DQo+ID4gPiArCWludCBpZCwgc2l0ZXMgPSAwLCBzdjIgPSAwOw0KPiA+ID4NCj4gPiA+ ICAJZm9yIChpZCA9IDA7IGlkIDwgU0lURVNfTUFYOyBpZCsrKSB7DQo+ID4gPiAgCQlxZGF0YS0+ c2Vuc29yW2lkXSA9IGRldm1fa3phbGxvYygmcGRldi0+ZGV2LCBAQCAtMTMwLDEyDQo+ID4gPiAr MTc2LDI0IEBAIHN0YXRpYyBpbnQgcW9yaXFfdG11X3JlZ2lzdGVyX3RtdV96b25lKHN0cnVjdA0K PiA+ID4gK3BsYXRmb3JtX2RldmljZQ0KPiA+ID4gKnBkZXYpDQo+ID4gPiAgCQkJCXJldHVybiBQ VFJfRVJSKHFkYXRhLT5zZW5zb3JbaWRdLT50emQpOw0KPiA+ID4gIAkJfQ0KPiA+ID4NCj4gPiA+ IC0JCXNpdGVzIHw9IDB4MSA8PCAoMTUgLSBpZCk7DQo+ID4gPiArCQlpZiAocWRhdGEtPnZlciA9 PSBUTVVfVkVSMSkNCj4gPiA+ICsJCQlzaXRlcyB8PSAweDEgPDwgKDE1IC0gaWQpOw0KPiA+ID4g KwkJZWxzZQ0KPiA+ID4gKwkJCXN2MiB8PSAweDEgPDwgaWQ7DQo+ID4gPiAgCX0NCj4gPiA+DQo+ ID4gPiAgCS8qIEVuYWJsZSBtb25pdG9yaW5nICovDQo+ID4gPiAtCWlmIChzaXRlcyAhPSAwKQ0K PiA+ID4gLQkJdG11X3dyaXRlKHFkYXRhLCBzaXRlcyB8IFRNUl9NRSB8IFRNUl9BTFBGLA0KPiA+ ID4gJnFkYXRhLT5yZWdzLT50bXIpOw0KPiA+ID4gKwlpZiAocWRhdGEtPnZlciA9PSBUTVVfVkVS MSkgew0KPiA+ID4gKwkJaWYgKHNpdGVzICE9IDApDQo+ID4gPiArCQkJdG11X3dyaXRlKHFkYXRh LCBzaXRlcyB8IFRNUl9NRSB8IFRNUl9BTFBGLA0KPiA+ID4gKwkJCQkJJnFkYXRhLT5yZWdzLT50 bXIpOw0KPiA+ID4gKwl9IGVsc2Ugew0KPiA+ID4gKwkJaWYgKHN2MiAhPSAwKSB7DQo+ID4gPiAr CQkJdG11X3dyaXRlKHFkYXRhLCBzdjIsICZxZGF0YS0+cmVndjItPnRtc3IpOw0KPiA+ID4gKwkJ CXRtdV93cml0ZShxZGF0YSwgVE1SX01FIHwgVE1SX0FMUEZfVjIsDQo+ID4gPiArCQkJCQkmcWRh dGEtPnJlZ3YyLT50bXIpOw0KPiA+ID4gKwkJfQ0KPiA+ID4gKwl9DQo+ID4gPg0KPiA+ID4gIAly ZXR1cm4gMDsNCj4gPiA+ICB9DQo+ID4gPiBAQCAtMTQ4LDE2ICsyMDYsMjAgQEAgc3RhdGljIGlu dCBxb3JpcV90bXVfY2FsaWJyYXRpb24oc3RydWN0DQo+ID4gPiBwbGF0Zm9ybV9kZXZpY2UgKnBk ZXYpDQo+ID4gPiAgCXN0cnVjdCBkZXZpY2Vfbm9kZSAqbnAgPSBwZGV2LT5kZXYub2Zfbm9kZTsN Cj4gPiA+ICAJc3RydWN0IHFvcmlxX3RtdV9kYXRhICpkYXRhID0gcGxhdGZvcm1fZ2V0X2RydmRh dGEocGRldik7DQo+ID4gPg0KPiA+ID4gLQlpZiAob2ZfcHJvcGVydHlfcmVhZF91MzJfYXJyYXko bnAsICJmc2wsdG11LXJhbmdlIiwgcmFuZ2UsIDQpKSB7DQo+ID4gPiAtCQlkZXZfZXJyKCZwZGV2 LT5kZXYsICJtaXNzaW5nIGNhbGlicmF0aW9uIHJhbmdlLlxuIik7DQo+ID4gPiAtCQlyZXR1cm4g LUVOT0RFVjsNCj4gPiA+ICsJbGVuID0gb2ZfcHJvcGVydHlfY291bnRfdTMyX2VsZW1zKG5wLCAi ZnNsLHRtdS1yYW5nZSIpOw0KPiA+ID4gKwlpZiAobGVuID09IC1FTk9EQVRBIHx8IGxlbiA9PSAt RUlOVkFMIHx8IGxlbiA+IDQpIHsNCj4gPiA+ICsJCWRldl9lcnIoJnBkZXYtPmRldiwgImludmFs aWQgcmFuZ2UgZGF0YS5cbiIpOw0KPiA+ID4gKwkJcmV0dXJuIGxlbjsNCj4gPiA+ICAJfQ0KPiA+ ID4NCj4gPiA+IC0JLyogSW5pdCB0ZW1wZXJhdHVyZSByYW5nZSByZWdpc3RlcnMgKi8NCj4gPiA+ IC0JdG11X3dyaXRlKGRhdGEsIHJhbmdlWzBdLCAmZGF0YS0+cmVncy0+dHRyMGNyKTsNCj4gPiA+ IC0JdG11X3dyaXRlKGRhdGEsIHJhbmdlWzFdLCAmZGF0YS0+cmVncy0+dHRyMWNyKTsNCj4gPiA+ IC0JdG11X3dyaXRlKGRhdGEsIHJhbmdlWzJdLCAmZGF0YS0+cmVncy0+dHRyMmNyKTsNCj4gPiA+ IC0JdG11X3dyaXRlKGRhdGEsIHJhbmdlWzNdLCAmZGF0YS0+cmVncy0+dHRyM2NyKTsNCj4gPiA+ ICsJdmFsID0gb2ZfcHJvcGVydHlfcmVhZF91MzJfYXJyYXkobnAsICJmc2wsdG11LXJhbmdlIiwg cmFuZ2UsIGxlbik7DQo+ID4gPiArCWlmICh2YWwgIT0gMCkgew0KPiA+ID4gKwkJZGV2X2Vycigm cGRldi0+ZGV2LCAiaW52YWxpZCByYW5nZSBkYXRhLlxuIik7DQo+ID4gPiArCQlyZXR1cm4gdmFs Ow0KPiA+ID4gKwl9DQo+ID4gPiArDQo+ID4gPiArCWZvciAoaSA9IDA7IGkgPCBsZW47IGkrKykN Cj4gPiA+ICsJCXRtdV93cml0ZShkYXRhLCByYW5nZVtpXSwgJmRhdGEtPnJlZ3MtPnR0cmNyW2ld KTsNCj4gPiA+DQo+ID4gPiAgCWNhbGlicmF0aW9uID0gb2ZfZ2V0X3Byb3BlcnR5KG5wLCAiZnNs LHRtdS1jYWxpYnJhdGlvbiIsICZsZW4pOw0KPiA+ID4gIAlpZiAoY2FsaWJyYXRpb24gPT0gTlVM TCB8fCBsZW4gJSA4KSB7IEBAIC0xODEsNyArMjQzLDEyIEBAIHN0YXRpYw0KPiA+ID4gdm9pZCBx b3JpcV90bXVfaW5pdF9kZXZpY2Uoc3RydWN0IHFvcmlxX3RtdV9kYXRhICpkYXRhKQ0KPiA+ID4g IAl0bXVfd3JpdGUoZGF0YSwgVElFUl9ESVNBQkxFLCAmZGF0YS0+cmVncy0+dGllcik7DQo+ID4g Pg0KPiA+ID4gIAkvKiBTZXQgdXBkYXRlX2ludGVydmFsICovDQo+ID4gPiAtCXRtdV93cml0ZShk YXRhLCBUTVRNSVJfREVGQVVMVCwgJmRhdGEtPnJlZ3MtPnRtdG1pcik7DQo+ID4gPiArCWlmIChk YXRhLT52ZXIgPT0gVE1VX1ZFUjEpIHsNCj4gPiA+ICsJCXRtdV93cml0ZShkYXRhLCBUTVRNSVJf REVGQVVMVCwgJmRhdGEtPnJlZ3MtPnRtdG1pcik7DQo+ID4gPiArCX0gZWxzZSB7DQo+ID4gPiAr CQl0bXVfd3JpdGUoZGF0YSwgVE1UTUlSX0RFRkFVTFQsICZkYXRhLT5yZWd2Mi0+dG10bWlyKTsN Cj4gPiA+ICsJCXRtdV93cml0ZShkYXRhLCBURVVNUjBfVjIsICZkYXRhLT5yZWd2Mi0+dGV1bXIw KTsNCj4gPiA+ICsJfQ0KPiA+ID4NCj4gPiA+ICAJLyogRGlzYWJsZSBtb25pdG9yaW5nICovDQo+ ID4gPiAgCXRtdV93cml0ZShkYXRhLCBUTVJfRElTQUJMRSwgJmRhdGEtPnJlZ3MtPnRtcik7IEBA IC0xOTAsNg0KPiArMjU3LDcNCj4gPiBAQA0KPiA+ID4gc3RhdGljIHZvaWQgcW9yaXFfdG11X2lu aXRfZGV2aWNlKHN0cnVjdCBxb3JpcV90bXVfZGF0YSAqZGF0YSkNCj4gPiA+IHN0YXRpYyBpbnQg cW9yaXFfdG11X3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpICB7DQo+ID4gPiAg CWludCByZXQ7DQo+ID4gPiArCXUzMiB2ZXI7DQo+ID4gPiAgCXN0cnVjdCBxb3JpcV90bXVfZGF0 YSAqZGF0YTsNCj4gPiA+ICAJc3RydWN0IGRldmljZV9ub2RlICpucCA9IHBkZXYtPmRldi5vZl9u b2RlOw0KPiA+ID4NCj4gPiA+IEBAIC0yMTQsNiArMjgyLDEyIEBAIHN0YXRpYyBpbnQgcW9yaXFf dG11X3Byb2JlKHN0cnVjdA0KPiA+IHBsYXRmb3JtX2RldmljZQ0KPiA+ID4gKnBkZXYpDQo+ID4g PiAgCQlnb3RvIGVycl9pb21hcDsNCj4gPiA+ICAJfQ0KPiA+ID4NCj4gPiA+ICsJLyogdmVyc2lv biByZWdpc3RlciBvZmZzZXQgYXQ6IDB4YmY4IG9uIGJvdGggdjEgYW5kIHYyICovDQo+ID4gPiAr CXZlciA9IHRtdV9yZWFkKGRhdGEsICZkYXRhLT5yZWdzLT5pcGJycjApOw0KPiA+ID4gKwlkYXRh LT52ZXIgPSAodmVyID4+IDgpICYgMHhmZjsNCj4gPiA+ICsJaWYgKGRhdGEtPnZlciA9PSBUTVVf VkVSMikNCj4gPiA+ICsJCWRhdGEtPnJlZ3YyID0gKHZvaWQgX19pb21lbSAqKWRhdGEtPnJlZ3M7 DQo+ID4gPiArDQo+ID4gPiAgCXFvcmlxX3RtdV9pbml0X2RldmljZShkYXRhKTsJLyogVE1VIGlu aXRpYWxpemF0aW9uICovDQo+ID4gPg0KPiA+ID4gIAlyZXQgPSBxb3JpcV90bXVfY2FsaWJyYXRp b24ocGRldik7CS8qIFRNVSBjYWxpYnJhdGlvbiAqLw0KPiA+ID4gLS0NCj4gPiA+IDIuMTcuMQ0K DQo=