Main Page | Modules | Namespace List | Data Structures | Directories | File List | Namespace Members | Data Fields | Globals

ncfwapi.h File Reference


Defines

#define min(a, b)   (((a) < (b)) ? (a) : (b))
#define max(a, b)   (((a) > (b)) ? (a) : (b))
#define READ_FROM_HOST   0
#define WRITE_TO_HOST   1
#define NCSTATUS_SUCCESS   0x00
#define NCSTATUS_PENDING   0x01
#define NCSTATUS_PARTIAL_PACKET   0x02
#define NCSTATUS_EMPTY   0x03
#define NCSTATUS_MORE_PROCESSING_REQUIRED   0x04
#define NCSTATUS_UNSUCCESSFUL   (NCBYTE)-0x01
#define NCSTATUS_CLIENT_CANCEL   (NCBYTE)-0x02
#define NC_MAKE_ENDPOINT_DESCRIPTOR(EpType, EpDir, EpMaxPkt, EpAddr,EpPoll)
#define EP0_MAX_PACKET_SIZE   0x40
#define NCAPI_GENERAL_PURPOSE_ENDPOINT_COUNT   30
#define NCAPI_MAX_ENDPOINT_COUNT   (NCAPI_GENERAL_PURPOSE_ENDPOINT_COUNT + 1)
#define NCAPI_MAX_USB_STRINGS   4
#define NC_TRANSFER_FLAG_APPLY_ZLP   7
#define NC_TRANSFER_FLAG_APPLY_CONCATENATION   6
#define NC_TRANSFER_FLAG_TOKEN_NOTIFICATION   5
#define NC_TRANSFER_FLAG_APPLY_PIO   4
#define NC_TRANSFER_FLAG_TRANSFER_LOCK   9
#define NC_TRANSFER_FLAG_ENDPOINT_LOCK   8
#define NC_STATISTIC(_x_)

Typedefs

typedef UINT NCSTATUS
typedef UINTPNCSTATUS
typedef _NC_TRANSFER_OBJECT NC_TRANSFER_OBJECT
typedef _NC_TRANSFER_OBJECTPNC_TRANSFER_OBJECT
typedef enum _NC_ENDPOINT_EVENT_CODE NC_ENDPOINT_EVENT_CODE
typedef _NC_PRIVATE_ENDPOINT_OBJECT NC_PRIVATE_ENDPOINT_OBJECT
typedef _NC_PRIVATE_ENDPOINT_OBJECTPNC_PRIVATE_ENDPOINT_OBJECT
typedef _NC_ENDPOINT_OBJECT NC_ENDPOINT_OBJECT
typedef _NC_ENDPOINT_OBJECTPNC_ENDPOINT_OBJECT
typedef _USB_DEVICE_INTERFACE USB_DEVICE_INTERFACE
typedef _USB_DEVICE_INTERFACEPUSB_DEVICE_INTERFACE
typedef enum _NC_BUS_SPEED NC_BUS_SPEED
typedef enum _NC_DEVICE_EVENT_CODE NC_DEVICE_EVENT_CODE
typedef _NC_DEVICE_OBJECT NC_DEVICE_OBJECT
typedef _NC_DEVICE_OBJECTPNC_DEVICE_OBJECT

Enumerations

enum  _NC_ENDPOINT_EVENT_CODE {
  NC_ENDPOINT_EVENT_UNKNOWN = 0, NC_ENDPOINT_EVENT_SET_CLEAR_STALL, NC_ENDPOINT_EVENT_SURPRISE_CANCEL_TRANSFER, NC_ENDPOINT_EVENT_SURPRISE_CLOSE,
  END_OF_NC_ENDPOINT_EVENT_CODES
}
enum  _NC_BUS_SPEED { NC_BUS_SPEED_UNKNOWN = 0, NC_BUS_SPEED_HIGH, NC_BUS_SPEED_FULL, END_OF_NC_BUS_SPEED }
enum  _NC_DEVICE_EVENT_CODE {
  NC_DEVICE_EVENT_UNKNOWN = 0, NC_DEVICE_EVENT_VBUS_TRUE, NC_DEVICE_EVENT_VBUS_FALSE, NC_DEVICE_EVENT_ROOT_PORT_RESET,
  NC_DEVICE_EVENT_DEVICE_REQUEST, NC_DEVICE_EVENT_SET_CONFIGURATION, NC_DEVICE_EVENT_SOF, NC_DEVICE_EVENT_SUSPEND,
  NC_DEVICE_EVENT_RESUME, END_OF_NC_DEVICE_EVENT_CODES
}

Functions

