Pekka Enberg | 80aba53 | 2008-10-30 13:04:29 +0200 | [diff] [blame] | 1 | #ifndef __WINBOND_WB35_TX_S_H |
| 2 | #define __WINBOND_WB35_TX_S_H |
| 3 | |
Pekka Enberg | 9ce922f | 2008-10-30 13:05:42 +0200 | [diff] [blame] | 4 | #include "mds_s.h" |
Pekka Enberg | 80aba53 | 2008-10-30 13:04:29 +0200 | [diff] [blame] | 5 | |
Harsh Kumar | 37594bb | 2012-09-26 11:02:47 +0530 | [diff] [blame] | 6 | /* IS89C35 Tx related definition */ |
Harsh Kumar | bd084ba | 2012-09-26 11:03:15 +0530 | [diff] [blame] | 7 | #define TX_INTERFACE 0 /* Interface 1 */ |
| 8 | #define TX_PIPE 3 /* Endpoint 4 */ |
| 9 | #define TX_INTERRUPT 1 /* Endpoint 2 */ |
Harsh Kumar | 37594bb | 2012-09-26 11:02:47 +0530 | [diff] [blame] | 10 | #define MAX_INTERRUPT_LENGTH 64 /* It must be 64 for EP2 hardware */ |
Pavel Machek | 66101de | 2008-10-01 14:36:56 +0200 | [diff] [blame] | 11 | |
Harsh Kumar | 37594bb | 2012-09-26 11:02:47 +0530 | [diff] [blame] | 12 | /* Internal variable for module */ |
Pekka Enberg | eb62f3e | 2009-01-08 18:32:14 +0200 | [diff] [blame] | 13 | struct wb35_tx { |
Harsh Kumar | 37594bb | 2012-09-26 11:02:47 +0530 | [diff] [blame] | 14 | /* For Tx buffer */ |
Pavel Machek | 66101de | 2008-10-01 14:36:56 +0200 | [diff] [blame] | 15 | u8 TxBuffer[ MAX_USB_TX_BUFFER_NUMBER ][ MAX_USB_TX_BUFFER ]; |
| 16 | |
Harsh Kumar | 37594bb | 2012-09-26 11:02:47 +0530 | [diff] [blame] | 17 | /* For Interrupt pipe */ |
Pavel Machek | 66101de | 2008-10-01 14:36:56 +0200 | [diff] [blame] | 18 | u8 EP2_buf[MAX_INTERRUPT_LENGTH]; |
| 19 | |
Harsh Kumar | 37594bb | 2012-09-26 11:02:47 +0530 | [diff] [blame] | 20 | atomic_t TxResultCount; /* For thread control of EP2 931130.4.m */ |
| 21 | atomic_t TxFireCounter; /* For thread control of EP4 931130.4.n */ |
Harsh Kumar | bd084ba | 2012-09-26 11:03:15 +0530 | [diff] [blame] | 22 | u32 ByteTransfer; |
Pavel Machek | 66101de | 2008-10-01 14:36:56 +0200 | [diff] [blame] | 23 | |
Harsh Kumar | bd084ba | 2012-09-26 11:03:15 +0530 | [diff] [blame] | 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 */ |
Pavel Machek | 66101de | 2008-10-01 14:36:56 +0200 | [diff] [blame] | 28 | |
Harsh Kumar | bd084ba | 2012-09-26 11:03:15 +0530 | [diff] [blame] | 29 | struct urb *Tx4Urb; |
| 30 | struct urb *Tx2Urb; |
Pavel Machek | 66101de | 2008-10-01 14:36:56 +0200 | [diff] [blame] | 31 | |
| 32 | int EP2VM_status; |
| 33 | int EP4VM_status; |
| 34 | |
Harsh Kumar | 37594bb | 2012-09-26 11:02:47 +0530 | [diff] [blame] | 35 | u32 TxFillCount; /* 20060928 */ |
| 36 | u32 TxTimer; /* 20060928 Add if sending packet is greater than 13 */ |
Pekka Enberg | eb62f3e | 2009-01-08 18:32:14 +0200 | [diff] [blame] | 37 | }; |
Pavel Machek | 66101de | 2008-10-01 14:36:56 +0200 | [diff] [blame] | 38 | |
Pekka Enberg | 80aba53 | 2008-10-30 13:04:29 +0200 | [diff] [blame] | 39 | #endif |