// usb_system.h // BCD -- Ben Hutton, Chris Leary, Devrin Talen // 100-column width #ifndef _USB_SYSTEM_H #define _USB_SYSTEM_H /************/ /* INCLUDES */ /************/ #include "usb_interface.h" /***********/ /* DEFINES */ /***********/ /*********/ /* ENUMS */ /*********/ /***********/ /* STRUCTS */ /***********/ // --------- // - PIPES - // --------- #if 0 typedef struct Pipe // A logical connection between the USB system and an endpoint on a device. { TRANSACTION_NODE_T *head; TRANSACTION_NODE_T *tail; uint8_t address; // a pipe is associated with an endpoint within a function uint8_t endp; // a pipe is associated with an endpoint uint8_t bandwidth; uint8_t maximum_packet_size; uint8_t maximum_buffer_size; TRANSFER_TYPE_T transfer_type; TRANSMISSION_DIRECTION_T data_direction; PIPE_TYPE_T pipe_type; } PIPE_T; typedef PtrNode PIPE_NODE_T; /**************/ /* PROTOTYPES */ /**************/ // --------- // - PIPES - // --------- PIPE_T *Pipe(uint8_t address, uint8_t endp, uint8_t bandwidth, uint8_t maximum_packet_size, uint8_t maximum_buffer_size, TRANSFER_TYPE_T transfer_type, PIPE_TYPE_T pipe_type); void DestroyPipe(PIPE_T *pipe); #endif #endif