NCSTATUS NcApi_OneTimeInit (PNC_DEVICE_OBJECT DeviceObject)
void NcApi_CleanUp (PNC_DEVICE_OBJECT DeviceObject)
void NcApi_UsbEnable (PNC_DEVICE_OBJECT DeviceObject)
void NcApi_UsbDisable (PNC_DEVICE_OBJECT DeviceObject)
void NcApi_SofEnableInterrupt (PNC_DEVICE_OBJECT DeviceObject)
void NcApi_SofDisableInterrupt (PNC_DEVICE_OBJECT DeviceObject)
void NcApi_UpdateUsbFrame (PNC_DEVICE_OBJECT DeviceObject)
void NcApi_WakeupChip (PNC_DEVICE_OBJECT DeviceObject)
void NcApi_WakeupChipAndHost (PNC_DEVICE_OBJECT DeviceObject)
void NcApi_UpdateHsFsConfigurations (PNC_DEVICE_OBJECT DeviceObject)
void NcApi_SetConfiguration (PNC_DEVICE_OBJECT DeviceObject)
PNC_ENDPOINT_OBJECT NcApi_EpCreate (NCBYTE LogicalEp)
void NcApi_EpClose (NCBYTE LogicalEp)
PNC_ENDPOINT_OBJECT NcApi_FindUsbEp (NCBYTE UsbEp)
NCSTATUS NcApi_EpTransfer (PNC_ENDPOINT_OBJECT Endpoint)
NCSTATUS NcApi_EpCancel (PNC_ENDPOINT_OBJECT Endpoint)
NCSTATUS NcApi_EpStall (PNC_ENDPOINT_OBJECT Endpoint)

Variables

struct typedef UINT NCBYTE
struct typedef UINTPNCBYTE

Define Documentation

#define EP0_MAX_PACKET_SIZE   0x40
 

#define max a,
 )     (((a) > (b)) ? (a) : (b))
 

#define min a,
 )     (((a) < (b)) ? (a) : (b))
 

#define NC_MAKE_ENDPOINT_DESCRIPTOR EpType,
EpDir,
EpMaxPkt,
EpAddr,
EpPoll   ) 
 

Value:

sizeof(USB_ENDPOINT_DESCRIPTOR),    /* BYTE bLength; */                     \
    ENDPOINT_DESC,                      /* BYTE bDescriptorType; */             \
    (BYTE)EpDir | (BYTE)EpAddr,         /* BYTE bEndpointAddress; */            \
    EpType,                             /* BYTE bmAttributes; */                \
    NC_LOBYTE(EpMaxPkt),                /* BYTE wMaxPacketSizeLo; */            \
    NC_HIBYTE(EpMaxPkt),                /* BYTE wMaxPacketSizeHi; */            \
    EpPoll

#define NC_STATISTIC _x_   ) 
 

#define NC_TRANSFER_FLAG_APPLY_CONCATENATION   6
 

#define NC_TRANSFER_FLAG_APPLY_PIO   4
 

#define NC_TRANSFER_FLAG_APPLY_ZLP   7
 

#define NC_TRANSFER_FLAG_ENDPOINT_LOCK   8
 

#define NC_TRANSFER_FLAG_TOKEN_NOTIFICATION   5
 

#define NC_TRANSFER_FLAG_TRANSFER_LOCK   9
 

#define NCAPI_GENERAL_PURPOSE_ENDPOINT_COUNT   30
 

#define NCAPI_MAX_ENDPOINT_COUNT   (NCAPI_GENERAL_PURPOSE_ENDPOINT_COUNT + 1)
 

#define NCAPI_MAX_USB_STRINGS   4
 

#define NCSTATUS_CLIENT_CANCEL   (NCBYTE)-0x02
 

#define NCSTATUS_EMPTY   0x03
 

#define NCSTATUS_MORE_PROCESSING_REQUIRED   0x04
 

#define NCSTATUS_PARTIAL_PACKET   0x02
 

#define NCSTATUS_PENDING   0x01
 

#define NCSTATUS_SUCCESS   0x00
 

#define NCSTATUS_UNSUCCESSFUL   (NCBYTE)-0x01
 

#define READ_FROM_HOST   0
 

#define WRITE_TO_HOST   1
 


Typedef Documentation

typedef enum _NC_BUS_SPEED NC_BUS_SPEED
 

typedef enum _NC_DEVICE_EVENT_CODE NC_DEVICE_EVENT_CODE
 

typedef struct _NC_DEVICE_OBJECT NC_DEVICE_OBJECT
 

typedef enum _NC_ENDPOINT_EVENT_CODE NC_ENDPOINT_EVENT_CODE
 

