From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1LnG5z-0002b1-03 for qemu-devel@nongnu.org; Fri, 27 Mar 2009 13:43:55 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1LnG5u-0002YQ-EB for qemu-devel@nongnu.org; Fri, 27 Mar 2009 13:43:54 -0400 Received: from [199.232.76.173] (port=39496 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1LnG5u-0002YE-2D for qemu-devel@nongnu.org; Fri, 27 Mar 2009 13:43:50 -0400 Received: from smtp5-g21.free.fr ([212.27.42.5]:33959) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1LnG5t-0001JV-3C for qemu-devel@nongnu.org; Fri, 27 Mar 2009 13:43:49 -0400 Received: from smtp5-g21.free.fr (localhost [127.0.0.1]) by smtp5-g21.free.fr (Postfix) with ESMTP id 68534D48110 for ; Fri, 27 Mar 2009 18:43:43 +0100 (CET) Received: from laptop (vaf26-2-82-244-111-82.fbx.proxad.net [82.244.111.82]) by smtp5-g21.free.fr (Postfix) with ESMTP id 739E0D4816D for ; Fri, 27 Mar 2009 18:43:41 +0100 (CET) From: "=?utf-8?q?Fran=C3=A7ois?= Revol" Date: Fri, 27 Mar 2009 18:43:44 +0100 CET Message-Id: <21430962269-BeMail@laptop> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary=----------Zoidberg-BeMail-temp-------- Subject: [Qemu-devel] [PATCH][RFC] USB Wacom fixes Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org This is a multipart message in MIME format. ------------Zoidberg-BeMail-temp-------- Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Following my previous mail about usb-wacom which didn't received many comments... I added code to handle IDLE mode instead of always accepting polling requests from the guest, with some help from Paul Brook on IRC. I mostly just copied the missing part from the hid code. As Paul said, usb-wacom.c mostly copies usb-hid.c appart from the wacom specific mode and should probably be merged later on. But at least with this fix I get correct coordinates and buttons, and guest cpu usage dropped from 50% to unnoticeable when not moving the mouse. Btw, about the scaling: mmu=5Fman: instead of doing some scale work for x and y, correct solution is to change the hid descriptor hpoussin nope - the Haiku driver disregards the HID desc - the linux one too IIRC - the HID desc for some wacom tablets, including the penpartner is known to be buggy Fran=C3=A7ois. ------------Zoidberg-BeMail-temp-------- Content-Transfer-Encoding: base64 Content-Disposition: BMailAttachment Content-Type: text/plain; name=qemu-usb-wacom-fix-002.diff.txt SW5kZXg6IGh3L3VzYi13YWNvbS5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGh3L3VzYi13YWNvbS5jCShyw6l2 aXNpb24gNjg4MykKKysrIGh3L3VzYi13YWNvbS5jCShjb3BpZSBkZSB0cmF2YWlsKQpAQCAtNTAs NiArNTAsOCBAQAogICAgICAgICBXQUNPTV9NT0RFX0hJRCA9IDEsCiAgICAgICAgIFdBQ09NX01P REVfV0FDT00gPSAyLAogICAgIH0gbW9kZTsKKyAgICB1aW50OF90IGlkbGU7CisgICAgaW50IGNo YW5nZWQ7CiB9IFVTQldhY29tU3RhdGU7CiAKIHN0YXRpYyBjb25zdCB1aW50OF90IHFlbXVfd2Fj b21fZGV2X2Rlc2NyaXB0b3JbXSA9IHsKQEAgLTEyNSw2ICsxMjcsNyBAQAogICAgIHMtPmR5ICs9 IGR5MTsKICAgICBzLT5keiArPSBkejE7CiAgICAgcy0+YnV0dG9uc19zdGF0ZSA9IGJ1dHRvbnNf c3RhdGU7CisgICAgcy0+Y2hhbmdlZCA9IDE7CiB9CiAKIHN0YXRpYyB2b2lkIHVzYl93YWNvbV9l dmVudCh2b2lkICpvcGFxdWUsCkBAIC0xMzIsMTAgKzEzNSwxMiBAQAogewogICAgIFVTQldhY29t U3RhdGUgKnMgPSBvcGFxdWU7CiAKLSAgICBzLT54ID0geDsKLSAgICBzLT55ID0geTsKKyAgICAv KiBzY2FsZSB0byBQZW5wYXJ0bmVyIHJlc29sdXRpb24gKi8KKyAgICBzLT54ID0gKHggKiA1MDQw IC8gMHg3RkZGKTsKKyAgICBzLT55ID0gKHkgKiAzNzgwIC8gMHg3RkZGKTsKICAgICBzLT5keiAr PSBkejsKICAgICBzLT5idXR0b25zX3N0YXRlID0gYnV0dG9uc19zdGF0ZTsKKyAgICBzLT5jaGFu Z2VkID0gMTsKIH0KIAogc3RhdGljIGlubGluZSBpbnQgaW50X2NsYW1wKGludCB2YWwsIGludCB2 bWluLCBpbnQgdm1heCkKQEAgLTE5OSwyNiArMjA0LDIyIEBACiAgICAgaWYgKHMtPmJ1dHRvbnNf c3RhdGUgJiBNT1VTRV9FVkVOVF9MQlVUVE9OKQogICAgICAgICBiIHw9IDB4MDE7CiAgICAgaWYg KHMtPmJ1dHRvbnNfc3RhdGUgJiBNT1VTRV9FVkVOVF9SQlVUVE9OKQotICAgICAgICBiIHw9IDB4 MDI7CisgICAgICAgIGIgfD0gMHg0MDsKICAgICBpZiAocy0+YnV0dG9uc19zdGF0ZSAmIE1PVVNF X0VWRU5UX01CVVRUT04pCi0gICAgICAgIGIgfD0gMHgwNDsKKyAgICAgICAgYiB8PSAweDIwOyAv KiBlcmFzZXIgKi8KIAogICAgIGlmIChsZW4gPCA3KQogICAgICAgICByZXR1cm4gMDsKIAogICAg IGJ1ZlswXSA9IHMtPm1vZGU7Ci0gICAgYnVmWzVdID0gMHgwMDsKLSAgICBpZiAoYikgewotICAg ICAgICBidWZbMV0gPSBzLT54ICYgMHhmZjsKLSAgICAgICAgYnVmWzJdID0gcy0+eCA+PiA4Owot ICAgICAgICBidWZbM10gPSBzLT55ICYgMHhmZjsKLSAgICAgICAgYnVmWzRdID0gcy0+eSA+PiA4 OworICAgIGJ1Zls1XSA9IDB4MDAgfCAoYiAmIDB4ZjApOworICAgIGJ1ZlsxXSA9IHMtPnggJiAw eGZmOworICAgIGJ1ZlsyXSA9IHMtPnggPj4gODsKKyAgICBidWZbM10gPSBzLT55ICYgMHhmZjsK KyAgICBidWZbNF0gPSBzLT55ID4+IDg7CisgICAgaWYgKGIgJiAweDNmKSB7CiAgICAgICAgIGJ1 Zls2XSA9IDA7CiAgICAgfSBlbHNlIHsKLSAgICAgICAgYnVmWzFdID0gMDsKLSAgICAgICAgYnVm WzJdID0gMDsKLSAgICAgICAgYnVmWzNdID0gMDsKLSAgICAgICAgYnVmWzRdID0gMDsKICAgICAg ICAgYnVmWzZdID0gKHVuc2lnbmVkIGNoYXIpIC0xMjc7CiAgICAgfQogCkBAIC0zNTAsNyArMzUx LDEyIEBACiAgICAgICAgIGVsc2UgaWYgKHMtPm1vZGUgPT0gV0FDT01fTU9ERV9XQUNPTSkKICAg ICAgICAgICAgIHJldCA9IHVzYl93YWNvbV9wb2xsKHMsIGRhdGEsIGxlbmd0aCk7CiAgICAgICAg IGJyZWFrOworICAgIGNhc2UgSElEX0dFVF9JRExFOgorICAgICAgICByZXQgPSAxOworICAgICAg ICBkYXRhWzBdID0gcy0+aWRsZTsKKyAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBISURfU0VUX0lE TEU6CisgICAgICAgIHMtPmlkbGUgPSAodWludDhfdCkgKHZhbHVlID4+IDgpOwogICAgICAgICBy ZXQgPSAwOwogICAgICAgICBicmVhazsKICAgICBkZWZhdWx0OgpAQCAtMzY5LDYgKzM3NSw5IEBA CiAgICAgc3dpdGNoIChwLT5waWQpIHsKICAgICBjYXNlIFVTQl9UT0tFTl9JTjoKICAgICAgICAg aWYgKHAtPmRldmVwID09IDEpIHsKKyAgICAgICAgICAgIGlmICghKHMtPmNoYW5nZWQgfHwgcy0+ aWRsZSkpCisgICAgICAgICAgICAgICAgcmV0dXJuIFVTQl9SRVRfTkFLOworICAgICAgICAgICAg cy0+Y2hhbmdlZCA9IDA7CiAgICAgICAgICAgICBpZiAocy0+bW9kZSA9PSBXQUNPTV9NT0RFX0hJ RCkKICAgICAgICAgICAgICAgICByZXQgPSB1c2JfbW91c2VfcG9sbChzLCBwLT5kYXRhLCBwLT5s ZW4pOwogICAgICAgICAgICAgZWxzZSBpZiAocy0+bW9kZSA9PSBXQUNPTV9NT0RFX1dBQ09NKQpA QCAtNDA0LDYgKzQxMyw3IEBACiAgICAgcy0+ZGV2LmhhbmRsZV9jb250cm9sID0gdXNiX3dhY29t X2hhbmRsZV9jb250cm9sOwogICAgIHMtPmRldi5oYW5kbGVfZGF0YSA9IHVzYl93YWNvbV9oYW5k bGVfZGF0YTsKICAgICBzLT5kZXYuaGFuZGxlX2Rlc3Ryb3kgPSB1c2Jfd2Fjb21faGFuZGxlX2Rl c3Ryb3k7CisgICAgcy0+Y2hhbmdlZCA9IDE7CiAKICAgICBwc3RyY3B5KHMtPmRldi5kZXZuYW1l LCBzaXplb2Yocy0+ZGV2LmRldm5hbWUpLAogICAgICAgICAgICAgIlFFTVUgUGVuUGFydG5lciBU YWJsZXQiKTsK ------------Zoidberg-BeMail-temp----------