Received: by 2002:ac0:a594:0:0:0:0:0 with SMTP id m20-v6csp2536638imm; Wed, 16 May 2018 14:41:35 -0700 (PDT) X-Google-Smtp-Source: AB8JxZoYUbJZfW49twRq+IuXHl71QyOKJ3kGNQu0ksmlFnZwK7ZrItgm7ciJwB0FfClX4ZGcw1gc X-Received: by 2002:a63:b907:: with SMTP id z7-v6mr2075861pge.9.1526506895725; Wed, 16 May 2018 14:41:35 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1526506895; cv=none; d=google.com; s=arc-20160816; b=C5oarESnZn4bpBdx/zCUIaOMssbRlqH0VDAXNpaDl4vp1/6w2ryZusxis7lWFV7BHZ JMnELQ30MgGQLuDegQz53CEYuzAlR9UWzIWbVwlcErah00H4YUeUdrMjlBRG4w2cE1Rp 41z8yjMfWF94ypSaYtwf1jefwdgOEkC7HPsCfRox8Pyld8Wjvh7D2avicdIxPs7Hhotp suNklQLUhWsE2wEeBwIxI2djBbSbYHU7Nuo8IE+Edp1zJylyYdUzACqiQ4TqeDYXsQO9 OCB+LOkIh/jYiU9vA02yJHvXFkMOn+wWT7XjkVOKsu2VsbQlb8aGYuCN2ROvp9TWPEAC AhwA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:content-transfer-encoding :content-id:spamdiagnosticmetadata:spamdiagnosticoutput :content-language:accept-language:in-reply-to:references:message-id :date:thread-index:thread-topic:subject:cc:to:from:dkim-signature :arc-authentication-results; bh=vlk98uhD698du9JfI8zdjGy6HWJi1iC8XP2ECK0tCn8=; b=XT7282ivAB/+nfHUE67dRlUTyH7FOpi50KLWLcp4QAiBMekTMsdoVnKXGsGfqjHRVe WXSq03jwBoMqrhjd2N6JFDnFlPe9ETfru5MNmIW0NDGXKEZaHQytPCv3C5Hg4dDdUaWm f3GPot6Ok5DXFjmLUPPAIc1njOHkrpSejaiJq7MgVRWLYiJ7+lWyYz5ijJ/kGXvqXghJ xlrIZj6D6l7bj8QhIyEH97XyQj5C0gHi+HgFhYMjurX0dBcdnDEVwe/ys9jORvSE2iFI DnX21ycEaMq1ntRKiAwawpWHEz4zvdcWZELeeCLrmwq+wQp1dhgFcAddJmaOJaCYUg1p XcdA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amperecomputing.com header.s=selector1 header.b=ENuUP0hl; 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=amperecomputing.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id a185-v6si2728950pgc.586.2018.05.16.14.41.20; Wed, 16 May 2018 14:41:35 -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=@amperecomputing.com header.s=selector1 header.b=ENuUP0hl; 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=amperecomputing.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752186AbeEPVky (ORCPT + 99 others); Wed, 16 May 2018 17:40:54 -0400 Received: from mail-cys01nam02on0121.outbound.protection.outlook.com ([104.47.37.121]:43568 "EHLO NAM02-CY1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1750953AbeEPVku (ORCPT ); Wed, 16 May 2018 17:40:50 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amperecomputing.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=vlk98uhD698du9JfI8zdjGy6HWJi1iC8XP2ECK0tCn8=; b=ENuUP0hlUpwBj7w4aPoNDPr5U34fwuYTetCwj1VfACbMkNu9E+H50lx4lSr3z32YbFGFFfBc11EgsuTux5lYoO7xar9BYnZ0di0dCLoNlq7+d2wfIGodISKkGNW5d7THIxevvt+9xfaWW2Ei70ELn48Lm9bQ8k+3TJMbJjLNGBg= Received: from BL0PR0102MB3539.prod.exchangelabs.com (52.132.18.20) by BL0PR0102MB3377.prod.exchangelabs.com (52.132.17.26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.776.11; Wed, 16 May 2018 21:40:43 +0000 Received: from BL0PR0102MB3539.prod.exchangelabs.com ([fe80::d819:c397:8727:d599]) by BL0PR0102MB3539.prod.exchangelabs.com ([fe80::d819:c397:8727:d599%13]) with mapi id 15.20.0755.012; Wed, 16 May 2018 21:40:42 +0000 From: Hoan Tran To: Phil Edworthy , Andy Shevchenko , Hoan Tran , Linus Walleij , Mark Rutland CC: Rob Herring , Lee Jones , "Michel Pollet" , "linux-gpio@vger.kernel.org" , "devicetree@vger.kernel.org" , "linux-renesas-soc@vger.kernel.org" , "linux-kernel@vger.kernel.org" , Hoan Tran Subject: Re: [PATCH v6] gpio: dwapb: Add support for 1 interrupt per port A GPIO Thread-Topic: [PATCH v6] gpio: dwapb: Add support for 1 interrupt per port A GPIO Thread-Index: AQHT6QKEeroxHiUlzUOz48IDYcRHwqQydbSA Date: Wed, 16 May 2018 21:40:42 +0000 Message-ID: References: <1526027497-32556-1-git-send-email-phil.edworthy@renesas.com> In-Reply-To: <1526027497-32556-1-git-send-email-phil.edworthy@renesas.com> 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=hoan.tran@amperecomputing.com; x-originating-ip: [4.28.13.142] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1;BL0PR0102MB3377;7:aIK9TOxyGiAX8OD2gyNJz1r/Rig5DqgnRb7Tryo0h2S+gI4l2QsmvHbAA4tFngySyYasaByyYbokDu23SMvhGYB/T3Wek4Ey3vB4CCWr2QcNomi4ghZJIOL/iW1sDsWG0i/Q4RQPfcK8t07YDBh0ThCV4jQhCP/WOrmd8mODIw4e4Jrt6Qa0Lv1TzaPNZKRUpo3cmvFUyGWapWNhKEBzuaNEnBWu0Ol1+KqVSpSzdAT61TSBvmgRL0uji0lC9syy x-ms-exchange-antispam-srfa-diagnostics: SOS;SOR; x-forefront-antispam-report: SFV:SKI;SCL:-1;SFV:NSPM;SFS:(10019020)(39840400004)(396003)(346002)(376002)(366004)(39380400002)(199004)(189003)(8936002)(5250100002)(110136005)(7736002)(2906002)(3660700001)(83716003)(8676002)(81166006)(66066001)(44832011)(3280700002)(33656002)(53936002)(305945005)(54906003)(81156014)(3846002)(6436002)(316002)(6486002)(229853002)(6116002)(68736007)(86362001)(478600001)(446003)(36756003)(106356001)(14454004)(6512007)(5660300001)(2616005)(476003)(25786009)(59450400001)(7416002)(82746002)(102836004)(4326008)(97736004)(39060400002)(76176011)(105586002)(11346002)(2900100001)(186003)(6506007)(486006)(6246003)(26005)(99286004)(107886003);DIR:OUT;SFP:1102;SCL:1;SRVR:BL0PR0102MB3377;H:BL0PR0102MB3539.prod.exchangelabs.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;A:1;MX:3; x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:(7020095)(4652020)(5600026)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020);SRVR:BL0PR0102MB3377; x-ms-traffictypediagnostic: BL0PR0102MB3377: x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:; x-ms-exchange-senderadcheck: 1 x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:(6040522)(2401047)(5005006)(8121501046)(3231254)(944501410)(52105095)(10201501046)(93006095)(93001095)(3002001)(149027)(150027)(6041310)(20161123560045)(20161123558120)(20161123564045)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011);SRVR:BL0PR0102MB3377;BCL:0;PCL:0;RULEID:;SRVR:BL0PR0102MB3377; x-forefront-prvs: 0674DC6DD3 received-spf: None (protection.outlook.com: amperecomputing.com does not designate permitted sender hosts) x-microsoft-antispam-message-info: njQACjvgk0B8Ih9dVjsh/vI31vVuqYCrwwo6yaYd3RM8Pvm7mmoFcJRj/9NXWJirmnlOzoVMsXCRpObyTo133ojosIuL5c58IQFhwHu5wRJU1NrKKNf7Dh25TdQGCPtpY75Usaty+wEcPsbcHjhaXbIsM/BgaDb1fcUza8a9hMvu31ztALWVnbvlJS/wnAY7 spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Office365-Filtering-Correlation-Id: aec884b6-30cc-4eab-249e-08d5bb75acdc X-OriginatorOrg: amperecomputing.com X-MS-Exchange-CrossTenant-Network-Message-Id: aec884b6-30cc-4eab-249e-08d5bb75acdc X-MS-Exchange-CrossTenant-originalarrivaltime: 16 May 2018 21:40:42.4719 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3bc2b170-fd94-476d-b0ce-4229bdc904a7 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL0PR0102MB3377 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org SGkgUGhpbCwNCg0K77u/T24gNS8xMS8xOCwgMTozMSBBTSwgIlBoaWwgRWR3b3J0aHkiIDxwaGls LmVkd29ydGh5QHJlbmVzYXMuY29tPiB3cm90ZToNCg0KICAgIFRoZSBEZXNpZ25XYXJlIEdQSU8g SVAgY2FuIGJlIGNvbmZpZ3VyZWQgZm9yIGVpdGhlciAxIGludGVycnVwdCBvciAxDQogICAgcGVy IEdQSU8gaW4gcG9ydCBBLCBidXQgdGhlIGRyaXZlciBjdXJyZW50bHkgb25seSBzdXBwb3J0cyAx IGludGVycnVwdC4NCiAgICBTZWUgdGhlIERlc2lnbldhcmUgRFdfYXBiX2dwaW8gRGF0YWJvb2sg ZGVzY3JpcHRpb24gb2YgdGhlDQogICAgJ0dQSU9fSU5UUl9JTycgcGFyYW1ldGVyLg0KICAgIA0K ICAgIFRoaXMgY2hhbmdlIGFsbG93cyB0aGUgZHJpdmVyIHRvIHdvcmsgd2l0aCB1cCB0byAzMiBp bnRlcnJ1cHRzLCBpdCB3aWxsDQogICAgZ2V0IGFzIG1hbnkgaW50ZXJydXB0cyBhcyBzcGVjaWZp ZWQgaW4gdGhlIERUICdpbnRlcnJ1cHRzJyBwcm9wZXJ0eS4NCiAgICBJdCBkb2Vzbid0IGRvIGFu eXRoaW5nIGNsZXZlciB3aXRoIHRoZSBkaWZmZXJlbnQgaW50ZXJydXB0cywgaXQganVzdCBjYWxs cw0KICAgIHRoZSBzYW1lIGhhbmRsZXIgdXNlZCBmb3Igc2luZ2xlIGludGVycnVwdCBoYXJkd2Fy ZS4NCiAgICANCiAgICBTaWduZWQtb2ZmLWJ5OiBQaGlsIEVkd29ydGh5IDxwaGlsLmVkd29ydGh5 QHJlbmVzYXMuY29tPg0KICAgIFJldmlld2VkLWJ5OiBSb2IgSGVycmluZyA8cm9iaEBrZXJuZWwu b3JnPg0KICAgIEFja2VkLWJ5OiBMZWUgSm9uZXMgPGxlZS5qb25lc0BsaW5hcm8ub3JnPg0KICAg IC0tLQ0KICAgIE9uZSBwb2ludCB0byBtZW50aW9uIGlzIHRoYXQgSSBoYXZlIG1hZGUgaXQgcG9z c2libGUgZm9yIHVzZXJzIHRvIGhhdmUNCiAgICB1bmNvbm5lY3RlZCBpbnRlcnJ1cHRzIGJ5IHNw ZWNpZnlpbmcgaG9sZXMgaW4gdGhlIGxpc3Qgb2YgaW50ZXJydXB0cy4gVGhpcyBpcw0KICAgIGRv bmUgYnkgc3VwcG9ydGluZyB0aGUgaW50ZXJydXB0cy1leHRlbmRlZCBEVCBwcm9wLg0KICAgIEhv d2V2ZXIsIEkgaGF2ZSBubyB1c2UgZm9yIHRoaXMgYW5kIGhhZCB0byBoYWNrIHNvbWUgdGVzdCBj YXNlIGZvciB0aGlzLg0KICAgIFBlcmhhcHMgdGhlIGRyaXZlciBzaG91bGQgc3VwcG9ydCAxIGlu dGVycnVwdCBvciBhbGwgR1BJT2EgYXMgaW50ZXJydXB0cz8NCiAgICANCiAgICB2NjoNCiAgICAg LSBUcmVhdCBEVCBhbmQgQUNQSSB0aGUgc2FtZSBhcyBtdWNoIGFzIHBvc3NpYmxlLiBOb3RlIHRo YXQgd2UgY2FuJ3QgdXNlDQogICAgICAgcGxhdGZvcm1fZ2V0X2lycSgpIHRvIGdldCB0aGUgRFQg aW50ZXJydXB0cyBhcyB0aGV5IGFyZSBpbiB0aGUgcG9ydA0KICAgICAgIHN1Yi1ub2RlIGFuZCBo ZW5jZSBkbyBub3QgaGF2ZSBhbiBhc3NvY2lhdGVkIHBsYXRmb3JtIGRldmljZS4NCiAgICB2NToN CiAgICAgLSBSb2xsZWQgQUNQSSBjb21wYW5pb24gY29kZSBwcm92aWRlZCBieSBIb2FuIFRyYW4g aW50byB0aGlzIHBhdGNoLg0KICAgIHY0Og0KICAgICAtIFVzZSBvZl9pcnFfZ2V0KCkgaW5zdGVh ZCBvZiBvZl9pcnFfcGFyc2Vfb25lKCkraXJxX2NyZWF0ZV9vZl9tYXBwaW5nKCkNCiAgICB2MzoN CiAgICAgLSBSb2xsZWQgbWZkOiBpbnRlbF9xdWFya19pMmNfZ3BpbyBmaXggaW50byB0aGlzIHBh dGNoIHRvIGF2b2lkIGJpc2VjdCBwcm9ibGVtcw0KICAgIHYyOg0KICAgICAtIFJlcGxhY2VkIGlu dGVycnVwdC1tYXNrIERUIHByb3Agd2l0aCBzdXBwb3J0IGZvciB0aGUgaW50ZXJydXB0cy1leHRl bmRlZA0KICAgICAgIHByb3AuIFRoaXMgbWVhbnMgcmVwbGFjaW5nIHRoZSBjYWxsIHRvIGlycV9v Zl9wYXJzZV9hbmRfbWFwKCkgd2l0aCBjYWxscw0KICAgICAgIHRvIG9mX2lycV9wYXJzZV9vbmUo KSBhbmQgaXJxX2NyZWF0ZV9vZl9tYXBwaW5nKCkuDQogICAgLS0tDQogICAgIC4uLi9kZXZpY2V0 cmVlL2JpbmRpbmdzL2dwaW8vc25wcy1kd2FwYi1ncGlvLnR4dCAgIHwgIDkgKysrLQ0KICAgICBk cml2ZXJzL2dwaW8vZ3Bpby1kd2FwYi5jICAgICAgICAgICAgICAgICAgICAgICAgICB8IDQ5ICsr KysrKysrKysrKysrKy0tLS0tLS0NCiAgICAgZHJpdmVycy9tZmQvaW50ZWxfcXVhcmtfaTJjX2dw aW8uYyAgICAgICAgICAgICAgICAgfCAgMyArLQ0KICAgICBpbmNsdWRlL2xpbnV4L3BsYXRmb3Jt X2RhdGEvZ3Bpby1kd2FwYi5oICAgICAgICAgICB8ICAzICstDQogICAgIDQgZmlsZXMgY2hhbmdl ZCwgNDUgaW5zZXJ0aW9ucygrKSwgMTkgZGVsZXRpb25zKC0pDQogICAgDQogICAgZGlmZiAtLWdp dCBhL0RvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9ncGlvL3NucHMtZHdhcGItZ3Bp by50eHQgYi9Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvZ3Bpby9zbnBzLWR3YXBi LWdwaW8udHh0DQogICAgaW5kZXggNGE3NWRhNy4uM2MxMTE4YiAxMDA2NDQNCiAgICAtLS0gYS9E b2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvZ3Bpby9zbnBzLWR3YXBiLWdwaW8udHh0 DQogICAgKysrIGIvRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL2dwaW8vc25wcy1k d2FwYi1ncGlvLnR4dA0KICAgIEBAIC0yNiw4ICsyNiwxMyBAQCBjb250cm9sbGVyLg0KICAgICAg IHRoZSBzZWNvbmQgZW5jb2RlcyB0aGUgdHJpZ2VyIGZsYWdzIGVuY29kZWQgYXMgZGVzY3JpYmVk IGluDQogICAgICAgRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL2ludGVycnVwdC1j b250cm9sbGVyL2ludGVycnVwdHMudHh0DQogICAgIC0gaW50ZXJydXB0LXBhcmVudCA6IFRoZSBw YXJlbnQgaW50ZXJydXB0IGNvbnRyb2xsZXIuDQogICAgLS0gaW50ZXJydXB0cyA6IFRoZSBpbnRl cnJ1cHQgdG8gdGhlIHBhcmVudCBjb250cm9sbGVyIHJhaXNlZCB3aGVuIEdQSU9zDQogICAgLSAg Z2VuZXJhdGUgdGhlIGludGVycnVwdHMuDQogICAgKy0gaW50ZXJydXB0cyA6IFRoZSBpbnRlcnJ1 cHRzIHRvIHRoZSBwYXJlbnQgY29udHJvbGxlciByYWlzZWQgd2hlbiBHUElPcw0KICAgICsgIGdl bmVyYXRlIHRoZSBpbnRlcnJ1cHRzLiBJZiB0aGUgY29udHJvbGxlciBwcm92aWRlcyBvbmUgY29t YmluZWQgaW50ZXJydXB0DQogICAgKyAgZm9yIGFsbCBHUElPcywgc3BlY2lmeSBhIHNpbmdsZSBp bnRlcnJ1cHQuIElmIHRoZSBjb250cm9sbGVyIHByb3ZpZGVzIG9uZQ0KICAgICsgIGludGVycnVw dCBmb3IgZWFjaCBHUElPLCBwcm92aWRlIGEgbGlzdCBvZiBpbnRlcnJ1cHRzIHRoYXQgY29ycmVz cG9uZCB0byBlYWNoDQogICAgKyAgb2YgdGhlIEdQSU8gcGlucy4gV2hlbiBzcGVjaWZ5aW5nIG11 bHRpcGxlIGludGVycnVwdHMsIGlmIGFueSBhcmUgdW5jb25uZWN0ZWQsDQogICAgKyAgdXNlIHRo ZSBpbnRlcnJ1cHRzLWV4dGVuZGVkIHByb3BlcnR5IHRvIHNwZWNpZnkgdGhlIGludGVycnVwdHMg YW5kIHNldCB0aGUNCiAgICArICBpbnRlcnJ1cHQgY29udHJvbGxlciBoYW5kbGUgZm9yIHVudXNl ZCBpbnRlcnJ1cHRzIHRvIDAuDQogICAgIC0gc25wcyxuci1ncGlvcyA6IFRoZSBudW1iZXIgb2Yg cGlucyBpbiB0aGUgcG9ydCwgYSBzaW5nbGUgY2VsbC4NCiAgICAgLSByZXNldHMgOiBSZXNldCBs aW5lIGZvciB0aGUgY29udHJvbGxlci4NCiAgICAgDQogICAgZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3Bpby9ncGlvLWR3YXBiLmMgYi9kcml2ZXJzL2dwaW8vZ3Bpby1kd2FwYi5jDQogICAgaW5kZXgg MjI2OTc3Zi4uMTViNDE1NCAxMDA2NDQNCiAgICAtLS0gYS9kcml2ZXJzL2dwaW8vZ3Bpby1kd2Fw Yi5jDQogICAgKysrIGIvZHJpdmVycy9ncGlvL2dwaW8tZHdhcGIuYw0KICAgIEBAIC00NDEsMTQg KzQ0MSwxOSBAQCBzdGF0aWMgdm9pZCBkd2FwYl9jb25maWd1cmVfaXJxcyhzdHJ1Y3QgZHdhcGJf Z3BpbyAqZ3BpbywNCiAgICAgCWlycV9nYy0+Y2hpcF90eXBlc1sxXS5oYW5kbGVyID0gaGFuZGxl X2VkZ2VfaXJxOw0KICAgICANCiAgICAgCWlmICghcHAtPmlycV9zaGFyZWQpIHsNCiAgICAtCQlp cnFfc2V0X2NoYWluZWRfaGFuZGxlcl9hbmRfZGF0YShwcC0+aXJxLCBkd2FwYl9pcnFfaGFuZGxl ciwNCiAgICAtCQkJCQkJIGdwaW8pOw0KICAgICsJCWludCBpOw0KICAgICsNCiAgICArCQlmb3Ig KGkgPSAwOyBpIDwgcHAtPm5ncGlvOyBpKyspIHsNCiAgICArCQkJaWYgKHBwLT5pcnFbaV0gPj0g MCkNCiAgICArCQkJCWlycV9zZXRfY2hhaW5lZF9oYW5kbGVyX2FuZF9kYXRhKHBwLT5pcnFbaV0s DQogICAgKwkJCQkJCWR3YXBiX2lycV9oYW5kbGVyLCBncGlvKTsNCiAgICArCQl9DQogICAgIAl9 IGVsc2Ugew0KICAgICAJCS8qDQogICAgIAkJICogUmVxdWVzdCBhIHNoYXJlZCBJUlEgc2luY2Ug d2hlcmUgTUZEIHdvdWxkIGhhdmUgZGV2aWNlcw0KICAgICAJCSAqIHVzaW5nIHRoZSBzYW1lIGly cSBwaW4NCiAgICAgCQkgKi8NCiAgICAtCQllcnIgPSBkZXZtX3JlcXVlc3RfaXJxKGdwaW8tPmRl diwgcHAtPmlycSwNCiAgICArCQllcnIgPSBkZXZtX3JlcXVlc3RfaXJxKGdwaW8tPmRldiwgcHAt PmlycVswXSwNCiAgICAgCQkJCSAgICAgICBkd2FwYl9pcnFfaGFuZGxlcl9tZmQsDQogICAgIAkJ CQkgICAgICAgSVJRRl9TSEFSRUQsICJncGlvLWR3YXBiLW1mZCIsIGdwaW8pOw0KICAgICAJCWlm IChlcnIpIHsNCiAgICBAQCAtNTI0LDcgKzUyOSw3IEBAIHN0YXRpYyBpbnQgZHdhcGJfZ3Bpb19h ZGRfcG9ydChzdHJ1Y3QgZHdhcGJfZ3BpbyAqZ3BpbywNCiAgICAgCWlmIChwcC0+aWR4ID09IDAp DQogICAgIAkJcG9ydC0+Z2Muc2V0X2NvbmZpZyA9IGR3YXBiX2dwaW9fc2V0X2NvbmZpZzsNCiAg ICAgDQogICAgLQlpZiAocHAtPmlycSkNCiAgICArCWlmIChwcC0+aGFzX2lycSkNCiAgICAgCQlk d2FwYl9jb25maWd1cmVfaXJxcyhncGlvLCBwb3J0LCBwcCk7DQogICAgIA0KICAgICAJZXJyID0g Z3Bpb2NoaXBfYWRkX2RhdGEoJnBvcnQtPmdjLCBwb3J0KTsNCiAgICBAQCAtNTM1LDcgKzU0MCw3 IEBAIHN0YXRpYyBpbnQgZHdhcGJfZ3Bpb19hZGRfcG9ydChzdHJ1Y3QgZHdhcGJfZ3BpbyAqZ3Bp bywNCiAgICAgCQlwb3J0LT5pc19yZWdpc3RlcmVkID0gdHJ1ZTsNCiAgICAgDQogICAgIAkvKiBB ZGQgR1BJTy1zaWduYWxlZCBBQ1BJIGV2ZW50IHN1cHBvcnQgKi8NCiAgICAtCWlmIChwcC0+aXJx KQ0KICAgICsJaWYgKHBwLT5oYXNfaXJxKQ0KICAgICAJCWFjcGlfZ3Bpb2NoaXBfcmVxdWVzdF9p bnRlcnJ1cHRzKCZwb3J0LT5nYyk7DQogICAgIA0KICAgICAJcmV0dXJuIGVycjsNCiAgICBAQCAt NTU3LDcgKzU2Miw3IEBAIGR3YXBiX2dwaW9fZ2V0X3BkYXRhKHN0cnVjdCBkZXZpY2UgKmRldikN CiAgICAgCXN0cnVjdCBkd2FwYl9wbGF0Zm9ybV9kYXRhICpwZGF0YTsNCiAgICAgCXN0cnVjdCBk d2FwYl9wb3J0X3Byb3BlcnR5ICpwcDsNCiAgICAgCWludCBucG9ydHM7DQogICAgLQlpbnQgaTsN CiAgICArCWludCBpLCBqOw0KICAgICANCiAgICAgCW5wb3J0cyA9IGRldmljZV9nZXRfY2hpbGRf bm9kZV9jb3VudChkZXYpOw0KICAgICAJaWYgKG5wb3J0cyA9PSAwKQ0KICAgIEBAIC01NzUsNiAr NTgwLDggQEAgZHdhcGJfZ3Bpb19nZXRfcGRhdGEoc3RydWN0IGRldmljZSAqZGV2KQ0KICAgICAN CiAgICAgCWkgPSAwOw0KICAgICAJZGV2aWNlX2Zvcl9lYWNoX2NoaWxkX25vZGUoZGV2LCBmd25v ZGUpICB7DQogICAgKwkJc3RydWN0IGRldmljZV9ub2RlICpucCA9IE5VTEw7DQogICAgKw0KICAg ICAJCXBwID0gJnBkYXRhLT5wcm9wZXJ0aWVzW2krK107DQogICAgIAkJcHAtPmZ3bm9kZSA9IGZ3 bm9kZTsNCiAgICAgDQogICAgQEAgLTU5NCwyMyArNjAxLDM1IEBAIGR3YXBiX2dwaW9fZ2V0X3Bk YXRhKHN0cnVjdCBkZXZpY2UgKmRldikNCiAgICAgCQkJcHAtPm5ncGlvID0gMzI7DQogICAgIAkJ fQ0KICAgICANCiAgICArCQlwcC0+aXJxX3NoYXJlZAk9IGZhbHNlOw0KICAgICsJCXBwLT5ncGlv X2Jhc2UJPSAtMTsNCiAgICArDQogICAgIAkJLyoNCiAgICAgCQkgKiBPbmx5IHBvcnQgQSBjYW4g cHJvdmlkZSBpbnRlcnJ1cHRzIGluIGFsbCBjb25maWd1cmF0aW9ucyBvZg0KICAgICAJCSAqIHRo ZSBJUC4NCiAgICAgCQkgKi8NCiAgICAtCQlpZiAoZGV2LT5vZl9ub2RlICYmIHBwLT5pZHggPT0g MCAmJg0KICAgIC0JCQlmd25vZGVfcHJvcGVydHlfcmVhZF9ib29sKGZ3bm9kZSwNCiAgICArCQlp ZiAocHAtPmlkeCAhPSAwKQ0KICAgICsJCQljb250aW51ZTsNCiAgICArDQogICAgKwkJaWYgKGRl di0+b2Zfbm9kZSAmJiBmd25vZGVfcHJvcGVydHlfcmVhZF9ib29sKGZ3bm9kZSwNCiAgICAgCQkJ CQkJICAiaW50ZXJydXB0LWNvbnRyb2xsZXIiKSkgew0KICAgIC0JCQlwcC0+aXJxID0gaXJxX29m X3BhcnNlX2FuZF9tYXAodG9fb2Zfbm9kZShmd25vZGUpLCAwKTsNCiAgICAtCQkJaWYgKCFwcC0+ aXJxKQ0KICAgIC0JCQkJZGV2X3dhcm4oZGV2LCAibm8gaXJxIGZvciBwb3J0JWRcbiIsIHBwLT5p ZHgpOw0KICAgICsJCQlucCA9IHRvX29mX25vZGUoZndub2RlKTsNCiAgICAgCQl9DQogICAgIA0K ICAgIC0JCWlmIChoYXNfYWNwaV9jb21wYW5pb24oZGV2KSAmJiBwcC0+aWR4ID09IDApDQogICAg LQkJCXBwLT5pcnEgPSBwbGF0Zm9ybV9nZXRfaXJxKHRvX3BsYXRmb3JtX2RldmljZShkZXYpLCAw KTsNCiAgICArCQlmb3IgKGogPSAwOyBqIDwgcHAtPm5ncGlvOyBqKyspIHsNCiAgICArCQkJcHAt PmlycVtqXSA9IC1FTlhJTzsNCiAgICAgDQogICAgLQkJcHAtPmlycV9zaGFyZWQJPSBmYWxzZTsN CiAgICAtCQlwcC0+Z3Bpb19iYXNlCT0gLTE7DQogICAgKwkJCWlmIChucCkNCiAgICArCQkJCXBw LT5pcnFbal0gPSBvZl9pcnFfZ2V0KG5wLCBqKTsNCiAgICArCQkJZWxzZSBpZiAoaGFzX2FjcGlf Y29tcGFuaW9uKGRldikpDQogICAgKwkJCQlwcC0+aXJxW2pdID0gcGxhdGZvcm1fZ2V0X2lycSh0 b19wbGF0Zm9ybV9kZXZpY2UoZGV2KSwgaik7DQogICAgKw0KICAgICsJCQlpZiAocHAtPmlycVtq XSA+PSAwKQ0KICAgICsJCQkJcHAtPmhhc19pcnEgPSB0cnVlOw0KICAgICsJCX0NCiAgICArDQog ICAgKwkJaWYgKCFwcC0+aGFzX2lycSkNCiAgICArCQkJZGV2X3dhcm4oZGV2LCAibm8gaXJxIGZv ciBwb3J0JWRcbiIsIHBwLT5pZHgpOw0KICAgICAJfQ0KICAgICANCiAgICAgCXJldHVybiBwZGF0 YTsNCiAgICBkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZmQvaW50ZWxfcXVhcmtfaTJjX2dwaW8uYyBi L2RyaXZlcnMvbWZkL2ludGVsX3F1YXJrX2kyY19ncGlvLmMNCiAgICBpbmRleCA5MGUzNWRlLi41 YmRkYjg0IDEwMDY0NA0KICAgIC0tLSBhL2RyaXZlcnMvbWZkL2ludGVsX3F1YXJrX2kyY19ncGlv LmMNCiAgICArKysgYi9kcml2ZXJzL21mZC9pbnRlbF9xdWFya19pMmNfZ3Bpby5jDQogICAgQEAg LTIzMyw3ICsyMzMsOCBAQCBzdGF0aWMgaW50IGludGVsX3F1YXJrX2dwaW9fc2V0dXAoc3RydWN0 IHBjaV9kZXYgKnBkZXYsIHN0cnVjdCBtZmRfY2VsbCAqY2VsbCkNCiAgICAgCXBkYXRhLT5wcm9w ZXJ0aWVzLT5pZHgJCT0gMDsNCiAgICAgCXBkYXRhLT5wcm9wZXJ0aWVzLT5uZ3Bpbwk9IElOVEVM X1FVQVJLX01GRF9OR1BJTzsNCiAgICAgCXBkYXRhLT5wcm9wZXJ0aWVzLT5ncGlvX2Jhc2UJPSBJ TlRFTF9RVUFSS19NRkRfR1BJT19CQVNFOw0KICAgIC0JcGRhdGEtPnByb3BlcnRpZXMtPmlycQkJ PSBwZGV2LT5pcnE7DQogICAgKwlwZGF0YS0+cHJvcGVydGllcy0+aXJxWzBdCT0gcGRldi0+aXJx Ow0KICAgICsJcGRhdGEtPnByb3BlcnRpZXMtPmhhc19pcnEJPSB0cnVlOw0KICAgICAJcGRhdGEt PnByb3BlcnRpZXMtPmlycV9zaGFyZWQJPSB0cnVlOw0KICAgICANCiAgICAgCWNlbGwtPnBsYXRm b3JtX2RhdGEgPSBwZGF0YTsNCiAgICBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9saW51eC9wbGF0Zm9y bV9kYXRhL2dwaW8tZHdhcGIuaCBiL2luY2x1ZGUvbGludXgvcGxhdGZvcm1fZGF0YS9ncGlvLWR3 YXBiLmgNCiAgICBpbmRleCAyZGM3ZjRhLi40MTljZmFjIDEwMDY0NA0KICAgIC0tLSBhL2luY2x1 ZGUvbGludXgvcGxhdGZvcm1fZGF0YS9ncGlvLWR3YXBiLmgNCiAgICArKysgYi9pbmNsdWRlL2xp bnV4L3BsYXRmb3JtX2RhdGEvZ3Bpby1kd2FwYi5oDQogICAgQEAgLTE5LDcgKzE5LDggQEAgc3Ry dWN0IGR3YXBiX3BvcnRfcHJvcGVydHkgew0KICAgICAJdW5zaWduZWQgaW50CWlkeDsNCiAgICAg CXVuc2lnbmVkIGludAluZ3BpbzsNCiAgICAgCXVuc2lnbmVkIGludAlncGlvX2Jhc2U7DQogICAg LQl1bnNpZ25lZCBpbnQJaXJxOw0KICAgICsJaW50CQlpcnFbMzJdOw0KICAgICsJYm9vbAkJaGFz X2lycTsNCiAgICAgCWJvb2wJCWlycV9zaGFyZWQ7DQogICAgIH07DQoNCkFja2VkLWJ5OiBIb2Fu IFRyYW4gPGhvYW4udHJhbkBhbXBlcmVjb21wdXRpbmcuY29tPg0KICAgICANCiAgICAtLSANCiAg ICAyLjcuNA0KICAgIA0KICAgIA0KDQo=