typedef struct _NC_ENDPOINT_OBJECT NC_ENDPOINT_OBJECT
 

typedef struct _NC_PRIVATE_ENDPOINT_OBJECT NC_PRIVATE_ENDPOINT_OBJECT
 

typedef struct _NC_TRANSFER_OBJECT NC_TRANSFER_OBJECT
 

typedef UINT NCSTATUS
 

typedef struct _NC_DEVICE_OBJECT * PNC_DEVICE_OBJECT
 

typedef struct _NC_ENDPOINT_OBJECT * PNC_ENDPOINT_OBJECT
 

typedef struct _NC_PRIVATE_ENDPOINT_OBJECT * PNC_PRIVATE_ENDPOINT_OBJECT
 

typedef struct _NC_TRANSFER_OBJECT * PNC_TRANSFER_OBJECT
 

typedef UINT * PNCSTATUS
 

typedef struct _USB_DEVICE_INTERFACE * PUSB_DEVICE_INTERFACE
 

typedef struct _USB_DEVICE_INTERFACE USB_DEVICE_INTERFACE
 


Enumeration Type Documentation

enum _NC_BUS_SPEED
 

Enumeration values:
NC_BUS_SPEED_UNKNOWN 
NC_BUS_SPEED_HIGH 
NC_BUS_SPEED_FULL 
END_OF_NC_BUS_SPEED 

enum _NC_DEVICE_EVENT_CODE
 

Enumeration values:
NC_DEVICE_EVENT_UNKNOWN 
NC_DEVICE_EVENT_VBUS_TRUE 
NC_DEVICE_EVENT_VBUS_FALSE 
NC_DEVICE_EVENT_ROOT_PORT_RESET 
NC_DEVICE_EVENT_DEVICE_REQUEST 
NC_DEVICE_EVENT_SET_CONFIGURATION 
NC_DEVICE_EVENT_SOF 
NC_DEVICE_EVENT_SUSPEND 
NC_DEVICE_EVENT_RESUME 
END_OF_NC_DEVICE_EVENT_CODES 

enum _NC_ENDPOINT_EVENT_CODE
 

Enumeration values:
NC_ENDPOINT_EVENT_UNKNOWN 
NC_ENDPOINT_EVENT_SET_CLEAR_STALL 
NC_ENDPOINT_EVENT_SURPRISE_CANCEL_TRANSFER 
NC_ENDPOINT_EVENT_SURPRISE_CLOSE 
END_OF_NC_ENDPOINT_EVENT_CODES 


Function Documentation

void NcApi_CleanUp PNC_DEVICE_OBJECT  DeviceObject  ) 
 

NCSTATUS NcApi_EpCancel PNC_ENDPOINT_OBJECT  Endpoint  ) 
 

void NcApi_EpClose NCBYTE  LogicalEp  ) 
 

PNC_ENDPOINT_OBJECT NcApi_EpCreate NCBYTE  LogicalEp  ) 
 

NCSTATUS NcApi_EpStall PNC_ENDPOINT_OBJECT  Endpoint  ) 
 

NCSTATUS NcApi_EpTransfer PNC_ENDPOINT_OBJECT  Endpoint  ) 
 

PNC_ENDPOINT_OBJECT NcApi_FindUsbEp NCBYTE  UsbEp  ) 
 

NCSTATUS NcApi_OneTimeInit PNC_DEVICE_OBJECT  DeviceObject  ) 
 

void NcApi_SetConfiguration PNC_DEVICE_OBJECT  DeviceObject  ) 
 

void NcApi_SofDisableInterrupt PNC_DEVICE_OBJECT  DeviceObject  ) 
 

void NcApi_SofEnableInterrupt PNC_DEVICE_OBJECT  DeviceObject  ) 
 

void NcApi_UpdateHsFsConfigurations PNC_DEVICE_OBJECT  DeviceObject  ) 
 

void NcApi_UpdateUsbFrame PNC_DEVICE_OBJECT  DeviceObject  ) 
 

void NcApi_UsbDisable PNC_DEVICE_OBJECT  DeviceObject  ) 
 

void NcApi_UsbEnable PNC_DEVICE_OBJECT  DeviceObject  ) 
 

void NcApi_WakeupChip PNC_DEVICE_OBJECT  DeviceObject  ) 
 

void NcApi_WakeupChipAndHost PNC_DEVICE_OBJECT  DeviceObject  ) 
 


Variable Documentation

struct struct typedef UINT NCBYTE
 

struct struct typedef UINT * PNCBYTE
 


Generated on Thu Mar 2 16:11:30 2006 for VDK Blacksheep by  doxygen 1.4.1