From be0ba33a993325c46ef64085c91a3a3381c04c07 Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Thu, 25 Aug 2011 16:36:52 -0700 Subject: [PATCH] --- yaml --- r: 267976 b: refs/heads/master c: 4bc694057bc95049ed8d451c2e142c79bbf97328 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/staging/hv/hv_mouse.c | 34 +++++++++-------------------- 2 files changed, 11 insertions(+), 25 deletions(-) diff --git a/[refs] b/[refs] index 3cf33e26ae90..06a3e427efd1 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: f00c5460b46b6068d0005ba29fe39e77e4fdbd0b +refs/heads/master: 4bc694057bc95049ed8d451c2e142c79bbf97328 diff --git a/trunk/drivers/staging/hv/hv_mouse.c b/trunk/drivers/staging/hv/hv_mouse.c index dfa8ae87ca65..8c4ae37ac65a 100644 --- a/trunk/drivers/staging/hv/hv_mouse.c +++ b/trunk/drivers/staging/hv/hv_mouse.c @@ -173,8 +173,13 @@ struct mousevsc_dev { struct hv_input_dev_info hid_dev_info; }; +struct input_device_context { + struct hv_device *device_ctx; + struct hid_device *hid_device; + struct hv_input_dev_info device_info; + int connected; +}; -static void deviceinfo_callback(struct hv_device *dev, struct hv_input_dev_info *info); static void inputreport_callback(struct hv_device *dev, void *packet, u32 len); static void reportdesc_callback(struct hv_device *dev, void *packet, u32 len); @@ -651,6 +656,7 @@ static int mousevsc_on_device_add(struct hv_device *device, struct mousevsc_dev *input_dev; struct hv_driver *input_drv; struct hv_input_dev_info dev_info; + struct input_device_context *input_device_ctx; input_dev = alloc_input_device(device); @@ -697,7 +703,9 @@ static int mousevsc_on_device_add(struct hv_device *device, strcpy(dev_info.name, "Microsoft Vmbus HID-compliant Mouse"); /* Send the device info back up */ - deviceinfo_callback(device, &dev_info); + input_device_ctx = dev_get_drvdata(&device->device); + memcpy(&input_device_ctx->device_info, &dev_info, + sizeof(struct hv_input_dev_info)); /* Send the report desc back up */ /* workaround SA-167 */ @@ -752,28 +760,6 @@ static int mousevsc_on_device_remove(struct hv_device *device) } -/* - * Data types - */ -struct input_device_context { - struct hv_device *device_ctx; - struct hid_device *hid_device; - struct hv_input_dev_info device_info; - int connected; -}; - - -static void deviceinfo_callback(struct hv_device *dev, struct hv_input_dev_info *info) -{ - struct input_device_context *input_device_ctx = - dev_get_drvdata(&dev->device); - - memcpy(&input_device_ctx->device_info, info, - sizeof(struct hv_input_dev_info)); - - DPRINT_INFO(INPUTVSC_DRV, "%s", __func__); -} - static void inputreport_callback(struct hv_device *dev, void *packet, u32 len) { int ret = 0;