Received: by 2002:a25:6193:0:0:0:0:0 with SMTP id v141csp124457ybb; Thu, 9 Apr 2020 18:52:23 -0700 (PDT) X-Google-Smtp-Source: APiQypID/T2ZvGt04uWQgWjLcrLuDdaTVmaMJLfez6UnsUeyTVpqzZVHAUoIlYUQzdPW3AO10ZYv X-Received: by 2002:a05:6214:1781:: with SMTP id ct1mr3171115qvb.87.1586483542879; Thu, 09 Apr 2020 18:52:22 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1586483542; cv=pass; d=google.com; s=arc-20160816; b=NVYUEUJ0lk9We6dNpV1x9HVIim0uyEWRLxHVU+z/4nj2NAM68r1J9Hev9xZ/K67fP4 MjC0loav6xxgCTkeR8hPrDD90q9EeFB5fQoKwF/lH6mr8VoEQgJN/nwMGckbpUUghZ+F lMylGk/XW/jIZkxmk9H78QGlzEAFNNFqeuKwbTSpJRrkavIVlrG8fOPnGQ4POQYeQd+9 AzJXZWFIJtlYjY9g4I21A/D4EK+kUbb/hJZt17hnnrvQ62wDgwoWgZXtpOZszVMoGmXH 1JzstTwJpz3c0XJqXHwAds+c3eit4QatP2GiTBQvV36xk18kHG9+RkxNNY1eBbAplMdq 20Vw== 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=hPvrPRlZiBqeeE463/19wTLOoWV38Rqps0eicI4EEQo=; b=HuR2y2DlLN8L7584msk3cKrbxX4LjFL7Xf+6YZWZU8UIyJLjoOD5E81IF2pfvitDl7 5PBPzGgMdoQJy1Ae/2UOkgyOTo1J/7TRDcz6VzlPSIdFEl1al+AnlybsI0z3FnxKbhwG VMxxS8hGopK+FAZxR42hgZicyeP7fU48HlFaX9bFh3k3AvRFSeMUVKsDc4xYfSKXAAtr l6Xr4596nHNOR8gNP3TOurQ0Yi0zZ+BTkdTEiNd/mOEcJBtZAqplleA3tE/EkhfCly64 mA8fmfza8GS92D2z7rE10Ukk5VYpepU1AQ2rXiidvmkeSuE4F7zti9yTpbrauQgpgIy1 Wx3w== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@alpsgroup.onmicrosoft.com header.s=selector2-alpsgroup-onmicrosoft-com header.b=CVxu2hNM; arc=pass (i=1 spf=pass spfdomain=alpsalpine.com dkim=pass dkdomain=alpsalpine.com dmarc=pass fromdomain=alpsalpine.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 d14si359744qti.47.2020.04.09.18.52.08; Thu, 09 Apr 2020 18:52:22 -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=CVxu2hNM; arc=pass (i=1 spf=pass spfdomain=alpsalpine.com dkim=pass dkdomain=alpsalpine.com dmarc=pass fromdomain=alpsalpine.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 S1726670AbgDJBul (ORCPT + 99 others); Thu, 9 Apr 2020 21:50:41 -0400 Received: from mail-eopbgr1410045.outbound.protection.outlook.com ([40.107.141.45]:63519 "EHLO JPN01-OS2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726477AbgDJBuk (ORCPT ); Thu, 9 Apr 2020 21:50:40 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VVqDqTgUs4Eg5V9fuy0BTI4JeP2qqAbzIpGJhM5j7Ayc9Zx5xzmaVtsc/T72jutz7WT64vBCtK0HGWmIf9OP4cHqelFFWNy3w2ciLoPM0tVxMlqzGhAcbom4Ip0bLcTDhx0tbK8B7w0TfgXD0NEKW7wn55rQqcVjAnV024/xnQF2rRu4KlkNGpT0ar/dxAxn8VHLQlofEY8IyBWCV1f9SMLIWRasf0/yO74fA8hwmHsu5UtusrIU6hzJA/IQVNXAvN38Pu7QABY8Pzd+idLcpCRop5h/uNVhIsBGfvHbGWqC5rMT4pvdI/jlH5ZfVxfgfGafXX1UVlhtiygM6aqxKw== 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=hPvrPRlZiBqeeE463/19wTLOoWV38Rqps0eicI4EEQo=; b=JBg2D4IfTgdXJBnvO4e5QuQeCXnmL81CA3E74d456M3uhU3rqOOeLf0UMe7GRJfMo4M/KtCUITquMQxYnL4eFQO6Gn5dITts7RlKX708zHbxd/eyZI4DH2NW6Mic96maM8RkyssxcBXv9TCU1CQWit7bii8diZCemkosPNjA4LUKZ75alaMXSbq5REVODR2/tdLbSXqq4FehM5t/8XcAoVkSWAg1EgKQpOXYrTXWOvaumO0ROYhqgWPpulMrpz+nXPpVnoWw37j0CwQcM/GSq2MeBhElBnWm2eRBENqjRag3K0HRhKf0XJRgoWAolyKYR6oXRafPwWM4sLZSY7q7nA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=alpsalpine.com; dmarc=pass action=none header.from=alpsalpine.com; dkim=pass header.d=alpsalpine.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=hPvrPRlZiBqeeE463/19wTLOoWV38Rqps0eicI4EEQo=; b=CVxu2hNMQ5dJ/Wket6hMX6bD5O1cgQehUKuo5dKVrVwgWfarSRrLLuWLMOXRPwW3VGaOlddDhwrD6z82dT2a8LGNg1Y2PeDjUYKq5hndaA1yiR/BCsXbwU2eGzv095oHY16DgjdnQfJXLn+wZ7rB/+dJu5ZRSwXg7xjQeDlEJBQ= Received: from TYAPR01MB3871.jpnprd01.prod.outlook.com (20.178.136.214) by TYAPR01MB4798.jpnprd01.prod.outlook.com (20.179.187.78) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2878.16; Fri, 10 Apr 2020 01:50:32 +0000 Received: from TYAPR01MB3871.jpnprd01.prod.outlook.com ([fe80::1dd1:dda9:f760:4bdd]) by TYAPR01MB3871.jpnprd01.prod.outlook.com ([fe80::1dd1:dda9:f760:4bdd%6]) with mapi id 15.20.2878.022; Fri, 10 Apr 2020 01:50:32 +0000 From: Masaki Ota To: Xiaojian Cao , Artem Borisov CC: "jikos@kernel.org" , Benjamin Tissoires , Henrik Rydberg , "linux-input@vger.kernel.org" , "linux-kernel@vger.kernel.org" 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/TfssrKhxZ8AAgAAQo0CAAA8hsIAADIzg Date: Fri, 10 Apr 2020 01:50:32 +0000 Message-ID: References: <20200409230009.22551-1-dedsa2002@gmail.com> In-Reply-To: Accept-Language: ja-JP, en-US Content-Language: ja-JP X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=masaki.ota@alpsalpine.com; x-originating-ip: [106.184.109.136] x-ms-publictraffictype: Email x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: 7bcb3c65-5a3b-4649-b0af-08d7dcf18e39 x-ms-traffictypediagnostic: TYAPR01MB4798: 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:TYAPR01MB3871.jpnprd01.prod.outlook.com;PTR:;CAT:NONE;SFTY:;SFS:(10009020)(4636009)(376002)(366004)(39860400002)(346002)(396003)(136003)(5660300002)(52536014)(85182001)(81156014)(71200400001)(81166007)(8676002)(33656002)(2906002)(4326008)(8936002)(55016002)(478600001)(316002)(66446008)(66946007)(110136005)(66476007)(54906003)(66556008)(9686003)(6506007)(53546011)(76116006)(64756008)(86362001)(7696005)(26005)(186003);DIR:OUT;SFP:1101; received-spf: None (protection.outlook.com: alpsalpine.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 243Z42Z0ktbp5z2BXGrbSJ6eFyxloRDr/5k4ZWXcj72Q7ks/lAZfR9gCSHdzVjQ4pBdd89uNRMP7TTVrVqcsB6jWwBkLSyKkzTVfdfNpbmfckkPZ/7Fwvmpd+viSY577puBKeUBTcDO2MLDrU4WUUPf0pXI9fUg4qrtEguB30zODGmuPFx2rj0mHj5urlRDh86+7x6sFau/mLTt4VbMivrTQplpNl7bsy2Rm4/pib7YRe7mpAJ32d00geLbN1M4aiPesfLmKT3+zu7Lc/3ZJJ+aAfUOHFIRgrJxl+/ujij8j35Lm7U07HOq0GHeCdNwKx+2EDOnDLPT5b4VenOS3n3FNGWsJQ3RfCTJlbm05Ykkr9g5lZAIUeLysfwMa8azILbx2l8aJudBVzpI24khsSf18JWJfINgy6yGAvlDl6dBbSf6mOo2fKvtg5M/E/wXD x-ms-exchange-antispam-messagedata: GlApWRrxpAQtK3NPI03Vk7h058gLbKpx6yVo9xfeH8B59YF4T7Bh/EkZRQ36ficbLulRGvlXr745NvjL0pqgkyfSmQ6vfPFIS1dHt4Da0G47a8ZiAArqY8EZpQ5EyqUomp5VYhR0Hg+zdgNFxoWB1A== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: alpsalpine.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7bcb3c65-5a3b-4649-b0af-08d7dcf18e39 X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Apr 2020 01:50:32.6809 (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: S27FIhzXx75KPNVleAERxuOK9owwPoS2nA8MPwhhvjoqkLRBuoi5owKjOHQmaLYzsxSfysXYLfzc4g3G22p/5mkVJLBKoWtk04C+kw6E4Ec= X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYAPR01MB4798 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org SGksIENhby1zYW4sDQoNCkkgZ290IGl0LiBJIGFsc28gY29uZmlybWVkIHRoaXMgdG91Y2hwYWQg aXMgYSBzcGVjaWFsLg0KV2hhdCBkbyB5b3UgdGhpbmsgdGhpcyBjb2RlIG1vZGlmaWNhdGlvbj8N Cg0KQmVzdCBSZWdhcmRzLA0KTWFzYWtpIE90YQ0KLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0N CkZyb206IOabuSDmm4nlu7ogWGlhb2ppYW4gQ2FvIDx4aWFvamlhbi5jYW9AY24uYWxwcy5jb20+ IA0KU2VudDogRnJpZGF5LCBBcHJpbCAxMCwgMjAyMCAxMDowMyBBTQ0KVG86IOWkqueUsCDnnJ/l lpwgTWFzYWtpIE90YSA8bWFzYWtpLm90YUBhbHBzYWxwaW5lLmNvbT47IEFydGVtIEJvcmlzb3Yg PGRlZHNhMjAwMkBnbWFpbC5jb20+DQpDYzogamlrb3NAa2VybmVsLm9yZzsgQmVuamFtaW4gVGlz c29pcmVzIDxiZW5qYW1pbi50aXNzb2lyZXNAcmVkaGF0LmNvbT47IEhlbnJpayBSeWRiZXJnIDxy eWRiZXJnQGJpdG1hdGgub3JnPjsgbGludXgtaW5wdXRAdmdlci5rZXJuZWwub3JnOyBsaW51eC1r ZXJuZWxAdmdlci5rZXJuZWwub3JnDQpTdWJqZWN0OiBSRTogW1BBVENIIDIvMl0gSElEOiBhbHBz OiBSZWZhY3RvciBheGlzIHJlc29sdXRpb24gbG9naWMNCg0KSGkgT3RhLXNhbiwNCg0KVGhhbmtz IGZvciB5b3VyIGNoZWNraW5nLg0KSW4gZmFjdCwgc29tZSBvZiB0aGUgVTEgZGV2aWNlcyB3b3Jr IGFzIG5vbi1QVFAuDQpBVUkxNjU3IGlzIHVzaW5nIFUxKEtHREJDSEEwMDRBKSB3aG9zZSBmaXJt d2FyZSBqdXN0IHN1cHBvcnRzIG1vdXNlIG1vZGUgYW5kIGxlZ2FjeSBtb2RlLiANCg0KQmVzdCBS ZWdhcmRzLA0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0K SmFzb24gQ2FvKOabueaZk+W7uikNCg0KDQotLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KRnJv bTog5aSq55SwIOecn+WWnCBNYXNha2kgT3RhIDxtYXNha2kub3RhQGFscHNhbHBpbmUuY29tPiAN ClNlbnQ6IEZyaWRheSwgQXByaWwgMTAsIDIwMjAgODoyOSBBTQ0KVG86IOabuSDmm4nlu7ogWGlh b2ppYW4gQ2FvIDx4aWFvamlhbi5jYW9AY24uYWxwcy5jb20+OyBBcnRlbSBCb3Jpc292IDxkZWRz YTIwMDJAZ21haWwuY29tPg0KQ2M6IGppa29zQGtlcm5lbC5vcmc7IEJlbmphbWluIFRpc3NvaXJl cyA8YmVuamFtaW4udGlzc29pcmVzQHJlZGhhdC5jb20+OyBIZW5yaWsgUnlkYmVyZyA8cnlkYmVy Z0BiaXRtYXRoLm9yZz47IGxpbnV4LWlucHV0QHZnZXIua2VybmVsLm9yZzsgbGludXgta2VybmVs QHZnZXIua2VybmVsLm9yZw0KU3ViamVjdDogUkU6IFtQQVRDSCAyLzJdIEhJRDogYWxwczogUmVm YWN0b3IgYXhpcyByZXNvbHV0aW9uIGxvZ2ljDQoNCkhpLCBDYW8tc2FuLA0KDQpEbyB5b3Uga25v dyBBVUkxNjU3IGRldmljZT8gVGhpcyBkZXZpY2UgbG9va3MgVTEuDQpJIHRoaW5rIHJlY2VudCBh bGwgVTEgZGV2aWNlcyB3b3JrIGFzIFBUUC4NCkxpbnV4IGFsc28gc3VwcG9ydHMgUFRQLCBzbyBJ IHRoaW5rIHdlIHNob3VsZCBhZGQgc29tZXRoaW5nIElEIHRvIExpbnV4IHNvdXJjZSBjb2RlLiAo SSByZW1lbWJlciBhIHNvbWV0aGluZyBmbGFnIGlzIGFscmVhZHkgZXhpc3QuKQ0KDQpCZXN0IFJl Z2FyZHMsDQpNYXNha2kgT3RhDQotLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KRnJvbTogQXJ0 ZW0gQm9yaXNvdiA8ZGVkc2EyMDAyQGdtYWlsLmNvbT4gDQpTZW50OiBGcmlkYXksIEFwcmlsIDEw LCAyMDIwIDg6MDAgQU0NCkNjOiBqaWtvc0BrZXJuZWwub3JnOyDlpKrnlLAg55yf5ZacIE1hc2Fr aSBPdGEgPG1hc2FraS5vdGFAYWxwc2FscGluZS5jb20+OyBBcnRlbSBCb3Jpc292IDxkZWRzYTIw MDJAZ21haWwuY29tPjsgQmVuamFtaW4gVGlzc29pcmVzIDxiZW5qYW1pbi50aXNzb2lyZXNAcmVk aGF0LmNvbT47IEhlbnJpayBSeWRiZXJnIDxyeWRiZXJnQGJpdG1hdGgub3JnPjsgbGludXgtaW5w dXRAdmdlci5rZXJuZWwub3JnOyBsaW51eC1rZXJuZWxAdmdlci5rZXJuZWwub3JnDQpTdWJqZWN0 OiBbUEFUQ0ggMi8yXSBISUQ6IGFscHM6IFJlZmFjdG9yIGF4aXMgcmVzb2x1dGlvbiBsb2dpYw0K DQpBVUkxNjU3IGRvZXNuJ3QgZm9sbG93IHRoZSBzYW1lIGxvZ2ljIGZvciByZXNvbHV0aW9uIGNh bGN1bGF0aW9uLCBzaW5jZSB0aGUgcmVzdWx0aW5nIHZhbHVlcyBhcmUgaW5jb3JyZWN0LiBJbnN0 ZWFkLCBpdCByZXBvcnRzIHRoZSBhY3R1YWwgcmVzb2x1dGlvbiB2YWx1ZXMgaW4gcGxhY2Ugb2Yg dGhlIHBpdGNoIG9uZXMuDQpXaGlsZSB3ZSdyZSBhdCBpdCwgYWxzbyByZWZhY3RvciB0aGUgd2hv bGUgcmVzb2x1dGlvbiBsb2dpYyB0byBtYWtlIGl0IG1vcmUgZ2VuZXJpYyBhbmQgc2Vuc2libGUg Zm9yIG11bHRpcGxlIGRldmljZSBzdXBwb3J0Lg0KDQpUaGVyZSBhcmUgdHdvIG1haW4gbG9naWNh bCBwcm9ibGVtcyB3aXRoIHRoZSBjdXJyZW50IGNvZGU6DQoxLiBhY3RpdmVfbGVuX21tIHZhbHVl cyBhcmUgb25seSB1c2VkIGZvciByZXNvbHV0aW9uIGNhbGN1bGF0aW9uIG9uIFUxLCB5ZXQgYXJl IGV4cG9zZWQgZ2xvYmFsbHkgYXMgcGFydCBvZiBhbHBzX2RldiBzdHJ1Y3R1cmUuDQoyLiBUaGUg cmVzb2x1dGlvbiBjYWxjdWxhdGlvbiBwcm9jZXNzIGhhcHBlbnMgaW4gYWxwc19pbnB1dF9jb25m aWd1cmVkLCB3aGlsZSBldmVyeXRoaW5nIGVsc2UgaXMgY2FsY3VsYXRlZCBpbiB1MV9pbml0IGZ1 bmN0aW9uLg0KDQpUaGVzZSBwcm9ibGVtcyBiZWNvbWUgbW9yZSBhcHBhcmVudCB3aGVuIHdlIHRy eSB0byBzdXBwb3J0IGEgZGV2aWNlIHRoYXQgZG9lc24ndCBmb2xsb3cgdGhlIHNhbWUgcmVzb2x1 dGlvbiBjYWxjdWxhdGlvbiBsb2dpYyBhcyBVMS4NClNpbmNlIGFscHNfaW5wdXRfY29uZmlndXJl ZCBpcyBhIGRldmljZS1hZ25vc3RpYyBmdW5jdGlvbiwgd2Ugc2hvdWxkIGF2b2lkIGRvaW5nIGFu eSBtZWFzdXJlbWVudHMgdGhlcmUgYW5kIGhhbmRsZSB0aGVtIGluIGRldmljZS1zcGVjaWZpYyBp bml0IGZ1bmN0aW9ucyBsaWtlIHUxL1Q0X2luaXQgaW5zdGVhZC4NCg0KVG8gZWxpbWluYXRlIHRo ZXNlIHByb2JsZW1zIHdlIGFkZCBnbG9iYWwgeF9yZXMgYW5kIHlfcmVzIHZhbHVlcyBhbmQgcG9w dWxhdGUgdGhlbSBvbiBhIGRldmljZS1zcGVjaWZpYyBiYXNpcyBpbiB0aGUgYWNjb3JkaW5nIGlu aXQgZnVuY3Rpb25zLg0KDQpTaWduZWQtb2ZmLWJ5OiBBcnRlbSBCb3Jpc292IDxkZWRzYTIwMDJA Z21haWwuY29tPg0KLS0tDQogZHJpdmVycy9oaWQvaGlkLWFscHMuYyB8IDQxICsrKysrKysrKysr KysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tDQogMSBmaWxlIGNoYW5nZWQsIDI1IGluc2Vy dGlvbnMoKyksIDE2IGRlbGV0aW9ucygtKQ0KDQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9oaWQvaGlk LWFscHMuYyBiL2RyaXZlcnMvaGlkL2hpZC1hbHBzLmMgaW5kZXggYzJhMmJkNTI4ODkwLi40OTRj MDhjY2E2NDUgMTAwNjQ0DQotLS0gYS9kcml2ZXJzL2hpZC9oaWQtYWxwcy5jDQorKysgYi9kcml2 ZXJzL2hpZC9oaWQtYWxwcy5jDQpAQCAtODMsOCArODMsOCBAQCBlbnVtIGRldl9udW0gew0KICAq IEBtYXhfZmluZ2VyczogdG90YWwgbnVtYmVyIG9mIGZpbmdlcnMNCiAgKiBAaGFzX3NwOiBib29s ZWFuIG9mIHNwIGV4aXN0ZW5zZQ0KICAqIEBzcF9idG5faW5mbzogYnV0dG9uIGluZm9ybWF0aW9u DQotICogQHhfYWN0aXZlX2xlbl9tbTogYWN0aXZlIGFyZWEgbGVuZ3RoIG9mIFggKG1tKQ0KLSAq IEB5X2FjdGl2ZV9sZW5fbW06IGFjdGl2ZSBhcmVhIGxlbmd0aCBvZiBZIChtbSkNCisgKiBAeF9y ZXM6IHJlc29sdXRpb24gb2YgWA0KKyAqIEB5X3JlczogcmVzb2x1dGlvbiBvZiBZDQogICogQHhf bWF4OiBtYXhpbXVtIHggY29vcmRpbmF0ZSB2YWx1ZQ0KICAqIEB5X21heDogbWF4aW11bSB5IGNv b3JkaW5hdGUgdmFsdWUNCiAgKiBAeF9taW46IG1pbmltdW0geCBjb29yZGluYXRlIHZhbHVlDQpA QCAtMTAwLDkgKzEwMCwxMCBAQCBzdHJ1Y3QgYWxwc19kZXYgew0KIAllbnVtIGRldl9udW0gZGV2 X3R5cGU7DQogCXU4ICBtYXhfZmluZ2VyczsNCiAJdTggIGhhc19zcDsNCisJdTggIG5vX3BpdGNo Ow0KIAl1OAlzcF9idG5faW5mbzsNCi0JdTMyCXhfYWN0aXZlX2xlbl9tbTsNCi0JdTMyCXlfYWN0 aXZlX2xlbl9tbTsNCisJdTMyCXhfcmVzOw0KKwl1MzIJeV9yZXM7DQogCXUzMgl4X21heDsNCiAJ dTMyCXlfbWF4Ow0KIAl1MzIJeF9taW47DQpAQCAtNTUwLDEwICs1NTEsNiBAQCBzdGF0aWMgaW50 IHUxX2luaXQoc3RydWN0IGhpZF9kZXZpY2UgKmhkZXYsIHN0cnVjdCBhbHBzX2RldiAqcHJpX2Rh dGEpDQogCQlkZXZfZXJyKCZoZGV2LT5kZXYsICJmYWlsZWQgVTFfUkVTT19EV05fQUJTICglZClc biIsIHJldCk7DQogCQlnb3RvIGV4aXQ7DQogCX0NCi0JcHJpX2RhdGEtPnhfYWN0aXZlX2xlbl9t bSA9DQotCQkocGl0Y2hfeCAqIChzZW5fbGluZV9udW1feCAtIDEpKSAvIDEwOw0KLQlwcmlfZGF0 YS0+eV9hY3RpdmVfbGVuX21tID0NCi0JCShwaXRjaF95ICogKHNlbl9saW5lX251bV95IC0gMSkp IC8gMTA7DQogDQogCXByaV9kYXRhLT54X21heCA9DQogCQkocmVzb2x1dGlvbiA8PCAyKSAqIChz ZW5fbGluZV9udW1feCAtIDEpOyBAQCAtNTYyLDYgKzU1OSwxOCBAQCBzdGF0aWMgaW50IHUxX2lu aXQoc3RydWN0IGhpZF9kZXZpY2UgKmhkZXYsIHN0cnVjdCBhbHBzX2RldiAqcHJpX2RhdGEpDQog CQkocmVzb2x1dGlvbiA8PCAyKSAqIChzZW5fbGluZV9udW1feSAtIDEpOw0KIAlwcmlfZGF0YS0+ eV9taW4gPSAxOw0KIA0KKwlpZiAocHJpX2RhdGEtPm5vX3BpdGNoKSB7DQorCQlwcmlfZGF0YS0+ eF9yZXMgPSBwaXRjaF94Ow0KKwkJcHJpX2RhdGEtPnlfcmVzID0gcGl0Y2hfeTsNCisJfSBlbHNl IHsNCisJCXByaV9kYXRhLT54X3JlcyA9DQorCQkJKHByaV9kYXRhLT54X21heCAtIDEpIC8NCisJ CQkoKHBpdGNoX3ggKiAoc2VuX2xpbmVfbnVtX3ggLSAxKSkgLyAxMCk7DQorCQlwcmlfZGF0YS0+ eV9yZXMgPQ0KKwkJCShwcmlfZGF0YS0+eV9tYXggLSAxKSAvDQorCQkJKChwaXRjaF95ICogKHNl bl9saW5lX251bV95IC0gMSkpIC8gMTApOw0KKwl9DQorDQogCXJldCA9IHUxX3JlYWRfd3JpdGVf cmVnaXN0ZXIoaGRldiwgQUREUkVTU19VMV9QQURfQlROLA0KIAkJCSZ0bXAsIDAsIHRydWUpOw0K IAlpZiAocmV0IDwgMCkgew0KQEAgLTYyMiw3ICs2MzEsNyBAQCBzdGF0aWMgaW50IFQ0X2luaXQo c3RydWN0IGhpZF9kZXZpY2UgKmhkZXYsIHN0cnVjdCBhbHBzX2RldiAqcHJpX2RhdGEpDQogCXBy aV9kYXRhLT54X21pbiA9IFQ0X0NPVU5UX1BFUl9FTEVDVFJPREU7DQogCXByaV9kYXRhLT55X21h eCA9IHNlbl9saW5lX251bV95ICogVDRfQ09VTlRfUEVSX0VMRUNUUk9ERTsNCiAJcHJpX2RhdGEt PnlfbWluID0gVDRfQ09VTlRfUEVSX0VMRUNUUk9ERTsNCi0JcHJpX2RhdGEtPnhfYWN0aXZlX2xl bl9tbSA9IHByaV9kYXRhLT55X2FjdGl2ZV9sZW5fbW0gPSAwOw0KKwlwcmlfZGF0YS0+eF9yZXMg PSBwcmlfZGF0YS0+eV9yZXMgPSAwOw0KIAlwcmlfZGF0YS0+YnRuX2NudCA9IDE7DQogDQogCXJl dCA9IHQ0X3JlYWRfd3JpdGVfcmVnaXN0ZXIoaGRldiwgUFJNX1NZU19DT05GSUdfMSwgJnRtcCwg MCwgdHJ1ZSk7IEBAIC02NzUsNyArNjg0LDcgQEAgc3RhdGljIGludCBhbHBzX2lucHV0X2NvbmZp Z3VyZWQoc3RydWN0IGhpZF9kZXZpY2UgKmhkZXYsIHN0cnVjdCBoaWRfaW5wdXQgKmhpKQ0KIAlz dHJ1Y3QgYWxwc19kZXYgKmRhdGEgPSBoaWRfZ2V0X2RydmRhdGEoaGRldik7DQogCXN0cnVjdCBp bnB1dF9kZXYgKmlucHV0ID0gaGktPmlucHV0LCAqaW5wdXQyOw0KIAlpbnQgcmV0Ow0KLQlpbnQg cmVzX3gsIHJlc195LCBpOw0KKwlpbnQgaTsNCiANCiAJZGF0YS0+aW5wdXQgPSBpbnB1dDsNCiAN CkBAIC03MDYsMTIgKzcxNSw5IEBAIHN0YXRpYyBpbnQgYWxwc19pbnB1dF9jb25maWd1cmVkKHN0 cnVjdCBoaWRfZGV2aWNlICpoZGV2LCBzdHJ1Y3QgaGlkX2lucHV0ICpoaSkNCiAJaW5wdXRfc2V0 X2Fic19wYXJhbXMoaW5wdXQsIEFCU19NVF9QT1NJVElPTl9ZLA0KIAkJCQkJCWRhdGEtPnlfbWlu LCBkYXRhLT55X21heCwgMCwgMCk7DQogDQotCWlmIChkYXRhLT54X2FjdGl2ZV9sZW5fbW0gJiYg ZGF0YS0+eV9hY3RpdmVfbGVuX21tKSB7DQotCQlyZXNfeCA9IChkYXRhLT54X21heCAtIDEpIC8g ZGF0YS0+eF9hY3RpdmVfbGVuX21tOw0KLQkJcmVzX3kgPSAoZGF0YS0+eV9tYXggLSAxKSAvIGRh dGEtPnlfYWN0aXZlX2xlbl9tbTsNCi0NCi0JCWlucHV0X2Fic19zZXRfcmVzKGlucHV0LCBBQlNf TVRfUE9TSVRJT05fWCwgcmVzX3gpOw0KLQkJaW5wdXRfYWJzX3NldF9yZXMoaW5wdXQsIEFCU19N VF9QT1NJVElPTl9ZLCByZXNfeSk7DQorCWlmIChkYXRhLT54X3JlcyAmJiBkYXRhLT55X3Jlcykg ew0KKwkJaW5wdXRfYWJzX3NldF9yZXMoaW5wdXQsIEFCU19NVF9QT1NJVElPTl9YLCBkYXRhLT54 X3Jlcyk7DQorCQlpbnB1dF9hYnNfc2V0X3JlcyhpbnB1dCwgQUJTX01UX1BPU0lUSU9OX1ksIGRh dGEtPnlfcmVzKTsNCiAJfQ0KIA0KIAlpbnB1dF9zZXRfYWJzX3BhcmFtcyhpbnB1dCwgQUJTX01U X1BSRVNTVVJFLCAwLCA2NCwgMCwgMCk7IEBAIC04MDIsOCArODA4LDExIEBAIHN0YXRpYyBpbnQg YWxwc19wcm9iZShzdHJ1Y3QgaGlkX2RldmljZSAqaGRldiwgY29uc3Qgc3RydWN0IGhpZF9kZXZp Y2VfaWQgKmlkKQ0KIAkJYnJlYWs7DQogCWNhc2UgSElEX0RFVklDRV9JRF9BTFBTX1UxX0RVQUw6 DQogCWNhc2UgSElEX0RFVklDRV9JRF9BTFBTX1UxOg0KKwkJZGF0YS0+ZGV2X3R5cGUgPSBVMTsN CisJCWJyZWFrOw0KIAljYXNlIEhJRF9ERVZJQ0VfSURfQUxQU18xNjU3Og0KIAkJZGF0YS0+ZGV2 X3R5cGUgPSBVMTsNCisJCWRhdGEtPm5vX3BpdGNoID0gMTsNCiAJCWJyZWFrOw0KIAlkZWZhdWx0 Og0KIAkJZGF0YS0+ZGV2X3R5cGUgPSBVTktOT1dOOw0KLS0NCjIuMjYuMA0KDQo=