ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

usbdi.h
Go to the documentation of this file.
00001 /*
00002  * usbdi.h
00003  *
00004  * USBD and USB device driver definitions
00005  *
00006  * FIXME : Obsolete header.. Use usb.h instead.
00007  *
00008  * This file is part of the ReactOS PSDK package.
00009  *
00010  * Contributors:
00011  *   Created by Casper S. Hornstrup <chorns@users.sourceforge.net>
00012  *
00013  * THIS SOFTWARE IS NOT COPYRIGHTED
00014  *
00015  * This source code is offered for use in the public domain. You may
00016  * use, modify or distribute it freely.
00017  *
00018  * This code is distributed in the hope that it will be useful but
00019  * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
00020  * DISCLAIMED. This includes but is not limited to warranties of
00021  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
00022  *
00023  */
00024 
00025 #pragma once
00026 
00027 /* Helper macro to enable gcc's extension.  */
00028 #ifndef __GNU_EXTENSION
00029 #ifdef __GNUC__
00030 #define __GNU_EXTENSION __extension__
00031 #else
00032 #define __GNU_EXTENSION
00033 #endif
00034 #endif
00035 
00036 #include <usb.h>
00037 #include <usbioctl.h>
00038 
00039 #ifdef __cplusplus
00040 extern "C" {
00041 #endif
00042 
00043 #define USBD_STATUS_CANCELLING      ((USBD_STATUS)0x00020000L)
00044 #define USBD_STATUS_CANCELING       ((USBD_STATUS)0x00020000L)
00045 #define USBD_STATUS_NO_MEMORY       ((USBD_STATUS)0x80000100L)
00046 #define USBD_STATUS_ERROR           ((USBD_STATUS)0x80000000L)
00047 #define USBD_STATUS_REQUEST_FAILED  ((USBD_STATUS)0x80000500L)
00048 #define USBD_STATUS_HALTED          ((USBD_STATUS)0xC0000000L)
00049 
00050 
00051 #define USBD_HALTED(Status)  ((ULONG)(Status) >> 30 == 3)
00052 #define USBD_STATUS(Status) ((ULONG)(Status) & 0x0FFFFFFFL)
00053 
00054 #define URB_FUNCTION_RESERVED0                      0x0016
00055 #define URB_FUNCTION_RESERVED                       0x001D
00056 #define URB_FUNCTION_LAST                           0x0029
00057 
00058 #define USBD_PF_DOUBLE_BUFFER           0x00000002
00059 
00060 #ifdef USBD_PF_VALID_MASK
00061 #undef USBD_PF_VALID_MASK
00062 #endif
00063 
00064 #define USBD_PF_VALID_MASK    (USBD_PF_CHANGE_MAX_PACKET | USBD_PF_DOUBLE_BUFFER | \
00065                               USBD_PF_ENABLE_RT_THREAD_ACCESS | USBD_PF_MAP_ADD_TRANSFERS)
00066 
00067 #define USBD_TRANSFER_DIRECTION_BIT             0
00068 #define USBD_SHORT_TRANSFER_OK_BIT              1
00069 #define USBD_START_ISO_TRANSFER_ASAP_BIT        2
00070 
00071 #ifdef USBD_TRANSFER_DIRECTION
00072 #undef USBD_TRANSFER_DIRECTION
00073 #endif
00074 
00075 #define USBD_TRANSFER_DIRECTION(x)      ((x) & USBD_TRANSFER_DIRECTION_IN)
00076 
00077 #ifdef __cplusplus
00078 }
00079 #endif

Generated on Sun May 27 2012 04:32:31 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.