| // Copyright 2020 The Fuchsia Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include <hid/virtio-mouse.h> |
| |
| const uint8_t virtio_scroll_mouse_r_desc[54] = { |
| 0x05, 0x01, // Usage Page (Generic Desktop Ctrls) |
| 0x09, 0x02, // Usage (Mouse) |
| 0xA1, 0x01, // Collection (Application) |
| 0x09, 0x01, // Usage (Pointer) |
| 0xA1, 0x00, // Collection (Physical) |
| 0x05, 0x09, // Usage Page (Button) |
| 0x19, 0x01, // Usage Minimum (0x01) |
| 0x29, 0x03, // Usage Maximum (0x03) |
| 0x15, 0x00, // Logical Minimum (0) |
| 0x25, 0x01, // Logical Maximum (1) |
| 0x95, 0x08, // Report Count (8) |
| 0x75, 0x01, // Report Size (1) |
| 0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) |
| 0x05, 0x01, // Usage Page (Generic Desktop Ctrls) |
| 0x09, 0x30, // Usage (X) |
| 0x09, 0x31, // Usage (Y) |
| 0x09, 0x38, // Usage (Wheel) |
| 0x16, 0x01, 0x80, // Logical Minimum (-32767) |
| 0x26, 0xFF, 0x7F, // Logical Maximum (32767) |
| 0x36, 0x01, 0x80, // Physical Minimum (-32767) |
| 0x46, 0xFF, 0x7F, // Physical Maximum (32767) |
| 0x75, 0x10, // Report Size (16) |
| 0x95, 0x03, // Report Count (3) |
| 0x81, 0x06, // Input (Data,Var,Rel,No Wrap,Linear,Preferred State,No Null Position) |
| 0xC0, // End Collection |
| 0xC0, // End Collection |
| }; |
| |
| const uint8_t* get_virtio_scroll_mouse_report_desc(size_t* out_size) { |
| *out_size = sizeof(virtio_scroll_mouse_r_desc); |
| return virtio_scroll_mouse_r_desc; |
| } |