From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lv Zheng Subject: [RFC PATCH v6 2/5] ACPI: button: Add an optional workaround to fix an event missing issue for old userspace Date: Wed, 21 Jun 2017 16:55:09 +0800 Message-ID: <14729dcd394f41facb871bd3cd3faf7fbf14231e.1498034513.git.lv.zheng@intel.com> References: <2a779ae8c280c968b3237ac4a3d9580df7262a46.1493951798.git.lv.zheng@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: systemd-devel-bounces@lists.freedesktop.org Sender: "systemd-devel" To: "Rafael J . Wysocki" , "Rafael J . Wysocki" , Len Brown Cc: systemd-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Lv Zheng , linux-acpi@vger.kernel.org, Benjamin Tissoires , Lv Zheng List-Id: linux-acpi@vger.kernel.org VGhlcmUgYXJlIHBsYXRmb3JtIHZhcmlhdGlvbnMgaW1wbGVtZW50aW5nIEFDUEkgbGlkIGRldmlj ZSBpbiBkaWZmZXJlbnQKd2F5czoKMS4gU29tZSBwbGF0Zm9ybXMgc2VuZCAib3BlbiIgZXZlbnRz IHRvIE9TIGFuZCB0aGUgZXZlbnRzIGFycml2ZSBiZWZvcmUKICAgYnV0dG9uIGRyaXZlciBpcyBy ZXN1bWVkOwoyLiBTb21lIHBsYXRmb3JtcyBzZW5kICJvcGVuIiBldmVudHMgdG8gT1MsIGJ1dCB0 aGUgZXZlbnRzIGFycml2ZSBhZnRlcgogICBidXR0b24gZHJpdmVyIGlzIHJlc3VtZWQsIGV4Liwg U2Ftc3VuZyBOMjEwKzsKMy4gU29tZSBwbGF0Zm9ybXMgbmV2ZXIgc2VuZCAib3BlbiIgZXZlbnRz IHRvIE9TLCBidXQgc2VuZCAib3BlbiIgZXZlbnRzIHRvCiAgIHVwZGF0ZSB0aGUgY2FjaGVkIF9M SUQgcmV0dXJuIHZhbHVlLCBhbmQgdGhlIHVwZGF0ZSBldmVudHMgYXJyaXZlIGJlZm9yZQogICBi dXR0b24gZHJpdmVyIGlzIHJlc3VtZWQ7CjQuIFNvbWUgcGxhdGZvcm1zIG5ldmVyIHNlbmQgIm9w ZW4iIGV2ZW50cyB0byBPUywgYnV0IHNlbmQgIm9wZW4iIGV2ZW50cyB0bwogICB1cGRhdGUgdGhl IGNhY2hlZCBfTElEIHJldHVybiB2YWx1ZSwgYnV0IHRoZSB1cGRhdGUgZXZlbnRzIGFycml2ZSBh ZnRlcgogICBidXR0b24gZHJpdmVyIGlzIHJlc3VtZWQsIGV4LiwgU3VyZmFjZSBQcm8gMzsKNS4g U29tZSBwbGF0Zm9ybXMgbmV2ZXIgc2VuZCAib3BlbiIgZXZlbnRzLCBfTElEIHJldHVybnMgdmFs dWUgc3RpY2tzIHRvCiAgICJjbG9zZSIsIGV4LiwgU3VyZmFjZSBQcm8gMS4KQ3VycmVudGx5LCBh bGwgY2FzZXMgd29yayBmaW5lIHdpdGggc3lzdGVtZCAyMzMsIGJ1dCBvbmx5IGNhc2UgMSwyIHdv cmsKZmluZSB3aXRoIHN5c3RlbWQgMjI5LgoKQ2FzZSAzLDQgY2FuIGJlIHRyZWF0ZWQgYXMgYW4g ZXZlbnQgbWlzc2luZyBpc3N1ZToKICAgQWZ0ZXIgc2VlaW5nIGEgTElEICJjbG9zZSIgZXZlbnQs IHN5c3RlbWQgMjI5IHdpbGwgd2FpdCBzZXZlcmFsIHNlY29uZHMKICAgKEhvbGRvZmZUaW1lb3V0 U2VjKSBiZWZvcmUgc3VzcGVuZGluZyB0aGUgcGxhdGZvcm0uIFRodXMgb24gY2FzZSA0CiAgIHBs YXRmb3JtcywgaWYgdXNlcnMgY2xvc2UgbGlkLCBhbmQgcmUtb3BlbiBpdCBkdXJpbmcgdGhlCiAg IEhvbGRvZmZUaW1lb3V0U2VjIHBlcmlvZCwgdGhlcmUgaXMgc3RpbGwgbm8gIm9wZW4iIGV2ZW50 cyBzZWVuIGJ5IHRoZQogICB1c2Vyc3BhY2UuIFRodXMgc3lzdGVtZCBzdGlsbCBjb25zaWRlcnMg dGhlIGxhc3Qgc3RhdGUgYXMgImNsb3NlIiBhbmQKICAgc3VzcGVuZHMgdGhlIHBsYXRmb3JtIGFm dGVyIHRoZSBIb2xkb2ZmVGltZW91dFNlYyB0aW1lcyBvdXQuCgpOb3RlIHRoYXQgbm90IG9ubHkg c3lzdGVtZCAyMjksIGRlc2t0b3AgbWFuYWdlcnMgKGV4LiwKZ25vbWUtc2V0dGluZ3MtZGFlbW9u KSBhbHNvIHN1ZmZlciBmcm9tIHRoaXMgaXNzdWUuCgpUaGlzIHBhdGNoIHRyaWVzIHRvIGZpeCB0 aGlzIGlzc3VlIGJ5IHBlcmlvZGljYWxseSBzZW5kaW5nIF9MSUQgcmV0dXJuCnZhbHVlIHRvIHVz ZXJzcGFjZSwgd2hpY2ggZW5zdXJlcyB0byB0cmlnZ2VyIGEgU1dfTElEIGV2ZW50IHdoZW4gdGhl CnVuZGVybHlpbmcgaGFyZHdhcmUgc3RhdGUgaGFzIGNoYW5nZWQuIEFzIGFkZGluZyBhIHBlcmlv ZGljIHRpbWVyIGlzIG5vdCBhCnBvd2VyIGZyaWVuZGx5IHdheSwgdGhpcyBwYXRjaCBwcmVwYXJl cyBhbiBvcHRpb24gZm9yIHVzZXJzIHRvIGVuYWJsZSBvbgpmYWlsdXJlIHBsYXRmb3JtcyBmb3Ig b2xkIHVzZXJzcGFjZSBwcm9ncmFtcy4KClVzZXJzIGNhbiBjb25maWd1cmUgdXBkYXRlIGludGVy dmFsIHZpYSBidXR0b24ubGlkX3VwZGF0ZV9pbnRlcnZhbC4KVGhpcyBzaG91bGQgYmUgY29uZmln dXJlZCB0byBhIHNtYWxsZXIgdmFsdWUgdGhhbiBIb2xkb2ZmVGltZW91dFNlYyBpbgovZXRjL3N5 c3RlbWQvbG9naW5kLmNvbmYuCgpDYzogPHN5c3RlbWQtZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Au b3JnPgpDYzogQmVuamFtaW4gVGlzc29pcmVzIDxiZW5qYW1pbi50aXNzb2lyZXNAcmVkaGF0LmNv bT4KQ2M6IFBldGVyIEh1dHRlcmVyIDxwZXRlci5odXR0ZXJlckB3aG8tdC5uZXQ+ClNpZ25lZC1v ZmYtYnk6IEx2IFpoZW5nIDxsdi56aGVuZ0BpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9hY3BpL2J1 dHRvbi5jIHwgMTcgKysrKysrKysrKysrKysrLS0KIDEgZmlsZSBjaGFuZ2VkLCAxNSBpbnNlcnRp b25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvYWNwaS9idXR0b24u YyBiL2RyaXZlcnMvYWNwaS9idXR0b24uYwppbmRleCA2N2EwZDc4Li5hOGIxMTllIDEwMDY0NAot LS0gYS9kcml2ZXJzL2FjcGkvYnV0dG9uLmMKKysrIGIvZHJpdmVycy9hY3BpL2J1dHRvbi5jCkBA IC0xMjYsNiArMTI2LDE0IEBAIHN0YXRpYyB1bnNpZ25lZCBsb25nIGxpZF9ub3RpZnlfdGltZW91 dCBfX3JlYWRfbW9zdGx5ID0gMTA7CiBtb2R1bGVfcGFyYW0obGlkX25vdGlmeV90aW1lb3V0LCB1 bG9uZywgMDY0NCk7CiBNT0RVTEVfUEFSTV9ERVNDKGxpZF9ub3RpZnlfdGltZW91dCwgIlRpbWVv dXQgKHMpIGJlZm9yZSByZWNlaXZpbmcgbGlkIG5vdGlmaWNhdGlvbiIpOwogCitzdGF0aWMgYm9v bCBsaWRfcGVyaW9kaWNfdXBkYXRlIF9fcmVhZF9tb3N0bHkgPSBmYWxzZTsKK21vZHVsZV9wYXJh bShsaWRfcGVyaW9kaWNfdXBkYXRlLCBib29sLCAwNjQ0KTsKK01PRFVMRV9QQVJNX0RFU0MobGlk X3BlcmlvZGljX3VwZGF0ZSwgIlBlcmlvZGljYWxseSBzZW5kaW5nIGxpZCBzdGF0ZSB1cGRhdGVz Iik7CisKK3N0YXRpYyB1bnNpZ25lZCBsb25nIGxpZF91cGRhdGVfaW50ZXJ2YWwgX19yZWFkX21v c3RseSA9IDEgKiBNU0VDX1BFUl9TRUM7Cittb2R1bGVfcGFyYW0obGlkX3VwZGF0ZV9pbnRlcnZh bCwgdWxvbmcsIDA2NDQpOworTU9EVUxFX1BBUk1fREVTQyhsaWRfdXBkYXRlX2ludGVydmFsLCAi SW50ZXJ2YWwgKG1zKSBiZXR3ZWVuIGxpZCBwZXJpb2RpYyB1cGRhdGVzIik7CisKIC8qIC0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGUyBJbnRlcmZhY2Ug KC9wcm9jKQogICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KQEAgLTM5NSw2ICs0MDMsOCBAQCBzdGF0 aWMgdm9pZCBhY3BpX2xpZF9pbml0aWFsaXplX3N0YXRlKHN0cnVjdCBhY3BpX2RldmljZSAqZGV2 aWNlKQogCQlicmVhazsKIAljYXNlIEFDUElfQlVUVE9OX0xJRF9JTklUX01FVEhPRDoKIAkJKHZv aWQpYWNwaV9saWRfdXBkYXRlX3N0YXRlKGRldmljZSk7CisJCWlmIChsaWRfcGVyaW9kaWNfdXBk YXRlKQorCQkJYWNwaV9saWRfc3RhcnRfdGltZXIoZGV2aWNlLCBsaWRfdXBkYXRlX2ludGVydmFs KTsKIAkJYnJlYWs7CiAJY2FzZSBBQ1BJX0JVVFRPTl9MSURfSU5JVF9JR05PUkU6CiAJZGVmYXVs dDoKQEAgLTU2MCw4ICs1NzAsMTEgQEAgc3RhdGljIGludCBhY3BpX2J1dHRvbl9hZGQoc3RydWN0 IGFjcGlfZGV2aWNlICpkZXZpY2UpCiAJCSAqIG1vcmUgd2Ugb25seSBjYXJlIGFib3V0IHRoZSBs YXN0IG9uZS4uLgogCQkgKi8KIAkJbGlkX2RldmljZSA9IGRldmljZTsKLQkJYWNwaV9saWRfc3Rh cnRfdGltZXIoZGV2aWNlLAotCQkJbGlkX25vdGlmeV90aW1lb3V0ICogTVNFQ19QRVJfU0VDKTsK KwkJaWYgKGxpZF9wZXJpb2RpY191cGRhdGUpCisJCQlhY3BpX2xpZF9pbml0aWFsaXplX3N0YXRl KGRldmljZSk7CisJCWVsc2UKKwkJCWFjcGlfbGlkX3N0YXJ0X3RpbWVyKGRldmljZSwKKwkJCQls aWRfbm90aWZ5X3RpbWVvdXQgKiBNU0VDX1BFUl9TRUMpOwogCX0KIAogCXByaW50ayhLRVJOX0lO Rk8gUFJFRklYICIlcyBbJXNdXG4iLCBuYW1lLCBhY3BpX2RldmljZV9iaWQoZGV2aWNlKSk7Ci0t IAoyLjcuNAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K c3lzdGVtZC1kZXZlbCBtYWlsaW5nIGxpc3QKc3lzdGVtZC1kZXZlbEBsaXN0cy5mcmVlZGVza3Rv cC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9zeXN0 ZW1kLWRldmVsCg==