[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [win-pv-devel] [PATCH] Update kbdif.h and use feature-raw-pointer
From: Owen Smith <owen.smith@xxxxxxxxxx> Updates the xen public header to include the definition of [feature|request]-raw-pointer. Renames VkbdStandalone to RawPointer and uses the newly defined feature and request names. Signed-off-by: Owen Smith <owen.smith@xxxxxxxxxx> --- include/xen/public/io/kbdif.h | 42 ++++++++++++++++++++++++++++-------------- src/xenvkbd/ring.c | 16 ++++++++-------- 2 files changed, 36 insertions(+), 22 deletions(-) diff --git a/include/xen/public/io/kbdif.h b/include/xen/public/io/kbdif.h index 313d9d7..3ce54e9 100644 --- a/include/xen/public/io/kbdif.h +++ b/include/xen/public/io/kbdif.h @@ -19,8 +19,8 @@ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * - * Copyright (C) 2005 Anthony Liguori <aliguori@xxxxxxxxxx> - * Copyright (C) 2006 Red Hat, Inc., Markus Armbruster <armbru@xxxxxxxxxx> + * Copyright (C) 2005 Anthony Liguori <aliguori@xxxxxxxxxx> + * Copyright (C) 2006 Red Hat, Inc., Markus Armbruster <armbru@xxxxxxxxxx> */ #ifndef __XEN_PUBLIC_IO_KBDIF_H__ @@ -52,27 +52,34 @@ * If a feature is not supported then 0 must be set or feature entry omitted. * * feature-abs-pointer - * Values: <uint> + * Values: <uint> * * Backends, which support reporting of absolute coordinates for pointer * device should set this to 1. * * feature-multi-touch - * Values: <uint> + * Values: <uint> * * Backends, which support reporting of multi-touch events * should set this to 1. * + * feature-raw-pointer + * Values: <uint> + * + * Backends, which support reporting raw (unscaled) absolute coordinates + * for pointer devices should set this to 1. Raw (unscaled) values have + * a range of [0, 0x7fff]. + * *------------------------- Pointer Device Parameters ------------------------ * * width - * Values: <uint> + * Values: <uint> * * Maximum X coordinate (width) to be used by the frontend * while reporting input events, pixels, [0; UINT32_MAX]. * * height - * Values: <uint> + * Values: <uint> * * Maximum Y coordinate (height) to be used by the frontend * while reporting input events, pixels, [0; UINT32_MAX]. @@ -88,32 +95,39 @@ * by the backend have no effect. * * request-abs-pointer - * Values: <uint> + * Values: <uint> * * Request backend to report absolute pointer coordinates * (XENKBD_TYPE_POS) instead of relative ones (XENKBD_TYPE_MOTION). * * request-multi-touch - * Values: <uint> + * Values: <uint> * * Request backend to report multi-touch events. * + * request-raw-pointer + * Values: <uint> + * + * Request backend to report raw unscaled absolute pointer coordinates. + * This option is only valid if request-abs-pointer is also set. + * Raw unscaled coordinates have the range [0, 0x7fff] + * *----------------------- Request Transport Parameters ----------------------- * * event-channel - * Values: <uint> + * Values: <uint> * * The identifier of the Xen event channel used to signal activity * in the ring buffer. * * page-gref - * Values: <uint> + * Values: <uint> * * The Xen grant reference granting permission for the backend to map * a sole page in a single page sized event ring buffer. * * page-ref - * Values: <uint> + * Values: <uint> * * OBSOLETE, not recommended for use. * PFN of the shared page. @@ -121,18 +135,18 @@ *----------------------- Multi-touch Device Parameters ----------------------- * * multi-touch-num-contacts - * Values: <uint> + * Values: <uint> * * Number of simultaneous touches reported. * * multi-touch-width - * Values: <uint> + * Values: <uint> * * Width of the touch area to be used by the frontend * while reporting input events, pixels, [0; UINT32_MAX]. * * multi-touch-height - * Values: <uint> + * Values: <uint> * * Height of the touch area to be used by the frontend * while reporting input events, pixels, [0; UINT32_MAX]. diff --git a/src/xenvkbd/ring.c b/src/xenvkbd/ring.c index 914521c..d970cec 100644 --- a/src/xenvkbd/ring.c +++ b/src/xenvkbd/ring.c @@ -78,7 +78,7 @@ struct _XENVKBD_RING { BOOLEAN Connected; BOOLEAN Enabled; BOOLEAN AbsPointer; - BOOLEAN VkbdStandalone; + BOOLEAN RawPointer; XENVKBD_HID_KEYBOARD KeyboardReport; XENVKBD_HID_ABSMOUSE AbsMouseReport; @@ -503,16 +503,16 @@ RingReadFeatures( &Ring->StoreInterface, NULL, FrontendGetBackendPath(Ring->Frontend), - "feature-vkbd-standalone", + "feature-raw-pointer", &Buffer); if (NT_SUCCESS(status)) { - Ring->VkbdStandalone = (BOOLEAN)strtoul(Buffer, NULL, 2); + Ring->RawPointer = (BOOLEAN)strtoul(Buffer, NULL, 2); XENBUS_STORE(Free, &Ring->StoreInterface, Buffer); } else { - Ring->VkbdStandalone = FALSE; + Ring->RawPointer = FALSE; } } @@ -560,7 +560,7 @@ RingConnect( RingReadFeatures(Ring); status = STATUS_DEVICE_NOT_READY; - if (!Ring->VkbdStandalone) + if (!Ring->RawPointer) goto fail6; Ring->Mdl = __AllocatePage(); @@ -743,9 +743,9 @@ RingStoreWrite( &Ring->StoreInterface, Transaction, FrontendGetPath(Ring->Frontend), - "request-vkbd-standalone", + "request-raw-pointer", "%u", - Ring->VkbdStandalone); + Ring->RawPointer); if (!NT_SUCCESS(status)) goto fail5; @@ -853,7 +853,7 @@ RingTeardown( Ring->Dpcs = 0; Ring->AbsPointer = FALSE; - Ring->VkbdStandalone = FALSE; + Ring->RawPointer = FALSE; RtlZeroMemory(&Ring->Dpc, sizeof (KDPC)); -- 2.8.3 _______________________________________________ win-pv-devel mailing list win-pv-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |