Linux 3.18-rc3
[cascardo/linux.git] / drivers / staging / bcm / Prototypes.h
1 #ifndef _PROTOTYPES_H_
2 #define _PROTOTYPES_H_
3
4 VOID LinkControlResponseMessage(struct bcm_mini_adapter *Adapter, PUCHAR pucBuffer);
5
6 VOID StatisticsResponse(struct bcm_mini_adapter *Adapter, PVOID pvBuffer);
7
8 VOID IdleModeResponse(struct bcm_mini_adapter *Adapter, PUINT puiBuffer);
9
10 int control_packet_handler(struct bcm_mini_adapter *Adapter);
11
12 VOID DeleteAllClassifiersForSF(struct bcm_mini_adapter *Adapter, UINT uiSearchRuleIndex);
13
14 VOID flush_all_queues(struct bcm_mini_adapter *Adapter);
15
16 int register_control_device_interface(struct bcm_mini_adapter *ps_adapter);
17
18 void unregister_control_device_interface(struct bcm_mini_adapter *Adapter);
19
20 INT CopyBufferToControlPacket(struct bcm_mini_adapter *Adapter,/**<Logical Adapter*/
21                                                                           PVOID ioBuffer/**<Control Packet Buffer*/
22                                                                           );
23
24 VOID SortPackInfo(struct bcm_mini_adapter *Adapter);
25
26 VOID SortClassifiers(struct bcm_mini_adapter *Adapter);
27
28 VOID flush_all_queues(struct bcm_mini_adapter *Adapter);
29
30 VOID PruneQueueAllSF(struct bcm_mini_adapter *Adapter);
31
32 INT SearchSfid(struct bcm_mini_adapter *Adapter, UINT uiSfid);
33
34 USHORT ClassifyPacket(struct bcm_mini_adapter *Adapter, struct sk_buff *skb);
35
36 bool MatchSrcPort(struct bcm_classifier_rule *pstClassifierRule, USHORT ushSrcPort);
37
38 bool MatchDestPort(struct bcm_classifier_rule *pstClassifierRule, USHORT ushSrcPort);
39
40 bool MatchProtocol(struct bcm_classifier_rule *pstClassifierRule, UCHAR ucProtocol);
41
42 INT SetupNextSend(struct bcm_mini_adapter *Adapter, /**<Logical Adapter*/
43                                         struct sk_buff *Packet, /**<data buffer*/
44                                         USHORT Vcid);
45
46 VOID LinkMessage(struct bcm_mini_adapter *Adapter);
47
48 VOID transmit_packets(struct bcm_mini_adapter *Adapter);
49
50 INT SendControlPacket(struct bcm_mini_adapter *Adapter, /**<Logical Adapter*/
51                                                         char *pControlPacket/**<Control Packet*/
52                                                         );
53
54 int register_networkdev(struct bcm_mini_adapter *Adapter);
55
56 void unregister_networkdev(struct bcm_mini_adapter *Adapter);
57
58 INT AllocAdapterDsxBuffer(struct bcm_mini_adapter *Adapter);
59
60 VOID AdapterFree(struct bcm_mini_adapter *Adapter);
61
62 INT FreeAdapterDsxBuffer(struct bcm_mini_adapter *Adapter);
63
64 int tx_pkt_handler(struct bcm_mini_adapter *Adapter);
65
66 int reset_card_proc(struct bcm_mini_adapter *Adapter);
67
68 int run_card_proc(struct bcm_mini_adapter *Adapter);
69
70 int InitCardAndDownloadFirmware(struct bcm_mini_adapter *ps_adapter);
71
72 INT ReadMacAddressFromNVM(struct bcm_mini_adapter *Adapter);
73
74 int register_control_device_interface(struct bcm_mini_adapter *ps_adapter);
75
76 void DumpPackInfo(struct bcm_mini_adapter *Adapter);
77
78 int rdm(struct bcm_mini_adapter *Adapter, UINT uiAddress, PCHAR pucBuff, size_t size);
79
80 int wrm(struct bcm_mini_adapter *Adapter, UINT uiAddress, PCHAR pucBuff, size_t size);
81
82 int wrmalt(struct bcm_mini_adapter *Adapter, UINT uiAddress, unsigned int *pucBuff, size_t sSize);
83
84 int rdmalt(struct bcm_mini_adapter *Adapter, UINT uiAddress, unsigned int *pucBuff, size_t sSize);
85
86 int get_dsx_sf_data_to_application(struct bcm_mini_adapter *Adapter, UINT uiSFId, void __user *user_buffer);
87
88 void SendIdleModeResponse(struct bcm_mini_adapter *Adapter);
89
90 int ProcessGetHostMibs(struct bcm_mini_adapter *Adapter, struct bcm_host_stats_mibs *buf);
91
92 void GetDroppedAppCntrlPktMibs(struct bcm_host_stats_mibs *ioBuffer, struct bcm_tarang_data *pTarang);
93
94 void beceem_parse_target_struct(struct bcm_mini_adapter *Adapter);
95
96 int bcm_ioctl_fw_download(struct bcm_mini_adapter *Adapter, struct bcm_firmware_info *psFwInfo);
97
98 void CopyMIBSExtendedSFParameters(struct bcm_mini_adapter *Adapter,
99                 struct bcm_connect_mgr_params *psfLocalSet, UINT uiSearchRuleIndex);
100
101 VOID ResetCounters(struct bcm_mini_adapter *Adapter);
102
103 int InitLedSettings(struct bcm_mini_adapter *Adapter);
104
105 struct bcm_classifier_rule *GetFragIPClsEntry(struct bcm_mini_adapter *Adapter, USHORT usIpIdentification, ULONG SrcIP);
106
107 void AddFragIPClsEntry(struct bcm_mini_adapter *Adapter, struct bcm_fragmented_packet_info *psFragPktInfo);
108
109 void DelFragIPClsEntry(struct bcm_mini_adapter *Adapter, USHORT usIpIdentification, ULONG SrcIp);
110
111 void update_per_cid_rx(struct bcm_mini_adapter *Adapter);
112
113 void update_per_sf_desc_cnts(struct bcm_mini_adapter *Adapter);
114
115 void ClearTargetDSXBuffer(struct bcm_mini_adapter *Adapter, B_UINT16 TID, bool bFreeAll);
116
117 void flush_queue(struct bcm_mini_adapter *Adapter, UINT iQIndex);
118
119 INT flushAllAppQ(VOID);
120
121 INT BeceemEEPROMBulkRead(
122         struct bcm_mini_adapter *Adapter,
123         PUINT pBuffer,
124         UINT uiOffset,
125         UINT uiNumBytes);
126
127 INT WriteBeceemEEPROM(struct bcm_mini_adapter *Adapter, UINT uiEEPROMOffset, UINT uiData);
128
129 INT PropagateCalParamsFromFlashToMemory(struct bcm_mini_adapter *Adapter);
130
131 INT BeceemEEPROMBulkWrite(
132         struct bcm_mini_adapter *Adapter,
133         PUCHAR pBuffer,
134         UINT uiOffset,
135         UINT uiNumBytes,
136         bool bVerify);
137
138 INT ReadBeceemEEPROM(struct bcm_mini_adapter *Adapter, UINT dwAddress, UINT *pdwData);
139
140 INT BeceemNVMRead(
141         struct bcm_mini_adapter *Adapter,
142         PUINT pBuffer,
143         UINT uiOffset,
144         UINT uiNumBytes);
145
146 INT BeceemNVMWrite(
147         struct bcm_mini_adapter *Adapter,
148         PUINT pBuffer,
149         UINT uiOffset,
150         UINT uiNumBytes,
151         bool bVerify);
152
153 INT BcmInitNVM(struct bcm_mini_adapter *Adapter);
154
155 INT BcmUpdateSectorSize(struct bcm_mini_adapter *Adapter, UINT uiSectorSize);
156
157 bool IsSectionExistInFlash(struct bcm_mini_adapter *Adapter, enum bcm_flash2x_section_val section);
158
159 INT BcmGetFlash2xSectionalBitMap(struct bcm_mini_adapter *Adapter, struct bcm_flash2x_bitmap *psFlash2xBitMap);
160
161 INT BcmFlash2xBulkWrite(
162         struct bcm_mini_adapter *Adapter,
163         PUINT pBuffer,
164         enum bcm_flash2x_section_val eFlashSectionVal,
165         UINT uiOffset,
166         UINT uiNumBytes,
167         UINT bVerify);
168
169 INT BcmFlash2xBulkRead(
170         struct bcm_mini_adapter *Adapter,
171         PUINT pBuffer,
172         enum bcm_flash2x_section_val eFlashSectionVal,
173         UINT uiOffsetWithinSectionVal,
174         UINT uiNumBytes);
175
176 INT BcmGetSectionValStartOffset(struct bcm_mini_adapter *Adapter, enum bcm_flash2x_section_val eFlashSectionVal);
177
178 INT BcmSetActiveSection(struct bcm_mini_adapter *Adapter, enum bcm_flash2x_section_val eFlash2xSectVal);
179
180 INT BcmAllocFlashCSStructure(struct bcm_mini_adapter *psAdapter);
181
182 INT BcmDeAllocFlashCSStructure(struct bcm_mini_adapter *psAdapter);
183
184 INT BcmCopyISO(struct bcm_mini_adapter *Adapter, struct bcm_flash2x_copy_section sCopySectStrut);
185
186 INT BcmFlash2xCorruptSig(struct bcm_mini_adapter *Adapter, enum bcm_flash2x_section_val eFlash2xSectionVal);
187
188 INT BcmFlash2xWriteSig(struct bcm_mini_adapter *Adapter, enum bcm_flash2x_section_val eFlashSectionVal);
189
190 INT validateFlash2xReadWrite(struct bcm_mini_adapter *Adapter, struct bcm_flash2x_readwrite *psFlash2xReadWrite);
191
192 INT IsFlash2x(struct bcm_mini_adapter *Adapter);
193
194 INT BcmCopySection(struct bcm_mini_adapter *Adapter,
195                                                 enum bcm_flash2x_section_val SrcSection,
196                                                 enum bcm_flash2x_section_val DstSection,
197                                                 UINT offset,
198                                                 UINT numOfBytes);
199
200 bool IsNonCDLessDevice(struct bcm_mini_adapter *Adapter);
201
202 VOID OverrideServiceFlowParams(struct bcm_mini_adapter *Adapter, PUINT puiBuffer);
203
204 int wrmaltWithLock(struct bcm_mini_adapter *Adapter, UINT uiAddress, unsigned int *pucBuff, size_t sSize);
205
206 int rdmaltWithLock(struct bcm_mini_adapter *Adapter, UINT uiAddress, unsigned int *pucBuff, size_t sSize);
207
208 int wrmWithLock(struct bcm_mini_adapter *Adapter, UINT uiAddress, PCHAR pucBuff, size_t size);
209
210 INT buffDnldVerify(struct bcm_mini_adapter *Adapter, unsigned char *mappedbuffer, unsigned int u32FirmwareLength,
211                 unsigned long u32StartingAddress);
212
213 VOID putUsbSuspend(struct work_struct *work);
214
215 bool IsReqGpioIsLedInNVM(struct bcm_mini_adapter *Adapter, UINT gpios);
216
217 #endif