From: Gerd Hoffmann <kraxel@redhat.com>
To: Phil Dennis-Jordan <phil@philjordan.eu>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH] hw/usb/dev-hid: add a Mac guest compatibility option to usb-tablet
Date: Thu, 19 Jan 2017 10:06:47 +0100 [thread overview]
Message-ID: <1484816807.15364.26.camel@redhat.com> (raw)
In-Reply-To: <1484749850-87206-1-git-send-email-phil@philjordan.eu>
On Mi, 2017-01-18 at 15:30 +0100, Phil Dennis-Jordan wrote:
> Darwin/OS X/macOS's HID driver stack does not correctly drive Qemu's
> simulated USB Tablet. This adds a boolean option "mac_compat" which
> subtly changes the device so it behaves in a way that Mac guests can
> handle.
>
> The specific incompatibilities with the regular Qemu USB tablet are:
>
> 1. Absolute pointing devices with HID Report Descriptor usage page of
> 0x01 (pointing) are handled by the macOS HID driver as analog sticks,
> so the movement of the cursor ends up being the cumulative deviance
> from the centre position.
> 2. The bInterfaceProtocol of 0x02 enables a particular macOS HID
> driver mode which only works properly with mice (relative motion) not
> absolute pointing devices, so spurious events with relative
> coordinates are generated in addition to absolute ones. This manifests
> as a very jittery cursor.
>
> The workaround is to report a usage page of 0x02 (mouse) and a
> bInterfaceProtocol value of 0x00.
Waded through the specs. Setting bInterfaceProtocol to 0x00 should be
done anyway. Only boot protocol devices (which the tablet isn't) should
set this to 1 (kbd) or 2 (mouse). No need to hide that behind a macos
option, we can do that for everybody.
The other one is more tricky. Declaring the device as "mouse" is
clearly wrong according to the specs. There is no explicit "tablet"
device. "pointing" comes closest.
Does the issue still show up with bInterfaceProtocol being fixed?
cheers,
Gerd
next prev parent reply other threads:[~2017-01-19 9:06 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-01-18 14:30 [Qemu-devel] [PATCH] hw/usb/dev-hid: add a Mac guest compatibility option to usb-tablet Phil Dennis-Jordan
2017-01-19 9:06 ` Gerd Hoffmann [this message]
2017-01-19 13:27 ` Phil Dennis-Jordan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1484816807.15364.26.camel@redhat.com \
--to=kraxel@redhat.com \
--cc=phil@philjordan.eu \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).