|
Lines 50-55
__FBSDID("$FreeBSD$");
Link Here
|
| 50 |
#include <dev/hid/hidquirk.h> |
50 |
#include <dev/hid/hidquirk.h> |
| 51 |
#include <dev/hid/hidrdesc.h> |
51 |
#include <dev/hid/hidrdesc.h> |
| 52 |
|
52 |
|
|
|
53 |
#include "usbdevs.h" |
| 54 |
|
| 53 |
static const uint8_t hms_boot_desc[] = { HID_MOUSE_BOOTPROTO_DESCR() }; |
55 |
static const uint8_t hms_boot_desc[] = { HID_MOUSE_BOOTPROTO_DESCR() }; |
| 54 |
|
56 |
|
| 55 |
enum { |
57 |
enum { |
|
Lines 61-68
enum {
Link Here
|
| 61 |
HMS_ABS_Z, |
63 |
HMS_ABS_Z, |
| 62 |
HMS_HWHEEL, |
64 |
HMS_HWHEEL, |
| 63 |
HMS_BTN, |
65 |
HMS_BTN, |
| 64 |
HMS_BTN_MS1, |
|
|
| 65 |
HMS_BTN_MS2, |
| 66 |
HMS_FINAL_CB, |
66 |
HMS_FINAL_CB, |
| 67 |
}; |
67 |
}; |
| 68 |
|
68 |
|
|
Lines 95-102
static const struct hidmap_item hms_map[] = {
Link Here
|
| 95 |
[HMS_ABS_Z] = HMS_MAP_ABS(HUG_Z, ABS_Z), |
95 |
[HMS_ABS_Z] = HMS_MAP_ABS(HUG_Z, ABS_Z), |
| 96 |
[HMS_HWHEEL] = HMS_MAP_REL_CN(HUC_AC_PAN, REL_HWHEEL), |
96 |
[HMS_HWHEEL] = HMS_MAP_REL_CN(HUC_AC_PAN, REL_HWHEEL), |
| 97 |
[HMS_BTN] = HMS_MAP_BUT_RG(1, 16, BTN_MOUSE), |
97 |
[HMS_BTN] = HMS_MAP_BUT_RG(1, 16, BTN_MOUSE), |
| 98 |
[HMS_BTN_MS1] = HMS_MAP_BUT_MS(1, BTN_RIGHT), |
|
|
| 99 |
[HMS_BTN_MS2] = HMS_MAP_BUT_MS(2, BTN_MIDDLE), |
| 100 |
[HMS_FINAL_CB] = HMS_FINAL_CB(hms_final_cb), |
98 |
[HMS_FINAL_CB] = HMS_FINAL_CB(hms_final_cb), |
| 101 |
}; |
99 |
}; |
| 102 |
|
100 |
|
|
Lines 107-112
static const struct hidmap_item hms_map_wheel_rev[] = {
Link Here
|
| 107 |
HMS_MAP_REL_REV(HUG_WHEEL, REL_WHEEL), |
105 |
HMS_MAP_REL_REV(HUG_WHEEL, REL_WHEEL), |
| 108 |
}; |
106 |
}; |
| 109 |
|
107 |
|
|
|
108 |
static const struct hidmap_item hms_map_kensington_slimblade[] = { |
| 109 |
HMS_MAP_BUT_MS(1, BTN_RIGHT), |
| 110 |
HMS_MAP_BUT_MS(2, BTN_MIDDLE), |
| 111 |
}; |
| 112 |
|
| 110 |
/* A match on these entries will load hms */ |
113 |
/* A match on these entries will load hms */ |
| 111 |
static const struct hid_device_id hms_devs[] = { |
114 |
static const struct hid_device_id hms_devs[] = { |
| 112 |
{ HID_TLC(HUP_GENERIC_DESKTOP, HUG_POINTER) }, |
115 |
{ HID_TLC(HUP_GENERIC_DESKTOP, HUG_POINTER) }, |
|
Lines 261-266
hms_attach(device_t dev)
Link Here
|
| 261 |
else |
264 |
else |
| 262 |
HIDMAP_ADD_MAP(&sc->hm, hms_map_wheel, cap_wheel); |
265 |
HIDMAP_ADD_MAP(&sc->hm, hms_map_wheel, cap_wheel); |
| 263 |
|
266 |
|
|
|
267 |
if (hw->idBus == BUS_USB && hw->idVendor == USB_VENDOR_KENSINGTON && |
| 268 |
hw->idProduct == USB_PRODUCT_KENSINGTON_SLIMBLADE) |
| 269 |
HIDMAP_ADD_MAP(&sc->hm, hms_map_kensington_slimblade, NULL); |
| 270 |
|
| 264 |
#ifdef IICHID_SAMPLING |
271 |
#ifdef IICHID_SAMPLING |
| 265 |
if (hid_test_quirk(hw, HQ_IICHID_SAMPLING) && |
272 |
if (hid_test_quirk(hw, HQ_IICHID_SAMPLING) && |
| 266 |
hidmap_test_cap(sc->caps, HMS_REL_X) && |
273 |
hidmap_test_cap(sc->caps, HMS_REL_X) && |