Received: by 2002:a25:ad19:0:0:0:0:0 with SMTP id y25csp8987849ybi; Tue, 23 Jul 2019 19:32:18 -0700 (PDT) X-Google-Smtp-Source: APXvYqwwDqwDg0oNSpRhToUPnlE0rtQYXSjX0HH9K8Nz3CZ0sMI/PWvHIzv9kmEsMsVSBNkILDur X-Received: by 2002:a17:90a:29c5:: with SMTP id h63mr81664163pjd.83.1563935538736; Tue, 23 Jul 2019 19:32:18 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1563935538; cv=pass; d=google.com; s=arc-20160816; b=hCd2lOCr4dn6KZexu7GQs5eCkJAd66gE65WkpQMvBhnp6K8dtH3HAqm+DbW4S1SNBV R5o5zO/60wE8p5Uh4OIl/fXPTSJBLd/0JZxkEjGqwsmUmVpXjCsSoHXurk0GMzgEcGZY JFay7xCaVNZfLwCwPl1y8v/1SNT8x5no3xA6tUzpOd0ObNi/AnRDu/WZ0zQUcNE77V0r p+eitdNAGhhzDAKlYw/LHfS42YSf2ea7sPoL/6yHl58r88jqVaOwHUJ9bajrekG35FSL vPzqVdV9urjIJ7a/WwDaeTj18MvMd/heG+AUo1P68zgIvW7iC5I8jOTOp5zgXfGLOXJV QmSw== 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-id:user-agent:content-language:accept-language:in-reply-to :references:message-id:date:thread-index:thread-topic:subject:cc:to :from:dkim-signature; bh=mQuSgcXJ6g6zYCmUDAkmNcgoYQY/tdVVNFWPGPYnYxw=; b=KNZvsEwnJ7R3ekXWRxP8El1VjHrlr43nkP31YXxNPqiWQslCcOZmxg/A0PsFaCloPS et5VCj9X8YDMyDa4WAH+YN6rlBIc8pPUP4l2Drww0P6d1til1vPHwlu2NcA0gVrbwszL 6074X6+KsmwrQInv5ZzeQFbRenmdeJB5pUk3LSWoPCi3ZB806Xxd7KrEY/0h/PuWMHbL d9L5Fyg+ldWQINUvbbQua0E6ksqMGyCSfi0ypA/ZjsxkiIoBsG+dsM4G3fLP5FfykJy9 a4EmKd8Obqwpi2nonRGNn16rZkZRLd0tTdRiaR/u/7Cw23bPTFJbra9Zts4jHFzSPQIk y+Ng== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@Mellanox.com header.s=selector2 header.b=ppr0kNvb; arc=pass (i=1 spf=pass spfdomain=mellanox.com dkim=pass dkdomain=mellanox.com dmarc=pass fromdomain=mellanox.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=mellanox.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id k125si14682175pgk.30.2019.07.23.19.32.03; Tue, 23 Jul 2019 19:32:18 -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=@Mellanox.com header.s=selector2 header.b=ppr0kNvb; arc=pass (i=1 spf=pass spfdomain=mellanox.com dkim=pass dkdomain=mellanox.com dmarc=pass fromdomain=mellanox.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=mellanox.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2389464AbfGWVjI (ORCPT + 99 others); Tue, 23 Jul 2019 17:39:08 -0400 Received: from mail-eopbgr40075.outbound.protection.outlook.com ([40.107.4.75]:9110 "EHLO EUR03-DB5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1728929AbfGWVjI (ORCPT ); Tue, 23 Jul 2019 17:39:08 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UwkXWwz/Q4G+MPqDAQNiOytC2OhmPZ614BV7BpFXCgRUHepBEpdqrim2HlBY5EX8JFc+9B9aYneeRRGRysQEl2PI/S0cJjGAGdXCS99k9svJhGT77kjLwVo4Os+ItKIBUI5eZ0PIr9m21CSsjXxc9xRBYzIh6FGHAeHtUoNHWGyA6fAe7J0dWNIvXJrzUHHgjwPcHBPWzOa2JgAZ4CoIj9dbD6mt5nZ9JhcTEu0qoLN5PciacavxZCWRiX8jpiXu/HcaL6Oh3tLTECo8fKeciTZRw8T+vzSdbG9QkLeqnC8b6DUAVwMLNGKMxxdtGavTs7hU+KwPOTygYdKHoM3uAA== 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=mQuSgcXJ6g6zYCmUDAkmNcgoYQY/tdVVNFWPGPYnYxw=; b=k7y6C13zgi52Up/2a09c2x+46uDGf2a77JSvnCoHmJLs5inuM0KYJpGG1nxf1vWMWjrbwSG79O9qa6EHJVSVXksX7b54mo6kkK394T0AETA/tVrLGDsMkruH2ZYKfhXlgxaC9DD/AsQXKSTVqTuaF3X0Y454DKweXMUp1b5LAsf7XXB3DgoGjapLcQ8+6ZsqmbVD9FulodnN3Unel7T0Lwhp3rlNmbKsd7/zKXny1ND0FBL4MYsrbhm5L1Ydw3yXE06N0ZteBoW8SNPUfd3/mklnTjQogiJIVdVQDBTMH2yAzpVnUXPyWJ+P00TlRleT0J1708ufogyzh0tTJVhsWA== ARC-Authentication-Results: i=1; mx.microsoft.com 1;spf=pass smtp.mailfrom=mellanox.com;dmarc=pass action=none header.from=mellanox.com;dkim=pass header.d=mellanox.com;arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=mQuSgcXJ6g6zYCmUDAkmNcgoYQY/tdVVNFWPGPYnYxw=; b=ppr0kNvb8Kf3RfIieZY309Es4DhkcgT+okpFRNPEkIOqfwX5IAgMJ7NmGvFY2/7GkfhO3PM9ib618P7DtkwqPlvxr8Mqe1yQPYlby5nuhxw3YPXGdil/Vl9wrAtf7DeyWn5oetFQ7mkjMIeO3kD7zG/Y45HpL5Msguy+M8hW6BA= Received: from DB6PR0501MB2759.eurprd05.prod.outlook.com (10.172.227.7) by DB6PR0501MB2534.eurprd05.prod.outlook.com (10.168.74.146) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2094.17; Tue, 23 Jul 2019 21:38:50 +0000 Received: from DB6PR0501MB2759.eurprd05.prod.outlook.com ([fe80::7148:ecd4:3a7f:f3f]) by DB6PR0501MB2759.eurprd05.prod.outlook.com ([fe80::7148:ecd4:3a7f:f3f%11]) with mapi id 15.20.2094.011; Tue, 23 Jul 2019 21:38:50 +0000 From: Saeed Mahameed To: "peter_hong@fintek.com.tw" , "wg@grandegger.com" , "mkl@pengutronix.de" , "hpeter@gmail.com" CC: "hpeter+linux_kernel@gmail.com" , "f.suligoi@asem.it" , "linux-can@vger.kernel.org" , "davem@davemloft.net" , "linux-kernel@vger.kernel.org" , "netdev@vger.kernel.org" Subject: Re: [PATCH V2 1/1] can: sja1000: f81601: add Fintek F81601 support Thread-Topic: [PATCH V2 1/1] can: sja1000: f81601: add Fintek F81601 support Thread-Index: AQHVQFXSPZ8Kh66+kkKJ1rNLgBa/e6bYvVkA Date: Tue, 23 Jul 2019 21:38:50 +0000 Message-ID: References: <1563776521-28317-1-git-send-email-hpeter+linux_kernel@gmail.com> In-Reply-To: <1563776521-28317-1-git-send-email-hpeter+linux_kernel@gmail.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Evolution 3.32.4 (3.32.4-1.fc30) authentication-results: spf=none (sender IP is ) smtp.mailfrom=saeedm@mellanox.com; x-originating-ip: [209.116.155.178] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: d682485e-09cd-4c4e-eed4-08d70fb626db x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0;PCL:0;RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600148)(711020)(4605104)(1401327)(4618075)(2017052603328)(7193020);SRVR:DB6PR0501MB2534; x-ms-traffictypediagnostic: DB6PR0501MB2534: x-ms-exchange-purlcount: 1 x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:3383; x-forefront-prvs: 0107098B6C x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(4636009)(136003)(376002)(396003)(366004)(346002)(39860400002)(54534003)(189003)(199004)(6436002)(118296001)(2501003)(966005)(6486002)(2906002)(486006)(6306002)(66066001)(6512007)(2201001)(25786009)(53936002)(6116002)(8936002)(68736007)(6506007)(478600001)(102836004)(76176011)(2616005)(64756008)(81166006)(81156014)(11346002)(446003)(186003)(66476007)(3846002)(99286004)(316002)(58126008)(14454004)(4326008)(26005)(305945005)(8676002)(7736002)(256004)(6246003)(76116006)(36756003)(14444005)(5660300002)(66446008)(66556008)(86362001)(53386004)(476003)(91956017)(66946007)(110136005)(71190400001)(54906003)(71200400001)(229853002)(7416002);DIR:OUT;SFP:1101;SCL:1;SRVR:DB6PR0501MB2534;H:DB6PR0501MB2759.eurprd05.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;MX:1;A:1; received-spf: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: an5quvQ3cNzxBL8PaDyW4TbvPAzJW3+bUm+2Fn+3Z4uRncx3H1pPli6iVPtUCK1kqKDoO21TnZ6XpS+FmowLtzRY4GheUH5QbG+tIim1XJKbPy7nVyTwi4aDPI3ZxtNVoCiKNBbU+rk5NqADU3+cQd/5PtxILkCUZhR1uW6H/9piL6fDhmag4pVlit35uVh3+FQSNvla9vv0xm1lWuWeU/WgFsBB7aniwYa+Axd4UGwClSmxGq0YVnDtBJ//IKku3eAsnvPXCbS2+0mlyUSEuYYRBvDj3CwWMTEcC5pFw3xRx16+pg5ndwGLOSjuVxeYv3tyvQ2XC+Nfwe7ltJZaKMvaZd37ICLRuPsQfDXkppVHV+upC4RjlYR68LSBq7+F0tiXB9f0Gt2W0ihh4NuM7DT0LP+lu7K/mcC3y9PzOkg= Content-Type: text/plain; charset="utf-8" Content-ID: <164D160C44722D40969F815CB6A3273F@eurprd05.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-Network-Message-Id: d682485e-09cd-4c4e-eed4-08d70fb626db X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Jul 2019 21:38:50.5747 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: saeedm@mellanox.com X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0501MB2534 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org T24gTW9uLCAyMDE5LTA3LTIyIGF0IDE0OjIyICswODAwLCBKaS1aZSBIb25nIChQZXRlciBIb25n KSB3cm90ZToNCj4gVGhpcyBwYXRjaCBhZGQgc3VwcG9ydCBmb3IgRmludGVrIFBDSUUgdG8gMiBD QU4gY29udHJvbGxlciBzdXBwb3J0DQo+IA0KPiBTaWduZWQtb2ZmLWJ5OiBKaS1aZSBIb25nIChQ ZXRlciBIb25nKSA8aHBldGVyK2xpbnV4X2tlcm5lbEBnbWFpbC5jb20NCj4gPg0KPiAtLS0NCj4g Q2hhbmdlbG9nOg0KPiB2MjoNCj4gCTE6IEZpeCBjb21tZW50IG9uIHRoZSBzcGlubG9jayB3aXRo IHdyaXRlIGFjY2Vzcy4NCj4gCTI6IFVzZSBBUlJBWV9TSVpFIGluc3RlYWQgb2YgRjgxNjAxX1BD SV9NQVhfQ0hBTi4NCj4gCTM6IENoZWNrIHRoZSBzdHJhcCBwaW4gb3V0c2lkZSB0aGUgbG9vcC4N Cj4gCTQ6IEZpeCB0aGUgY2xlYW51cCBpc3N1ZSBpbiBmODE2MDFfcGNpX2FkZF9jYXJkKCkuDQo+ IAk1OiBSZW1vdmUgdW51c2VkICJjaGFubmVscyIgaW4gc3RydWN0IGY4MTYwMV9wY2lfY2FyZC4N Cj4gDQo+ICBkcml2ZXJzL25ldC9jYW4vc2phMTAwMC9LY29uZmlnICB8ICAgOCArKw0KPiAgZHJp dmVycy9uZXQvY2FuL3NqYTEwMDAvTWFrZWZpbGUgfCAgIDEgKw0KPiAgZHJpdmVycy9uZXQvY2Fu L3NqYTEwMDAvZjgxNjAxLmMgfCAyMTUNCj4gKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrDQo+ICAzIGZpbGVzIGNoYW5nZWQsIDIyNCBpbnNlcnRpb25zKCspDQo+ICBjcmVh dGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQvY2FuL3NqYTEwMDAvZjgxNjAxLmMNCj4gDQo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL25ldC9jYW4vc2phMTAwMC9LY29uZmlnDQo+IGIvZHJpdmVycy9u ZXQvY2FuL3NqYTEwMDAvS2NvbmZpZw0KPiBpbmRleCBmNmRjODk5MjdlY2UuLjg1ODgzMjNjNTEz OCAxMDA2NDQNCj4gLS0tIGEvZHJpdmVycy9uZXQvY2FuL3NqYTEwMDAvS2NvbmZpZw0KPiArKysg Yi9kcml2ZXJzL25ldC9jYW4vc2phMTAwMC9LY29uZmlnDQo+IEBAIC0xMDEsNCArMTAxLDEyIEBA IGNvbmZpZyBDQU5fVFNDQU4xDQo+ICAJICBJUlEgbnVtYmVycyBhcmUgcmVhZCBmcm9tIGp1bXBl cnMgSlA0IGFuZCBKUDUsDQo+ICAJICBTSkExMDAwIElPIGJhc2UgYWRkcmVzc2VzIGFyZSBjaG9z ZW4gaGV1cmlzdGljYWxseSAoZmlyc3QNCj4gdGhhdCB3b3JrcykuDQo+ICANCj4gK2NvbmZpZyBD QU5fRjgxNjAxDQo+ICsJdHJpc3RhdGUgIkZpbnRlayBGODE2MDEgUENJRSB0byAyIENBTiBDb250 cm9sbGVyIg0KPiArCWRlcGVuZHMgb24gUENJDQo+ICsJaGVscA0KPiArCSAgVGhpcyBkcml2ZXIg YWRkcyBzdXBwb3J0IGZvciBGaW50ZWsgRjgxNjAxIFBDSUUgdG8gMiBDQU4NCj4gQ29udHJvbGxl ci4NCj4gKwkgIEl0IGhhZCBpbnRlcm5hbCAyNE1IeiBjbG9jayBzb3VyY2UsIGJ1dCBpdCBjYW4g YmUgY2hhbmdlZCBieQ0KPiArCSAgbWFudWZhY3R1cmVyLiBXZSBjYW4gdXNlIG1vZGluZm8gdG8g Z2V0IHVzYWdlIGZvciBwYXJhbWV0ZXJzLg0KPiArCSAgVmlzaXQgaHR0cDovL3d3dy5maW50ZWsu Y29tLnR3IHRvIGdldCBtb3JlIGluZm9ybWF0aW9uLg0KPiAgZW5kaWYNCj4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvbmV0L2Nhbi9zamExMDAwL01ha2VmaWxlDQo+IGIvZHJpdmVycy9uZXQvY2FuL3Nq YTEwMDAvTWFrZWZpbGUNCj4gaW5kZXggOTI1M2FhZjllNzM5Li42ZjYyNjg1NDNiZDkgMTAwNjQ0 DQo+IC0tLSBhL2RyaXZlcnMvbmV0L2Nhbi9zamExMDAwL01ha2VmaWxlDQo+ICsrKyBiL2RyaXZl cnMvbmV0L2Nhbi9zamExMDAwL01ha2VmaWxlDQo+IEBAIC0xMywzICsxMyw0IEBAIG9iai0kKENP TkZJR19DQU5fUEVBS19QQ01DSUEpICs9IHBlYWtfcGNtY2lhLm8NCj4gIG9iai0kKENPTkZJR19D QU5fUEVBS19QQ0kpICs9IHBlYWtfcGNpLm8NCj4gIG9iai0kKENPTkZJR19DQU5fUExYX1BDSSkg Kz0gcGx4X3BjaS5vDQo+ICBvYmotJChDT05GSUdfQ0FOX1RTQ0FOMSkgKz0gdHNjYW4xLm8NCj4g K29iai0kKENPTkZJR19DQU5fRjgxNjAxKSArPSBmODE2MDEubw0KPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9uZXQvY2FuL3NqYTEwMDAvZjgxNjAxLmMNCj4gYi9kcml2ZXJzL25ldC9jYW4vc2phMTAw MC9mODE2MDEuYw0KPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiBpbmRleCAwMDAwMDAwMDAwMDAu LjNjMzc4ZGU4NzY0ZA0KPiAtLS0gL2Rldi9udWxsDQo+ICsrKyBiL2RyaXZlcnMvbmV0L2Nhbi9z amExMDAwL2Y4MTYwMS5jDQo+IEBAIC0wLDAgKzEsMjE1IEBADQo+ICsvLyBTUERYLUxpY2Vuc2Ut SWRlbnRpZmllcjogR1BMLTIuMA0KPiArLyogRmludGVrIEY4MTYwMSBQQ0lFIHRvIDIgQ0FOIGNv bnRyb2xsZXIgZHJpdmVyDQo+ICsgKg0KPiArICogQ29weXJpZ2h0IChDKSAyMDE5IFBldGVyIEhv bmcgPHBldGVyX2hvbmdAZmludGVrLmNvbS50dz4NCj4gKyAqIENvcHlyaWdodCAoQykgMjAxOSBM aW51eCBGb3VuZGF0aW9uDQo+ICsgKi8NCj4gKw0KPiArI2luY2x1ZGUgPGxpbnV4L2tlcm5lbC5o Pg0KPiArI2luY2x1ZGUgPGxpbnV4L21vZHVsZS5oPg0KPiArI2luY2x1ZGUgPGxpbnV4L2ludGVy cnVwdC5oPg0KPiArI2luY2x1ZGUgPGxpbnV4L25ldGRldmljZS5oPg0KPiArI2luY2x1ZGUgPGxp bnV4L2RlbGF5Lmg+DQo+ICsjaW5jbHVkZSA8bGludXgvc2xhYi5oPg0KPiArI2luY2x1ZGUgPGxp bnV4L3BjaS5oPg0KPiArI2luY2x1ZGUgPGxpbnV4L2Nhbi9kZXYuaD4NCj4gKyNpbmNsdWRlIDxs aW51eC9pby5oPg0KPiArI2luY2x1ZGUgPGxpbnV4L3ZlcnNpb24uaD4NCj4gKw0KPiArI2luY2x1 ZGUgInNqYTEwMDAuaCINCj4gKw0KPiArI2RlZmluZSBGODE2MDFfUENJX01BWF9DSEFOCQkyDQo+ ICsNCj4gKyNkZWZpbmUgRjgxNjAxX0RFQ09ERV9SRUcJCTB4MjA5DQo+ICsjZGVmaW5lIEY4MTYw MV9JT19NT0RFCQkJQklUKDcpDQo+ICsjZGVmaW5lIEY4MTYwMV9NRU1fTU9ERQkJCUJJVCg2KQ0K PiArI2RlZmluZSBGODE2MDFfQ0ZHX01PREUJCQlCSVQoNSkNCj4gKyNkZWZpbmUgRjgxNjAxX0NB TjJfSU5URVJOQUxfQ0xLCUJJVCgzKQ0KPiArI2RlZmluZSBGODE2MDFfQ0FOMV9JTlRFUk5BTF9D TEsJQklUKDIpDQo+ICsjZGVmaW5lIEY4MTYwMV9DQU4yX0VOCQkJQklUKDEpDQo+ICsjZGVmaW5l IEY4MTYwMV9DQU4xX0VOCQkJQklUKDApDQo+ICsNCj4gKyNkZWZpbmUgRjgxNjAxX1RSQVBfUkVH CQkJMHgyMGENCj4gKyNkZWZpbmUgRjgxNjAxX0NBTjJfSEFTX0VOCQlCSVQoNCkNCj4gKw0KPiAr c3RydWN0IGY4MTYwMV9wY2lfY2FyZCB7DQo+ICsJdm9pZCBfX2lvbWVtICphZGRyOw0KPiArCXNw aW5sb2NrX3QgbG9jazsJLyogdXNlIHRoaXMgc3BpbiBsb2NrIG9ubHkgZm9yIHdyaXRlIGFjY2Vz cw0KPiAqLw0KPiArCXN0cnVjdCBwY2lfZGV2ICpkZXY7DQo+ICsJc3RydWN0IG5ldF9kZXZpY2Ug Km5ldF9kZXZbRjgxNjAxX1BDSV9NQVhfQ0hBTl07DQo+ICt9Ow0KPiArDQo+ICtzdGF0aWMgY29u c3Qgc3RydWN0IHBjaV9kZXZpY2VfaWQgZjgxNjAxX3BjaV90YmxbXSA9IHsNCj4gKwl7IFBDSV9E RVZJQ0UoMHgxYzI5LCAweDE3MDMpIH0sDQo+ICsJe30sDQo+ICt9Ow0KPiArDQo+ICtNT0RVTEVf REVWSUNFX1RBQkxFKHBjaSwgZjgxNjAxX3BjaV90YmwpOw0KPiArDQo+ICtzdGF0aWMgYm9vbCBp bnRlcm5hbF9jbGsgPSAxOw0KPiArbW9kdWxlX3BhcmFtKGludGVybmFsX2NsaywgYm9vbCwgMDQ0 NCk7DQo+ICtNT0RVTEVfUEFSTV9ERVNDKGludGVybmFsX2NsaywgIlVzZSBpbnRlcm5hbCBjbG9j aywgZGVmYXVsdCAxDQo+ICgyNE1IeikiKTsNCj4gKw0KPiArc3RhdGljIHVuc2lnbmVkIGludCBl eHRlcm5hbF9jbGs7DQo+ICttb2R1bGVfcGFyYW0oZXh0ZXJuYWxfY2xrLCB1aW50LCAwNDQ0KTsN Cj4gK01PRFVMRV9QQVJNX0RFU0MoZXh0ZXJuYWxfY2xrLCAiRXh0ZXJuYWwgQ2xvY2ssIG11c3Qg c3BlYyB3aGVuDQo+IGludGVybmFsX2NsayA9IDAiKTsNCj4gKw0KPiArc3RhdGljIHU4IGY4MTYw MV9wY2lfcmVhZF9yZWcoY29uc3Qgc3RydWN0IHNqYTEwMDBfcHJpdiAqcHJpdiwgaW50DQo+IHBv cnQpDQo+ICt7DQo+ICsJcmV0dXJuIHJlYWRiKHByaXYtPnJlZ19iYXNlICsgcG9ydCk7DQo+ICt9 DQo+ICsNCj4gK3N0YXRpYyB2b2lkIGY4MTYwMV9wY2lfd3JpdGVfcmVnKGNvbnN0IHN0cnVjdCBz amExMDAwX3ByaXYgKnByaXYsDQo+IGludCBwb3J0LA0KPiArCQkJCSB1OCB2YWwpDQo+ICt7DQo+ ICsJc3RydWN0IGY4MTYwMV9wY2lfY2FyZCAqY2FyZCA9IHByaXYtPnByaXY7DQo+ICsJdW5zaWdu ZWQgbG9uZyBmbGFnczsNCj4gKw0KPiArCXNwaW5fbG9ja19pcnFzYXZlKCZjYXJkLT5sb2NrLCBm bGFncyk7DQo+ICsJd3JpdGViKHZhbCwgcHJpdi0+cmVnX2Jhc2UgKyBwb3J0KTsNCj4gKwlyZWFk Yihwcml2LT5yZWdfYmFzZSk7DQo+ICsJc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmY2FyZC0+bG9j aywgZmxhZ3MpOw0KPiArfQ0KPiArDQo+ICtzdGF0aWMgdm9pZCBmODE2MDFfcGNpX2RlbF9jYXJk KHN0cnVjdCBwY2lfZGV2ICpwZGV2KQ0KPiArew0KPiArCXN0cnVjdCBmODE2MDFfcGNpX2NhcmQg KmNhcmQgPSBwY2lfZ2V0X2RydmRhdGEocGRldik7DQo+ICsJc3RydWN0IG5ldF9kZXZpY2UgKmRl djsNCj4gKwlpbnQgaSA9IDA7DQo+ICsNCj4gKwlmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRShj YXJkLT5uZXRfZGV2KTsgaSsrKSB7DQo+ICsJCWRldiA9IGNhcmQtPm5ldF9kZXZbaV07DQo+ICsJ CWlmICghZGV2KQ0KPiArCQkJY29udGludWU7DQo+ICsNCj4gKwkJZGV2X2luZm8oJnBkZXYtPmRl diwgIiVzOiBSZW1vdmluZyAlc1xuIiwgX19mdW5jX18sDQo+IGRldi0+bmFtZSk7DQo+ICsNCj4g KwkJdW5yZWdpc3Rlcl9zamExMDAwZGV2KGRldik7DQo+ICsJCWZyZWVfc2phMTAwMGRldihkZXYp Ow0KPiArCX0NCj4gKw0KPiArCXBjaW1faW91bm1hcChwZGV2LCBjYXJkLT5hZGRyKTsNCj4gK30N Cj4gKw0KPiArLyogUHJvYmUgRjgxNjAxIGJhc2VkIGRldmljZSBmb3IgdGhlIFNKQTEwMDAgY2hp cHMgYW5kIHJlZ2lzdGVyIGVhY2gNCj4gKyAqIGF2YWlsYWJsZSBDQU4gY2hhbm5lbCB0byBTSkEx MDAwIFNvY2tldC1DQU4gc3Vic3lzdGVtLg0KPiArICovDQo+ICtzdGF0aWMgaW50IGY4MTYwMV9w Y2lfYWRkX2NhcmQoc3RydWN0IHBjaV9kZXYgKnBkZXYsDQo+ICsJCQkgICAgICAgY29uc3Qgc3Ry dWN0IHBjaV9kZXZpY2VfaWQgKmVudCkNCj4gK3sNCj4gKwlzdHJ1Y3Qgc2phMTAwMF9wcml2ICpw cml2Ow0KPiArCXN0cnVjdCBuZXRfZGV2aWNlICpkZXY7DQo+ICsJc3RydWN0IGY4MTYwMV9wY2lf Y2FyZCAqY2FyZDsNCg0Kbml0LCByZXZlcnNlIHhtYXMgdHJlZS4NCg0KPiArCWludCBlcnIsIGks IGNvdW50Ow0KPiArCXU4IHRtcDsNCj4gKw0KPiArCWlmIChwY2ltX2VuYWJsZV9kZXZpY2UocGRl dikgPCAwKSB7DQo+ICsJCWRldl9lcnIoJnBkZXYtPmRldiwgIkZhaWxlZCB0byBlbmFibGUgUENJ IGRldmljZVxuIik7DQo+ICsJCXJldHVybiAtRU5PREVWOw0KPiArCX0NCj4gKw0KPiArCWRldl9p bmZvKCZwZGV2LT5kZXYsICJEZXRlY3RlZCBjYXJkIGF0IHNsb3QgIyVpXG4iLA0KPiArCQkgUENJ X1NMT1QocGRldi0+ZGV2Zm4pKTsNCj4gKw0KPiArCWNhcmQgPSBkZXZtX2t6YWxsb2MoJnBkZXYt PmRldiwgc2l6ZW9mKCpjYXJkKSwgR0ZQX0tFUk5FTCk7DQo+ICsJaWYgKCFjYXJkKQ0KPiArCQly ZXR1cm4gLUVOT01FTTsNCj4gKw0KPiArCWNhcmQtPmRldiA9IHBkZXY7DQo+ICsJc3Bpbl9sb2Nr X2luaXQoJmNhcmQtPmxvY2spOw0KPiArDQo+ICsJcGNpX3NldF9kcnZkYXRhKHBkZXYsIGNhcmQp Ow0KPiArDQo+ICsJdG1wID0gRjgxNjAxX0lPX01PREUgfCBGODE2MDFfTUVNX01PREUgfCBGODE2 MDFfQ0ZHX01PREUgfA0KPiArCQlGODE2MDFfQ0FOMl9FTiB8IEY4MTYwMV9DQU4xX0VOOw0KPiAr DQo+ICsJaWYgKGludGVybmFsX2Nsaykgew0KPiArCQl0bXAgfD0gRjgxNjAxX0NBTjJfSU5URVJO QUxfQ0xLIHwNCj4gRjgxNjAxX0NBTjFfSU5URVJOQUxfQ0xLOw0KPiArDQo+ICsJCWRldl9pbmZv KCZwZGV2LT5kZXYsDQo+ICsJCQkgIkY4MTYwMSBydW5uaW5nIHdpdGggaW50ZXJuYWwgY2xvY2s6 DQo+IDI0TWh6XG4iKTsNCj4gKwl9IGVsc2Ugew0KPiArCQlkZXZfaW5mbygmcGRldi0+ZGV2LA0K PiArCQkJICJGODE2MDEgcnVubmluZyB3aXRoIGV4dGVybmFsIGNsb2NrOiAlZE1oelxuIiwNCj4g KwkJCSBleHRlcm5hbF9jbGsgLyAxMDAwMDAwKTsNCj4gKwl9DQo+ICsNCj4gKwlwY2lfd3JpdGVf Y29uZmlnX2J5dGUocGRldiwgRjgxNjAxX0RFQ09ERV9SRUcsIHRtcCk7DQo+ICsNCj4gKwljYXJk LT5hZGRyID0gcGNpbV9pb21hcChwZGV2LCAwLCBwY2lfcmVzb3VyY2VfbGVuKHBkZXYsIDApKTsN Cj4gKw0KPiArCWlmICghY2FyZC0+YWRkcikgew0KPiArCQllcnIgPSAtRU5PTUVNOw0KPiArCQlk ZXZfZXJyKCZwZGV2LT5kZXYsICIlczogRmFpbGVkIHRvIHJlbWFwIEJBUlxuIiwNCj4gX19mdW5j X18pOw0KPiArCQlnb3RvIGZhaWx1cmVfY2xlYW51cDsNCj4gKwl9DQo+ICsNCj4gKwkvKiByZWFk IENBTjJfSFdfRU4gc3RyYXAgcGluIHRvIGRldGVjdCBob3cgbWFueSBDQU5CVVMgZG8gd2UNCj4g aGF2ZSAqLw0KPiArCWNvdW50ID0gQVJSQVlfU0laRShjYXJkLT5uZXRfZGV2KTsNCj4gKwlwY2lf cmVhZF9jb25maWdfYnl0ZShwZGV2LCBGODE2MDFfVFJBUF9SRUcsICZ0bXApOw0KPiArCWlmICgh KHRtcCAmIEY4MTYwMV9DQU4yX0hBU19FTikpDQo+ICsJCWNvdW50ID0gMTsNCj4gKw0KPiArCS8q IERldGVjdCBhdmFpbGFibGUgY2hhbm5lbHMgKi8NCj4gKwlmb3IgKGkgPSAwOyBpIDwgY291bnQ7 IGkrKykgew0KPiArCQlkZXYgPSBhbGxvY19zamExMDAwZGV2KDApOw0KPiArCQlpZiAoIWRldikg ew0KPiArCQkJZXJyID0gLUVOT01FTTsNCj4gKwkJCWdvdG8gZmFpbHVyZV9jbGVhbnVwOw0KPiAr CQl9DQo+ICsNCg0KZG9uJ3QgeW91IG5lZWQgdG8gcm9sbGJhY2sgYW5kIGNsZWFudXAvdW5yZWdp c3RlciBwcmV2aW91c2x5IGFsbG9jYXRlZA0KZGV2cyA/DQoNCj4gKwkJcHJpdiA9IG5ldGRldl9w cml2KGRldik7DQo+ICsJCXByaXYtPnByaXYgPSBjYXJkOw0KPiArCQlwcml2LT5pcnFfZmxhZ3Mg PSBJUlFGX1NIQVJFRDsNCj4gKwkJcHJpdi0+cmVnX2Jhc2UgPSBjYXJkLT5hZGRyICsgMHg4MCAq IGk7DQo+ICsJCXByaXYtPnJlYWRfcmVnID0gZjgxNjAxX3BjaV9yZWFkX3JlZzsNCj4gKwkJcHJp di0+d3JpdGVfcmVnID0gZjgxNjAxX3BjaV93cml0ZV9yZWc7DQo+ICsNCj4gKwkJaWYgKGludGVy bmFsX2NsaykNCj4gKwkJCXByaXYtPmNhbi5jbG9jay5mcmVxID0gMjQwMDAwMDAgLyAyOw0KPiAr CQllbHNlDQo+ICsJCQlwcml2LT5jYW4uY2xvY2suZnJlcSA9IGV4dGVybmFsX2NsayAvIDI7DQo+ ICsNCj4gKwkJcHJpdi0+b2NyID0gT0NSX1RYMF9QVVNIUFVMTCB8IE9DUl9UWDFfUFVTSFBVTEw7 DQo+ICsJCXByaXYtPmNkciA9IENEUl9DQlA7DQo+ICsNCj4gKwkJU0VUX05FVERFVl9ERVYoZGV2 LCAmcGRldi0+ZGV2KTsNCj4gKwkJZGV2LT5kZXZfaWQgPSBpOw0KPiArCQlkZXYtPmlycSA9IHBk ZXYtPmlycTsNCj4gKw0KPiArCQkvKiBSZWdpc3RlciBTSkExMDAwIGRldmljZSAqLw0KPiArCQll cnIgPSByZWdpc3Rlcl9zamExMDAwZGV2KGRldik7DQo+ICsJCWlmIChlcnIpIHsNCj4gKwkJCWRl dl9lcnIoJnBkZXYtPmRldiwNCj4gKwkJCQkiJXM6IFJlZ2lzdGVyaW5nIGRldmljZSBmYWlsZWQ6 ICV4XG4iLA0KPiBfX2Z1bmNfXywNCj4gKwkJCQllcnIpOw0KPiArCQkJZnJlZV9zamExMDAwZGV2 KGRldik7DQo+ICsJCQlnb3RvIGZhaWx1cmVfY2xlYW51cDsNCj4gKwkJfQ0KPiArDQo+ICsJCWNh cmQtPm5ldF9kZXZbaV0gPSBkZXY7DQo+ICsJCWRldl9pbmZvKCZwZGV2LT5kZXYsICJDaGFubmVs ICMlZCwgJXMgYXQgMHglcCwgaXJxDQo+ICVkXG4iLCBpLA0KPiArCQkJIGRldi0+bmFtZSwgcHJp di0+cmVnX2Jhc2UsIGRldi0+aXJxKTsNCj4gKwl9DQo+ICsNCj4gKwlyZXR1cm4gMDsNCj4gKw0K PiArZmFpbHVyZV9jbGVhbnVwOg0KPiArCWRldl9lcnIoJnBkZXYtPmRldiwgIiVzOiBmYWlsZWQ6 ICVkLiBDbGVhbmluZyBVcC5cbiIsIF9fZnVuY19fLA0KPiBlcnIpOw0KPiArCWY4MTYwMV9wY2lf ZGVsX2NhcmQocGRldik7DQo+ICsNCj4gKwlyZXR1cm4gZXJyOw0KPiArfQ0KPiArDQo+ICtzdGF0 aWMgc3RydWN0IHBjaV9kcml2ZXIgZjgxNjAxX3BjaV9kcml2ZXIgPSB7DQo+ICsJLm5hbWUgPQkJ ImY4MTYwMSIsDQo+ICsJLmlkX3RhYmxlID0JZjgxNjAxX3BjaV90YmwsDQo+ICsJLnByb2JlID0J ZjgxNjAxX3BjaV9hZGRfY2FyZCwNCj4gKwkucmVtb3ZlID0JZjgxNjAxX3BjaV9kZWxfY2FyZCwN Cj4gK307DQo+ICsNCj4gK01PRFVMRV9ERVNDUklQVElPTigiRmludGVrIEY4MTYwMSBQQ0lFIHRv IDIgQ0FOQlVTIGFkYXB0b3IgZHJpdmVyIik7DQo+ICtNT0RVTEVfQVVUSE9SKCJQZXRlciBIb25n IDxwZXRlcl9ob25nQGZpbnRlay5jb20udHc+Iik7DQo+ICtNT0RVTEVfTElDRU5TRSgiR1BMIHYy Iik7DQo+ICsNCj4gK21vZHVsZV9wY2lfZHJpdmVyKGY4MTYwMV9wY2lfZHJpdmVyKTsNCg==