Received: by 2002:a25:6193:0:0:0:0:0 with SMTP id v141csp146563ybb; Thu, 9 Apr 2020 19:29:18 -0700 (PDT) X-Google-Smtp-Source: APiQypJD2YsZt3YtUMDKDB1hNf2sBzFY+kXeERnyN+UdwhnTU9NqH5vH8Rs0/IHyYDf49c4ppDRK X-Received: by 2002:a37:6514:: with SMTP id z20mr2037226qkb.197.1586485758371; Thu, 09 Apr 2020 19:29:18 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1586485758; cv=pass; d=google.com; s=arc-20160816; b=AHcmOzPMPfjPLyUvc+GMTqIk0RUHcmGhHX64mH0luN+CzeEZBdpYSQ77qyKWL8yQbw FY3O/XZkQauVdX/wSGPg9Y2FyPv8EZZuK2Pr5CstncPrHxXTrazql6xGGFLhn7EG5ZPp 8owrkLy26MpqLRSotoLTUbYW45ceGSxC44C7GnpzQuwsSjw/iLidXyAMH7D12eVE8cjr 406mDrHoXC8Z4djjw4HP00kx0gKI1EB4MVtE4AGcBG4pGsyXXHxCYHh2Gx25XZuF/PVa 1E0FejvtI0K9OrdKT0RlUt6AHJUpj2mFasHT8onAgb8DfaWUfDVMsWzaXw9PD2qAgWkv fnVg== 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=Km6KPZjZ/evSlaHMHJdIoJhnZsxuj6sjfA7vJWxucWQ=; b=rf8OYYLWvOCAlc8j4nn9CYLk/931OJcxH0YvJmmRsxTAgCKnaDnIdNFH20qWitvv+n 7O1dhITPnFwFm3Uuy3s5qLM/BnPEZjhgMHY9ofdfq5bVRMscxAqQ6wszsbjEOI6prBWH tpobwRpH57/IZ92mP6bYJX+2mNYVmf13ZRMBvqElB8RztxqLuWX2xoormUYbEobX4dzA EGCJP5PZyrvrKaayLHboG8gt13v6ZAqaFjWg6nrQvhodRlXmmMn9lwstaadhtb8S8Pjh tLLCkKdAZzerRbUPFnLQMHhK62VObvtXxmLICVALFTl/k7yrpRKlf89PZ9ERW9JvAkF2 UAbw== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@alpsgroup.onmicrosoft.com header.s=selector2-alpsgroup-onmicrosoft-com header.b=VaYFMSib; arc=pass (i=1 spf=pass spfdomain=cn.alps.com dkim=pass dkdomain=cn.alps.com dmarc=pass fromdomain=cn.alps.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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id r3si311060qve.188.2020.04.09.19.29.02; Thu, 09 Apr 2020 19:29: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=@alpsgroup.onmicrosoft.com header.s=selector2-alpsgroup-onmicrosoft-com header.b=VaYFMSib; arc=pass (i=1 spf=pass spfdomain=cn.alps.com dkim=pass dkdomain=cn.alps.com dmarc=pass fromdomain=cn.alps.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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726654AbgDJC2P (ORCPT + 99 others); Thu, 9 Apr 2020 22:28:15 -0400 Received: from mail-eopbgr1410057.outbound.protection.outlook.com ([40.107.141.57]:62592 "EHLO JPN01-OS2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726552AbgDJC2P (ORCPT ); Thu, 9 Apr 2020 22:28:15 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iilrbd4LhYBlMOoYg1mePmdxQuB90af+047n4FYpSu8liAm13etoajTTlbEhee3KCzTp4b9lzo4YHPu+d11FYO65pSxk88gmqpplYFUuvUUOqztukLl4+0ygf8Sf8B6TLyM/ZZ8pu2N2jAO9/Ar3jMabB4VOEO2Ka7IhTz0fcUbVZc9wen8oSqOTEzT06ChGxdU0ptpEFaHknpBRvWhAy7eFsqpY7lfCMOH4vbKdcu4NRZie/E6eonQBU6BzpPjC6+fGjHTfJSLpzCZNeaTJR+FtS3EBOyHPKbiQosDUjo84ijKxNd598fbP0JZ/F7xtOYRa2gAPM6E7H7LrXx332g== 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=Km6KPZjZ/evSlaHMHJdIoJhnZsxuj6sjfA7vJWxucWQ=; b=ob+8Q9srFBrjBIWQhcLPgrUhXyxwfnmdOxMeZV10KjPsqWwWCsFRSRzRXUZQ3hoLRR3XOt3ioziM8oICy2c/rLiiZdEn5zdUl27mpqdPS8pc2DuONgFL3a2gzzTBDe+ShE/1w7hLtnxAK/+PrbbPc9xwPzAGbJqTVNhTA1lsOHsgLagW0Wbo0BNNG9RlhlzKULuOPcphwTB8zWCg8X9VavIXXefF463DysXHHri2MjdV9a5dkL2qgZODYhnHlUUXwJoRJYybtFS/ckJDzRsWaYJAakAMtGwTsZ9wVFBQ/9ITpUMZuNDUvfRua2cQi5mW8IotEycW7wZGde08x4kOcg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=cn.alps.com; dmarc=pass action=none header.from=cn.alps.com; dkim=pass header.d=cn.alps.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=alpsgroup.onmicrosoft.com; s=selector2-alpsgroup-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Km6KPZjZ/evSlaHMHJdIoJhnZsxuj6sjfA7vJWxucWQ=; b=VaYFMSibRDbbqmmixN7g8vdqlQCKWz44fkd2i+5sE353epo+fC+W7tXkJqSbZ8jvmLHR+clABhOrfEBm+iNj9YgjK+ZlzzynnGjiGULfkQXwGWF04n1j40cI57ew1O1qd/AZqoavngXhnBZNJ6m2U0Yo9F6ojukTO0I3HG2EwKs= Received: from OSAPR01MB3057.jpnprd01.prod.outlook.com (52.134.248.141) by OSAPR01MB3940.jpnprd01.prod.outlook.com (20.178.128.207) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2900.16; Fri, 10 Apr 2020 02:28:11 +0000 Received: from OSAPR01MB3057.jpnprd01.prod.outlook.com ([fe80::c41b:4bf7:2ad1:6fc7]) by OSAPR01MB3057.jpnprd01.prod.outlook.com ([fe80::c41b:4bf7:2ad1:6fc7%3]) with mapi id 15.20.2900.015; Fri, 10 Apr 2020 02:28:11 +0000 From: Xiaojian Cao To: Masaki Ota , Artem Borisov CC: "jikos@kernel.org" , Benjamin Tissoires , Henrik Rydberg , "linux-input@vger.kernel.org" , "linux-kernel@vger.kernel.org" , Tetsuya Nomura , "vadim@cirque.com" , "pod.alcht@cn.alps.com" Subject: RE: [PATCH 2/2] HID: alps: Refactor axis resolution logic Thread-Topic: [PATCH 2/2] HID: alps: Refactor axis resolution logic Thread-Index: AQHWDr0x2NbbGmh+BEarMrC/TfssrKhxZ8AAgAAQo0CAAA8hsIAADIzggAADu+A= Date: Fri, 10 Apr 2020 02:28:10 +0000 Message-ID: References: <20200409230009.22551-1-dedsa2002@gmail.com> In-Reply-To: Accept-Language: en-US, zh-CN Content-Language: zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=xiaojian.cao@cn.alps.com; x-originating-ip: [58.247.0.86] x-ms-publictraffictype: Email x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: ee1c7524-99cd-441c-41ef-08d7dcf6d04b x-ms-traffictypediagnostic: OSAPR01MB3940: x-ld-processed: 57e76998-77bd-4b82-a424-198f46eb2254,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:6790; x-forefront-prvs: 0369E8196C x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:OSAPR01MB3057.jpnprd01.prod.outlook.com;PTR:;CAT:NONE;SFTY:;SFS:(10009020)(4636009)(346002)(376002)(136003)(396003)(39860400002)(366004)(81156014)(71200400001)(8936002)(8676002)(33656002)(53546011)(478600001)(2906002)(85182001)(110136005)(6506007)(7696005)(316002)(54906003)(66446008)(26005)(4326008)(66556008)(64756008)(66476007)(52536014)(86362001)(107886003)(66946007)(55016002)(186003)(5660300002)(9686003)(76116006);DIR:OUT;SFP:1101; received-spf: None (protection.outlook.com: cn.alps.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: ZI9Zv9JmuGW3zIFj0izEFIozU5Mw4vrIp5N6mnLh5ftSVGEv7estL1JQ3Eua2Y1jltMpdj2QgAeTNMsCLwi5vC6Pxq1H+bvgsXpE32SxxKXJC62O8xP5lYmk92TRGVIn+2ww3rRia6u0oWf4VqoHCkjmboKLB10AUbyGqX9moKEV83wfzcmoREkWS8FLiGz5E/pVM8ORkM+FO9zur2Tll2bXvfWLqnYKb2vj2U8OW0XPr97j9QHaSCcSdtqPexPx05itN0ksLXW9Fy5CmJ4WZrmIa4JGbjtCuhzvXgGhWGp54SoswmacBXBvMFWj/qby6InkTRMBjyBM/uGvlZGOZC8OEy60MAR3qoBNoERX8mwpOscbIUjtWwlmsCBiY027o3PYWO2CeG5yRv8vMOEVeAT1ZRstPAMfcfzSpBcL2UbOG1UD0kdvTahIhWIzm6Go x-ms-exchange-antispam-messagedata: JW6fDztDci+p8gH4PH5IfZwnXyReWvftCziUwLtWPYfaS/Azey0XoPxmOLY366YlipZaBb8PI+Og6X02KkIto+khIJjSN2ajZPMIVyWqpk//VcFukKl7NqiE0KD14BmOqtSqvGb9F/LHaR7+YaCDzg== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: cn.alps.com X-MS-Exchange-CrossTenant-Network-Message-Id: ee1c7524-99cd-441c-41ef-08d7dcf6d04b X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Apr 2020 02:28:10.9603 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 57e76998-77bd-4b82-a424-198f46eb2254 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: v3gCn+2D3944EDooW0P/Ky+rn8ftH0uBC7E9k4Rt8izy3KHFaPqCsV13S4Ado1uIYg/VeUFcWUJ8i2a33BLt9Bj5d3rR5uu3dW8dzitr4S8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: OSAPR01MB3940 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org SGkgT3RhLXNhbiwNCg0KSSBuZWVkIHRvIHN0dWR5IHRoZSBiYWNrZ3JvdW5kIGZpcnN0LCB0aGVu IEkgd2lsbCB1cGRhdGUgbXkgdW5kZXJzdGFuZGluZyBhYm91dCBpdC4NCg0KDQpCZXN0IFJlZ2Fy ZHMsDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpKYXNv biBDYW8o5pu55pmT5bu6KQ0KDQoNCi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQpGcm9tOiDl pKrnlLAg55yf5ZacIE1hc2FraSBPdGEgPG1hc2FraS5vdGFAYWxwc2FscGluZS5jb20+IA0KU2Vu dDogRnJpZGF5LCBBcHJpbCAxMCwgMjAyMCA5OjUxIEFNDQpUbzog5pu5IOabieW7uiBYaWFvamlh biBDYW8gPHhpYW9qaWFuLmNhb0Bjbi5hbHBzLmNvbT47IEFydGVtIEJvcmlzb3YgPGRlZHNhMjAw MkBnbWFpbC5jb20+DQpDYzogamlrb3NAa2VybmVsLm9yZzsgQmVuamFtaW4gVGlzc29pcmVzIDxi ZW5qYW1pbi50aXNzb2lyZXNAcmVkaGF0LmNvbT47IEhlbnJpayBSeWRiZXJnIDxyeWRiZXJnQGJp dG1hdGgub3JnPjsgbGludXgtaW5wdXRAdmdlci5rZXJuZWwub3JnOyBsaW51eC1rZXJuZWxAdmdl ci5rZXJuZWwub3JnDQpTdWJqZWN0OiBSRTogW1BBVENIIDIvMl0gSElEOiBhbHBzOiBSZWZhY3Rv ciBheGlzIHJlc29sdXRpb24gbG9naWMNCg0KSGksIENhby1zYW4sDQoNCkkgZ290IGl0LiBJIGFs c28gY29uZmlybWVkIHRoaXMgdG91Y2hwYWQgaXMgYSBzcGVjaWFsLg0KV2hhdCBkbyB5b3UgdGhp bmsgdGhpcyBjb2RlIG1vZGlmaWNhdGlvbj8NCg0KQmVzdCBSZWdhcmRzLA0KTWFzYWtpIE90YQ0K LS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCkZyb206IOabuSDmm4nlu7ogWGlhb2ppYW4gQ2Fv IDx4aWFvamlhbi5jYW9AY24uYWxwcy5jb20+IA0KU2VudDogRnJpZGF5LCBBcHJpbCAxMCwgMjAy MCAxMDowMyBBTQ0KVG86IOWkqueUsCDnnJ/llpwgTWFzYWtpIE90YSA8bWFzYWtpLm90YUBhbHBz YWxwaW5lLmNvbT47IEFydGVtIEJvcmlzb3YgPGRlZHNhMjAwMkBnbWFpbC5jb20+DQpDYzogamlr b3NAa2VybmVsLm9yZzsgQmVuamFtaW4gVGlzc29pcmVzIDxiZW5qYW1pbi50aXNzb2lyZXNAcmVk aGF0LmNvbT47IEhlbnJpayBSeWRiZXJnIDxyeWRiZXJnQGJpdG1hdGgub3JnPjsgbGludXgtaW5w dXRAdmdlci5rZXJuZWwub3JnOyBsaW51eC1rZXJuZWxAdmdlci5rZXJuZWwub3JnDQpTdWJqZWN0 OiBSRTogW1BBVENIIDIvMl0gSElEOiBhbHBzOiBSZWZhY3RvciBheGlzIHJlc29sdXRpb24gbG9n aWMNCg0KSGkgT3RhLXNhbiwNCg0KVGhhbmtzIGZvciB5b3VyIGNoZWNraW5nLg0KSW4gZmFjdCwg c29tZSBvZiB0aGUgVTEgZGV2aWNlcyB3b3JrIGFzIG5vbi1QVFAuDQpBVUkxNjU3IGlzIHVzaW5n IFUxKEtHREJDSEEwMDRBKSB3aG9zZSBmaXJtd2FyZSBqdXN0IHN1cHBvcnRzIG1vdXNlIG1vZGUg YW5kIGxlZ2FjeSBtb2RlLiANCg0KQmVzdCBSZWdhcmRzLA0KLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KSmFzb24gQ2FvKOabueaZk+W7uikNCg0KDQotLS0t LU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KRnJvbTog5aSq55SwIOecn+WWnCBNYXNha2kgT3RhIDxt YXNha2kub3RhQGFscHNhbHBpbmUuY29tPiANClNlbnQ6IEZyaWRheSwgQXByaWwgMTAsIDIwMjAg ODoyOSBBTQ0KVG86IOabuSDmm4nlu7ogWGlhb2ppYW4gQ2FvIDx4aWFvamlhbi5jYW9AY24uYWxw cy5jb20+OyBBcnRlbSBCb3Jpc292IDxkZWRzYTIwMDJAZ21haWwuY29tPg0KQ2M6IGppa29zQGtl cm5lbC5vcmc7IEJlbmphbWluIFRpc3NvaXJlcyA8YmVuamFtaW4udGlzc29pcmVzQHJlZGhhdC5j b20+OyBIZW5yaWsgUnlkYmVyZyA8cnlkYmVyZ0BiaXRtYXRoLm9yZz47IGxpbnV4LWlucHV0QHZn ZXIua2VybmVsLm9yZzsgbGludXgta2VybmVsQHZnZXIua2VybmVsLm9yZw0KU3ViamVjdDogUkU6 IFtQQVRDSCAyLzJdIEhJRDogYWxwczogUmVmYWN0b3IgYXhpcyByZXNvbHV0aW9uIGxvZ2ljDQoN CkhpLCBDYW8tc2FuLA0KDQpEbyB5b3Uga25vdyBBVUkxNjU3IGRldmljZT8gVGhpcyBkZXZpY2Ug bG9va3MgVTEuDQpJIHRoaW5rIHJlY2VudCBhbGwgVTEgZGV2aWNlcyB3b3JrIGFzIFBUUC4NCkxp bnV4IGFsc28gc3VwcG9ydHMgUFRQLCBzbyBJIHRoaW5rIHdlIHNob3VsZCBhZGQgc29tZXRoaW5n IElEIHRvIExpbnV4IHNvdXJjZSBjb2RlLiAoSSByZW1lbWJlciBhIHNvbWV0aGluZyBmbGFnIGlz IGFscmVhZHkgZXhpc3QuKQ0KDQpCZXN0IFJlZ2FyZHMsDQpNYXNha2kgT3RhDQotLS0tLU9yaWdp bmFsIE1lc3NhZ2UtLS0tLQ0KRnJvbTogQXJ0ZW0gQm9yaXNvdiA8ZGVkc2EyMDAyQGdtYWlsLmNv bT4gDQpTZW50OiBGcmlkYXksIEFwcmlsIDEwLCAyMDIwIDg6MDAgQU0NCkNjOiBqaWtvc0BrZXJu ZWwub3JnOyDlpKrnlLAg55yf5ZacIE1hc2FraSBPdGEgPG1hc2FraS5vdGFAYWxwc2FscGluZS5j b20+OyBBcnRlbSBCb3Jpc292IDxkZWRzYTIwMDJAZ21haWwuY29tPjsgQmVuamFtaW4gVGlzc29p cmVzIDxiZW5qYW1pbi50aXNzb2lyZXNAcmVkaGF0LmNvbT47IEhlbnJpayBSeWRiZXJnIDxyeWRi ZXJnQGJpdG1hdGgub3JnPjsgbGludXgtaW5wdXRAdmdlci5rZXJuZWwub3JnOyBsaW51eC1rZXJu ZWxAdmdlci5rZXJuZWwub3JnDQpTdWJqZWN0OiBbUEFUQ0ggMi8yXSBISUQ6IGFscHM6IFJlZmFj dG9yIGF4aXMgcmVzb2x1dGlvbiBsb2dpYw0KDQpBVUkxNjU3IGRvZXNuJ3QgZm9sbG93IHRoZSBz YW1lIGxvZ2ljIGZvciByZXNvbHV0aW9uIGNhbGN1bGF0aW9uLCBzaW5jZSB0aGUgcmVzdWx0aW5n IHZhbHVlcyBhcmUgaW5jb3JyZWN0LiBJbnN0ZWFkLCBpdCByZXBvcnRzIHRoZSBhY3R1YWwgcmVz b2x1dGlvbiB2YWx1ZXMgaW4gcGxhY2Ugb2YgdGhlIHBpdGNoIG9uZXMuDQpXaGlsZSB3ZSdyZSBh dCBpdCwgYWxzbyByZWZhY3RvciB0aGUgd2hvbGUgcmVzb2x1dGlvbiBsb2dpYyB0byBtYWtlIGl0 IG1vcmUgZ2VuZXJpYyBhbmQgc2Vuc2libGUgZm9yIG11bHRpcGxlIGRldmljZSBzdXBwb3J0Lg0K DQpUaGVyZSBhcmUgdHdvIG1haW4gbG9naWNhbCBwcm9ibGVtcyB3aXRoIHRoZSBjdXJyZW50IGNv ZGU6DQoxLiBhY3RpdmVfbGVuX21tIHZhbHVlcyBhcmUgb25seSB1c2VkIGZvciByZXNvbHV0aW9u IGNhbGN1bGF0aW9uIG9uIFUxLCB5ZXQgYXJlIGV4cG9zZWQgZ2xvYmFsbHkgYXMgcGFydCBvZiBh bHBzX2RldiBzdHJ1Y3R1cmUuDQoyLiBUaGUgcmVzb2x1dGlvbiBjYWxjdWxhdGlvbiBwcm9jZXNz IGhhcHBlbnMgaW4gYWxwc19pbnB1dF9jb25maWd1cmVkLCB3aGlsZSBldmVyeXRoaW5nIGVsc2Ug aXMgY2FsY3VsYXRlZCBpbiB1MV9pbml0IGZ1bmN0aW9uLg0KDQpUaGVzZSBwcm9ibGVtcyBiZWNv bWUgbW9yZSBhcHBhcmVudCB3aGVuIHdlIHRyeSB0byBzdXBwb3J0IGEgZGV2aWNlIHRoYXQgZG9l c24ndCBmb2xsb3cgdGhlIHNhbWUgcmVzb2x1dGlvbiBjYWxjdWxhdGlvbiBsb2dpYyBhcyBVMS4N ClNpbmNlIGFscHNfaW5wdXRfY29uZmlndXJlZCBpcyBhIGRldmljZS1hZ25vc3RpYyBmdW5jdGlv biwgd2Ugc2hvdWxkIGF2b2lkIGRvaW5nIGFueSBtZWFzdXJlbWVudHMgdGhlcmUgYW5kIGhhbmRs ZSB0aGVtIGluIGRldmljZS1zcGVjaWZpYyBpbml0IGZ1bmN0aW9ucyBsaWtlIHUxL1Q0X2luaXQg aW5zdGVhZC4NCg0KVG8gZWxpbWluYXRlIHRoZXNlIHByb2JsZW1zIHdlIGFkZCBnbG9iYWwgeF9y ZXMgYW5kIHlfcmVzIHZhbHVlcyBhbmQgcG9wdWxhdGUgdGhlbSBvbiBhIGRldmljZS1zcGVjaWZp YyBiYXNpcyBpbiB0aGUgYWNjb3JkaW5nIGluaXQgZnVuY3Rpb25zLg0KDQpTaWduZWQtb2ZmLWJ5 OiBBcnRlbSBCb3Jpc292IDxkZWRzYTIwMDJAZ21haWwuY29tPg0KLS0tDQogZHJpdmVycy9oaWQv aGlkLWFscHMuYyB8IDQxICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0t DQogMSBmaWxlIGNoYW5nZWQsIDI1IGluc2VydGlvbnMoKyksIDE2IGRlbGV0aW9ucygtKQ0KDQpk aWZmIC0tZ2l0IGEvZHJpdmVycy9oaWQvaGlkLWFscHMuYyBiL2RyaXZlcnMvaGlkL2hpZC1hbHBz LmMgaW5kZXggYzJhMmJkNTI4ODkwLi40OTRjMDhjY2E2NDUgMTAwNjQ0DQotLS0gYS9kcml2ZXJz L2hpZC9oaWQtYWxwcy5jDQorKysgYi9kcml2ZXJzL2hpZC9oaWQtYWxwcy5jDQpAQCAtODMsOCAr ODMsOCBAQCBlbnVtIGRldl9udW0gew0KICAqIEBtYXhfZmluZ2VyczogdG90YWwgbnVtYmVyIG9m IGZpbmdlcnMNCiAgKiBAaGFzX3NwOiBib29sZWFuIG9mIHNwIGV4aXN0ZW5zZQ0KICAqIEBzcF9i dG5faW5mbzogYnV0dG9uIGluZm9ybWF0aW9uDQotICogQHhfYWN0aXZlX2xlbl9tbTogYWN0aXZl IGFyZWEgbGVuZ3RoIG9mIFggKG1tKQ0KLSAqIEB5X2FjdGl2ZV9sZW5fbW06IGFjdGl2ZSBhcmVh IGxlbmd0aCBvZiBZIChtbSkNCisgKiBAeF9yZXM6IHJlc29sdXRpb24gb2YgWA0KKyAqIEB5X3Jl czogcmVzb2x1dGlvbiBvZiBZDQogICogQHhfbWF4OiBtYXhpbXVtIHggY29vcmRpbmF0ZSB2YWx1 ZQ0KICAqIEB5X21heDogbWF4aW11bSB5IGNvb3JkaW5hdGUgdmFsdWUNCiAgKiBAeF9taW46IG1p bmltdW0geCBjb29yZGluYXRlIHZhbHVlDQpAQCAtMTAwLDkgKzEwMCwxMCBAQCBzdHJ1Y3QgYWxw c19kZXYgew0KIAllbnVtIGRldl9udW0gZGV2X3R5cGU7DQogCXU4ICBtYXhfZmluZ2VyczsNCiAJ dTggIGhhc19zcDsNCisJdTggIG5vX3BpdGNoOw0KIAl1OAlzcF9idG5faW5mbzsNCi0JdTMyCXhf YWN0aXZlX2xlbl9tbTsNCi0JdTMyCXlfYWN0aXZlX2xlbl9tbTsNCisJdTMyCXhfcmVzOw0KKwl1 MzIJeV9yZXM7DQogCXUzMgl4X21heDsNCiAJdTMyCXlfbWF4Ow0KIAl1MzIJeF9taW47DQpAQCAt NTUwLDEwICs1NTEsNiBAQCBzdGF0aWMgaW50IHUxX2luaXQoc3RydWN0IGhpZF9kZXZpY2UgKmhk ZXYsIHN0cnVjdCBhbHBzX2RldiAqcHJpX2RhdGEpDQogCQlkZXZfZXJyKCZoZGV2LT5kZXYsICJm YWlsZWQgVTFfUkVTT19EV05fQUJTICglZClcbiIsIHJldCk7DQogCQlnb3RvIGV4aXQ7DQogCX0N Ci0JcHJpX2RhdGEtPnhfYWN0aXZlX2xlbl9tbSA9DQotCQkocGl0Y2hfeCAqIChzZW5fbGluZV9u dW1feCAtIDEpKSAvIDEwOw0KLQlwcmlfZGF0YS0+eV9hY3RpdmVfbGVuX21tID0NCi0JCShwaXRj aF95ICogKHNlbl9saW5lX251bV95IC0gMSkpIC8gMTA7DQogDQogCXByaV9kYXRhLT54X21heCA9 DQogCQkocmVzb2x1dGlvbiA8PCAyKSAqIChzZW5fbGluZV9udW1feCAtIDEpOyBAQCAtNTYyLDYg KzU1OSwxOCBAQCBzdGF0aWMgaW50IHUxX2luaXQoc3RydWN0IGhpZF9kZXZpY2UgKmhkZXYsIHN0 cnVjdCBhbHBzX2RldiAqcHJpX2RhdGEpDQogCQkocmVzb2x1dGlvbiA8PCAyKSAqIChzZW5fbGlu ZV9udW1feSAtIDEpOw0KIAlwcmlfZGF0YS0+eV9taW4gPSAxOw0KIA0KKwlpZiAocHJpX2RhdGEt Pm5vX3BpdGNoKSB7DQorCQlwcmlfZGF0YS0+eF9yZXMgPSBwaXRjaF94Ow0KKwkJcHJpX2RhdGEt PnlfcmVzID0gcGl0Y2hfeTsNCisJfSBlbHNlIHsNCisJCXByaV9kYXRhLT54X3JlcyA9DQorCQkJ KHByaV9kYXRhLT54X21heCAtIDEpIC8NCisJCQkoKHBpdGNoX3ggKiAoc2VuX2xpbmVfbnVtX3gg LSAxKSkgLyAxMCk7DQorCQlwcmlfZGF0YS0+eV9yZXMgPQ0KKwkJCShwcmlfZGF0YS0+eV9tYXgg LSAxKSAvDQorCQkJKChwaXRjaF95ICogKHNlbl9saW5lX251bV95IC0gMSkpIC8gMTApOw0KKwl9 DQorDQogCXJldCA9IHUxX3JlYWRfd3JpdGVfcmVnaXN0ZXIoaGRldiwgQUREUkVTU19VMV9QQURf QlROLA0KIAkJCSZ0bXAsIDAsIHRydWUpOw0KIAlpZiAocmV0IDwgMCkgew0KQEAgLTYyMiw3ICs2 MzEsNyBAQCBzdGF0aWMgaW50IFQ0X2luaXQoc3RydWN0IGhpZF9kZXZpY2UgKmhkZXYsIHN0cnVj dCBhbHBzX2RldiAqcHJpX2RhdGEpDQogCXByaV9kYXRhLT54X21pbiA9IFQ0X0NPVU5UX1BFUl9F TEVDVFJPREU7DQogCXByaV9kYXRhLT55X21heCA9IHNlbl9saW5lX251bV95ICogVDRfQ09VTlRf UEVSX0VMRUNUUk9ERTsNCiAJcHJpX2RhdGEtPnlfbWluID0gVDRfQ09VTlRfUEVSX0VMRUNUUk9E RTsNCi0JcHJpX2RhdGEtPnhfYWN0aXZlX2xlbl9tbSA9IHByaV9kYXRhLT55X2FjdGl2ZV9sZW5f bW0gPSAwOw0KKwlwcmlfZGF0YS0+eF9yZXMgPSBwcmlfZGF0YS0+eV9yZXMgPSAwOw0KIAlwcmlf ZGF0YS0+YnRuX2NudCA9IDE7DQogDQogCXJldCA9IHQ0X3JlYWRfd3JpdGVfcmVnaXN0ZXIoaGRl diwgUFJNX1NZU19DT05GSUdfMSwgJnRtcCwgMCwgdHJ1ZSk7IEBAIC02NzUsNyArNjg0LDcgQEAg c3RhdGljIGludCBhbHBzX2lucHV0X2NvbmZpZ3VyZWQoc3RydWN0IGhpZF9kZXZpY2UgKmhkZXYs IHN0cnVjdCBoaWRfaW5wdXQgKmhpKQ0KIAlzdHJ1Y3QgYWxwc19kZXYgKmRhdGEgPSBoaWRfZ2V0 X2RydmRhdGEoaGRldik7DQogCXN0cnVjdCBpbnB1dF9kZXYgKmlucHV0ID0gaGktPmlucHV0LCAq aW5wdXQyOw0KIAlpbnQgcmV0Ow0KLQlpbnQgcmVzX3gsIHJlc195LCBpOw0KKwlpbnQgaTsNCiAN CiAJZGF0YS0+aW5wdXQgPSBpbnB1dDsNCiANCkBAIC03MDYsMTIgKzcxNSw5IEBAIHN0YXRpYyBp bnQgYWxwc19pbnB1dF9jb25maWd1cmVkKHN0cnVjdCBoaWRfZGV2aWNlICpoZGV2LCBzdHJ1Y3Qg aGlkX2lucHV0ICpoaSkNCiAJaW5wdXRfc2V0X2Fic19wYXJhbXMoaW5wdXQsIEFCU19NVF9QT1NJ VElPTl9ZLA0KIAkJCQkJCWRhdGEtPnlfbWluLCBkYXRhLT55X21heCwgMCwgMCk7DQogDQotCWlm IChkYXRhLT54X2FjdGl2ZV9sZW5fbW0gJiYgZGF0YS0+eV9hY3RpdmVfbGVuX21tKSB7DQotCQly ZXNfeCA9IChkYXRhLT54X21heCAtIDEpIC8gZGF0YS0+eF9hY3RpdmVfbGVuX21tOw0KLQkJcmVz X3kgPSAoZGF0YS0+eV9tYXggLSAxKSAvIGRhdGEtPnlfYWN0aXZlX2xlbl9tbTsNCi0NCi0JCWlu cHV0X2Fic19zZXRfcmVzKGlucHV0LCBBQlNfTVRfUE9TSVRJT05fWCwgcmVzX3gpOw0KLQkJaW5w dXRfYWJzX3NldF9yZXMoaW5wdXQsIEFCU19NVF9QT1NJVElPTl9ZLCByZXNfeSk7DQorCWlmIChk YXRhLT54X3JlcyAmJiBkYXRhLT55X3Jlcykgew0KKwkJaW5wdXRfYWJzX3NldF9yZXMoaW5wdXQs IEFCU19NVF9QT1NJVElPTl9YLCBkYXRhLT54X3Jlcyk7DQorCQlpbnB1dF9hYnNfc2V0X3Jlcyhp bnB1dCwgQUJTX01UX1BPU0lUSU9OX1ksIGRhdGEtPnlfcmVzKTsNCiAJfQ0KIA0KIAlpbnB1dF9z ZXRfYWJzX3BhcmFtcyhpbnB1dCwgQUJTX01UX1BSRVNTVVJFLCAwLCA2NCwgMCwgMCk7IEBAIC04 MDIsOCArODA4LDExIEBAIHN0YXRpYyBpbnQgYWxwc19wcm9iZShzdHJ1Y3QgaGlkX2RldmljZSAq aGRldiwgY29uc3Qgc3RydWN0IGhpZF9kZXZpY2VfaWQgKmlkKQ0KIAkJYnJlYWs7DQogCWNhc2Ug SElEX0RFVklDRV9JRF9BTFBTX1UxX0RVQUw6DQogCWNhc2UgSElEX0RFVklDRV9JRF9BTFBTX1Ux Og0KKwkJZGF0YS0+ZGV2X3R5cGUgPSBVMTsNCisJCWJyZWFrOw0KIAljYXNlIEhJRF9ERVZJQ0Vf SURfQUxQU18xNjU3Og0KIAkJZGF0YS0+ZGV2X3R5cGUgPSBVMTsNCisJCWRhdGEtPm5vX3BpdGNo ID0gMTsNCiAJCWJyZWFrOw0KIAlkZWZhdWx0Og0KIAkJZGF0YS0+ZGV2X3R5cGUgPSBVTktOT1dO Ow0KLS0NCjIuMjYuMA0KDQo=