[BACK]Return to ugraphire_rdesc.h CVS log [TXT][DIR] Up to [local] / sys / dev / usb

Annotation of sys/dev/usb/ugraphire_rdesc.h, Revision 1.1.1.1

1.1       nbrk        1: /*     $OpenBSD: ugraphire_rdesc.h,v 1.3 2006/01/06 03:36:32 brad Exp $ */
                      2: /*     $NetBSD: ugraphire_rdesc.h,v 1.1 2000/12/29 01:47:49 augustss Exp $     */
                      3: /*
                      4:  * Copyright (c) 2000 Nick Hibma <n_hibma@freebsd.org>
                      5:  * All rights reserved.
                      6:  *
                      7:  * Redistribution and use in source and binary forms, with or without
                      8:  * modification, are permitted provided that the following conditions
                      9:  * are met:
                     10:  * 1. Redistributions of source code must retain the above copyright
                     11:  *    notice, this list of conditions and the following disclaimer.
                     12:  * 2. Redistributions in binary form must reproduce the above copyright
                     13:  *    notice, this list of conditions and the following disclaimer in the
                     14:  *    documentation and/or other materials provided with the distribution.
                     15:  *
                     16:  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
                     17:  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
                     18:  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
                     19:  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
                     20:  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
                     21:  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
                     22:  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
                     23:  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
                     24:  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
                     25:  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
                     26:  * SUCH DAMAGE.
                     27:  */
                     28:
                     29: static uByte uhid_graphire_report_descr[] = {
                     30:     0x05, 0x0d,                    /*  USAGE_PAGE (Digitizers)         */
                     31:     0x09, 0x01,                    /*  USAGE (Digitizer)               */
                     32:     0xa1, 0x01,                    /*  COLLECTION (Application)                */
                     33:     0x85, 0x02,                    /*    REPORT_ID (2)                 */
                     34:     0x05, 0x0d,                    /*    USAGE_PAGE (Digitizers)       */
                     35:     0x09, 0x01,                    /*    USAGE (Digitizer)             */
                     36:     0xa1, 0x00,                    /*    COLLECTION (Physical)         */
                     37:     0x15, 0x00,                    /*      LOGICAL_MINIMUM (0)         */
                     38:     0x25, 0x01,                    /*      LOGICAL_MAXIMUM (1)         */
                     39:     0x09, 0x33,                    /*      USAGE (Touch)               */
                     40:     0x95, 0x01,                    /*      REPORT_COUNT (1)            */
                     41:     0x75, 0x01,                    /*      REPORT_SIZE (1)             */
                     42:     0x81, 0x02,                    /*      INPUT (Data,Var,Abs)                */
                     43:     0x09, 0x44,                    /*      USAGE (Barrel Switch)       */
                     44:     0x95, 0x02,                    /*      REPORT_COUNT (2)            */
                     45:     0x75, 0x01,                    /*      REPORT_SIZE (1)             */
                     46:     0x81, 0x02,                    /*      INPUT (Data,Var,Abs)                */
                     47:     0x09, 0x00,                    /*      USAGE (Undefined)           */
                     48:     0x95, 0x02,                    /*      REPORT_COUNT (2)            */
                     49:     0x75, 0x01,                    /*      REPORT_SIZE (1)             */
                     50:     0x81, 0x03,                    /*      INPUT (Cnst,Var,Abs)                */
                     51:     0x09, 0x3c,                    /*      USAGE (Invert)              */
                     52:     0x95, 0x01,                    /*      REPORT_COUNT (1)            */
                     53:     0x75, 0x01,                    /*      REPORT_SIZE (1)             */
                     54:     0x81, 0x02,                    /*      INPUT (Data,Var,Abs)                */
                     55:     0x09, 0x38,                    /*      USAGE (Transducer Index)    */
                     56:     0x95, 0x01,                    /*      REPORT_COUNT (1)            */
                     57:     0x75, 0x01,                    /*      REPORT_SIZE (1)             */
                     58:     0x81, 0x02,                    /*      INPUT (Data,Var,Abs)                */
                     59:     0x09, 0x32,                    /*      USAGE (In Range)            */
                     60:     0x95, 0x01,                    /*      REPORT_COUNT (1)            */
                     61:     0x75, 0x01,                    /*      REPORT_SIZE (1)             */
                     62:     0x81, 0x02,                    /*      INPUT (Data,Var,Abs)                */
                     63:     0x05, 0x01,                    /*      USAGE_PAGE (Generic Desktop)        */
                     64:     0x09, 0x30,                    /*      USAGE (X)                   */
                     65:     0x15, 0x00,                    /*      LOGICAL_MINIMUM (0)         */
                     66:     0x26, 0xde, 0x27,              /*      LOGICAL_MAXIMUM (10206)     */
                     67:     0x95, 0x01,                    /*      REPORT_COUNT (1)            */
                     68:     0x75, 0x10,                    /*      REPORT_SIZE (16)            */
                     69:     0x81, 0x02,                    /*      INPUT (Data,Var,Abs)                */
                     70:     0x09, 0x31,                    /*      USAGE (Y)                   */
                     71:     0x26, 0xfe, 0x1c,              /*      LOGICAL_MAXIMUM (7422)      */
                     72:     0x95, 0x01,                    /*      REPORT_COUNT (1)            */
                     73:     0x75, 0x10,                    /*      REPORT_SIZE (16)            */
                     74:     0x81, 0x02,                    /*      INPUT (Data,Var,Abs)                */
                     75:     0x05, 0x0d,                    /*      USAGE_PAGE (Digitizers)     */
                     76:     0x09, 0x30,                    /*      USAGE (Tip Pressure)                */
                     77:     0x26, 0xff, 0x01,              /*      LOGICAL_MAXIMUM (511)       */
                     78:     0x95, 0x01,                    /*      REPORT_COUNT (1)            */
                     79:     0x75, 0x10,                    /*      REPORT_SIZE (16)            */
                     80:     0x81, 0x02,                    /*      INPUT (Data,Var,Abs)                */
                     81:     0xc0,                          /*    END_COLLECTION                        */
                     82:     0x05, 0x0d,                    /*    USAGE_PAGE (Digitizers)       */
                     83:     0x09, 0x00,                    /*    USAGE (Undefined)             */
                     84:     0x85, 0x02,                    /*    REPORT_ID (2)                 */
                     85:     0x95, 0x01,                    /*    REPORT_COUNT (1)              */
                     86:     0xb1, 0x02,                    /*    FEATURE (Data,Var,Abs)                */
                     87:     0x09, 0x00,                    /*    USAGE (Undefined)             */
                     88:     0x85, 0x03,                    /*    REPORT_ID (3)                 */
                     89:     0x95, 0x01,                    /*    REPORT_COUNT (1)              */
                     90:     0xb1, 0x02,                    /*    FEATURE (Data,Var,Abs)                */
                     91:     0xc0,                          /*  END_COLLECTION                  */
                     92: };
                     93:
                     94: static uByte uhid_graphire3_4x5_report_descr[] = {
                     95:     0x05, 0x01,                    /* USAGE_PAGE (Generic Desktop) */
                     96:     0x09, 0x02,                    /* USAGE (Mouse) */
                     97:     0xa1, 0x01,                    /* COLLECTION (Application) */
                     98:     0x85, 0x01,                    /*   REPORT_ID (1) */
                     99:     0x09, 0x01,                    /*   USAGE (Pointer) */
                    100:     0xa1, 0x00,                    /*   COLLECTION (Physical) */
                    101:     0x05, 0x09,                    /*     USAGE_PAGE (Button) */
                    102:     0x19, 0x01,                    /*     USAGE_MINIMUM (Button 1) */
                    103:     0x29, 0x03,                    /*     USAGE_MAXIMUM (Button 3) */
                    104:     0x15, 0x00,                    /*     LOGICAL_MINIMUM (0) */
                    105:     0x25, 0x01,                    /*     LOGICAL_MAXIMUM (1) */
                    106:     0x95, 0x03,                    /*     REPORT_COUNT (3) */
                    107:     0x75, 0x01,                    /*     REPORT_SIZE (1) */
                    108:     0x81, 0x02,                    /*     INPUT (Data,Var,Abs) */
                    109:     0x95, 0x01,                    /*     REPORT_COUNT (1) */
                    110:     0x75, 0x05,                    /*     REPORT_SIZE (5) */
                    111:     0x81, 0x01,                    /*     INPUT (Cnst,Ary,Abs) */
                    112:     0x05, 0x01,                    /*     USAGE_PAGE (Generic Desktop) */
                    113:     0x09, 0x30,                    /*     USAGE (X) */
                    114:     0x09, 0x31,                    /*     USAGE (Y) */
                    115:     0x09, 0x38,                    /*     USAGE (Wheel) */
                    116:     0x15, 0x81,                    /*     LOGICAL_MINIMUM (-127) */
                    117:     0x25, 0x7f,                    /*     LOGICAL_MAXIMUM (127) */
                    118:     0x75, 0x08,                    /*     REPORT_SIZE (8) */
                    119:     0x95, 0x03,                    /*     REPORT_COUNT (3) */
                    120:     0x81, 0x06,                    /*     INPUT (Data,Var,Rel) */
                    121:     0xc0,                          /*   END_COLLECTION */
                    122:     0xc0,                          /* END_COLLECTION */
                    123:     0x05, 0x0d,                    /* USAGE_PAGE (Digitizers) */
                    124:     0x09, 0x01,                    /* USAGE (Pointer) */
                    125:     0xa1, 0x01,                    /* COLLECTION (Application) */
                    126:     0x85, 0x02,                    /*   REPORT_ID (2) */
                    127:     0x05, 0x0d,                    /*   USAGE_PAGE (Digitizers) */
                    128:     0x09, 0x01,                    /*   USAGE (Digitizer) */
                    129:     0xa1, 0x00,                    /*   COLLECTION (Physical) */
                    130:     0x09, 0x33,                    /*     USAGE (Touch) */
                    131:     0x09, 0x44,                    /*     USAGE (Barrel Switch) */
                    132:     0x09, 0x44,                    /*     USAGE (Barrel Switch) */
                    133:     0x15, 0x00,                    /*     LOGICAL_MINIMUM (0) */
                    134:     0x25, 0x01,                    /*     LOGICAL_MAXIMUM (1) */
                    135:     0x75, 0x01,                    /*     REPORT_SIZE (1) */
                    136:     0x95, 0x03,                    /*     REPORT_COUNT (3) */
                    137:     0x81, 0x02,                    /*     INPUT (Data,Var,Abs) */
                    138:     0x75, 0x01,                    /*     REPORT_SIZE (1) */
                    139:     0x95, 0x02,                    /*     REPORT_COUNT (2) */
                    140:     0x81, 0x01,                    /*     INPUT (Cnst,Ary,Abs) */
                    141:     0x09, 0x3c,                    /*     USAGE (Invert) */
                    142:     0x09, 0x38,                    /*     USAGE (Transducer Index) */
                    143:     0x09, 0x32,                    /*     USAGE (In Range) */
                    144:     0x75, 0x01,                    /*     REPORT_SIZE (1) */
                    145:     0x95, 0x03,                    /*     REPORT_COUNT (3) */
                    146:     0x81, 0x02,                    /*     INPUT (Data,Var,Abs) */
                    147:     0x05, 0x01,                    /*     USAGE_PAGE (Generic Desktop) */
                    148:     0x09, 0x30,                    /*     USAGE (X) */
                    149:     0x15, 0x00,                    /*     LOGICAL_MINIMUM (0) */
                    150:     0x26, 0xde, 0x27,              /*     LOGICAL_MAXIMUM (10206) */
                    151:     0x75, 0x10,                    /*     REPORT_SIZE (16) */
                    152:     0x95, 0x01,                    /*     REPORT_COUNT (1) */
                    153:     0x81, 0x02,                    /*     INPUT (Data,Var,Abs) */
                    154:     0x09, 0x31,                    /*     USAGE (Y) */
                    155:     0x26, 0xfe, 0x1c,              /*     LOGICAL_MAXIMUM (7422) */
                    156:     0x75, 0x10,                    /*     REPORT_SIZE (16) */
                    157:     0x95, 0x01,                    /*     REPORT_COUNT (1) */
                    158:     0x81, 0x02,                    /*     INPUT (Data,Var,Abs) */
                    159:     0x05, 0x0d,                    /*     USAGE_PAGE (Digitizers) */
                    160:     0x09, 0x30,                    /*     USAGE (Tip Pressure) */
                    161:     0x26, 0xff, 0x01,              /*     LOGICAL_MAXIMUM (511) */
                    162:     0x75, 0x10,                    /*     REPORT_SIZE (16) */
                    163:     0x95, 0x01,                    /*     REPORT_COUNT (1) */
                    164:     0x81, 0x02,                    /*     INPUT (Data,Var,Abs) */
                    165:     0xc0,                          /*   END_COLLECTION */
                    166:     0x05, 0x0d,                    /*   USAGE_PAGE (Digitizers) */
                    167:     0x09, 0x00,                    /*   USAGE (Undefined) */
                    168:     0x85, 0x02,                    /*   REPORT_ID (2) */
                    169:     0x95, 0x01,                    /*   REPORT_COUNT (1) */
                    170:     0xb1, 0x02,                    /*   FEATURE (Data,Var,Abs) */
                    171:     0x09, 0x00,                    /*   USAGE (Undefined) */
                    172:     0x85, 0x03,                    /*   REPORT_ID (3) */
                    173:     0x95, 0x01,                    /*   REPORT_COUNT (1) */
                    174:     0xb1, 0x02,                    /*   FEATURE (Data,Var,Abs) */
                    175:     0xc0                           /* END_COLLECTION */
                    176: };
                    177:

CVSweb