Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
csr_wifi_hip_card.h
Go to the documentation of this file.
1 /*****************************************************************************
2 
3  (c) Cambridge Silicon Radio Limited 2012
4  All rights reserved and confidential information of CSR
5 
6  Refer to LICENSE.txt included with this source for details
7  on the license terms.
8 
9 *****************************************************************************/
10 
11 /*
12  ******************************************************************************
13  * FILE : csr_wifi_hip_card.h
14  *
15  * PURPOSE : Defines abstract interface for hardware specific functions.
16  * Note, this is a different file from one of the same name in the
17  * Windows driver.
18  *
19  *****************************************************************************
20  */
21 #ifndef __CARD_H__
22 #define __CARD_H__
23 
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
27 
28 #include "csr_wifi_hip_card_sdio.h"
29 #include "csr_wifi_hip_signals.h"
30 #include "csr_wifi_hip_unifi_udi.h"
31 
32 
33 /*****************************************************************************
34  * CardEnableInt -
35  */
37 
38 /*****************************************************************************
39  * CardGenInt -
40  */
42 
43 /*****************************************************************************
44  * CardPendingInt -
45  */
47 
48 /*****************************************************************************
49  * CardDisableInt -
50  */
52 
53 /*****************************************************************************
54  * CardClearInt -
55  */
57 
58 /*****************************************************************************
59  * CardDisable -
60  */
61 void CardDisable(card_t *card);
62 
63 /*****************************************************************************
64  * CardIntEnabled -
65  */
67 
68 /*****************************************************************************
69  * CardGetDataSlotSize
70  */
72 
73 /*****************************************************************************
74  * CardWriteBulkData -
75  */
77 
78 
79 /*****************************************************************************
80  * CardClearFromHostDataSlot -
81  */
82 void CardClearFromHostDataSlot(card_t *card, const s16 aSlotNum);
83 
84 #ifdef CSR_WIFI_REQUEUE_PACKET_TO_HAL
85 /*****************************************************************************
86  * CardClearFromHostDataSlotWithoutFreeingBulkData - Clear the data stot
87  * without freeing the bulk data
88  */
89 
90 void CardClearFromHostDataSlotWithoutFreeingBulkData(card_t *card, const s16 aSlotNum);
91 #endif
92 
93 /*****************************************************************************
94  * CardGetFreeFromHostDataSlots -
95  */
97 
99 
101 
103 
105 CsrResult unifi_dl_patch(card_t *card, void *arg, u32 boot_ctrl);
107 void* unifi_dl_fw_read_start(card_t *card, s8 is_fw);
108 
110 
112 #ifdef CSR_WIFI_HIP_DEBUG_OFFLINE
113 void unifi_debug_log_to_buf(const char *fmt, ...);
114 void unifi_debug_string_to_buf(const char *str);
115 void unifi_debug_hex_to_buf(const char *buff, u16 length);
116 #endif
117 
118 
119 #ifdef __cplusplus
120 }
121 #endif
122 
123 #endif /* __CARD_H__ */