From b6ec842de4c268c02649990c58c1f891869ca285 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stephan=20A=C3=9Fmus?= Date: Thu, 16 Dec 2010 20:23:56 +0000 Subject: [PATCH] Patch by x-ist from ticket #6115: * A lot of HID definitions got extracted from USB_hid.h into their own files. Many more definitions have been added from the specs. * The names have been moved into the proper B_* namspace. * The USB hid driver has been adapted for the changes. Thanks a lot and sorry for the delay! git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39874 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- headers/os/drivers/usb/USB_hid.h | 199 +++++---- .../usb/USB_hid_page_alphanumeric_display.h | 91 ++++ headers/os/drivers/usb/USB_hid_page_arcade.h | 48 +++ .../usb/USB_hid_page_bar_code_scanner.h | 230 ++++++++++ .../drivers/usb/USB_hid_page_battery_system.h | 119 ++++++ .../os/drivers/usb/USB_hid_page_consumer.h | 400 ++++++++++++++++++ .../os/drivers/usb/USB_hid_page_digitizers.h | 61 +++ .../drivers/usb/USB_hid_page_game_controls.h | 49 +++ .../usb/USB_hid_page_generic_desktop.h | 95 +++++ .../USB_hid_page_generic_device_controls.h | 27 ++ .../os/drivers/usb/USB_hid_page_keyboard.h | 253 +++++++++++ headers/os/drivers/usb/USB_hid_page_led.h | 97 +++++ .../usb/USB_hid_page_magnetic_stripe_reader.h | 32 ++ .../usb/USB_hid_page_medical_instrument.h | 55 +++ headers/os/drivers/usb/USB_hid_page_pid.h | 130 ++++++ .../drivers/usb/USB_hid_page_power_device.h | 104 +++++ .../os/drivers/usb/USB_hid_page_simulation.h | 74 ++++ .../drivers/usb/USB_hid_page_sport_controls.h | 55 +++ .../os/drivers/usb/USB_hid_page_telephony.h | 91 ++++ .../os/drivers/usb/USB_hid_page_usb_monitor.h | 24 ++ .../usb/USB_hid_page_vesa_virtual_controls.h | 68 +++ .../os/drivers/usb/USB_hid_page_vr_controls.h | 49 +++ .../usb/USB_hid_page_weighing_device.h | 72 ++++ .../drivers/input/usb_hid/HIDDevice.cpp | 6 +- .../drivers/input/usb_hid/KeyboardDevice.cpp | 38 +- .../drivers/input/usb_hid/MouseDevice.cpp | 14 +- 26 files changed, 2351 insertions(+), 130 deletions(-) create mode 100644 headers/os/drivers/usb/USB_hid_page_alphanumeric_display.h create mode 100644 headers/os/drivers/usb/USB_hid_page_arcade.h create mode 100644 headers/os/drivers/usb/USB_hid_page_bar_code_scanner.h create mode 100644 headers/os/drivers/usb/USB_hid_page_battery_system.h create mode 100644 headers/os/drivers/usb/USB_hid_page_consumer.h create mode 100644 headers/os/drivers/usb/USB_hid_page_digitizers.h create mode 100644 headers/os/drivers/usb/USB_hid_page_game_controls.h create mode 100644 headers/os/drivers/usb/USB_hid_page_generic_desktop.h create mode 100644 headers/os/drivers/usb/USB_hid_page_generic_device_controls.h create mode 100644 headers/os/drivers/usb/USB_hid_page_keyboard.h create mode 100644 headers/os/drivers/usb/USB_hid_page_led.h create mode 100644 headers/os/drivers/usb/USB_hid_page_magnetic_stripe_reader.h create mode 100644 headers/os/drivers/usb/USB_hid_page_medical_instrument.h create mode 100644 headers/os/drivers/usb/USB_hid_page_pid.h create mode 100644 headers/os/drivers/usb/USB_hid_page_power_device.h create mode 100644 headers/os/drivers/usb/USB_hid_page_simulation.h create mode 100644 headers/os/drivers/usb/USB_hid_page_sport_controls.h create mode 100644 headers/os/drivers/usb/USB_hid_page_telephony.h create mode 100644 headers/os/drivers/usb/USB_hid_page_usb_monitor.h create mode 100644 headers/os/drivers/usb/USB_hid_page_vesa_virtual_controls.h create mode 100644 headers/os/drivers/usb/USB_hid_page_vr_controls.h create mode 100644 headers/os/drivers/usb/USB_hid_page_weighing_device.h diff --git a/headers/os/drivers/usb/USB_hid.h b/headers/os/drivers/usb/USB_hid.h index 370e6fa190..1c30a43e8e 100644 --- a/headers/os/drivers/usb/USB_hid.h +++ b/headers/os/drivers/usb/USB_hid.h @@ -1,5 +1,5 @@ /* - * Copyright 2004-2009, Haiku Inc. All Rights Reserved. + * Copyright 2004-2010, Haiku Inc. All Rights Reserved. * Distributed under the terms of the MIT License. */ #ifndef _USB_HID_H @@ -7,36 +7,120 @@ #include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include -// (Partial) USB Class Definitions for HID Devices, version 1.11 -// Reference: http://www.usb.org/developers/devclass_docs/hid1_11.pdf +/* References: + * + * Device Class Definition for Human Interface Devices (HID) Ver. 1.11 + * http://www.usb.org/developers/devclass_docs/hid1_11.pdf + * + * HID Usage Tables Ver. 1.12 + * http://www.usb.org/developers/devclass_docs/Hut1_12.pdf + * + * Device Class Definition for Physical Interface Deviced (PID) Ver. 1.0 + * http://www.usb.org/developers/devclass_docs/pid1_01.pdf + * + * Universal Serial Bus Usage Tables for HID Power Devices Ver. 1.0 + * http://www.usb.org/developers/devclass_docs/pdcv10.pdf + * + * HID Point of Sale Usage Tables Ver. 1.0 + * http://www.usb.org/developers/devclass_docs/pos1_02.pdf + * + * USB Monitor Control Class Specification, Rev. 1.0 + * http://www.usb.org/developers/devclass_docs/usbmon10.pdf + * + * Open Arcade Architecture Device (OAAD) + * Data Format Specification Rev. 1.100 + * http://www.usb.org/developers/devclass_docs/oaaddataformatsv6.pdf + */ #define USB_HID_DEVICE_CLASS 0x03 #define USB_HID_CLASS_VERSION 0x0100 // HID Interface Subclasses enum { - USB_HID_INTERFACE_NO_SUBCLASS = 0x00, // No Subclass - USB_HID_INTERFACE_BOOT_SUBCLASS // Boot Interface Subclass + B_USB_HID_INTERFACE_NO_SUBCLASS = 0x00, // No Subclass + B_USB_HID_INTERFACE_BOOT_SUBCLASS // Boot Interface Subclass }; // HID Class-Specific descriptor subtypes enum { - USB_HID_DESCRIPTOR_HID = 0x21, - USB_HID_DESCRIPTOR_REPORT, - USB_HID_DESCRIPTOR_PHYSICAL + B_USB_HID_DESCRIPTOR_HID = 0x21, + B_USB_HID_DESCRIPTOR_REPORT, + B_USB_HID_DESCRIPTOR_PHYSICAL }; // HID Class-specific requests enum { - USB_REQUEST_HID_GET_REPORT = 0x01, - USB_REQUEST_HID_GET_IDLE, - USB_REQUEST_HID_GET_PROTOCOL, + B_USB_REQUEST_HID_GET_REPORT = 0x01, + B_USB_REQUEST_HID_GET_IDLE, + B_USB_REQUEST_HID_GET_PROTOCOL, - USB_REQUEST_HID_SET_REPORT = 0x09, - USB_REQUEST_HID_SET_IDLE, - USB_REQUEST_HID_SET_PROTOCOL + B_USB_REQUEST_HID_SET_REPORT = 0x09, + B_USB_REQUEST_HID_SET_IDLE, + B_USB_REQUEST_HID_SET_PROTOCOL +}; + +// HID Usage Pages +enum { + B_HID_USAGE_PAGE_GENERIC_DESKTOP = 0x1, + B_HID_USAGE_PAGE_SIMULATION, + B_HID_USAGE_PAGE_VR, + B_HID_USAGE_PAGE_SPORT, + B_HID_USAGE_PAGE_GAME, + B_HID_USAGE_PAGE_GENERIC, + B_HID_USAGE_PAGE_KEYBOARD, + B_HID_USAGE_PAGE_LED, + B_HID_USAGE_PAGE_BUTTON, + B_HID_USAGE_PAGE_ORDINAL, + B_HID_USAGE_PAGE_TELEPHONY, + B_HID_USAGE_PAGE_CONSUMER, + B_HID_USAGE_PAGE_DIGITIZER, + + B_HID_USAGE_PAGE_PID = 0xf, + B_HID_USAGE_PAGE_UNICODE, + B_HID_USAGE_PAGE_ALPHANUM_DISPLAY = 0x14, + B_HID_USAGE_PAGE_MEDICAL = 0x40, + + B_HID_USAGE_PAGE_USB_MONITOR = 0x80, // alt. B_HID_USAGE_PAGE_MONITOR_0, + B_HID_USAGE_PAGE_USB_ENUMERATED_VALUES, // alt. B_HID_USAGE_PAGE_MONITOR_1, + B_HID_USAGE_PAGE_VESA_VIRTUAL_CONTROLS, // alt. B_HID_USAGE_PAGE_MONITOR_2, + B_HID_USAGE_PAGE_MONITOR_3, + + B_HID_USAGE_PAGE_POWER_DEVICE = 0x84, // alt. B_HID_USAGE_PAGE_POWER_0, + B_HID_USAGE_PAGE_BATTERY_SYSTEM, // alt. B_HID_USAGE_PAGE_POWER_1, + B_HID_USAGE_PAGE_POWER_2, + B_HID_USAGE_PAGE_POWER_3, + + B_HID_USAGE_PAGE_BAR_CODE_SCANNER = 0x8c, + B_HID_USAGE_PAGE_WEIGHING_DEVICES, // alt. B_HID_USAGE_PAGE_SCALE, + B_HID_USAGE_PAGE_MAGNETIC_STRIPE_READER, + B_HID_USAGE_PAGE_RESERVED_POS_PAGE, + B_HID_USAGE_PAGE_CAMERA_CONTROL, + B_HID_USAGE_PAGE_ARCADE, + + B_HID_USAGE_PAGE_MICROSOFT = 0xff00 }; typedef struct { @@ -52,91 +136,4 @@ typedef struct { } _PACKED usb_hid_descriptor; -/* Usage Pages/IDs */ - -enum { - HID_USAGE_PAGE_GENERIC_DESKTOP = 0x1, - HID_USAGE_PAGE_SIMULATION, - HID_USAGE_PAGE_VR, - HID_USAGE_PAGE_SPORT, - HID_USAGE_PAGE_GAME, - HID_USAGE_PAGE_GENERIC, - HID_USAGE_PAGE_KEYBOARD, - HID_USAGE_PAGE_LED, - HID_USAGE_PAGE_BUTTON, - HID_USAGE_PAGE_ORDINAL, - HID_USAGE_PAGE_TELEPHONY, - HID_USAGE_PAGE_CONSUMER, - HID_USAGE_PAGE_DIGITIZER, - HID_USAGE_PAGE_PID = 0xf, - HID_USAGE_PAGE_UNICODE, - HID_USAGE_PAGE_ALPHANUM_DISPLAY = 0x14, - HID_USAGE_PAGE_MEDICAL = 0x40, - HID_USAGE_PAGE_MICROSOFT = 0xff00 -}; - -/* Page 1: Generic Desktop */ - -enum { - HID_USAGE_ID_POINTER = 0x1, - HID_USAGE_ID_MOUSE, - HID_USAGE_ID_JOYSTICK = 0x4, - HID_USAGE_ID_GAMEPAD, - HID_USAGE_ID_KEYBOARD, - HID_USAGE_ID_KEYPAD, - HID_USAGE_ID_MULTIAXIS = 0x8, - - HID_USAGE_ID_X = 0x30, - HID_USAGE_ID_Y, - HID_USAGE_ID_Z, - HID_USAGE_ID_RX, - HID_USAGE_ID_RY, - HID_USAGE_ID_RZ, - HID_USAGE_ID_SLIDER, - HID_USAGE_ID_DIAL, - HID_USAGE_ID_WHEEL, - HID_USAGE_ID_HAT_SWITCH, - HID_USAGE_ID_COUNTED_BUFFER, - HID_USAGE_ID_BYTE_COUNT, - HID_USAGE_ID_MOTION_WAKEUP, - HID_USAGE_ID_START, - HID_USAGE_ID_SELECT, - HID_USAGE_ID_VX = 0x40, - HID_USAGE_ID_VY, - HID_USAGE_ID_VZ, - HID_USAGE_ID_VBRX, - HID_USAGE_ID_VBRY, - HID_USAGE_ID_VBRZ, - HID_USAGE_ID_VNO, - HID_USAGE_ID_FEATURE_NOTIFICATION -}; - -/* Page 2: Simulation */ - -enum { - HID_USAGE_ID_RUDDER = 0xba, - HID_USAGE_ID_THROTTLE = 0xbb, -}; - -/* Page 7: Keyboard */ - -enum { - HID_USAGE_ID_LEFT_CONTROL = 0xe0, - HID_USAGE_ID_LEFT_SHIFT, - HID_USAGE_ID_LEFT_ALT, - HID_USAGE_ID_LEFT_GUI, - HID_USAGE_ID_RIGHT_CONTROL, - HID_USAGE_ID_RIGHT_SHIFT, - HID_USAGE_ID_RIGHT_ALT, - HID_USAGE_ID_RIGHT_GUI -}; - -/* Page 8: LED */ - -enum { - HID_USAGE_ID_LED_NUM_LOCK = 0x01, - HID_USAGE_ID_LED_CAPS_LOCK, - HID_USAGE_ID_LED_SCROLL_LOCK -}; - #endif // _USB_HID_H diff --git a/headers/os/drivers/usb/USB_hid_page_alphanumeric_display.h b/headers/os/drivers/usb/USB_hid_page_alphanumeric_display.h new file mode 100644 index 0000000000..49337aff4e --- /dev/null +++ b/headers/os/drivers/usb/USB_hid_page_alphanumeric_display.h @@ -0,0 +1,91 @@ +/* + * Copyright 2004-2010, Haiku Inc. All Rights Reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _USB_HID_PAGE_ALPHANUMERIC_DISPLAY_H +#define _USB_HID_PAGE_ALPHANUMERIC_DISPLAY_H + + +/* Reference: + * HID Usage Page 0x14: ALPHANUMERIC DISPLAY + * HID Usage Tables Ver. 1.12 + * http://www.usb.org/developers/devclass_docs/Hut1_12.pdf + */ + +// Usage IDs +enum { + B_HID_UID_AD_ALPHANUMERIC_DISPLAY = 0x01, + B_HID_UID_AD_BITMAPPED_DISPLAY, + + B_HID_UID_AD_DISPLAY_ATTRIBUTES_REPORT = 0x20, + B_HID_UID_AD_ASCII_CHARACTER_SET, + B_HID_UID_AD_DATA_READ_BACK, + B_HID_UID_AD_FONT_READ_BACK, + B_HID_UID_AD_DISPLAY_CONTROL_REPORT, + B_HID_UID_AD_CLEAR_DISPLAY, + B_HID_UID_AD_DISPLAY_ENABLE, + B_HID_UID_AD_SCREEN_SAVER_DELAY, + B_HID_UID_AD_SCREEN_SAVER_ENABLE, + B_HID_UID_AD_VERTICAL_SCROLL, + B_HID_UID_AD_HORIZONTAL_SCROLL, + B_HID_UID_AD_CHARACTER_REPORT, + B_HID_UID_AD_DISPLAY_DATA, + B_HID_UID_AD_DISPLAY_STATUS, + B_HID_UID_AD_STAT_NOT_READY, + B_HID_UID_AD_STAT_READY, + B_HID_UID_AD_ERR_NOT_A_LOADABLE_CHARACTER, + B_HID_UID_AD_ERR_FONT_DATA_CANNOT_BE_READ, + B_HID_UID_AD_CURSOR_POSITION_REPORT, + B_HID_UID_AD_ROW, + B_HID_UID_AD_COLUMN, + B_HID_UID_AD_ROWS, + B_HID_UID_AD_COLUMNS, + B_HID_UID_AD_CURSOR_PIXEL_POSITIONING, + B_HID_UID_AD_CURSOR_MODE, + B_HID_UID_AD_CURSOR_ENABLE, + B_HID_UID_AD_CURSOR_BLINK, + B_HID_UID_AD_FONT_REPORT, + B_HID_UID_AD_FONT_DATA, + B_HID_UID_AD_CHARACTER_WIDTH, + B_HID_UID_AD_CHARACTER_HEIGHT, + B_HID_UID_AD_CHARACTER_SPACING_HORIZONTAL, + B_HID_UID_AD_CHARACTER_SPACING_VERTICAL, + B_HID_UID_AD_UNICODE_CHARACTER, + B_HID_UID_AD_FONT_7_SEGMENT, + B_HID_UID_AD_7_SEGMENT_DIRECT_MAP, + B_HID_UID_AD_FONT_14_SEGMENT, + B_HID_UID_AD_14_SEGMENT_DIRECT_MAP, + B_HID_UID_AD_DISPLAY_BRIGHTNESS, + B_HID_UID_AD_DISPLAY_CONTRAST, + B_HID_UID_AD_CHARACTER_ATTRIBUTE, + B_HID_UID_AD_ATTRIBUTE_READBACK, + B_HID_UID_AD_ATTRIBUTE_DATA, + B_HID_UID_AD_CHAR_ATTR_ENHANCE, + B_HID_UID_AD_CHAR_ATTR_UNDERLINE, + B_HID_UID_AD_CHAR_ATTR_BLINK, + + B_HID_UID_AD_BITMAP_SIZE_X = 0x80, + B_HID_UID_AD_BITMAP_SIZE_Y, + + B_HID_UID_AD_BIT_DEPTH_FORMAT = 0x83, + B_HID_UID_AD_DISPLAY_ORIENTATION, + B_HID_UID_AD_PALETTE_REPORT, + B_HID_UID_AD_PALETTE_DATA_SIZE, + B_HID_UID_AD_PALETTE_DATA_OFFSET, + B_HID_UID_AD_PALETTE_DATA, + B_HID_UID_AD_BLIT_REPORT, + B_HID_UID_AD_BLIT_RECT_X1, + B_HID_UID_AD_BLIT_RECT_Y1, + B_HID_UID_AD_BLIT_RECT_X2, + B_HID_UID_AD_BLIT_RECT_Y2, + B_HID_UID_AD_BLIT_DATA, + B_HID_UID_AD_SOFT_BUTTON, + B_HID_UID_AD_SOFT_BUTTON_ID, + B_HID_UID_AD_SOFT_BUTTON_SIDE, + B_HID_UID_AD_SOFT_BUTTON_OFFSET_1, + B_HID_UID_AD_SOFT_BUTTON_OFFSET_2, + B_HID_UID_AD_SOFT_BUTTON_REPORT +}; + + +#endif // _USB_HID_PAGE_ALPHANUMERIC_DISPLAY_H diff --git a/headers/os/drivers/usb/USB_hid_page_arcade.h b/headers/os/drivers/usb/USB_hid_page_arcade.h new file mode 100644 index 0000000000..ab1c8d452f --- /dev/null +++ b/headers/os/drivers/usb/USB_hid_page_arcade.h @@ -0,0 +1,48 @@ +/* + * Copyright 2004-2010, Haiku Inc. All Rights Reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _USB_HID_PAGE_ARCADE_H +#define _USB_HID_PAGE_ARCADE_H + + +/* Reference: + * HID Usage Page 24: ARCADE + * Open Arcade Architecture Device (OAAD) - + * Data Format Specification Rev. 1.100 + * http://www.usb.org/developers/devclass_docs/oaaddataformatsv6.pdf + */ + +// Usage IDs +enum { + B_HID_UID_ARC_GENERAL_PURPOSE_IO_CARD = 0x01, + B_HID_UID_ARC_COIN_DOOR, + B_HID_UID_ARC_WATCHDOG_TIMER, + + B_HID_UID_ARC_GENERAL_PURPOSE_ANALOG_INPUT_STATE = 0x30, + B_HID_UID_ARC_GENERAL_PURPOSE_DIGITAL_INPUT_STATE, + B_HID_UID_ARC_GENERAL_OPTICAL_INPUT_STATE, + B_HID_UID_ARC_GENERAL_DIGITAL_OUTPUT_STATE, + B_HID_UID_ARC_NUMBER_OF_COIN_DOORS, + B_HID_UID_ARC_COIN_DRAWER_DROP_COUNT, + B_HID_UID_ARC_COIN_DRAWER_START, + B_HID_UID_ARC_COIN_DRAWER_SERVICE, + B_HID_UID_ARC_COIN_DRAWER_TILT, + B_HID_UID_ARC_COIN_DOOR_TEST, + B_HID_UID_ARC_COIN_DOOR_LOCKOUT, + B_HID_UID_ARC_WATCHDOG_TIMEOUT, + B_HID_UID_ARC_WATCHDOG_REBOOT, + B_HID_UID_ARC_WATCHDOG_RESTART, + B_HID_UID_ARC_ALARM_INPUT, + B_HID_UID_ARC_COIN_DOOR_COUNTER, + B_HID_UID_ARC_IO_DIRECTION_MAPPING, + B_HID_UID_ARC_SET_IO_DIRECTION, + B_HID_UID_ARC_EXTENDED_OPTICAL_INPUT_STATE, + B_HID_UID_ARC_PIN_PAD_INPUT_STATE, + B_HID_UID_ARC_PIN_PAD_STATUS, + B_HID_UID_ARC_PIN_PAD_OUTPUT, + B_HID_UID_ARC_PIN_PAD_COMMAND +}; + + +#endif // _USB_HID_PAGE_ARCADE_H diff --git a/headers/os/drivers/usb/USB_hid_page_bar_code_scanner.h b/headers/os/drivers/usb/USB_hid_page_bar_code_scanner.h new file mode 100644 index 0000000000..7dbff32bf5 --- /dev/null +++ b/headers/os/drivers/usb/USB_hid_page_bar_code_scanner.h @@ -0,0 +1,230 @@ +/* + * Copyright 2004-2010, Haiku Inc. All Rights Reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _USB_HID_PAGE_BAR_CODE_SCANNER_H +#define _USB_HID_PAGE_BAR_CODE_SCANNER_H + + +/* Reference: + * HID Usage Page 0x8C: BAR CODE SCANNER + * HID Point of Sale Usage Tables Ver. 1.0 + * http://www.usb.org/developers/devclass_docs/pos1_02.pdf + */ + +// Usage IDs +enum { + B_HID_UID_BCS_BAR_CODE_BADGE_READER = 0x01, + B_HID_UID_BCS_BAR_CODE_SCANNER, + B_HID_UID_BCS_DUMB_BAR_CODE_SCANNER, + B_HID_UID_BCS_CORDLESS_SCANNER_BASE, + B_HID_UID_BCS_BAR_CODE_SCANNER_CRADLE, + + B_HID_UID_BCS_ATTRIBUTE_REPORT = 0x10, + B_HID_UID_BCS_SETTINGS_REPORT, + B_HID_UID_BCS_SCANNED_DATA_REPORT, + B_HID_UID_BCS_RAW_SCANNED_DATA_REPORT, + B_HID_UID_BCS_TRIGGER_REPORT, + B_HID_UID_BCS_STATUS_REPORT, + B_HID_UID_BCS_UPC_EAN_CONTROL_REPORT, + B_HID_UID_BCS_EAN_2_3_LABEL_CONTROL_REPORT, + B_HID_UID_BCS_CODE_39_CONTROL_REPORT, + B_HID_UID_BCS_INTERLEAVED_2_OF_5_CONTROL_REPORT, + B_HID_UID_BCS_STANDARD_2_OF_5_CONTROL_REPORT, + B_HID_UID_BCS_MSI_PLESSEY_CONTROL_REPORT, + B_HID_UID_BCS_CODABAR_CONTROL_REPORT, + B_HID_UID_BCS_CODE_128_CONTROL_REPORT, + B_HID_UID_BCS_MISC_1D_CONTROL_REPORT, + B_HID_UID_BCS_2D_CONTROL_REPORT, + + B_HID_UID_BCS_AIMING_POINTER_MODE = 0x30, + B_HID_UID_BCS_BAR_CODE_PRESENT_SENSOR, + B_HID_UID_BCS_CLASS_1A_LASER, + B_HID_UID_BCS_CLASS_2_LASER, + B_HID_UID_BCS_HEATER_PRESENT, + B_HID_UID_BCS_CONTACT_SCANNER, + B_HID_UID_BCS_ELECTRONIC_ARTICLE_SURVEILLANCE_NOTIFICATION, + B_HID_UID_BCS_CONSTANT_ELECTRONIC_ARTICLE_SURVEILLANCE, + B_HID_UID_BCS_ERROR_INDICATION, + B_HID_UID_BCS_FIXED_BEEPER, + B_HID_UID_BCS_GOOD_DECODE_INDICATION, + B_HID_UID_BCS_HANDS_FREE_SCANNING, + B_HID_UID_BCS_INTRINSICALLY_SAFE, + B_HID_UID_BCS_KLASSE_EINS_LASER, + B_HID_UID_BCS_LONG_RANGE_SCANNER, + B_HID_UID_BCS_MIRROR_SPEED_CONTROL, + B_HID_UID_BCS_NOT_ON_FILE_INDICATION, + B_HID_UID_BCS_PROGRAMMABLE_BEEPER, + B_HID_UID_BCS_TRIGGERLESS, + B_HID_UID_BCS_WAND, + B_HID_UID_BCS_WATER_RESISTANT, + B_HID_UID_BCS_MULTI_RANGE_SCANNER, + B_HID_UID_BCS_PROXIMITY_SENSOR, + + B_HID_UID_BCS_FRAGMENT_DECODING = 0x4d, + B_HID_UID_BCS_SCANNER_READ_CONFIDENCE, + B_HID_UID_BCS_DATA_PREFIX, + B_HID_UID_BCS_PREFIX_AIMI, + B_HID_UID_BCS_PREFIX_NONE, + B_HID_UID_BCS_PREFIX_PROPRIETARY, + + B_HID_UID_BCS_ACTIVE_TIME = 0x55, + B_HID_UID_BCS_AIMING_LASER_PATTERN, + B_HID_UID_BCS_BAR_CODE_PRESENT, + B_HID_UID_BCS_BEEPER_STATE, + B_HID_UID_BCS_LASER_ON_TIME, + B_HID_UID_BCS_LASER_STATE, + B_HID_UID_BCS_LOCKOUT_TIME, + B_HID_UID_BCS_MOTOR_STATE, + B_HID_UID_BCS_MOTOR_TIMEOUT, + B_HID_UID_BCS_POWER_ON_RESET_SCANNER, + B_HID_UID_BCS_PREVENT_READ_OF_BARCODES, + B_HID_UID_BCS_INITIATE_BARCODE_READ, + B_HID_UID_BCS_TRIGGER_STATE, + B_HID_UID_BCS_TRIGGER_MODE, + B_HID_UID_BCS_TRIGGER_MODE_BLINKING_LASER_ON, + B_HID_UID_BCS_TRIGGER_MODE_CONTINUOUS_LASER_ON, + B_HID_UID_BCS_TRIGGER_MODE_LASER_ON_WHILE_PULLED, + B_HID_UID_BCS_TRIGGER_MODE_LASER_STAYS_ON_AFTER_TRIGGER_RELEASE, + + B_HID_UID_BCS_COMMIT_PARAMETERS_TO_NVM = 0x6d, + B_HID_UID_BCS_PARAMETER_SCANNING, + B_HID_UID_BCS_PARAMETERS_CHANGED, + B_HID_UID_BCS_SET_PARAMETER_DEFAULT_VALUES, + + B_HID_UID_BCS_SCANNER_IN_CRADLE = 0x75, + B_HID_UID_BCS_SCANNER_IN_RANGE, + + B_HID_UID_BCS_AIM_DURATION = 0x7a, + B_HID_UID_BCS_GOOD_READ_LAMP_DURATION, + B_HID_UID_BCS_GOOD_READ_LAMP_INTENSITY, + B_HID_UID_BCS_GOOD_READ_LED, + B_HID_UID_BCS_GOOD_READ_TONE_FREQUENCY, + B_HID_UID_BCS_GOOD_READ_TONE_LENGTH, + B_HID_UID_BCS_GOOD_READ_TONE_VOLUME, + + B_HID_UID_BCS_NO_READ_MESSAGE = 0x82, + B_HID_UID_BCS_NOT_ON_FILE_VOLUME, + B_HID_UID_BCS_POWERUP_BEEP, + B_HID_UID_BCS_SOUND_ERROR_BEEP, + B_HID_UID_BCS_SOUND_NOT_ON_FILE_BEEP, + B_HID_UID_BCS_GOOD_READ_WHEN_TO_WRITE, + B_HID_UID_BCS_GRWTI_AFTER_DECODE, + B_HID_UID_BCS_GRWTI_BEEP_LAMP_AFTER_TRANSMIT, + B_HID_UID_BCS_GRWTI_NO_BEEP_LAMP_USE_AT_ALL, + + B_HID_UID_BCS_BOOKLAND_EAN = 0x91, + B_HID_UID_BCS_CONVERT_EAN_8_TO_13_TYPE, + B_HID_UID_BCS_CONVERT_UPC_A_TO_EAN_13, + B_HID_UID_BCS_CONVERT_UPC_E_TO_A, + B_HID_UID_BCS_EAN_13, + B_HID_UID_BCS_EAN_8, + B_HID_UID_BCS_EAN_99_128_MANDATORY, + B_HID_UID_BCS_EAN_99_P5_128_OPTIONAL, + + B_HID_UID_BCS_UPC_EAN = 0x9a, + B_HID_UID_BCS_UPC_EAN_COUPON_CODE, + B_HID_UID_BCS_UPC_EAN_PERIODICALS, + B_HID_UID_BCS_UPC_A, + B_HID_UID_BCS_UPC_A_WITH_128_MANDATORY, + B_HID_UID_BCS_UPC_A_WITH_128_OPTIONAL, + B_HID_UID_BCS_UPC_A_WITH_P5_OPTIONAL, + B_HID_UID_BCS_UPC_E, + B_HID_UID_BCS_UPC_E1, + + B_HID_UID_BCS_PERIODICAL = 0xa9, + B_HID_UID_BCS_PERIODICAL_AUTO_DISCRIMINATE_PLUS_2, + B_HID_UID_BCS_PERIODICAL_ONLY_DECODE_WITH_PLUS_2, + B_HID_UID_BCS_PERIODICAL_IGNORE_PLUS_2, + B_HID_UID_BCS_PERIODICAL_AUTO_DISCRIMINATE_PLUS_5, + B_HID_UID_BCS_PERIODICAL_ONLY_DECODE_WITH_PLUS_5, + B_HID_UID_BCS_PERIODICAL_IGNORE_PLUS_5, + B_HID_UID_BCS_CHECK, + B_HID_UID_BCS_CHECK_DISABLE_PRICE, + B_HID_UID_BCS_CHECK_ENABLE_4_DIGIT_PRICE, + B_HID_UID_BCS_CHECK_ENABLE_5_DIGIT_PRICE, + B_HID_UID_BCS_CHECK_ENABLE_EUROPEAN_4_DIGIT_PRICE, + B_HID_UID_BCS_CHECK_ENABLE_EUROPEAN_5_DIGIT_PRICE, + + B_HID_UID_BCS_EAN_TWO_LABEL = 0xb7, + B_HID_UID_BCS_EAN_THREE_LABEL, + B_HID_UID_BCS_EAN_8_FLAG_DIGIT_1, + B_HID_UID_BCS_EAN_8_FLAG_DIGIT_2, + B_HID_UID_BCS_EAN_8_FLAG_DIGIT_3, + B_HID_UID_BCS_EAN_13_FLAG_DIGIT_1, + B_HID_UID_BCS_EAN_13_FLAG_DIGIT_2, + B_HID_UID_BCS_EAN_13_FLAG_DIGIT_3, + B_HID_UID_BCS_ADD_EAN_2_3_LABEL_DEFINITION, + B_HID_UID_BCS_CLEAR_ALL_EAN_2_3_LABEL_DEFINITIONS, + + B_HID_UID_BCS_CODABAR = 0xc3, + B_HID_UID_BCS_CODE_128, + + B_HID_UID_BCS_CODE_39 = 0xc7, + B_HID_UID_BCS_CODE_93, + B_HID_UID_BCS_FULL_ASCII_CONVERSION, + B_HID_UID_BCS_INTERLEAVED_2_OF_5, + B_HID_UID_BCS_ITALIAN_PHARMACY_CODE, + B_HID_UID_BCS_MSI_PLESSEY, + B_HID_UID_BCS_STANDARD_2_OF_5_IATA, + B_HID_UID_BCS_STANDARD_2_OF_5, + + B_HID_UID_BCS_TRANSMIT_START_STOP = 0xd3, + B_HID_UID_BCS_TRI_OPTIC, + B_HID_UID_BCS_UCC_EAN_128, + B_HID_UID_BCS_CHECK_DIGIT, + B_HID_UID_BCS_CHECK_DIGIT_DISABLE, + B_HID_UID_BCS_CHECK_DIGIT_ENABLE_INTERLEAVED_2_OF_5_OPCC, + B_HID_UID_BCS_CHECK_DIGIT_ENABLE_INTERLEAVED_2_OF_5_USS, + B_HID_UID_BCS_CHECK_DIGIT_ENABLE_STANDARD_2_OF_5_OPCC, + B_HID_UID_BCS_CHECK_DIGIT_ENABLE_STANDARD_2_OF_5_USS, + B_HID_UID_BCS_CHECK_DIGIT_ENABLE_ONE_MSI_PLESSEY, + B_HID_UID_BCS_CHECK_DIGIT_ENABLE_TWO_MSI_PLESSEY, + B_HID_UID_BCS_CHECK_DIGIT_CODABAR_ENABLE, + B_HID_UID_BCS_CHECK_DIGIT_CODE_39_ENABLE, + + B_HID_UID_BCS_DISABLE_CHECK_DIGIT_TRANSMIT = 0xf1, + B_HID_UID_BCS_ENABLE_CHECK_DIGIT_TRANSMIT, + + B_HID_UID_BCS_SYMBOLOGY_IDENTIFIER_1 = 0xfb, + B_HID_UID_BCS_SYMBOLOGY_IDENTIFIER_2, + B_HID_UID_BCS_SYMBOLOGY_IDENTIFIER_3, + B_HID_UID_BCS_DECODED_DATA, + B_HID_UID_BCS_DECODE_DATA_CONTINUED, + B_HID_UID_BCS_BAR_SPACE_DATA, + B_HID_UID_BCS_SCANNER_DATA_ACCURACY, + B_HID_UID_BCS_RAW_DATA_POLARITY, + B_HID_UID_BCS_POLARITY_INVERT_BAR_CODE, + B_HID_UID_BCS_POLARITY_NORMAL_BAR_CODE, + + B_HID_UID_BCS_MINIMUM_LENGTH_TO_DECODE = 0x106, + B_HID_UID_BCS_MAXIMUM_LENGTH_TO_DECODE, + B_HID_UID_BCS_FIRST_DISCRETE_LENGTH_TO_DECODE, + B_HID_UID_BCS_SECOND_DESCRETE_LENGTH_TO_DECODE, + B_HID_UID_BCS_DATA_LENGTH_METHOD, + B_HID_UID_BCS_DL_METHOD_READ_ANY, + B_HID_UID_BCS_DL_METHOD_CHECK_IN_RANGE, + B_HID_UID_BCS_DL_METHOD_CHECK_FOR_DISCRETE, + + B_HID_UID_BCS_AZTEC_CODE = 0x110, + B_HID_UID_BCS_BC412, + B_HID_UID_BCS_CHANNEL_CODE, + B_HID_UID_BCS_CODE_16, + B_HID_UID_BCS_CODE_32, + B_HID_UID_BCS_CODE_49, + B_HID_UID_BCS_CODE_ONE, + B_HID_UID_BCS_COLORCODE, + B_HID_UID_BCS_DATA_MATRIX, + B_HID_UID_BCS_MAXI_CODE, + B_HID_UID_BCS_MICRO_PDF, + B_HID_UID_BCS_PDF_417, + B_HID_UID_BCS_POSI_CODE, + B_HID_UID_BCS_QR_CODE, + B_HID_UID_BCS_SUPER_CODE, + B_HID_UID_BCS_ULTRA_CODE, + B_HID_UID_BCS_USD_5_SLUG_CODE, + B_HID_UID_BCS_VERI_CODE +}; + + +#endif // _USB_HID_PAGE_BAR_CODE_SCANNER_H diff --git a/headers/os/drivers/usb/USB_hid_page_battery_system.h b/headers/os/drivers/usb/USB_hid_page_battery_system.h new file mode 100644 index 0000000000..1e398d3a13 --- /dev/null +++ b/headers/os/drivers/usb/USB_hid_page_battery_system.h @@ -0,0 +1,119 @@ +/* + * Copyright 2004-2010, Haiku Inc. All Rights Reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _USB_HID_PAGE_BATTERY_SYSTEM_H +#define _USB_HID_PAGE_BATTERY_SYSTEM_H + + +/* Reference: + * HID Usage Page 0x85: BATTERY SYSTEM + * Universal Serial Bus Usage Tables for HID Power Devices Ver. 1.0 + * http://www.usb.org/developers/devclass_docs/pdcv10.pdf + */ + +// Usage IDs +enum { + B_HID_UID_BAT_SMB_BATTERY_MODE = 0x01, + B_HID_UID_BAT_SMB_BATTERY_STATUS, + B_HID_UID_BAT_SMB_ALARM_WARNING, + B_HID_UID_BAT_SMB_CHARGER_MODE, + B_HID_UID_BAT_SMB_CHARGER_STATUS, + B_HID_UID_BAT_SMB_CHARGER_SPEC_INFO, + B_HID_UID_BAT_SMB_SELECTOR_STATE, + B_HID_UID_BAT_SMB_SELECTOR_PRESETS, + B_HID_UID_BAT_SMB_SELECTOR_INFO, + + B_HID_UID_BAT_OPTIONAL_MFG_FUNCTION1 = 0x10, + B_HID_UID_BAT_OPTIONAL_MFG_FUNCTION2, + B_HID_UID_BAT_OPTIONAL_MFG_FUNCTION3, + B_HID_UID_BAT_OPTIONAL_MFG_FUNCTION4, + B_HID_UID_BAT_OPTIONAL_MFG_FUNCTION5, + B_HID_UID_BAT_CONNECTION_TO_SM_BUS, + B_HID_UID_BAT_OUTPUT_CONNECTION, + B_HID_UID_BAT_CHARGER_CONNECTION, + B_HID_UID_BAT_BATTERY_INSERTION, + B_HID_UID_BAT_USE_NEXT, + B_HID_UID_BAT_OK_TO_USE, + B_HID_UID_BAT_BATTERY_SUPPORTED, + B_HID_UID_BAT_SELECTOR_REVISION, + B_HID_UID_BAT_CHARGING_INDICATOR, + + B_HID_UID_BAT_MANUFACTURER_ACCESS = 0x28, + B_HID_UID_BAT_REMAINING_CAPACITY_LIMIT, + B_HID_UID_BAT_REMAINING_TIME_LIMIT, + B_HID_UID_BAT_AT_RATE, + B_HID_UID_BAT_CAPACITY_MODE, + B_HID_UID_BAT_BROADCAST_TO_CHARGER, + B_HID_UID_BAT_PRIMARY_BATTERY, + B_HID_UID_BAT_CHARGE_CONTROLLER, + + B_HID_UID_BAT_TERMINATE_CHARGE = 0x40, + B_HID_UID_BAT_TERMINATE_DISCHARGE, + B_HID_UID_BAT_BELOW_REMAINING_CAPACITY_LIMIT, + B_HID_UID_BAT_REMAINING_TIME_LIMIT_EXPIRED, + B_HID_UID_BAT_CHARGING, + B_HID_UID_BAT_DISCHARGING, + B_HID_UID_BAT_FULLY_CHARGED, + B_HID_UID_BAT_FULLY_DISCHARGED, + B_HID_UID_BAT_CONDITIONAL_FLAG, + B_HID_UID_BAT_AT_RATE_OK, + B_HID_UID_BAT_SMB_ERROR_CODE, + B_HID_UID_BAT_NEED_REPLACEMENT, + + B_HID_UID_BAT_AT_RATE_TIME_TO_FULL = 0x60, + B_HID_UID_BAT_AT_RATE_TIME_TO_EMPTY, + B_HID_UID_BAT_AVERAGE_CURRENT, + B_HID_UID_BAT_MAX_ERROR, + B_HID_UID_BAT_RELATIVE_STATE_OF_CHARGE, + B_HID_UID_BAT_ABSOLUTE_STATE_OF_CHARGE, + B_HID_UID_BAT_REMAINING_CAPACITY, + B_HID_UID_BAT_FULL_CHARGE_CAPACITY, + B_HID_UID_BAT_RUN_TIME_TO_EMPTY, + B_HID_UID_BAT_AVERAGE_TIME_TO_EMPTY, + B_HID_UID_BAT_AVERAGE_TIME_TO_FULL, + B_HID_UID_BAT_CYCLE_COUNT, + + B_HID_UID_BAT_BATT_PACK_MODEL_LEVEL = 0x80, + B_HID_UID_BAT_INTERNAL_CHARGE_CONTROLLER, + B_HID_UID_BAT_PRIMARY_BATTERY_SUPPORT, + B_HID_UID_BAT_DESIGN_CAPACITY, + B_HID_UID_BAT_SPECIFICATION_INFO, + B_HID_UID_BAT_MANUFACTURER_DATE, + B_HID_UID_BAT_SERIAL_NUMBER, + B_HID_UID_BAT_IMANUFACTURER_NAME, + B_HID_UID_BAT_IDEVICE_NAME, + B_HID_UID_BAT_IDEVICE_CHEMISTRY, + B_HID_UID_BAT_MANUFACTURER_DATA, + B_HID_UID_BAT_RECHARGABLE, + B_HID_UID_BAT_WARNING_CAPACITY_LIMIT, + B_HID_UID_BAT_CAPACITY_GRANULARITY_1, + B_HID_UID_BAT_CAPACITY_GRANULARITY_2, + B_HID_UID_BAT_IOEM_INFORMATION, + + B_HID_UID_BAT_INHIBIT_CHARGE = 0xc0, + B_HID_UID_BAT_ENABLE_POLLING, + B_HID_UID_BAT_RESET_TO_ZERO, + + B_HID_UID_BAT_AC_PRESENT = 0xd0, + B_HID_UID_BAT_BATTERY_PRESENT, + B_HID_UID_BAT_POWER_FAIL, + B_HID_UID_BAT_ALARM_INHIBITED, + B_HID_UID_BAT_THERMISTOR_UNDER_RANGE, + B_HID_UID_BAT_THERMISTOR_HOT, + B_HID_UID_BAT_THERMISTOR_COLD, + B_HID_UID_BAT_THERMISTOR_OVER_RANGE, + B_HID_UID_BAT_VOLTAGE_OUT_OF_RANGE, + B_HID_UID_BAT_CURRENT_OUT_OF_RANGE, + B_HID_UID_BAT_CURRENT_NOT_REGULATED, + B_HID_UID_BAT_VOLTAGE_NOT_REGULATED, + B_HID_UID_BAT_MASTER_MODE, + + B_HID_UID_BAT_CHARGER_SELECTOR_SUPPORT = 0xf0, + B_HID_UID_BAT_CHARGER_SPEC, + B_HID_UID_BAT_LEVEL_2, + B_HID_UID_BAT_LEVEL_3 +}; + + +#endif // _USB_HID_PAGE_BATTERY_SYSTEM_H diff --git a/headers/os/drivers/usb/USB_hid_page_consumer.h b/headers/os/drivers/usb/USB_hid_page_consumer.h new file mode 100644 index 0000000000..c0766bb2c8 --- /dev/null +++ b/headers/os/drivers/usb/USB_hid_page_consumer.h @@ -0,0 +1,400 @@ +/* + * Copyright 2004-2010, Haiku Inc. All Rights Reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _USB_HID_PAGE_CONSUMER_H +#define _USB_HID_PAGE_CONSUMER_H + + +/* Reference: + * HID Usage Page 0x0C: CONSUMER + * HID Usage Tables Ver. 1.12 + * http://www.usb.org/developers/devclass_docs/Hut1_12.pdf + */ + +// Usage IDs +enum { + B_HID_UID_CON_CONSUMER_CONTROL = 0x01, + B_HID_UID_CON_NUMERIC_KEYPAD, + B_HID_UID_CON_PROGRAMMABLE_BUTTONS, + B_HID_UID_CON_MICROPHONE, + B_HID_UID_CON_HEADPHONE, + B_HID_UID_CON_GRAPHIC_EQUALIZER, + + B_HID_UID_CON_PLUS_10 = 0x20, + B_HID_UID_CON_PLUS_100, + B_HID_UID_CON_AM_PM, + + B_HID_UID_CON_POWER = 0x30, + B_HID_UID_CON_RESET, + B_HID_UID_CON_SLEEP, + B_HID_UID_CON_SLEEP_AFTER, + B_HID_UID_CON_SLEEP_MODE, + B_HID_UID_CON_ILLUMINATION, + B_HID_UID_CON_FUNCTION_BUTTONS, + + B_HID_UID_CON_MENU = 0x40, + B_HID_UID_CON_MENU_PICK, + B_HID_UID_CON_MENU_UP, + B_HID_UID_CON_MENU_DOWN, + B_HID_UID_CON_MENU_LEFT, + B_HID_UID_CON_MENU_RIGHT, + B_HID_UID_CON_MENU_ESCAPE, + B_HID_UID_CON_MENU_VALUE_INCREASE, + B_HID_UID_CON_MENU_VALUE_DECREASE, + + B_HID_UID_CON_DATA_ON_SCREEN = 0x60, + B_HID_UID_CON_CLOSED_CAPTION, + B_HID_UID_CON_CLOSED_CAPTION_SELECT, + B_HID_UID_CON_VCR_TV, + B_HID_UID_CON_BROADCAST_MODE, + B_HID_UID_CON_SNAPSHOT, + B_HID_UID_CON_STILL, + + B_HID_UID_CON_SELECTION = 0x80, + B_HID_UID_CON_ASSIGN_SELECTION, + B_HID_UID_CON_MODE_SETUP, + B_HID_UID_CON_RECALL_LIST, + B_HID_UID_CON_ENTER_CHANNEL, + B_HID_UID_CON_ORDER_MOVIE, + B_HID_UID_CON_CHANNEL, + B_HID_UID_CON_MEDIA_SELECTION, + B_HID_UID_CON_MEDIA_SELECT_COMPUTER, + B_HID_UID_CON_MEDIA_SELECT_TV, + B_HID_UID_CON_MEDIA_SELECT_WWW, + B_HID_UID_CON_MEDIA_SELECT_DVD, + B_HID_UID_CON_MEDIA_SELECT_TELEPHONE, + B_HID_UID_CON_MEDIA_SELECT_PROGRAM_GUIDE, + B_HID_UID_CON_MEDIA_SELECT_VIDEO_PHONE, + B_HID_UID_CON_MEDIA_SELECT_GAMES, + B_HID_UID_CON_MEDIA_SELECT_MESSAGES, + B_HID_UID_CON_MEDIA_SELECT_CD, + B_HID_UID_CON_MEDIA_SELECT_VCR, + B_HID_UID_CON_MEDIA_SELECT_TUNER, + B_HID_UID_CON_QUIT, + B_HID_UID_CON_HELP, + B_HID_UID_CON_MEDIA_SELECT_TAPE, + B_HID_UID_CON_MEDIA_SELECT_CABLE, + B_HID_UID_CON_MEDIA_SELECT_SATELLITE, + B_HID_UID_CON_MEDIA_SELECT_SECURITY, + B_HID_UID_CON_MEDIA_SELECT_HOME, + B_HID_UID_CON_MEDIA_SELECT_CALL, + B_HID_UID_CON_CHANNEL_INCREMENT, + B_HID_UID_CON_CHANNEL_DECREMENT, + B_HID_UID_CON_MEDIA_SELECT_SAP, + + B_HID_UID_CON_VCR_PLUS = 0xa0, + B_HID_UID_CON_ONCE, + B_HID_UID_CON_DAILY, + B_HID_UID_CON_WEEKLY, + B_HID_UID_CON_MONTHLY, + + B_HID_UID_CON_PLAY = 0xb0, + B_HID_UID_CON_PAUSE, + B_HID_UID_CON_RECORD, + B_HID_UID_CON_FAST_FORWARD, + B_HID_UID_CON_REWIND, + B_HID_UID_CON_SCAN_NEXT_TRACK, + B_HID_UID_CON_SCAN_PREVIOUS_TRACK, + B_HID_UID_CON_STOP, + B_HID_UID_CON_EJECT, + B_HID_UID_CON_RANDOM_PLAY, + B_HID_UID_CON_SELECT_DISC, + B_HID_UID_CON_ENTER_DISC, + B_HID_UID_CON_REPEAT, + B_HID_UID_CON_TRACKING, + B_HID_UID_CON_TRACKING_NORMAL, + B_HID_UID_CON_SLOW_TRACKING, + B_HID_UID_CON_FRAME_FORWARD, + B_HID_UID_CON_FRAME_BACKWARD, + B_HID_UID_CON_MARK, + B_HID_UID_CON_CLEAR_MARK, + B_HID_UID_CON_REPEAT_FROM_MARK, + B_HID_UID_CON_RETURN_TO_MARK, + B_HID_UID_CON_SEARCH_MARK_FORWARD, + B_HID_UID_CON_SEARCH_MARK_BACKWARDS, + B_HID_UID_CON_COUNTER_RESET, + B_HID_UID_CON_SHOW_COUNTER, + B_HID_UID_CON_TRACKING_INCREMENT, + B_HID_UID_CON_TRACKING_DECREMENT, + B_HID_UID_CON_STOP_EJECT, + B_HID_UID_CON_PLAY_PAUSE, + B_HID_UID_CON_PLAY_SKIP, + + B_HID_UID_CON_VOLUME = 0xe0, + B_HID_UID_CON_BALANCE, + B_HID_UID_CON_MUTE, + B_HID_UID_CON_BASS, + B_HID_UID_CON_TREBLE, + B_HID_UID_CON_BASS_BOOST, + B_HID_UID_CON_SURROUND_MODE, + B_HID_UID_CON_LOUDNESS, + B_HID_UID_CON_MPX, + B_HID_UID_CON_VOLUME_INCREMENT, + B_HID_UID_CON_VOLUME_DECREMENT, + + B_HID_UID_CON_SPEED_SELECT = 0xf0, + B_HID_UID_CON_PLAYBACK_SPEED, + B_HID_UID_CON_STANDARD_PLAY, + B_HID_UID_CON_LONG_PLAY, + B_HID_UID_CON_EXTENDED_PLAY, + B_HID_UID_CON_SLOW, + + B_HID_UID_CON_FAN_ENABLE = 0x100, + B_HID_UID_CON_FAN_DISABLE, + B_HID_UID_CON_LIGHT_ENABLE, + B_HID_UID_CON_LIGHT_ILLUMINATION_LEVEL, + B_HID_UID_CON_CLIMATE_CONTROL_ENABLE, + B_HID_UID_CON_ROOM_TEMPERATURE, + B_HID_UID_CON_SECURITY_ENABLE, + B_HID_UID_CON_FIRE_ALARM, + B_HID_UID_CON_POLICE_ALARM, + B_HID_UID_CON_PROXIMITY, + B_HID_UID_CON_MOTION, + B_HID_UID_CON_DURESS_ALARM, + B_HID_UID_CON_HOLDUP_ALARM, + B_HID_UID_CON_MEDICAL_ALARM, + + B_HID_UID_CON_BALANCE_RIGHT = 0x150, + B_HID_UID_CON_BALANCE_LEFT, + B_HID_UID_CON_BASS_INCREMENT, + B_HID_UID_CON_BASS_DECREMENT, + B_HID_UID_CON_TREBLE_INCREMENT, + B_HID_UID_CON_TREBLE_DECREMENT, + + B_HID_UID_CON_SPEAKER_SYSTEM = 0x160, + B_HID_UID_CON_CHANNEL_LEFT, + B_HID_UID_CON_CHANNEL_RIGHT, + B_HID_UID_CON_CHANNEL_CENTER, + B_HID_UID_CON_CHANNEL_FRONT, + B_HID_UID_CON_CHANNEL_CENTER_FRONT, + B_HID_UID_CON_CHANNEL_SIDE, + B_HID_UID_CON_CHANNEL_SURROUND, + B_HID_UID_CON_CHANNEL_LOW_FREQUENCE_ENHANCEMENT, + B_HID_UID_CON_CHANNEL_TOP, + B_HID_UID_CON_CHANNEL_UNKNOWN, + + B_HID_UID_CON_SUBCHANNEL = 0x170, + B_HID_UID_CON_SUBCHANNEL_INCREMENT, + B_HID_UID_CON_SUBCHANNEL_DECREMENT, + B_HID_UID_CON_ALTERNATE_AUDIO_INCREMENT, + B_HID_UID_CON_ALTERNATE_AUDIO_DECREMENT, + + B_HID_UID_CON_APPLICATION_LAUNCH_BUTTONS = 0x180, + B_HID_UID_CON_AL_LAUNCH_BUTTON_CONFIGURATION_TOOL, + B_HID_UID_CON_AL_PROGRAMMABLE_BUTTON_CONFIGURATION, + B_HID_UID_CON_AL_CONSUMER_CONTROL_CONFIGURATION, + B_HID_UID_CON_AL_WORD_PROCESSOR, + B_HID_UID_CON_AL_TEXT_EDITOR, + B_HID_UID_CON_AL_SPREADSHEET, + B_HID_UID_CON_AL_GRAPHICS_EDITOR, + B_HID_UID_CON_AL_PRESENTATION_APP, + B_HID_UID_CON_AL_DATABASE_APP, + B_HID_UID_CON_AL_EMAIL_READER, + B_HID_UID_CON_AL_NEWSREADER, + B_HID_UID_CON_AL_VOICEMAIL, + B_HID_UID_CON_AL_CONTACTS_ADDRESS_BOOK, + B_HID_UID_CON_AL_CALENDER_SCHEDULE, + B_HID_UID_CON_AL_TASK_PROJECT_MANAGER, + B_HID_UID_CON_AL_LOG_JOURNAL_TIMECARD, + B_HID_UID_CON_AL_CHECKBOOK_FINANCE, + B_HID_UID_CON_AL_CALCULATOR, + B_HID_UID_CON_AL_AV_CAPTURE_PLAYBACK, + B_HID_UID_CON_AL_LOCAL_MACHINE_BROWSER, + B_HID_UID_CON_AL_LAN_WAN_BROWSER, + B_HID_UID_CON_AL_INTERNET_BROWSER, + B_HID_UID_CON_AL_REMOTE_NETWORKING_ISP_CONNECT, + B_HID_UID_CON_AL_NETWORK_CONFERENCE, + B_HID_UID_CON_AL_NETWORK_CHAT, + B_HID_UID_CON_AL_TELEPHONY_DIALER, + B_HID_UID_CON_AL_LOGON, + B_HID_UID_CON_AL_LOGOFF, + B_HID_UID_CON_AL_LOGON_LOGOFF, + B_HID_UID_CON_AL_TERMINAL_LOCK_SCREEN, + B_HID_UID_CON_AL_CONTROL_PANEL, + B_HID_UID_CON_AL_COMMAND_LINE_PROCESSOR_RUN, + B_HID_UID_CON_AL_PROCESS_TASK_MANAGER, + B_HID_UID_CON_AL_SELECT_TASK_APPLICATION, + B_HID_UID_CON_AL_NEXT_TASK_APPLICATION, + B_HID_UID_CON_AL_PREVIOUS_TASK_APPLICATION, + B_HID_UID_CON_AL_PREEMPTIVE_HALT_TASK_APPLICATION, + B_HID_UID_CON_AL_INTERGRATED_HELP_CENTER, + B_HID_UID_CON_AL_DOCUMENTS, + B_HID_UID_CON_AL_THESAURUS, + B_HID_UID_CON_AL_DICTIONARY, + B_HID_UID_CON_AL_DESKTOP, + B_HID_UID_CON_AL_SPELL_CHECK, + B_HID_UID_CON_AL_GRAMMAR_CHECK, + B_HID_UID_CON_AL_WIRELESS_STATUS, + B_HID_UID_CON_AL_KEYBOARD_LAYOUT, + B_HID_UID_CON_AL_VIRUS_PROTECTION, + B_HID_UID_CON_AL_ENCRYPTION, + B_HID_UID_CON_AL_SCREEN_SAVER, + B_HID_UID_CON_AL_ALARMS, + B_HID_UID_CON_AL_CLOCK, + B_HID_UID_CON_AL_FILE_BROWSER, + B_HID_UID_CON_AL_POWER_STATUS, + B_HID_UID_CON_AL_IMAGE_BROWSER, + B_HID_UID_CON_AL_AUDIO_BROWSER, + B_HID_UID_CON_AL_MOVIE_BROWSER, + B_HID_UID_CON_AL_DIGITAL_RIGHTS_MANAGER, + B_HID_UID_CON_AL_DIGITAL_WALLET, + + B_HID_UID_CON_AL_INSTANT_MESSAGING = 0x1bc, + B_HID_UID_CON_AL_OEM_FEATURES_TIPS_TUTORIAL_BROWSER, + B_HID_UID_CON_AL_OEM_HELP, + B_HID_UID_CON_AL_ONLINE_COMMUNITY, + B_HID_UID_CON_AL_ENTERTAINMENT_CONTENT_BROWSER, + B_HID_UID_CON_AL_ONLINE_SHOPPING_BROWSER, + B_HID_UID_CON_AL_SMARTCARD_INFORMATION_HELP, + B_HID_UID_CON_AL_MARKET_MONITOR_FINANCE_BROWSER, + B_HID_UID_CON_AL_CUSTOMIZED_CORPORATE_NEWS_BROWSER, + B_HID_UID_CON_AL_ONLINE_ACTIVITY_BROWSER, + B_HID_UID_CON_AL_RESEARCH_SEARCH_BROWSER, + B_HID_UID_CON_AL_AUDIO_PLAYER, + + B_HID_UID_CON_GENERIC_GUI_APPLICATION_CONTROLS = 0x200, + B_HID_UID_CON_AC_NEW, + B_HID_UID_CON_AC_OPEN, + B_HID_UID_CON_AC_CLOSE, + B_HID_UID_CON_AC_EXIT, + B_HID_UID_CON_AC_MAXIMIZE, + B_HID_UID_CON_AC_MINIMIZE, + B_HID_UID_CON_AC_SAVE, + B_HID_UID_CON_AC_PRINT, + B_HID_UID_CON_AC_PROPERTIES, + B_HID_UID_CON_AC_UNDO, + B_HID_UID_CON_AC_COPY, + B_HID_UID_CON_AC_CUT, + B_HID_UID_CON_AC_PASTE, + B_HID_UID_CON_AC_SELECT_ALL, + B_HID_UID_CON_AC_FIND, + B_HID_UID_CON_AC_FIND_AND_REPLACE, + B_HID_UID_CON_AC_SEARCH, + B_HID_UID_CON_AC_GO_TO, + B_HID_UID_CON_AC_HOME, + B_HID_UID_CON_AC_BACK, + B_HID_UID_CON_AC_FORWARD, + B_HID_UID_CON_AC_STOP, + B_HID_UID_CON_AC_REFRESH, + B_HID_UID_CON_AC_PREVIOUS_LINK, + B_HID_UID_CON_AC_NEXT_LINK, + B_HID_UID_CON_AC_BOOKMARKS, + B_HID_UID_CON_AC_HISTORY, + B_HID_UID_CON_AC_SUBSCRIPTIONS, + B_HID_UID_CON_AC_ZOOM_IN, + B_HID_UID_CON_AC_ZOOM_OUT, + B_HID_UID_CON_AC_ZOOM, + B_HID_UID_CON_AC_FULL_SCREEN_VIEW, + B_HID_UID_CON_AC_NORMAL_VIEW, + B_HID_UID_CON_AC_VIEW_TOGGLE, + B_HID_UID_CON_AC_SCROLL_UP, + B_HID_UID_CON_AC_SCROLL_DOWN, + B_HID_UID_CON_AC_SCROLL, + B_HID_UID_CON_AC_PAN_LEFT, + B_HID_UID_CON_AC_PAN_RIGHT, + B_HID_UID_CON_AC_PAN, + B_HID_UID_CON_AC_NEW_WINDOW, + B_HID_UID_CON_AC_TILE_HORIZONTALLY, + B_HID_UID_CON_AC_TILE_VERTICALLY, + B_HID_UID_CON_AC_FORMAT, + B_HID_UID_CON_AC_EDIT, + B_HID_UID_CON_AC_BOLD, + B_HID_UID_CON_AC_ITALICS, + B_HID_UID_CON_AC_UNDERLINE, + B_HID_UID_CON_AC_STRIKETHROUGH, + B_HID_UID_CON_AC_SUBSCRIPT, + B_HID_UID_CON_AC_SUPERSCRIPT, + B_HID_UID_CON_AC_ALL_CAPS, + B_HID_UID_CON_AC_ROTATE, + B_HID_UID_CON_AC_RESIZE, + B_HID_UID_CON_AC_FLIP_HORIZONTAL, + B_HID_UID_CON_AC_FLIP_VERTICAL, + B_HID_UID_CON_AC_MIRROR_HORIZONTAL, + B_HID_UID_CON_AC_MIRROR_VERTICAL, + B_HID_UID_CON_AC_FONT_SELECT, + B_HID_UID_CON_AC_FONT_COLOR, + B_HID_UID_CON_AC_FONT_SIZE, + B_HID_UID_CON_AC_JUSTIFY_LEFT, + B_HID_UID_CON_AC_JUSTIFY_CENTER_H, + B_HID_UID_CON_AC_JUSTIFY_RIGHT, + B_HID_UID_CON_AC_JUSTIFY_BLOCK_H, + B_HID_UID_CON_AC_JUSTIFY_TOP, + B_HID_UID_CON_AC_JUSTIFY_CENTER_V, + B_HID_UID_CON_AC_JUSTIFY_BOTTOM, + B_HID_UID_CON_AC_JUSTIFY_BLOCK_V, + B_HID_UID_CON_AC_INDENT_DECREASE, + B_HID_UID_CON_AC_INDENT_INCREASE, + B_HID_UID_CON_AC_NUMBERED_LIST, + B_HID_UID_CON_AC_RESTART_NUMBERING, + B_HID_UID_CON_AC_BULLETED_LIST, + B_HID_UID_CON_AC_PROMOTE, + B_HID_UID_CON_AC_DEMOTE, + B_HID_UID_CON_AC_YES, + B_HID_UID_CON_AC_NO, + B_HID_UID_CON_AC_CANCEL, + B_HID_UID_CON_AC_CATALOG, + B_HID_UID_CON_AC_BUY_CHECKOUT, + B_HID_UID_CON_AC_ADD_TO_CART, + B_HID_UID_CON_AC_EXPAND, + B_HID_UID_CON_AC_EXPAND_ALL, + B_HID_UID_CON_AC_COLLAPSE, + B_HID_UID_CON_AC_COLLAPSE_ALL, + B_HID_UID_CON_AC_PRINT_PREVIEW, + B_HID_UID_CON_AC_PASTE_SPECIAL, + B_HID_UID_CON_AC_INSERT_MODE, + B_HID_UID_CON_AC_DELETE, + B_HID_UID_CON_AC_LOCK, + B_HID_UID_CON_AC_UNLOCK, + B_HID_UID_CON_AC_PROTECT, + B_HID_UID_CON_AC_UNPROTECT, + B_HID_UID_CON_AC_ATTACH_COMMENT, + B_HID_UID_CON_AC_DELETE_COMMENT, + B_HID_UID_CON_AC_VIEW_COMMENT, + B_HID_UID_CON_AC_SELECT_WORD, + B_HID_UID_CON_AC_SELECT_SENTENCE, + B_HID_UID_CON_AC_SELECT_PARAGRAPH, + B_HID_UID_CON_AC_SELECT_COLUMN, + B_HID_UID_CON_AC_SELECT_ROW, + B_HID_UID_CON_AC_SELECT_TABLE, + B_HID_UID_CON_AC_SELECT_OBJECT, + B_HID_UID_CON_AC_REDO_REPEAT, + B_HID_UID_CON_AC_SORT, + B_HID_UID_CON_AC_SORT_ASCENDING, + B_HID_UID_CON_AC_SORT_DESCENDING, + B_HID_UID_CON_AC_FILTER, + B_HID_UID_CON_AC_SET_CLOCK, + B_HID_UID_CON_AC_VIEW_CLOCK, + B_HID_UID_CON_AC_SELECT_TIME_ZONE, + B_HID_UID_CON_AC_EDIT_TIME_ZONES, + B_HID_UID_CON_AC_SET_ALARM, + B_HID_UID_CON_AC_CLEAR_ALARM, + B_HID_UID_CON_AC_SNOOZE_ALARM, + B_HID_UID_CON_AC_RESET_ALARM, + B_HID_UID_CON_AC_SYNCHRONIZE, + B_HID_UID_CON_AC_SEND_RECEIVE, + B_HID_UID_CON_AC_SEND_TO, + B_HID_UID_CON_AC_REPLY, + B_HID_UID_CON_AC_REPLY_ALL, + B_HID_UID_CON_AC_FORWARD_MSG, + B_HID_UID_CON_AC_SEND, + B_HID_UID_CON_AC_ATTACH_FILE, + B_HID_UID_CON_AC_UPLOAD, + B_HID_UID_CON_AC_DOWNLOAD, + B_HID_UID_CON_AC_SET_BORDERS, + B_HID_UID_CON_AC_INSERT_ROW, + B_HID_UID_CON_AC_INSERT_COLUMN, + B_HID_UID_CON_AC_INSERT_FILE, + B_HID_UID_CON_AC_INSERT_PICTURE, + B_HID_UID_CON_AC_INSERT_OBJECT, + B_HID_UID_CON_AC_INSERT_SYMBOL, + B_HID_UID_CON_AC_SAVE_AND_CLOSE, + B_HID_UID_CON_AC_RENAME, + B_HID_UID_CON_AC_MERGE, + B_HID_UID_CON_AC_SPLIT, + B_HID_UID_CON_AC_DISTRIBUTE_HORIZONTALLY, + B_HID_UID_CON_AC_DISTRIBUTE_VERTICALLY +}; + + +#endif // _USB_HID_PAGE_CONSUMER_H diff --git a/headers/os/drivers/usb/USB_hid_page_digitizers.h b/headers/os/drivers/usb/USB_hid_page_digitizers.h new file mode 100644 index 0000000000..1bfc9bad05 --- /dev/null +++ b/headers/os/drivers/usb/USB_hid_page_digitizers.h @@ -0,0 +1,61 @@ +/* + * Copyright 2004-2010, Haiku Inc. All Rights Reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _USB_HID_PAGE_DIGITIZERS_H +#define _USB_HID_PAGE_DIGITIZERS_H + + +/* Reference: + * HID Usage Page 0x0D: DIGITIZERS + * HID Usage Tables Ver. 1.12 + * http://www.usb.org/developers/devclass_docs/Hut1_12.pdf + */ + +// Usage IDs +enum { + B_HID_UID_DIG_DIGITIZER = 0x1, + B_HID_UID_DIG_PEN, + B_HID_UID_DIG_LIGHT_PEN, + B_HID_UID_DIG_TOUCH_SCREEN, + B_HID_UID_DIG_TOUCH_PAD, + B_HID_UID_DIG_WHITE_BOARD, + B_HID_UID_DIG_COORDINATE_MEASURING_MACHINE, + B_HID_UID_DIG_3D_DIGITIZER, + B_HID_UID_DIG_STEREO_PLOTTER, + B_HID_UID_DIG_ARTICULATED_ARM, + B_HID_UID_DIG_ARMATURE, + B_HID_UID_DIG_MULTIPLE_POINT_DIGITIZER, + B_HID_UID_DIG_FREE_SPACE_WAND, + + B_HID_UID_DIG_STYLUS = 0x20, + B_HID_UID_DIG_PUCK, + B_HID_UID_DIG_FINGER, + + B_HID_UID_DIG_TIP_PRESSURE = 0x30, + B_HID_UID_DIG_BARREL_PRESSURE, + B_HID_UID_DIG_IN_RANGE, + B_HID_UID_DIG_TOUCH, + B_HID_UID_DIG_UNTOUCH, + B_HID_UID_DIG_TAP, + B_HID_UID_DIG_QUALITY, + B_HID_UID_DIG_DATA_VALID, + B_HID_UID_DIG_TRANSDUCER_INDEX, + B_HID_UID_DIG_TABLET_FUNCTION_KEYS, + B_HID_UID_DIG_PROGRAM_CHANGE_KEYS, + B_HID_UID_DIG_BATTERY_STRENGTH, + B_HID_UID_DIG_INVERT, + B_HID_UID_DIG_X_TILT, + B_HID_UID_DIG_Y_TILT, + B_HID_UID_DIG_AZIMUTH, + B_HID_UID_DIG_ALTITUDE, + B_HID_UID_DIG_TWIST, + B_HID_UID_DIG_TIP_SWITCH, + B_HID_UID_DIG_SECONDARY_TIP_SWITCH, + B_HID_UID_DIG_BARREL_SWITCH, + B_HID_UID_DIG_ERASER, + B_HID_UID_DIG_TABLET_PICK +}; + + +#endif // _USB_HID_PAGE_DIGITIZERS_H diff --git a/headers/os/drivers/usb/USB_hid_page_game_controls.h b/headers/os/drivers/usb/USB_hid_page_game_controls.h new file mode 100644 index 0000000000..207fcacd16 --- /dev/null +++ b/headers/os/drivers/usb/USB_hid_page_game_controls.h @@ -0,0 +1,49 @@ +/* + * Copyright 2004-2010, Haiku Inc. All Rights Reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _USB_HID_PAGE_GAME_CONTROLS_H +#define _USB_HID_PAGE_GAME_CONTROLS_H + + +/* Reference: + * HID Usage Page 0x05: GAME CONTROLS + * HID Usage Tables Ver. 1.12 + * http://www.usb.org/developers/devclass_docs/Hut1_12.pdf + */ + +// Usage IDs +enum { + B_HID_UID_GAM_3D_GAME_CONTROLLER = 0x01, + B_HID_UID_GAM_PINBALL_DEVICE, + B_HID_UID_GAM_GUN_DEVICE, + + B_HID_UID_GAM_POINT_OF_VIEW = 0x20, + B_HID_UID_GAM_TURN_RIGHT_LEFT, + B_HID_UID_GAM_PITCH_FORWARD_BACKWARD, + B_HID_UID_GAM_ROLL_RIGHT_LEFT, + B_HID_UID_GAM_MOVE_RIGHT_LEFT, + B_HID_UID_GAM_MOVE_FORWARD_BACKWARD, + B_HID_UID_GAM_MOVE_UP_DOWN, + B_HID_UID_GAM_LEAN_RIGHT_LEFT, + B_HID_UID_GAM_LEAN_FORWARD_BACKWARD, + B_HID_UID_GAM_HEIGHT_OF_POV, + B_HID_UID_GAM_FLIPPER, + B_HID_UID_GAM_SECONDARY_FLIPPER, + B_HID_UID_GAM_BUMP, + B_HID_UID_GAM_NEW_GAME, + B_HID_UID_GAM_SHOOT_BALL, + B_HID_UID_GAM_PLAYER, + B_HID_UID_GAM_GUN_BOLT, + B_HID_UID_GAM_GUN_CLIP, + B_HID_UID_GAM_GUN_SELECTOR, + B_HID_UID_GAM_GUN_SINGLE_SHOT, + B_HID_UID_GAM_GUN_BURST, + B_HID_UID_GAM_GUN_AUTOMATIC, + B_HID_UID_GAM_GUN_SAFETY, + B_HID_UID_GAM_GAMEPAD_FIRE_JUMP, + B_HID_UID_GAM_GAMEPAD_TRIGGER +}; + + +#endif // _USB_HID_PAGE_GAME_CONTROLS_H diff --git a/headers/os/drivers/usb/USB_hid_page_generic_desktop.h b/headers/os/drivers/usb/USB_hid_page_generic_desktop.h new file mode 100644 index 0000000000..0968a95a8b --- /dev/null +++ b/headers/os/drivers/usb/USB_hid_page_generic_desktop.h @@ -0,0 +1,95 @@ +/* + * Copyright 2004-2010, Haiku Inc. All Rights Reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _USB_HID_PAGE_GENERIC_DESKTOP_H +#define _USB_HID_PAGE_GENERIC_DESKTOP_H + + +/* Reference: + * HID Usage Page 0x01: GENERIC DESKTOP + * HID Usage Tables Ver. 1.12 + * http://www.usb.org/developers/devclass_docs/Hut1_12.pdf + */ + +// Usage IDs +enum { + B_HID_UID_GD_POINTER = 0x1, + B_HID_UID_GD_MOUSE, + + B_HID_UID_GD_JOYSTICK = 0x4, + B_HID_UID_GD_GAMEPAD, + B_HID_UID_GD_KEYBOARD, + B_HID_UID_GD_KEYPAD, + B_HID_UID_GD_MULTIAXIS, + B_HID_UID_GD_TABLET_PC_SYSTEM_CONTROLS, + + B_HID_UID_GD_X = 0x30, + B_HID_UID_GD_Y, + B_HID_UID_GD_Z, + B_HID_UID_GD_RX, + B_HID_UID_GD_RY, + B_HID_UID_GD_RZ, + B_HID_UID_GD_SLIDER, + B_HID_UID_GD_DIAL, + B_HID_UID_GD_WHEEL, + B_HID_UID_GD_HAT_SWITCH, + B_HID_UID_GD_COUNTED_BUFFER, + B_HID_UID_GD_BYTE_COUNT, + B_HID_UID_GD_MOTION_WAKEUP, + B_HID_UID_GD_START, + B_HID_UID_GD_SELECT, + + B_HID_UID_GD_VX = 0x40, + B_HID_UID_GD_VY, + B_HID_UID_GD_VZ, + B_HID_UID_GD_VBRX, + B_HID_UID_GD_VBRY, + B_HID_UID_GD_VBRZ, + B_HID_UID_GD_VNO, + B_HID_UID_GD_FEATURE_NOTIFICATION, + B_HID_UID_GD_RESOLUTION_MULTIPLIER, + + B_HID_UID_GD_SYSTEM_CONTROL = 0x80, + B_HID_UID_GD_SYSTEM_POWER_DOWN, + B_HID_UID_GD_SYSTEM_SLEEP, + B_HID_UID_GD_SYSTEM_WAKE_UP, + B_HID_UID_GD_SYSTEM_CONTEXT_MENU, + B_HID_UID_GD_SYSTEM_MAIN_MENU, + B_HID_UID_GD_SYSTEM_APP_MENU, + B_HID_UID_GD_SYSTEM_MENU_HELP, + B_HID_UID_GD_SYSTEM_MENU_EXIT, + B_HID_UID_GD_SYSTEM_MENU_SELECT, + B_HID_UID_GD_SYSTEM_MENU_RIGHT, + B_HID_UID_GD_SYSTEM_MENU_LEFT, + B_HID_UID_GD_SYSTEM_MENU_UP, + B_HID_UID_GD_SYSTEM_MENU_DOWN, + B_HID_UID_GD_SYSTEM_COLD_RESTART, + B_HID_UID_GD_SYSTEM_WARM_RESTART, + B_HID_UID_GD_DPAD_UP, + B_HID_UID_GD_DPAD_DOWN, + B_HID_UID_GD_DPAD_RIGHT, + B_HID_UID_GD_DPAD_LEFT, + + B_HID_UID_GD_SYSTEM_DOCK = 0xa0, + B_HID_UID_GD_SYSTEM_UNDOCK, + B_HID_UID_GD_SYSTEM_SETUP, + B_HID_UID_GD_SYSTEM_BREAK, + B_HID_UID_GD_SYSTEM_DEBUGGER_BREAK, + B_HID_UID_GD_APPLICATION_BREAK, + B_HID_UID_GD_APPLICATION_DEBUGGER_BREAK, + B_HID_UID_GD_SYSTEM_SPEAKER_MUTE, + B_HID_UID_GD_SYSTEM_HIBERNATE, + + B_HID_UID_GD_SYSTEM_DISPLAY_INVERT = 0xb0, + B_HID_UID_GD_SYSTEM_DISPLAY_INTERNAL, + B_HID_UID_GD_SYSTEM_DISPLAY_EXTERNAL, + B_HID_UID_GD_SYSTEM_DISPLAY_BOTH, + B_HID_UID_GD_SYSTEM_DISPLAY_DUAL, + B_HID_UID_GD_SYSTEM_DISPLAY_TOGGLE, + B_HID_UID_GD_SYSTEM_DISPLAY_SWAP, + B_HID_UID_GD_SYSTEM_DISPLAY_LCD_AUTOSCALE +}; + + +#endif // _USB_HID_PAGE_GENERIC_DESKTOP_H diff --git a/headers/os/drivers/usb/USB_hid_page_generic_device_controls.h b/headers/os/drivers/usb/USB_hid_page_generic_device_controls.h new file mode 100644 index 0000000000..dbe703c219 --- /dev/null +++ b/headers/os/drivers/usb/USB_hid_page_generic_device_controls.h @@ -0,0 +1,27 @@ +/* + * Copyright 2004-2010, Haiku Inc. All Rights Reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _USB_HID_PAGE_GENERIC_DEVICE_CONTROLS_H +#define _USB_HID_PAGE_GENERIC_DEVICE_CONTROLS_H + + +/* Reference: + * HID Usage Page 0x06: GENERIC DEVICE CONTROLS + * HID Usage Tables Ver. 1.12 + * http://www.usb.org/developers/devclass_docs/Hut1_12.pdf + */ + +// Usage IDs +enum { + B_HID_UID_GDEV_BATTERY_STRENGTH = 0x20, + B_HID_UID_GDEV_WIRELESS_CHANNEL, + B_HID_UID_GDEV_WIRELESS_ID, + B_HID_UID_GDEV_DISCOVER_WIRELESS_CONTROL, + B_HID_UID_GDEV_SECURITY_CODE_CHARACTER_ENTERED, + B_HID_UID_GDEV_SECURITY_CODE_CHARACTER_ERASED, + B_HID_UID_GDEV_SECURITY_CODE_CLEARED +}; + + +#endif // _USB_HID_PAGE_GENERIC_DEVICE_CONTROLS_H diff --git a/headers/os/drivers/usb/USB_hid_page_keyboard.h b/headers/os/drivers/usb/USB_hid_page_keyboard.h new file mode 100644 index 0000000000..c300301ede --- /dev/null +++ b/headers/os/drivers/usb/USB_hid_page_keyboard.h @@ -0,0 +1,253 @@ +/* + * Copyright 2004-2010, Haiku Inc. All Rights Reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _USB_HID_PAGE_KEYBOARD_H +#define _USB_HID_PAGE_KEYBOARD_H + + +/* Reference: + * HID Usage Page 0x07: KEYBOARD + * HID Usage Tables Ver. 1.12 + * http://www.usb.org/developers/devclass_docs/Hut1_12.pdf + */ + +// Usage IDs +enum { + B_HID_UID_KB_ERROR_ROLL_OVER = 0x01, + B_HID_UID_KB_POST_FAIL, + B_HID_UID_KB_ERROR_UNDEFINED, + + B_HID_UID_KB_a_AND_A = 0x04, + B_HID_UID_KB_b_AND_B, + B_HID_UID_KB_c_AND_C, + B_HID_UID_KB_d_AND_D, + B_HID_UID_KB_e_AND_E, + B_HID_UID_KB_f_AND_F, + B_HID_UID_KB_g_AND_G, + B_HID_UID_KB_h_AND_H, + B_HID_UID_KB_i_AND_I, + B_HID_UID_KB_j_AND_J, + B_HID_UID_KB_k_AND_K, + B_HID_UID_KB_l_AND_L, + B_HID_UID_KB_m_AND_M, + B_HID_UID_KB_n_AND_N, + B_HID_UID_KB_o_AND_O, + B_HID_UID_KB_p_AND_P, + B_HID_UID_KB_q_AND_Q, + B_HID_UID_KB_r_AND_R, + B_HID_UID_KB_s_AND_S, + B_HID_UID_KB_t_AND_T, + B_HID_UID_KB_u_AND_U, + B_HID_UID_KB_v_AND_V, + B_HID_UID_KB_w_AND_W, + B_HID_UID_KB_x_AND_X, + B_HID_UID_KB_y_AND_Y, + B_HID_UID_KB_z_AND_Z, + + B_HID_UID_KB_1_AND_EXCLAMATION_MARK = 0x1e, + B_HID_UID_KB_2_AND_AT, + B_HID_UID_KB_3_AND_HASH, + B_HID_UID_KB_4_AND_DOLLAR, + B_HID_UID_KB_5_AND_PERCENT, + B_HID_UID_KB_6_AND_CIRCUMFLEX, + B_HID_UID_KB_7_AND_AMPERSAND, + B_HID_UID_KB_8_AND_ASTERISK, + B_HID_UID_KB_9_AND_LPAREN, + B_HID_UID_KB_0_AND_RPAREN, + + B_HID_UID_KB_ENTER = 0x28, + B_HID_UID_KB_ESCAPE, + B_HID_UID_KB_DELETE, + B_HID_UID_KB_TAB, + B_HID_UID_KB_SPACEBAR, + B_HID_UID_KB_DASH_AND_UNDERSCORE, + B_HID_UID_KB_EQUAL_SIGN_AND_PLUS, + B_HID_UID_KB_LBRACKET_AND_LBRACE, + B_HID_UID_KB_RBRACKET_AND_RBRACE, + B_HID_UID_KB_BACKSLASH_AND_PIPE, + B_HID_UID_KB_NON_US_HASH_AND_TILDE, // some notes + B_HID_UID_KB_SEMICOLON_AND_COLON, + B_HID_UID_KB_APOSTROPHE_AND_QUOTATION_MARK, + B_HID_UID_KB_GRAVE_ACCENT_AND_TILDE, + B_HID_UID_KB_COMMA_AND_LCHEVRON, + B_HID_UID_KB_PERIOD_AND_RCHEVRON, + B_HID_UID_KB_SLASH_AND_QUESTION_MARK, + B_HID_UID_KB_CAPS_LOCK, + + B_HID_UID_KB_F1 = 0x3a, + B_HID_UID_KB_F2, + B_HID_UID_KB_F3, + B_HID_UID_KB_F4, + B_HID_UID_KB_F5, + B_HID_UID_KB_F6, + B_HID_UID_KB_F7, + B_HID_UID_KB_F8, + B_HID_UID_KB_F9, + B_HID_UID_KB_F10, + B_HID_UID_KB_F11, + B_HID_UID_KB_F12, + + B_HID_UID_KB_PRINT_SCREEN = 0x46, + B_HID_UID_KB_SCROLL_LOCK, + B_HID_UID_KB_PAUSE, + B_HID_UID_KB_INSERT, + B_HID_UID_KB_HOME, + B_HID_UID_KB_PAGE_UP, + B_HID_UID_KB_DELETE_FORWARD, + B_HID_UID_KB_END, + B_HID_UID_KB_PAGE_DOWN, + B_HID_UID_KB_RIGHT_ARROW, + B_HID_UID_KB_LEFT_ARROW, + B_HID_UID_KB_DOWN_ARROW, + B_HID_UID_KB_UP_ARROW, + B_HID_UID_KB_NUM_LOCK_AND_CLEAR, + + B_HID_UID_KP_DIVIDE = 0x54, + B_HID_UID_KP_MULTIPLY, + B_HID_UID_KP_SUBTRACT, + B_HID_UID_KP_ADD, + B_HID_UID_KP_ENTER, + B_HID_UID_KP_1_AND_END, + B_HID_UID_KP_2_AND_DOWN_ARROW, + B_HID_UID_KP_3_AND_PAGE_DOWN, + B_HID_UID_KP_4_AND_LEFT_ARROW, + B_HID_UID_KP_5, + B_HID_UID_KP_6_AND_RIGHT_ARROW, + B_HID_UID_KP_7_AND_HOME, + B_HID_UID_KP_8_AND_UP_ARROW, + B_HID_UID_KP_9_AND_PAGE_UP, + B_HID_UID_KP_0_AND_INSERT, + B_HID_UID_KP_PERIOD_AND_DELETE, + + B_HID_UID_KB_NON_US_BACKSLASH_AND_PIPE = 0x64, + B_HID_UID_KB_APPLICATION, + B_HID_UID_KB_POWER, + + B_HID_UID_KP_EQUAL_SIGN = 0x67, + B_HID_UID_KB_F13, + B_HID_UID_KB_F14, + B_HID_UID_KB_F15, + B_HID_UID_KB_F16, + B_HID_UID_KB_F17, + B_HID_UID_KB_F18, + B_HID_UID_KB_F19, + B_HID_UID_KB_F20, + B_HID_UID_KB_F21, + B_HID_UID_KB_F22, + B_HID_UID_KB_F23, + B_HID_UID_KB_F24, + + B_HID_UID_KB_EXECUTE = 0x74, + B_HID_UID_KB_HELP, + B_HID_UID_KB_MENU, + B_HID_UID_KB_SELECT, + B_HID_UID_KB_STOP, + B_HID_UID_KB_AGAIN, + B_HID_UID_KB_UNDO, + B_HID_UID_KB_CUT, + B_HID_UID_KB_COPY, + B_HID_UID_KB_PASTE, + B_HID_UID_KB_FIND, + B_HID_UID_KB_MUTE, + B_HID_UID_KB_VOLUME_UP, + B_HID_UID_KB_VOLUME_DOWN, + B_HID_UID_KB_LOCKING_CAPS_LOCK, + B_HID_UID_KB_LOCKING_NUM_LOCK, + B_HID_UID_KB_LOCKING_SCROLL_LOCK, + + B_HID_UID_KP_COMMA = 0x85, + B_HID_UID_KB_EQUAL_SIGN, + + B_HID_UID_KB_INTERNATIONAL_1 = 0x87, + B_HID_UID_KB_INTERNATIONAL_2, + B_HID_UID_KB_INTERNATIONAL_3, + B_HID_UID_KB_INTERNATIONAL_4, + B_HID_UID_KB_INTERNATIONAL_5, + B_HID_UID_KB_INTERNATIONAL_6, + B_HID_UID_KB_INTERNATIONAL_7, + B_HID_UID_KB_INTERNATIONAL_8, + + B_HID_UID_KB_LANG_1 = 0x90, + B_HID_UID_KB_LANG_2, + B_HID_UID_KB_LANG_3, + B_HID_UID_KB_LANG_4, + B_HID_UID_KB_LANG_5, + B_HID_UID_KB_LANG_6, + B_HID_UID_KB_LANG_7, + B_HID_UID_KB_LANG_8, + B_HID_UID_KB_LANG_9, + + B_HID_UID_KB_ALTERNATE_ERASE = 0x99, + B_HID_UID_KB_SYSREQ_ATTENTION, + B_HID_UID_KB_CANCEL, + B_HID_UID_KB_CLEAR, + B_HID_UID_KB_PRIOR, + B_HID_UID_KB_RETURN, + B_HID_UID_KB_SEPARATOR, + B_HID_UID_KB_OUT, + B_HID_UID_KB_OPER, + B_HID_UID_KB_CLEAR_AGAIN, + B_HID_UID_KB_CRSEL_PROPS, + B_HID_UID_KB_EXSEL, + + B_HID_UID_KB_00 = 0xb0, + B_HID_UID_KB_000, + B_HID_UID_KB_THOUSANDS_SEPARATOR, + B_HID_UID_KB_DECIMAL_SEPARATOR, + B_HID_UID_KB_CURRENCY_UNIT, + B_HID_UID_KB_CURRENCY_SUBUNIT, + + B_HID_UID_KP_LPAREN = 0xb6, + B_HID_UID_KP_RPAREN, + B_HID_UID_KP_LBRACE, + B_HID_UID_KP_RBRACE, + B_HID_UID_KP_TAB, + B_HID_UID_KP_BACKSPACE, + B_HID_UID_KP_A, + B_HID_UID_KP_B, + B_HID_UID_KP_C, + B_HID_UID_KP_D, + B_HID_UID_KP_E, + B_HID_UID_KP_F, + B_HID_UID_KP_XOR, + B_HID_UID_KP_CIRCUMFLEX, + B_HID_UID_KP_PERCENT, + B_HID_UID_KP_LCHEVRON, + B_HID_UID_KP_RCHEVRON, + B_HID_UID_KP_AMPERSAND, + B_HID_UID_KP_AMPERSAND2, + B_HID_UID_KP_PIPE, + B_HID_UID_KP_PIPE2, + B_HID_UID_KP_COLON, + B_HID_UID_KP_HASH, + B_HID_UID_KP_SPACE, + B_HID_UID_KP_AT, + B_HID_UID_KP_EXCLAMATION_MARK, + B_HID_UID_KP_MEMORY_STORE, + B_HID_UID_KP_MEMORY_RECALL, + B_HID_UID_KP_MEMORY_CLEAR, + B_HID_UID_KP_MEMORY_ADD, + B_HID_UID_KP_MEMORY_SUBTRACT, + B_HID_UID_KP_MEMORY_MULTIPLY, + B_HID_UID_KP_MEMORY_DIVIDE, + B_HID_UID_KP_PLUS_MINUS, + B_HID_UID_KP_CLEAR, + B_HID_UID_KP_CLEAR_ENTRY, + B_HID_UID_KP_BINARY, + B_HID_UID_KP_OCTAL, + B_HID_UID_KP_DECIMAL, + B_HID_UID_KP_HEXADECIMAL, + + B_HID_UID_KB_LEFT_CONTROL = 0xe0, + B_HID_UID_KB_LEFT_SHIFT, + B_HID_UID_KB_LEFT_ALT, + B_HID_UID_KB_LEFT_GUI, + B_HID_UID_KB_RIGHT_CONTROL, + B_HID_UID_KB_RIGHT_SHIFT, + B_HID_UID_KB_RIGHT_ALT, + B_HID_UID_KB_RIGHT_GUI +}; + + +#endif // _USB_HID_PAGE_KEYBOARD_H diff --git a/headers/os/drivers/usb/USB_hid_page_led.h b/headers/os/drivers/usb/USB_hid_page_led.h new file mode 100644 index 0000000000..c788462776 --- /dev/null +++ b/headers/os/drivers/usb/USB_hid_page_led.h @@ -0,0 +1,97 @@ +/* + * Copyright 2004-2010, Haiku Inc. All Rights Reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _USB_HID_PAGE_LED_H +#define _USB_HID_PAGE_LED_H + + +/* Reference: + * HID Usage Page 0x08: LED + * HID Usage Tables Ver. 1.12 + * http://www.usb.org/developers/devclass_docs/Hut1_12.pdf + */ + +// Usage IDs +enum { + B_HID_UID_LED_NUM_LOCK = 0x01, + B_HID_UID_LED_CAPS_LOCK, + B_HID_UID_LED_SCROLL_LOCK, + B_HID_UID_LED_COMPOSE, + B_HID_UID_LED_KANA, + B_HID_UID_LED_POWER, + B_HID_UID_LED_SHIFT, + B_HID_UID_LED_DO_NOT_DISTURB, + B_HID_UID_LED_MUTE, + B_HID_UID_LED_TONE_ENABLE, + B_HID_UID_LED_HIGH_CUT_FILTER, + B_HID_UID_LED_LOW_CUT_FILTER, + B_HID_UID_LED_EQUALIZER_ENABLE, + B_HID_UID_LED_SOUND_FIELD_ON, + B_HID_UID_LED_SURROUND_ON, + B_HID_UID_LED_REPEAT, + B_HID_UID_LED_STEREO, + B_HID_UID_LED_SAMPLING_RATE_DETECT, + B_HID_UID_LED_SPINNING, + B_HID_UID_LED_CAV, + B_HID_UID_LED_CAL, + B_HID_UID_LED_RECORDING_FORMAT_DETECT, + B_HID_UID_LED_OFF_HOOK, + B_HID_UID_LED_RING, + B_HID_UID_LED_MESSAGE_WAITING, + B_HID_UID_LED_DATA_MODE, + B_HID_UID_LED_BATTERY_OPERATION, + B_HID_UID_LED_BATTERY_OK, + B_HID_UID_LED_BATTERY_LOW, + B_HID_UID_LED_SPEAKER, + B_HID_UID_LED_HEAD_SET, + B_HID_UID_LED_HOLD, + B_HID_UID_LED_MICROPHONE, + B_HID_UID_LED_COVERAGE, + B_HID_UID_LED_NIGHT_MODE, + B_HID_UID_LED_SEND_CALLS, + B_HID_UID_LED_CALL_PICKUP, + B_HID_UID_LED_CONFERENCE, + B_HID_UID_LED_STAND_BY, + B_HID_UID_LED_CAMERA_ON, + B_HID_UID_LED_CAMERA_OFF, + B_HID_UID_LED_ON_LINE, + B_HID_UID_LED_OFF_LINE, + B_HID_UID_LED_BUSY, + B_HID_UID_LED_READY, + B_HID_UID_LED_PAPER_OUT, + B_HID_UID_LED_PAPER_JAM, + B_HID_UID_LED_REMOTE, + B_HID_UID_LED_FORWARD, + B_HID_UID_LED_REVERSE, + B_HID_UID_LED_STOP, + B_HID_UID_LED_REWIND, + B_HID_UID_LED_FAST_FORWARD, + B_HID_UID_LED_PLAY, + B_HID_UID_LED_PAUSE, + B_HID_UID_LED_RECORD, + B_HID_UID_LED_ERROR, + B_HID_UID_LED_USAGE_SELECTED_INDICATOR, + B_HID_UID_LED_USAGE_IN_USE_INDICATOR, + B_HID_UID_LED_USAGE_MULTI_MODE_INDICATOR, + B_HID_UID_LED_INDICATOR_ON, + B_HID_UID_LED_INDICATOR_FLASH, + B_HID_UID_LED_INDICATOR_SLOW_BLINK, + B_HID_UID_LED_INDICATOR_FAST_BLINK, + B_HID_UID_LED_INDICATOR_OFF, + B_HID_UID_LED_FLASH_ON_TIME, + B_HID_UID_LED_SLOW_BLINK_ON_TIME, + B_HID_UID_LED_SLOW_BLINK_OFF_TIME, + B_HID_UID_LED_FAST_BLINK_ON_TIME, + B_HID_UID_LED_FAST_BLINK_OFF_TIME, + B_HID_UID_LED_USAGE_INDICATOR_COLOR, + B_HID_UID_LED_USAGE_INDICATOR_RED, + B_HID_UID_LED_USAGE_INDICATOR_GREEN, + B_HID_UID_LED_USAGE_INDICATOR_AMBER, + B_HID_UID_LED_GENERIC_INDICATOR, + B_HID_UID_LED_SYSTEM_SUSPEND, + B_HID_UID_LED_EXTERNAL_POWER_CONNECTED +}; + + +#endif // _USB_HID_PAGE_LED_H diff --git a/headers/os/drivers/usb/USB_hid_page_magnetic_stripe_reader.h b/headers/os/drivers/usb/USB_hid_page_magnetic_stripe_reader.h new file mode 100644 index 0000000000..34d4d0dd93 --- /dev/null +++ b/headers/os/drivers/usb/USB_hid_page_magnetic_stripe_reader.h @@ -0,0 +1,32 @@ +/* + * Copyright 2004-2010, Haiku Inc. All Rights Reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _USB_HID_PAGE_MAGNETIC_STRIPE_READER_H +#define _USB_HID_PAGE_MAGNETIC_STRIPE_READER_H + + +/* Reference: + * HID Usage Page 0x8E: MAGENTIC STRIPE READER + * HID Point of Sale Usage Tables Ver. 1.0 + * http://www.usb.org/developers/devclass_docs/pos1_02.pdf + */ + +// Usage IDs +enum { + B_HID_UID_MSR_DEVICE_READ_ONLY = 0x01, + + B_HID_UID_MSR_TRACK_1_LENGTH = 0x11, + B_HID_UID_MSR_TRACK_2_LENGTH, + B_HID_UID_MSR_TRACK_3_LENGTH, + B_HID_UID_MSR_TRACK_JIS_LENGTH, + + B_HID_UID_MSR_TRACK_DATA = 0x20, + B_HID_UID_MSR_TRACK_1_DATA, + B_HID_UID_MSR_TRACK_2_DATA, + B_HID_UID_MSR_TRACK_3_DATA, + B_HID_UID_MSR_TRACK_JIS_DATA +}; + + +#endif // _USB_HID_PAGE_MAGNETIC_STRIPE_READER_H diff --git a/headers/os/drivers/usb/USB_hid_page_medical_instrument.h b/headers/os/drivers/usb/USB_hid_page_medical_instrument.h new file mode 100644 index 0000000000..cdf69f8ce6 --- /dev/null +++ b/headers/os/drivers/usb/USB_hid_page_medical_instrument.h @@ -0,0 +1,55 @@ +/* + * Copyright 2004-2010, Haiku Inc. All Rights Reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _USB_HID_PAGE_MEDICAL_INSTRUMENT_H +#define _USB_HID_PAGE_MEDICAL_INSTRUMENT_H + + +/* Reference: + * HID Usage Page 0x40: MEDICAL INSTRUMENT + * HID Usage Tables Ver. 1.12 + * http://www.usb.org/developers/devclass_docs/Hut1_12.pdf + */ + +// Usage IDs +enum { + B_HID_UID_MI_ULTRASOUND = 0x01, + + B_HID_UID_MI_VCR_ACQUISITION = 0x20, + B_HID_UID_MI_FREEZE_THAW, + B_HID_UID_MI_SLIP_STORE, + B_HID_UID_MI_UPDATE, + B_HID_UID_MI_NEXT, + B_HID_UID_MI_SAVE, + B_HID_UID_MI_PRINT, + B_HID_UID_MI_MICROPHONE_ENABLE, + + B_HID_UID_MI_CINE = 0x40, + B_HID_UID_MI_TRANSMIT_POWER, + B_HID_UID_MI_VOLUME, + B_HID_UID_MI_FOCUS, + B_HID_UID_MI_DEPTH, + + B_HID_UID_MI_SOFT_STEP_PRIMARY = 0x60, + B_HID_UID_MI_SOFT_STEP_SECONDARY, + + B_HID_UID_MI_DEPTH_GAIN_COMPENSATION = 0x70, + + B_HID_UID_MI_ZOOM_SELECT = 0x80, + B_HID_UID_MI_ZOOM_ADJUST, + B_HID_UID_MI_SPECTRAL_DOPPLER_MODE_SELECT, + B_HID_UID_MI_SPECTRAL_DOPPLER_ADJUST, + B_HID_UID_MI_COLOR_DOPPLER_MODE_SELECT, + B_HID_UID_MI_COLOR_DOPPLER_ADJUST, + B_HID_UID_MI_MOTION_MODE_SELECT, + B_HID_UID_MI_MOTION_MODE_ADJUST, + B_HID_UID_MI_2D_MODE_SELECT, + B_HID_UID_MI_2D_MODE_ADJUST, + + B_HID_UID_MI_SOFT_CONTROL_SELECT = 0xa, + B_HID_UID_MI_SOFT_CONTROL_ADJUST +}; + + +#endif // _USB_HID_PAGE_MEDICAL_INSTRUMENT_H diff --git a/headers/os/drivers/usb/USB_hid_page_pid.h b/headers/os/drivers/usb/USB_hid_page_pid.h new file mode 100644 index 0000000000..af2293d000 --- /dev/null +++ b/headers/os/drivers/usb/USB_hid_page_pid.h @@ -0,0 +1,130 @@ +/* + * Copyright 2004-2010, Haiku Inc. All Rights Reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _USB_HID_PAGE_PHYSICAL_INTERFACE_DEVICE_H +#define _USB_HID_PAGE_PHYSICAL_INTERFACE_DEVICE_H + + +/* Reference: + * HID Usage Page 0x0F: PHYSICAL INTERFACE DEVICE + * Device Class Definition for Physical Interface Deviced (PID) Ver. 1.0 + * http://www.usb.org/developers/devclass_docs/pid1_01.pdf + */ + +// UsageIDs +enum { + B_HID_UID_PID_PHYSICAL_INTERFACE_DEVICE = 0x01, + + B_HID_UID_PID_NORMAL = 0x20, + B_HID_UID_PID_SET_EFFECT_REPORT, + B_HID_UID_PID_EFFECT_BLOCK_INDEX, + B_HID_UID_PID_PARAMETER_BLOCK_OFFSET, + B_HID_UID_PID_ROM_FLAG, + B_HID_UID_PID_EFFECT_TYPE, + B_HID_UID_PID_ET_CONSTANT_FORCE_DATA, + + B_HID_UID_PID_ET_SQUARE = 0x30, + B_HID_UID_PID_ET_SINE, + B_HID_UID_PID_ET_TRIANGLE, + B_HID_UID_PID_ET_SAWTOOTH_UP, + B_HID_UID_PID_ET_SAWTOOTH_DOWN, + + B_HID_UID_PID_ET_SPRING, + B_HID_UID_PID_ET_DAMPER, + B_HID_UID_PID_ET_INERTIA, + B_HID_UID_PID_ET_FRICTION, + + B_HID_UID_PID_DURATION = 0x50, + B_HID_UID_PID_SAMPLE_PERIOD, + B_HID_UID_PID_GAIN, + B_HID_UID_PID_TRIGGER_BUTTON, + B_HID_UID_PID_TRIGGER_REPEAT_INTERVAL, + B_HID_UID_PID_AXES_ENABLE, + B_HID_UID_PID_DIRECTION_ENABLE, + B_HID_UID_PID_DIRECTION, + B_HID_UID_PID_TYPE_SPECIFIC_BLOCK_OFFSET, + B_HID_UID_PID_BLOCK_TYPE, + B_HID_UID_PID_SET_ENVELOPE_REPORT, + B_HID_UID_PID_ATTACK_LEVEL, + B_HID_UID_PID_ATTACK_TIME, + B_HID_UID_PID_FADE_LEVEL, + B_HID_UID_PID_FADE_TIME, + B_HID_UID_PID_SET_CONDITION_REPORT, + B_HID_UID_PID_CP_OFFSET, + B_HID_UID_PID_POSITIVE_COEFFICIENT, + B_HID_UID_PID_NEGATIVE_COEFFICIENT, + B_HID_UID_PID_POSITIVE_SATURATION, + B_HID_UID_PID_NEGATIVE_SATURATION, + B_HID_UID_PID_DEAD_BAND, + B_HID_UID_PID_DOWNLOAD_FORCE_SAMPLE, + B_HID_UID_PID_ISOCH_CUSTOM_FORCE_ENABLE, + B_HID_UID_PID_CUSTOM_FORCE_DATA_REPORT, + B_HID_UID_PID_CUSTOM_FORCE_DATA, + B_HID_UID_PID_CUSTOM_FORCE_VENDOR_DEFINED_DATA, + B_HID_UID_PID_SET_CUSTOM_FORCE_REPORT, + B_HID_UID_PID_CUSTOM_FORCE_DATA_OFFSET, + B_HID_UID_PID_SAMPLE_COUNT, + B_HID_UID_PID_SET_PERIODIC_REPORT, + B_HID_UID_PID_OFFSET, + B_HID_UID_PID_MAGNITUDE, + B_HID_UID_PID_PHASE, + B_HID_UID_PID_PERIOD, + B_HID_UID_PID_SET_CONSTANT_FORCE_REPORT, + B_HID_UID_PID_SET_RAMP_FORCE_REPORT, + B_HID_UID_PID_RAMP_START, + B_HID_UID_PID_RAMP_END, + B_HID_UID_PID_EFFECT_OPERATION_REPORT, + B_HID_UID_PID_EFFECT_OPERATION, + B_HID_UID_PID_OP_EFFECT_START, + B_HID_UID_PID_OP_EFFECT_START_SOLO, + B_HID_UID_PID_OP_EFFECT_STOP, + B_HID_UID_PID_LOOP_COUNT, + B_HID_UID_PID_DEVICE_GAIN_REPORT, + B_HID_UID_PID_DEVICE_GAIN, + B_HID_UID_PID_PID_POOL_REPORT, + B_HID_UID_PID_RAM_POOL_SIZE, + B_HID_UID_PID_ROM_POOL_SIZE, + B_HID_UID_PID_ROM_EFFECT_BLOCK_COUNT, + B_HID_UID_PID_SIMULTANEOUS_EFFECTS_MAX, + B_HID_UID_PID_POOL_ALIGNMENT, + B_HID_UID_PID_PID_POOL_MOVE_REPORT, + B_HID_UID_PID_MOVE_SOURCE, + B_HID_UID_PID_MOVE_DESTINATION, + B_HID_UID_PID_MOVE_LENGTH, + B_HID_UID_PID_PID_BLOCK_LOAD_REPORT, + + B_HID_UID_PID_BLOCK_LOAD_STATUS = 0x8b, + B_HID_UID_PID_BLOCK_LOAD_SUCCESS, + B_HID_UID_PID_BLOCK_LOAD_FULL, + B_HID_UID_PID_BLOCK_LOAD_ERROR, + B_HID_UID_PID_BLOCK_HANDLE, + B_HID_UID_PID_PID_BLOCK_FREE_REPORT, + B_HID_UID_PID_TYPE_SPECIFIC_BLOCK_HANDLE, + B_HID_UID_PID_PID_STATE_REPORT, + + B_HID_UID_PID_PID_DEVICE_CONTROL_REPORT = 0x95, + B_HID_UID_PID_PID_DEVICE_CONTROL, + B_HID_UID_PID_DC_ENABLE_ACTUATORS, + B_HID_UID_PID_DC_DISABLE_ACTUATORS, + B_HID_UID_PID_DC_STOP_ALL_EFFECTS, + B_HID_UID_PID_DC_DEVICE_RESET, + B_HID_UID_PID_DC_DEVICE_PAUSE, + B_HID_UID_PID_DC_DEVICE_CONTINUE, + + B_HID_UID_PID_DEVICE_PAUSED = 0x9f, + B_HID_UID_PID_ACTUATORS_ENABLED, + + B_HID_UID_PID_SAFETY_SWITCH = 0xa4, + B_HID_UID_PID_ACTUATOR_OVERRIDE_SWITCH, + B_HID_UID_PID_ACTUATOR_POWER, + B_HID_UID_PID_START_DELAY, + B_HID_UID_PID_PARAMETER_BLOCK_SIZE, + B_HID_UID_PID_DEVICE_MANAGED_POOL, + B_HID_UID_PID_SHARED_PARAMETER_BLOCKS, + B_HID_UID_PID_CREATE_NEW_EFFECT_REPORT, + B_HID_UID_PID_RAM_POOL_AVAILABLE +}; + + +#endif // _USB_HID_PAGE_PHYSICAL_INTERFACE_DEVICE_H diff --git a/headers/os/drivers/usb/USB_hid_page_power_device.h b/headers/os/drivers/usb/USB_hid_page_power_device.h new file mode 100644 index 0000000000..50bcfc8b69 --- /dev/null +++ b/headers/os/drivers/usb/USB_hid_page_power_device.h @@ -0,0 +1,104 @@ +/* + * Copyright 2004-2010, Haiku Inc. All Rights Reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _USB_HID_PAGE_POWER_DEVICE_H +#define _USB_HID_PAGE_POWER_DEVICE_H + + +/* Reference: + * HID Usage Page 0x84: POWER DEVICE + * Universal Serial Bus Usage Tables for HID Power Devices Ver. 1.0 + * http://www.usb.org/developers/devclass_docs/pdcv10.pdf + */ + +// Usage IDs +enum { + B_HID_UID_POW_INAME = 0x01, + B_HID_UID_POW_PRESENT_STATUS, + B_HID_UID_POW_CHANGED_STATUS, + B_HID_UID_POW_UPS, + B_HID_UID_POW_POWER_SUPPLY, + + B_HID_UID_POW_BATTERY_SYSTEM = 0x10, + B_HID_UID_POW_BATTERY_SYSTEM_ID, + B_HID_UID_POW_BATTERY, + B_HID_UID_POW_BATERY_ID, + B_HID_UID_POW_CHARGER, + B_HID_UID_POW_CHARGER_ID, + B_HID_UID_POW_POWER_CONVERTER, + B_HID_UID_POW_POWER_CONVERTER_ID, + B_HID_UID_POW_OUTLET_SYSTEM, + B_HID_UID_POW_OUTLET_SYSTEM_ID, + B_HID_UID_POW_INPUT, + B_HID_UID_POW_INPUT_ID, + B_HID_UID_POW_OUTPUT, + B_HID_UID_POW_OUTPUT_ID, + B_HID_UID_POW_FLOW, + B_HID_UID_POW_FLOW_ID, + B_HID_UID_POW_OUTLET, + B_HID_UID_POW_OUTLET_ID, + B_HID_UID_POW_GANG, + B_HID_UID_POW_GANG_ID, + B_HID_UID_POW_POWER_SUMMARY, + B_HID_UID_POW_POWER_SUMMARY_ID, + + B_HID_UID_POW_VOLTAGE = 0x30, + B_HID_UID_POW_CURRENT, + B_HID_UID_POW_FREQUENCY, + B_HID_UID_POW_APPARENT_POWER, + B_HID_UID_POW_ACTIVE_POWER, + B_HID_UID_POW_PERCENT_LOAD, + B_HID_UID_POW_TEMPERATURE, + B_HID_UID_POW_HUMIDITY, + B_HID_UID_POW_BAD_COUNT, + + B_HID_UID_POW_CONFIG_VOLTAGE = 0x40, + B_HID_UID_POW_CONFIG_CURRENT, + B_HID_UID_POW_CONFIG_FREQUENCY, + B_HID_UID_POW_CONFIG_APPARENT_POWER, + B_HID_UID_POW_CONFIG_ACTIVE_POWER, + B_HID_UID_POW_CONFIG_PERCENT_LOAD, + B_HID_UID_POW_CONFIG_TEMPERATURE, + B_HID_UID_POW_CONFIG_HUMIDITY, + + B_HID_UID_POW_SWITCH_ON_CONTROL = 0x50, + B_HID_UID_POW_SWITCH_OFF_CONTROL, + B_HID_UID_POW_TOGGLE_CONTROL, + B_HID_UID_POW_LOW_VOLTAGE_TRANSFER, + B_HID_UID_POW_HIGH_VOLTAGE_TRANSFER, + B_HID_UID_POW_DELAY_BEFORE_REBOOT, + B_HID_UID_POW_DELAY_BEFORE_STARTUP, + B_HID_UID_POW_DELAY_BEFORE_SHUTDOWN, + B_HID_UID_POW_TEST, + B_HID_UID_POW_MODULE_RESET, + B_HID_UID_POW_AUDIBLE_ALARM_CONTROL, + + B_HID_UID_POW_PRESENT = 0x60, + B_HID_UID_POW_GOOD, + B_HID_UID_POW_INTERNAL_FAILURE, + B_HID_UID_POW_VOLTAGE_OUT_OF_RANGE, + B_HID_UID_POW_FREQUENCY_OUT_OF_RANGE, + B_HID_UID_POW_OVERLOAD, + B_HID_UID_POW_OVER_CHARGED, + B_HID_UID_POW_OVER_TEMPERATURE, + B_HID_UID_POW_SHUTDOWN_REQUEST, + B_HID_UID_POW_SHUTDOWN_IMMINENT, + + B_HID_UID_POW_SWITCH_ON_OFF =0x6b, + B_HID_UID_POW_SWITCHABLE, + B_HID_UID_POW_USED, + B_HID_UID_POW_BOOST, + B_HID_UID_POW_BUCK, + B_HID_UID_POW_INITIALIZED, + B_HID_UID_POW_TESTED, + B_HID_UID_POW_AWAITING_POWER, + B_HID_UID_POW_COMMUNICATION_LOST, + + B_HID_UID_POW_IMANUFACTURER = 0xfd, + B_HID_UID_POW_IPRODUCT, + B_HID_UID_POW_ISERIAL_NUMBER +}; + + +#endif // _USB_HID_PAGE_POWER_DEVICE_H diff --git a/headers/os/drivers/usb/USB_hid_page_simulation.h b/headers/os/drivers/usb/USB_hid_page_simulation.h new file mode 100644 index 0000000000..51db99dd4e --- /dev/null +++ b/headers/os/drivers/usb/USB_hid_page_simulation.h @@ -0,0 +1,74 @@ +/* + * Copyright 2004-2010, Haiku Inc. All Rights Reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _USB_HID_PAGE_SIMULATION_H +#define _USB_HID_PAGE_SIMULATION_H + + +/* Reference: + * HID Usage Page 0x02: SIMULATION + * HID Usage Tables Ver. 1.12 + * http://www.usb.org/developers/devclass_docs/Hut1_12.pdf + */ + +// Usage IDs +enum { + B_HID_UID_SIM_FLIGHT_SIMULATION_DEVICE = 0x1, + B_HID_UID_SIM_AUTOMOBILE_SIMULATION_DEVICE, + B_HID_UID_SIM_TANK_SIMULATION_DEVICE, + B_HID_UID_SIM_SPACESHIP_SIMULATION_DEVICE, + B_HID_UID_SIM_SUBMARINE_SIMULATION_DEVICE, + B_HID_UID_SIM_SAILING_SIMULATION_DEVICE, + B_HID_UID_SIM_MOTORCYCLE_SIMULATION_DEVICE, + B_HID_UID_SIM_SPORTS_SIMULATION_DEVICE, + B_HID_UID_SIM_AIRPLANE_SIMULATION_DEVICE, + B_HID_UID_SIM_HELICOPTER_SIMULATION_DEVICE, + B_HID_UID_SIM_MAGIC_CARPET_SIMULATION_DEVICE, + B_HID_UID_SIM_BICYCLE_SIMULATION_DEVICE, + + B_HID_UID_SIM_FLIGHT_CONTROL_STICK = 0x20, + B_HID_UID_SIM_FLIGHT_STICK, + B_HID_UID_SIM_CYCLIC_CONTROL, + B_HID_UID_SIM_CYCLIC_TRIM, + B_HID_UID_SIM_FLIGHT_YOKE, + B_HID_UID_SIM_TRACK_CONTROL, + + B_HID_UID_SIM_AILERON = 0xb0, + B_HID_UID_SIM_AILERON_TRIM, + B_HID_UID_SIM_ANTI_TORQUE_CONTROL, + B_HID_UID_SIM_AUTOPILOT_ENABLE, + B_HID_UID_SIM_CHAFF_RELEASE, + B_HID_UID_SIM_COLLECTIVE_CONTROL, + B_HID_UID_SIM_DIVE_BREAK, + B_HID_UID_SIM_ELECTRONIC_COUNTERMEASURES, + B_HID_UID_SIM_ELEVATOR, + B_HID_UID_SIM_ELEVATOR_TRIM, + B_HID_UID_SIM_RUDDER, + B_HID_UID_SIM_THROTTLE, + B_HID_UID_SIM_FLIGHT_COMMUNICATIONS, + B_HID_UID_SIM_FLARE_RELEASE, + B_HID_UID_SIM_LANDING_GEAR, + B_HID_UID_SIM_TOE_BRAKE, + + B_HID_UID_SIM_TRIGGER = 0xc0, + B_HID_UID_SIM_WEAPONS_ARM, + B_HID_UID_SIM_WEAPONS_SELECT, + B_HID_UID_SIM_WING_FLAPS, + B_HID_UID_SIM_ACCELERATOR, + B_HID_UID_SIM_BRAKE, + B_HID_UID_SIM_CLUTCH, + B_HID_UID_SIM_SHIFTER, + B_HID_UID_SIM_STEERING, + B_HID_UID_SIM_TURRET_DIRECTION, + B_HID_UID_SIM_BARREL_ELEVATION, + B_HID_UID_SIM_DIVE_PLANE, + B_HID_UID_SIM_BALLAST, + B_HID_UID_SIM_BICYCLE_CRANK, + B_HID_UID_SIM_HANDLE_BARS, + B_HID_UID_SIM_FRONT_BRAKE, + B_HID_UID_SIM_REAR_BRAKE +}; + + +#endif // _USB_HID_PAGE_SIMULATION_H diff --git a/headers/os/drivers/usb/USB_hid_page_sport_controls.h b/headers/os/drivers/usb/USB_hid_page_sport_controls.h new file mode 100644 index 0000000000..b640de1a23 --- /dev/null +++ b/headers/os/drivers/usb/USB_hid_page_sport_controls.h @@ -0,0 +1,55 @@ +/* + * Copyright 2004-2010, Haiku Inc. All Rights Reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _USB_HID_PAGE_SPORT_CONTROLS_H +#define _USB_HID_PAGE_SPORT_CONTROLS_H + + +/* Reference: + * HID Usage Page 0x04: SPORT CONTROLS + * HID Usage Tables Ver. 1.12 + * http://www.usb.org/developers/devclass_docs/Hut1_12.pdf + */ + +// Usage IDs +enum { + B_HID_UID_SPO_BASEBALL_BAT = 0x1, + B_HID_UID_SPO_GOLF_CLUB, + B_HID_UID_SPO_ROWING_MACHINE, + B_HID_UID_SPO_TREADMILL, + + B_HID_UID_SPO_OAR = 0x30, + B_HID_UID_SPO_SLOPE, + B_HID_UID_SPO_RATE, + B_HID_UID_SPO_STICK_SPEED, + B_HID_UID_SPO_STICK_FACE_ANGLE, + B_HID_UID_SPO_STICK_HEEL_TOE, + B_HID_UID_SPO_STICK_TEMPO, + B_HID_UID_SPO_STICK_TYPE, + B_HID_UID_SPO_STICK_HEIGHT, + + B_HID_UID_SPO_PUTTER = 0x50, + B_HID_UID_SPO_1_IRON, + B_HID_UID_SPO_2_IRON, + B_HID_UID_SPO_3_IRON, + B_HID_UID_SPO_4_IRON, + B_HID_UID_SPO_5_IRON, + B_HID_UID_SPO_6_IRON, + B_HID_UID_SPO_7_IRON, + B_HID_UID_SPO_8_IRON, + B_HID_UID_SPO_9_IRON, + B_HID_UID_SPO_10_IRON, + B_HID_UID_SPO_11_IRON, + B_HID_UID_SPO_SAND_WEDGE, + B_HID_UID_SPO_LOFT_WEDGE, + B_HID_UID_SPO_POWER_WEDGE, + B_HID_UID_SPO_1_WOOD, + B_HID_UID_SPO_3_WOOD, + B_HID_UID_SPO_5_WOOD, + B_HID_UID_SPO_7_WOOD, + B_HID_UID_SPO_9_WOOD +}; + + +#endif // _USB_HID_PAGE_SPORT_CONTROLS_H diff --git a/headers/os/drivers/usb/USB_hid_page_telephony.h b/headers/os/drivers/usb/USB_hid_page_telephony.h new file mode 100644 index 0000000000..e636f13dff --- /dev/null +++ b/headers/os/drivers/usb/USB_hid_page_telephony.h @@ -0,0 +1,91 @@ +/* + * Copyright 2004-2010, Haiku Inc. All Rights Reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _USB_HID_PAGE_TELEPHONY_H +#define _USB_HID_PAGE_TELEPHONY_H + + +/* Reference: + * HID Usage Page 0x0B: TELEPHONY + * HID Usage Tables Ver. 1.12 + * http://www.usb.org/developers/devclass_docs/Hut1_12.pdf + */ + +// Usage IDs +enum { + B_HID_UID_TEL_PHONE = 0x1, + B_HID_UID_TEL_ANSWERING_MACHINE, + B_HID_UID_TEL_MESSAGE_CONTROLS, + B_HID_UID_TEL_HANDSET, + B_HID_UID_TEL_HEADSET, + B_HID_UID_TEL_TELEPHONY_KEY_PAD, + B_HID_UID_TEL_PROGRAMMABLE_BUTTON, + + B_HID_UID_TEL_HOOK_SWITCH = 0x20, + B_HID_UID_TEL_FLASH, + B_HID_UID_TEL_FEATURE, + B_HID_UID_TEL_HOLD, + B_HID_UID_TEL_REDIAL, + B_HID_UID_TEL_TRANSFER, + B_HID_UID_TEL_DROP, + B_HID_UID_TEL_PARK, + B_HID_UID_TEL_FORWARD_CALLS, + B_HID_UID_TEL_ALTERNATE_FUNCTION, + B_HID_UID_TEL_LINE, + B_HID_UID_TEL_SPEAKER_PHONE, + B_HID_UID_TEL_CONFERENCE, + B_HID_UID_TEL_RING_ENABLE, + B_HID_UID_TEL_RING_SELECT, + B_HID_UID_TEL_PHONE_MUTE, + B_HID_UID_TEL_CALLER_ID, + B_HID_UID_TEL_SEND, + + B_HID_UID_TEL_SPEED_DIAL = 0x50, + B_HID_UID_TEL_STORE_NUMBER, + B_HID_UID_TEL_RECALL_NUMBER, + B_HID_UID_TEL_PHONE_DIRECTORY, + + B_HID_UID_TEL_VOICE_MAIL = 0x70, + B_HID_UID_TEL_SCREEN_CALLS, + B_HID_UID_TEL_DO_NOT_DISTURB, + B_HID_UID_TEL_MESSAGE, + B_HID_UID_TEL_ANSWER_ON_OFF, + + B_HID_UID_TEL_INSIDE_DIAL_TONE = 0x90, + B_HID_UID_TEL_OUTSIDE_DIAL_TONE, + B_HID_UID_TEL_INSIDE_RING_TONE, + B_HID_UID_TEL_OUTSIDE_RING_TONE, + B_HID_UID_TEL_PRIORITY_RING_TONE, + B_HID_UID_TEL_INSIDE_RING_BACK, + B_HID_UID_TEL_PRIORITY_RING_BACK, + B_HID_UID_TEL_LINE_BUSY_TONE, + B_HID_UID_TEL_REORDER_TONE, + B_HID_UID_TEL_CALL_WAITING_TONE, + B_HID_UID_TEL_CONFIRMATION_TONE_1, + B_HID_UID_TEL_CONFIRMATION_TONE_2, + B_HID_UID_TEL_TONES_OFF, + B_HID_UID_TEL_OUTSIDE_RINGBACK, + B_HID_UID_TEL_RINGER, + + B_HID_UID_TEL_PHONE_KEY_0 = 0xb0, + B_HID_UID_TEL_PHONE_KEY_1, + B_HID_UID_TEL_PHONE_KEY_2, + B_HID_UID_TEL_PHONE_KEY_3, + B_HID_UID_TEL_PHONE_KEY_4, + B_HID_UID_TEL_PHONE_KEY_5, + B_HID_UID_TEL_PHONE_KEY_6, + B_HID_UID_TEL_PHONE_KEY_7, + B_HID_UID_TEL_PHONE_KEY_8, + B_HID_UID_TEL_PHONE_KEY_9, + + B_HID_UID_TEL_PHONE_KEY_STAR = 0xba, + B_HID_UID_TEL_PHONE_KEY_POUND, + B_HID_UID_TEL_PHONE_KEY_A, + B_HID_UID_TEL_PHONE_KEY_B, + B_HID_UID_TEL_PHONE_KEY_C, + B_HID_UID_TEL_PHONE_KEY_D +}; + + +#endif // _USB_HID_PAGE_TELEPHONY_H diff --git a/headers/os/drivers/usb/USB_hid_page_usb_monitor.h b/headers/os/drivers/usb/USB_hid_page_usb_monitor.h new file mode 100644 index 0000000000..04eb97cce6 --- /dev/null +++ b/headers/os/drivers/usb/USB_hid_page_usb_monitor.h @@ -0,0 +1,24 @@ +/* + * Copyright 2004-2010, Haiku Inc. All Rights Reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _USB_HID_PAGE_USB_MONITOR_H +#define _USB_HID_PAGE_USB_MONITOR_H + + +/* Reference: + * HID Usage Page 0x80: USB MONITOR + * USB Monitor Control Class Specification, Rev. 1.0 + * http://www.usb.org/developers/devclass_docs/usbmon10.pdf + */ + +// Usage IDs +enum { + B_HID_UID_MON_MONITOR_CONTROL = 0x01, + B_HID_UID_MON_EDID_INFORMATION, + B_HID_UID_MON_VDIF_INFORMATION, + B_HID_UID_MON_VESA_VERSION +}; + + +#endif // _USB_HID_PAGE_USB_MONITOR_H diff --git a/headers/os/drivers/usb/USB_hid_page_vesa_virtual_controls.h b/headers/os/drivers/usb/USB_hid_page_vesa_virtual_controls.h new file mode 100644 index 0000000000..78638e1f4e --- /dev/null +++ b/headers/os/drivers/usb/USB_hid_page_vesa_virtual_controls.h @@ -0,0 +1,68 @@ +/* + * Copyright 2004-2010, Haiku Inc. All Rights Reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _USB_HID_PAGE_VESA_VIRTUAL_CONTROLS_H +#define _USB_HID_PAGE_VESA_VIRTUAL_CONTROLS_H + + +/* Reference: + * HID Usage Page 0x82: VESA VIRTUAL CONTROLS + * USB Monitor Control Class Specification, Rev. 1.0 + * http://www.usb.org/developers/devclass_docs/usbmon10.pdf + */ + +// Usage IDs +enum { + B_HID_UID_VVC_DEGAUSS = 0x01, + + B_HID_UID_VVC_BRIGHTNESS = 0x10, + B_HID_UID_VVC_CONTRAST = 0x12, + B_HID_UID_VVC_RED_VIDEO_GAIN = 0x16, + B_HID_UID_VVC_GREEN_VIDEO_GAIN = 0x18, + B_HID_UID_VVC_BLUE_VIDEO_GAIN = 0x1a, + B_HID_UID_VVC_FOCUS = 0x1c, + B_HID_UID_VVC_HORIZONTAL_POSITION = 0x20, + B_HID_UID_VVC_HORIZONTAL_SIZE = 0x22, + B_HID_UID_VVC_HORIZONTAL_PINCUSHION = 0x24, + B_HID_UID_VVC_HORIZONTAL_PINCUSHION_BALANCE = 0x26, + B_HID_UID_VVC_HOROZONTAL_MISCONVERGENCE = 0x28, + B_HID_UID_VVC_HORIZONTAL_LINEARITY = 0x2a, + B_HID_UID_VVC_HORIZONTAL_LINEARITY_BALANCE = 0x2c, + B_HID_UID_VVC_VERTICAL_POSITION = 0x30, + B_HID_UID_VVC_VERTICAL_SIZE = 0x32, + B_HID_UID_VVC_VERTICAL_PINCUSHION = 0x34, + B_HID_UID_VVC_VERTICAL_PINCUSHION_BALANCE = 0x36, + B_HID_UID_VVC_VERTICAL_MISCONVERGENCE = 0x38, + B_HID_UID_VVC_VERTICAL_LINEARITY = 0x3a, + B_HID_UID_VVC_VERTICAL_LINEARITY_BALANCE = 0x3c, + B_HID_UID_VVC_PARALLELOGRAM_DISTORTION = 0x40, + B_HID_UID_VVC_TRAPEZOID_DISTORTION = 0x42, + B_HID_UID_VVC_TILT = 0x44, + B_HID_UID_VVC_TOP_CORNER_DISTORTION_CONTROL = 0x46, + B_HID_UID_VVC_TOP_CORNER_DISTORTION_BALANCE = 0x48, + B_HID_UID_VVC_BOTTOM_CORNER_DISTORTION_CONTROL = 0x4a, + B_HID_UID_VVC_BOTTOM_CORNER_DISTORTION_BALANCE = 0x4c, + B_HID_UID_VVC_HORIZONTAL_MOIRE = 0x56, + B_HID_UID_VVC_VERTICAL_MOIRE = 0x58, + B_HID_UID_VVC_RED_VIDEO_BLACK_LEVEL = 0x6c, + B_HID_UID_VVC_GREEN_VIDEO_BLACK_LEVEL = 0x6e, + B_HID_UID_VVC_BLUE_VIDEO_BLACK_LEVEL = 0x70, + + B_HID_UID_VVC_INPUT_LEVEL_SELECT = 0x5e, + B_HID_UID_VVC_INPUT_SOURCE_SELECT = 0x60, + B_HID_UID_VVC_ON_SCREEN_DISPLAY = 0xca, + B_HID_UID_VVC_STEREO_MODE = 0xd4, + B_HID_UID_VVC_AUTO_SIZE_CENTER = 0xa2, + B_HID_UID_VVC_POLARITY_HORIZONTAL_SYNCHRONIZATION = 0xa4, + B_HID_UID_VVC_POLARITY_VERTICAL_SYNCHRONIZATION = 0xa6, + B_HID_UID_VVC_SYNCHRONIZATION_TYPE = 0xa8, + B_HID_UID_VVC_SCREEN_ORIENTATION = 0xaa, + B_HID_UID_VVC_HORIZONTAL_FREQUENCY = 0xac, + B_HID_UID_VVC_VERTICAL_FREQUENCY = 0xae, + + B_HID_UID_VVC_SETTINGS = 0xb0 +}; + + +#endif // _USB_HID_PAGE_VESA_VIRTUAL_CONTROLS_H diff --git a/headers/os/drivers/usb/USB_hid_page_vr_controls.h b/headers/os/drivers/usb/USB_hid_page_vr_controls.h new file mode 100644 index 0000000000..c3914d3c28 --- /dev/null +++ b/headers/os/drivers/usb/USB_hid_page_vr_controls.h @@ -0,0 +1,49 @@ +/* + * Copyright 2004-2010, Haiku Inc. All Rights Reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _USB_HID_PAGE_GAME_CONTROLS_H +#define _USB_HID_PAGE_GAME_CONTROLS_H + + +/* Reference: + * HID Usage Page 0x05: Game Controls + * HID Usage Tables Ver. 1.12 + * http://www.usb.org/developers/devclass_docs/Hut1_12.pdf + */ + +// Usage IDs +enum { + B_HID_UID_GAM_3D_GAME_CONTROLLER = 0x01, + B_HID_UID_GAM_PINBALL_DEVICE, + B_HID_UID_GAM_GUN_DEVICE, + + B_HID_UID_GAM_POINT_OF_VIEW = 0x20, + B_HID_UID_GAM_TURN_RIGHT_LEFT, + B_HID_UID_GAM_PITCH_FORWARD_BACKWARD, + B_HID_UID_GAM_ROLL_RIGHT_LEFT, + B_HID_UID_GAM_MOVE_RIGHT_LEFT, + B_HID_UID_GAM_MOVE_FORWARD_BACKWARD, + B_HID_UID_GAM_MOVE_UP_DOWN, + B_HID_UID_GAM_LEAN_RIGHT_LEFT, + B_HID_UID_GAM_LEAN_FORWARD_BACKWARD, + B_HID_UID_GAM_HEIGHT_OF_POV, + B_HID_UID_GAM_FLIPPER, + B_HID_UID_GAM_SECONDARY_FLIPPER, + B_HID_UID_GAM_BUMP, + B_HID_UID_GAM_NEW_GAME, + B_HID_UID_GAM_SHOOT_BALL, + B_HID_UID_GAM_PLAYER, + B_HID_UID_GAM_GUN_BOLT, + B_HID_UID_GAM_GUN_CLIP, + B_HID_UID_GAM_GUN_SELECTOR, + B_HID_UID_GAM_GUN_SINGLE_SHOT, + B_HID_UID_GAM_GUN_BURST, + B_HID_UID_GAM_GUN_AUTOMATIC, + B_HID_UID_GAM_GUN_SAFETY, + B_HID_UID_GAM_GAMEPAD_FIRE_JUMP, + B_HID_UID_GAM_GAMEPAD_TRIGGER +}; + + +#endif // _USB_HID_PAGE_GAME_CONTROLS_H diff --git a/headers/os/drivers/usb/USB_hid_page_weighing_device.h b/headers/os/drivers/usb/USB_hid_page_weighing_device.h new file mode 100644 index 0000000000..8112a1ecce --- /dev/null +++ b/headers/os/drivers/usb/USB_hid_page_weighing_device.h @@ -0,0 +1,72 @@ +/* + * Copyright 2004-2010, Haiku Inc. All Rights Reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _USB_HID_PAGE_WEIGHING_DEVICE_H +#define _USB_HID_PAGE_WEIGHING_DEVICE_H + + +/* Reference: + * HID Usage Page 0x8D: WEIGHING DEVICES + * HID Point of Sale Usage Tables Ver. 1.0 + * http://www.usb.org/developers/devclass_docs/pos1_02.pdf + */ + +// Usage IDs +enum { + B_HID_UID_WD_WEIGHING_DEVICE = 0x01, + + B_HID_UID_WD_SCALE_DEVICE = 0x20, + B_HID_UID_WD_SCALE_CLASS_I_METRIC, + B_HID_UID_WD_SCALE_CLASS_II_METRIC, + B_HID_UID_WD_SCALE_CLASS_III_METRIC, + B_HID_UID_WD_SCALE_CLASS_IIIL_METRIC, + B_HID_UID_WD_SCALE_CLASS_IV_METRIC, + B_HID_UID_WD_SCALE_CLASS_III_ENGLISH, + B_HID_UID_WD_SCALE_CLASS_IIIL_ENGLISH, + B_HID_UID_WD_SCALE_CLASS_IV_ENGLISH, + B_HID_UID_WD_SCALE_CLASS_GENERIC, + + B_HID_UID_WD_SCALE_ATTRIBUTE_REPORT = 0x30, + B_HID_UID_WD_SCALE_CONTROL_REPORT, + B_HID_UID_WD_SCALE_DATA_REPORT, + B_HID_UID_WD_SCALE_STATUS_REPORT, + B_HID_UID_WD_SCALE_WEIGHT_LIMIT_REPORT, + B_HID_UID_WD_SCALE_STATISTICS_REPORT, + + B_HID_UID_WD_DATA_WEIGHT = 0x40, + B_HID_UID_WD_DATA_SCALING, + + B_HID_UID_WD_WEIGHT_UNIT = 0x50, + B_HID_UID_WD_WEIGHT_UNIT_MILLIGRAM, + B_HID_UID_WD_WEIGHT_UNIT_GRAM, + B_HID_UID_WD_WEIGHT_UNIT_KILOGRAM, + B_HID_UID_WD_WEIGHT_UNIT_CARATS, + B_HID_UID_WD_WEIGHT_UNIT_TAELS, + B_HID_UID_WD_WEIGHT_UNIT_GRAINS, + B_HID_UID_WD_WEIGHT_UNIT_PENNYWEIGHTS, + B_HID_UID_WD_WEIGHT_UNIT_METRIC_TON, + B_HID_UID_WD_WEIGHT_UNIT_AVOIR_TON, + B_HID_UID_WD_WEIGHT_UNIT_TROY_OUNCE, + B_HID_UID_WD_WEIGHT_UNIT_OUNCE, + B_HID_UID_WD_WEIGHT_UNIT_POUND, + + B_HID_UID_WD_CALIBRATION_COUNT = 0x60, + B_HID_UID_WD_REZERO_COUNT, + + B_HID_UID_WD_SCALE_STATUS = 0x70, + B_HID_UID_WD_SCALE_STATUS_FAULT, + B_HID_UID_WD_SCALE_STATUS_STABLE_AT_CENTER_OF_ZERO, + B_HID_UID_WD_SCALE_STATUS_IN_MOTION, + B_HID_UID_WD_SCALE_STATUS_WEIGHT_STABLE, + B_HID_UID_WD_SCALE_STATUS_UNDER_ZERO, + B_HID_UID_WD_SCALE_STATUS_OVER_WEIGHT_LIMIT, + B_HID_UID_WD_SCALE_STATUS_REQUIRES_CALIBRATION, + B_HID_UID_WD_SCALE_STATUS_REQUIRES_REZEROING, + + B_HID_UID_WD_ZERO_SCALE = 0x80, + B_HID_UID_WD_ENFORCED_ZERO_RETURN +}; + + +#endif // _USB_HID_PAGE_WEIGHING_DEVICE_H diff --git a/src/add-ons/kernel/drivers/input/usb_hid/HIDDevice.cpp b/src/add-ons/kernel/drivers/input/usb_hid/HIDDevice.cpp index 45aa7f5a99..b883014a36 100644 --- a/src/add-ons/kernel/drivers/input/usb_hid/HIDDevice.cpp +++ b/src/add-ons/kernel/drivers/input/usb_hid/HIDDevice.cpp @@ -49,7 +49,7 @@ HIDDevice::HIDDevice(usb_device device, const usb_configuration_info *config, status_t result = gUSBModule->send_request(device, USB_REQTYPE_INTERFACE_IN | USB_REQTYPE_STANDARD, USB_REQUEST_GET_DESCRIPTOR, - USB_HID_DESCRIPTOR_HID << 8, interfaceIndex, descriptorLength, + B_USB_HID_DESCRIPTOR_HID << 8, interfaceIndex, descriptorLength, hidDescriptor, &descriptorLength); TRACE("get hid descriptor: result: 0x%08lx; length: %lu\n", result, @@ -70,7 +70,7 @@ HIDDevice::HIDDevice(usb_device device, const usb_configuration_info *config, result = gUSBModule->send_request(device, USB_REQTYPE_INTERFACE_IN | USB_REQTYPE_STANDARD, USB_REQUEST_GET_DESCRIPTOR, - USB_HID_DESCRIPTOR_REPORT << 8, interfaceIndex, descriptorLength, + B_USB_HID_DESCRIPTOR_REPORT << 8, interfaceIndex, descriptorLength, reportDescriptor, &descriptorLength); TRACE("get report descriptor: result: 0x%08lx; length: %lu\n", result, @@ -215,7 +215,7 @@ HIDDevice::SendReport(HIDReport *report) size_t actualLength; return gUSBModule->send_request(fDevice, USB_REQTYPE_INTERFACE_OUT | USB_REQTYPE_CLASS, - USB_REQUEST_HID_SET_REPORT, 0x200 | report->ID(), fInterfaceIndex, + B_USB_REQUEST_HID_SET_REPORT, 0x200 | report->ID(), fInterfaceIndex, report->ReportSize(), report->CurrentReport(), &actualLength); } diff --git a/src/add-ons/kernel/drivers/input/usb_hid/KeyboardDevice.cpp b/src/add-ons/kernel/drivers/input/usb_hid/KeyboardDevice.cpp index f641a61e05..66d562628e 100644 --- a/src/add-ons/kernel/drivers/input/usb_hid/KeyboardDevice.cpp +++ b/src/add-ons/kernel/drivers/input/usb_hid/KeyboardDevice.cpp @@ -73,9 +73,9 @@ KeyboardDevice::KeyboardDevice(HIDReport *inputReport, HIDReport *outputReport) if (!item->HasData()) continue; - if (item->UsagePage() == HID_USAGE_PAGE_KEYBOARD - || item->UsagePage() == HID_USAGE_PAGE_CONSUMER - || item->UsagePage() == HID_USAGE_PAGE_BUTTON) { + if (item->UsagePage() == B_HID_USAGE_PAGE_KEYBOARD + || item->UsagePage() == B_HID_USAGE_PAGE_CONSUMER + || item->UsagePage() == B_HID_USAGE_PAGE_BUTTON) { TRACE("keyboard item with usage %lx\n", item->UsageMinimum()); if (item->Array()) { @@ -83,9 +83,9 @@ KeyboardDevice::KeyboardDevice(HIDReport *inputReport, HIDReport *outputReport) if (fKeyCount < MAX_KEYS) fKeys[fKeyCount++] = item; } else { - if (item->UsagePage() == HID_USAGE_PAGE_KEYBOARD - && item->UsageID() >= HID_USAGE_ID_LEFT_CONTROL - && item->UsageID() <= HID_USAGE_ID_RIGHT_GUI) { + if (item->UsagePage() == B_HID_USAGE_PAGE_KEYBOARD + && item->UsageID() >= B_HID_UID_KB_LEFT_CONTROL + && item->UsageID() <= B_HID_UID_KB_RIGHT_GUI) { // modifiers are generally implemented as bitmaps if (fModifierCount < MAX_MODIFIERS) fModifiers[fModifierCount++] = item; @@ -118,15 +118,15 @@ KeyboardDevice::KeyboardDevice(HIDReport *inputReport, HIDReport *outputReport) // the led item array is identity mapped with what we get from // the input_server for the set-leds command - if (item->UsagePage() == HID_USAGE_PAGE_LED) { + if (item->UsagePage() == B_HID_USAGE_PAGE_LED) { switch (item->UsageID()) { - case HID_USAGE_ID_LED_NUM_LOCK: + case B_HID_UID_LED_NUM_LOCK: fLEDs[0] = item; break; - case HID_USAGE_ID_LED_CAPS_LOCK: + case B_HID_UID_LED_CAPS_LOCK: fLEDs[1] = item; break; - case HID_USAGE_ID_LED_SCROLL_LOCK: + case B_HID_UID_LED_SCROLL_LOCK: fLEDs[2] = item; break; } @@ -165,12 +165,12 @@ KeyboardDevice::AddHandler(HIDDevice *device, HIDReport *input) if (!item->HasData()) continue; - if (item->UsagePage() == HID_USAGE_PAGE_KEYBOARD - || (item->UsagePage() == HID_USAGE_PAGE_CONSUMER && item->Array()) - || (item->UsagePage() == HID_USAGE_PAGE_BUTTON && item->Array())) { + if (item->UsagePage() == B_HID_USAGE_PAGE_KEYBOARD + || (item->UsagePage() == B_HID_USAGE_PAGE_CONSUMER && item->Array()) + || (item->UsagePage() == B_HID_USAGE_PAGE_BUTTON && item->Array())) { // found at least one item with a keyboard usage or with // a consumer/button usage that is handled like a key - mayHaveOutput = item->UsagePage() == HID_USAGE_PAGE_KEYBOARD; + mayHaveOutput = item->UsagePage() == B_HID_USAGE_PAGE_KEYBOARD; foundKeyboardUsage = true; break; } @@ -190,7 +190,7 @@ KeyboardDevice::AddHandler(HIDDevice *device, HIDReport *input) for (uint32 j = 0; j < output->CountItems(); j++) { HIDReportItem *item = output->ItemAt(j); - if (item->UsagePage() == HID_USAGE_PAGE_LED) { + if (item->UsagePage() == B_HID_USAGE_PAGE_LED) { foundOutputReport = true; break; } @@ -405,7 +405,7 @@ KeyboardDevice::_ReadReport(bigtime_t timeout) if (modifier->Extract() == B_OK && modifier->Valid()) { modifiers |= (modifier->Data() & 1) - << (modifier->UsageID() - HID_USAGE_ID_LEFT_CONTROL); + << (modifier->UsageID() - B_HID_UID_KB_LEFT_CONTROL); } } @@ -591,7 +591,7 @@ KeyboardDevice::_ReadReport(bigtime_t timeout) bool phantomState = true; for (size_t i = 0; i < fKeyCount; i++) { if (fCurrentKeys[i] != 1 - || fKeys[i]->UsagePage() != HID_USAGE_PAGE_KEYBOARD) { + || fKeys[i]->UsagePage() != B_HID_USAGE_PAGE_KEYBOARD) { phantomState = false; break; } @@ -613,7 +613,7 @@ KeyboardDevice::_ReadReport(bigtime_t timeout) for (int32 twice = 0; twice < 2; twice++) { for (size_t i = 0; i < fKeyCount; i++) { if (current[i] == 0 || (current[i] == 1 - && fKeys[i]->UsagePage() == HID_USAGE_PAGE_KEYBOARD)) + && fKeys[i]->UsagePage() == B_HID_USAGE_PAGE_KEYBOARD)) continue; bool found = false; @@ -629,7 +629,7 @@ KeyboardDevice::_ReadReport(bigtime_t timeout) // a change occured uint32 key = 0; - if (fKeys[i]->UsagePage() == HID_USAGE_PAGE_KEYBOARD) { + if (fKeys[i]->UsagePage() == B_HID_USAGE_PAGE_KEYBOARD) { if (current[i] < kKeyTableSize) key = kKeyTable[current[i]]; diff --git a/src/add-ons/kernel/drivers/input/usb_hid/MouseDevice.cpp b/src/add-ons/kernel/drivers/input/usb_hid/MouseDevice.cpp index 782358977a..3e8cac1821 100644 --- a/src/add-ons/kernel/drivers/input/usb_hid/MouseDevice.cpp +++ b/src/add-ons/kernel/drivers/input/usb_hid/MouseDevice.cpp @@ -40,15 +40,15 @@ MouseDevice::MouseDevice(HIDReport *report, HIDReportItem *xAxis, if (!item->HasData()) continue; - if (item->UsagePage() == HID_USAGE_PAGE_BUTTON + if (item->UsagePage() == B_HID_USAGE_PAGE_BUTTON && item->UsageID() - 1 < B_MAX_MOUSE_BUTTONS) fButtons[buttonCount++] = item; } fButtons[buttonCount] = NULL; - fWheel = report->FindItem(HID_USAGE_PAGE_GENERIC_DESKTOP, - HID_USAGE_ID_WHEEL); + fWheel = report->FindItem(B_HID_USAGE_PAGE_GENERIC_DESKTOP, + B_HID_UID_GD_WHEEL); TRACE("mouse device with %lu buttons and %swheel\n", buttonCount, fWheel == NULL ? "no " : ""); @@ -60,13 +60,13 @@ ProtocolHandler * MouseDevice::AddHandler(HIDDevice *device, HIDReport *report) { // try to find at least an x and y axis - HIDReportItem *xAxis = report->FindItem(HID_USAGE_PAGE_GENERIC_DESKTOP, - HID_USAGE_ID_X); + HIDReportItem *xAxis = report->FindItem(B_HID_USAGE_PAGE_GENERIC_DESKTOP, + B_HID_UID_GD_X); if (xAxis == NULL) return NULL; - HIDReportItem *yAxis = report->FindItem(HID_USAGE_PAGE_GENERIC_DESKTOP, - HID_USAGE_ID_Y); + HIDReportItem *yAxis = report->FindItem(B_HID_USAGE_PAGE_GENERIC_DESKTOP, + B_HID_UID_GD_Y); if (yAxis == NULL) return NULL;