Initial cut of the open ath9k htc firmware.
[open-ath9k-htc-firmware.git] / target_firmware / magpie_fw_dev / target / inc / k2 / hif_usb.h
1 /*
2  * @File: mbox_hw.h
3  * 
4  * @Abstract: mailbox hardware definitions
5  * 
6  * @Notes: 
7  *  * 
8  * Copyright (c) 2008 Atheros Communications Inc.
9  * All rights reserved.
10  *
11  */
12
13 #ifndef __HIF_USB_H__
14 #define __HIF_USB_H__
15
16 #include <sys_cfg.h>
17 #include <vdesc_api.h>
18 //#include <desc.h>
19 #include <dma_engine_api.h>
20
21 #define HIF_USB_PIPE_TX             1
22 #define HIF_USB_PIPE_RX             2
23 #define HIF_USB_PIPE_INTERRUPT      3
24 #define HIF_USB_PIPE_COMMAND        4
25 #define HIF_USB_PIPE_HP_TX          5
26 #define HIF_USB_PIPE_MP_TX          6
27
28 struct VBUF_QUEUE
29 {
30     VBUF *head;
31     VBUF *tail;
32 };
33
34     /* the mailbox hardware layer context */
35 typedef struct _HIF_USB_CONTEXT {
36     HIF_CALLBACK                hifCb; 
37     struct zsDmaQueue           dnQ;
38     struct zsTxDmaQueue         upQ;
39 #if SYSTEM_MODULE_HP_EP5
40     struct zsDmaQueue           hpdnQ;  // high priority
41 #endif
42 #if SYSTEM_MODULE_HP_EP6
43     struct zsDmaQueue           mpdnQ;  // medium priority
44 #endif
45     //struct VBUF_QUEUE           upVbufQ;
46     VBUF                                *cmdQueue;
47     struct VBUF_QUEUE           eventBufQ;
48     
49     // Left a door for extension the structure
50     void *pReserved;      
51 } HIF_USB_CONTEXT;
52
53              
54 #endif