[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     ! 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