Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
wb35tx_s.h
Go to the documentation of this file.
1 #ifndef __WINBOND_WB35_TX_S_H
2 #define __WINBOND_WB35_TX_S_H
3 
4 #include "mds_s.h"
5 
6 /* IS89C35 Tx related definition */
7 #define TX_INTERFACE 0 /* Interface 1 */
8 #define TX_PIPE 3 /* Endpoint 4 */
9 #define TX_INTERRUPT 1 /* Endpoint 2 */
10 #define MAX_INTERRUPT_LENGTH 64 /* It must be 64 for EP2 hardware */
11 
12 /* Internal variable for module */
13 struct wb35_tx {
14  /* For Tx buffer */
16 
17  /* For Interrupt pipe */
19 
20  atomic_t TxResultCount; /* For thread control of EP2 931130.4.m */
21  atomic_t TxFireCounter; /* For thread control of EP4 931130.4.n */
23 
24  u32 TxSendIndex; /* The next index of Mds array to be sent */
25  u32 EP2vm_state; /* for EP2vm state */
26  u32 EP4vm_state; /* for EP4vm state */
27  u32 tx_halt; /* Stopping VM */
28 
29  struct urb *Tx4Urb;
30  struct urb *Tx2Urb;
31 
34 
35  u32 TxFillCount; /* 20060928 */
36  u32 TxTimer; /* 20060928 Add if sending packet is greater than 13 */
37 };
38 
39 #endif