Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelv...
[pandora-kernel.git] / drivers / staging / bcm / Prototypes.h
1 #ifndef _PROTOTYPES_H_
2 #define _PROTOTYPES_H_
3
4 int BcmFileDownload(PMINI_ADAPTER Adapter,/**< Logical Adapter */
5                         char *path,     /**< path to image file */
6                         unsigned int loc    /**< Download Address on the chip*/
7                         );
8 VOID LinkControlResponseMessage(PMINI_ADAPTER Adapter, PUCHAR pucBuffer);
9
10 VOID StatisticsResponse(PMINI_ADAPTER Adapter,PVOID pvBuffer);
11
12 VOID IdleModeResponse(PMINI_ADAPTER Adapter,PUINT puiBuffer);
13
14 void bcm_kfree_skb(struct sk_buff *skb);
15 VOID bcm_kfree(VOID *ptr);
16
17
18 VOID handle_rx_control_packet(PMINI_ADAPTER Adapter,    /**<Pointer to the Adapter structure*/
19                                                                 struct sk_buff *skb);                           /**<Pointer to the socket buffer*/
20
21 int control_packet_handler      (PMINI_ADAPTER Adapter);
22
23 VOID DeleteAllClassifiersForSF(PMINI_ADAPTER Adapter,UINT uiSearchRuleIndex);
24
25 VOID flush_all_queues(PMINI_ADAPTER Adapter);
26
27 int register_control_device_interface(PMINI_ADAPTER ps_adapter);
28
29 void unregister_control_device_interface(PMINI_ADAPTER Adapter);
30
31 INT CopyBufferToControlPacket(PMINI_ADAPTER Adapter,/**<Logical Adapter*/
32                                                                           PVOID ioBuffer/**<Control Packet Buffer*/
33                                                                           );
34
35 VOID SortPackInfo(PMINI_ADAPTER Adapter);
36
37 VOID SortClassifiers(PMINI_ADAPTER Adapter);
38
39 VOID flush_all_queues(PMINI_ADAPTER Adapter);
40
41 USHORT  IpVersion4(PMINI_ADAPTER Adapter, /**< Pointer to the driver control structure */
42                                         struct iphdr *iphd, /**<Pointer to the IP Hdr of the packet*/
43                                         S_CLASSIFIER_RULE *pstClassifierRule );
44
45 VOID PruneQueue(PMINI_ADAPTER Adapter,/**<Pointer to the driver control structure*/
46                                         INT iIndex/**<Queue Index*/
47                                         );
48
49 VOID PruneQueueAllSF(PMINI_ADAPTER Adapter);
50
51 INT SearchSfid(PMINI_ADAPTER Adapter,UINT uiSfid);
52
53 USHORT GetPacketQueueIndex(PMINI_ADAPTER Adapter, /**<Pointer to the driver control structure */
54                                                                 struct sk_buff* Packet /**< Pointer to the Packet to be sent*/
55                                                                 );
56
57 VOID
58 reply_to_arp_request(struct sk_buff *skb  /**<sk_buff of ARP request*/
59                                                 );
60
61 INT SetupNextSend(PMINI_ADAPTER Adapter, /**<Logical Adapter*/
62                                         struct sk_buff *Packet, /**<data buffer*/
63                                         USHORT Vcid)    ;
64
65 VOID LinkMessage(PMINI_ADAPTER Adapter);
66
67 VOID transmit_packets(PMINI_ADAPTER Adapter);
68
69 INT SendControlPacket(PMINI_ADAPTER Adapter, /**<Logical Adapter*/
70                                                         char *pControlPacket/**<Control Packet*/
71                                                         );
72
73 INT bcm_transmit(struct sk_buff *skb,           /**< skb */
74                                         struct net_device *dev  /**< net device pointer */
75                                         );
76
77 int register_networkdev(PMINI_ADAPTER Adapter);
78
79 INT AllocAdapterDsxBuffer(PMINI_ADAPTER Adapter);
80
81 VOID AdapterFree(PMINI_ADAPTER Adapter);
82
83 INT FreeAdapterDsxBuffer(PMINI_ADAPTER Adapter);
84
85 int create_worker_threads(PMINI_ADAPTER psAdapter);
86
87 int tx_pkt_handler(PMINI_ADAPTER Adapter);
88
89 int  reset_card_proc(PMINI_ADAPTER Adapter );
90
91 int run_card_proc(PMINI_ADAPTER Adapter );
92
93 int InitCardAndDownloadFirmware(PMINI_ADAPTER ps_adapter);
94
95 int bcm_parse_target_params(PMINI_ADAPTER Adapter);
96
97 INT ReadMacAddressFromNVM(PMINI_ADAPTER Adapter);
98
99 int register_control_device_interface(PMINI_ADAPTER ps_adapter);
100
101 void DumpPackInfo(PMINI_ADAPTER Adapter);
102
103 int rdm(PMINI_ADAPTER Adapter, UINT uiAddress, PCHAR pucBuff, size_t size);
104
105 int wrm(PMINI_ADAPTER Adapter, UINT uiAddress, PCHAR pucBuff, size_t size);
106
107 int wrmalt (PMINI_ADAPTER Adapter, UINT uiAddress, PUINT pucBuff, size_t sSize);
108
109 int rdmalt (PMINI_ADAPTER Adapter, UINT uiAddress, PUINT pucBuff, size_t sSize);
110
111 int get_dsx_sf_data_to_application(PMINI_ADAPTER Adapter, UINT uiSFId, void __user * user_buffer);
112
113 void SendLinkDown(PMINI_ADAPTER Adapter);
114
115 void SendIdleModeResponse(PMINI_ADAPTER Adapter);
116
117 void HandleShutDownModeRequest(PMINI_ADAPTER Adapter,PUCHAR pucBuffer);
118
119 int  ProcessGetHostMibs(PMINI_ADAPTER Adapter, PVOID ioBuffer,
120         ULONG inputBufferLength);
121
122 int GetDroppedAppCntrlPktMibs(PVOID ioBuffer, PPER_TARANG_DATA pTarang);
123 void beceem_parse_target_struct(PMINI_ADAPTER Adapter);
124
125 void doPowerAutoCorrection(PMINI_ADAPTER psAdapter);
126
127 int bcm_ioctl_fw_download(PMINI_ADAPTER Adapter, FIRMWARE_INFO *psFwInfo);
128
129 void bcm_unregister_networkdev(PMINI_ADAPTER Adapter);
130
131 int SearchVcid(PMINI_ADAPTER Adapter,unsigned short usVcid);
132
133 void CopyMIBSExtendedSFParameters(PMINI_ADAPTER Adapter,
134                 CServiceFlowParamSI *psfLocalSet, UINT uiSearchRuleIndex);
135
136 VOID ResetCounters(PMINI_ADAPTER Adapter);
137
138 int InitLedSettings(PMINI_ADAPTER Adapter);
139
140 S_CLASSIFIER_RULE *GetFragIPClsEntry(PMINI_ADAPTER Adapter,USHORT usIpIdentification,ULONG SrcIP);
141
142 void AddFragIPClsEntry(PMINI_ADAPTER Adapter,PS_FRAGMENTED_PACKET_INFO psFragPktInfo);
143
144 void DelFragIPClsEntry(PMINI_ADAPTER Adapter,USHORT usIpIdentification,ULONG SrcIp);
145
146 void update_per_cid_rx (PMINI_ADAPTER Adapter);
147
148 void update_per_sf_desc_cnts( PMINI_ADAPTER Adapter);
149
150 void ClearTargetDSXBuffer(PMINI_ADAPTER Adapter,B_UINT16 TID,BOOLEAN bFreeAll);
151
152 void beceem_protocol_reset (PMINI_ADAPTER Adapter);
153
154 void flush_queue(PMINI_ADAPTER Adapter, UINT iQIndex);
155
156
157 INT flushAllAppQ(VOID);
158
159
160 INT BeceemEEPROMBulkRead(
161         PMINI_ADAPTER Adapter,
162         PUINT pBuffer,
163         UINT uiOffset,
164         UINT uiNumBytes);
165
166
167 INT BeceemFlashBulkRead(
168         PMINI_ADAPTER Adapter,
169         PUINT pBuffer,
170         UINT uiOffset,
171         UINT uiNumBytes);
172
173 UINT BcmGetEEPROMSize(PMINI_ADAPTER Adapter);
174
175 INT WriteBeceemEEPROM(PMINI_ADAPTER Adapter,UINT uiEEPROMOffset, UINT uiData);
176
177 UINT BcmGetFlashSize(PMINI_ADAPTER Adapter);
178
179 UINT BcmGetFlashSectorSize(PMINI_ADAPTER Adapter, UINT FlashSectorSizeSig, UINT FlashSectorSize);
180
181 INT BeceemFlashBulkWrite(
182         PMINI_ADAPTER Adapter,
183         PUINT pBuffer,
184         UINT uiOffset,
185         UINT uiNumBytes,
186         BOOLEAN bVerify);
187
188 INT PropagateCalParamsFromFlashToMemory(PMINI_ADAPTER Adapter);
189
190 INT PropagateCalParamsFromEEPROMToMemory(PMINI_ADAPTER Adapter);
191
192
193 INT BeceemEEPROMBulkWrite(
194         PMINI_ADAPTER Adapter,
195         PUCHAR pBuffer,
196         UINT uiOffset,
197         UINT uiNumBytes,
198         BOOLEAN bVerify);
199
200
201 INT ReadBeceemEEPROMBulk(PMINI_ADAPTER Adapter,UINT dwAddress, UINT *pdwData, UINT dwNumData);
202
203 INT ReadBeceemEEPROM(PMINI_ADAPTER Adapter,UINT dwAddress, UINT *pdwData);
204
205 NVM_TYPE BcmGetNvmType(PMINI_ADAPTER Adapter);
206
207 INT BeceemNVMRead(
208         PMINI_ADAPTER Adapter,
209         PUINT pBuffer,
210         UINT uiOffset,
211         UINT uiNumBytes);
212
213 INT BeceemNVMWrite(
214         PMINI_ADAPTER Adapter,
215         PUINT pBuffer,
216         UINT uiOffset,
217         UINT uiNumBytes,
218         BOOLEAN bVerify);
219
220 INT BcmUpdateSectorSize(PMINI_ADAPTER Adapter,UINT uiSectorSize);
221
222 INT BcmInitNVM(PMINI_ADAPTER Adapter);
223
224 INT BcmGetNvmSize(PMINI_ADAPTER Adapter);
225
226 INT IsSectionExistInVendorInfo(PMINI_ADAPTER Adapter, FLASH2X_SECTION_VAL section);
227
228 VOID BcmValidateNvmType(PMINI_ADAPTER Adapter);
229
230 VOID ConfigureEndPointTypesThroughEEPROM(PMINI_ADAPTER Adapter);
231
232 INT BcmGetFlashCSInfo(PMINI_ADAPTER Adapter);
233 INT ReadDSDHeader(PMINI_ADAPTER Adapter, PDSD_HEADER psDSDHeader, FLASH2X_SECTION_VAL dsd);
234 INT BcmGetActiveDSD(PMINI_ADAPTER Adapter);
235 INT ReadISOHeader(PMINI_ADAPTER Adapter, PISO_HEADER psISOHeader, FLASH2X_SECTION_VAL IsoImage);
236 INT BcmGetActiveISO(PMINI_ADAPTER Adapter);
237 B_UINT8 IsOffsetWritable(PMINI_ADAPTER Adapter, UINT uiOffset);
238 INT BcmGetFlash2xSectionalBitMap(PMINI_ADAPTER Adapter, PFLASH2X_BITMAP psFlash2xBitMap);
239
240 INT BcmFlash2xBulkWrite(
241         PMINI_ADAPTER Adapter,
242         PUINT pBuffer,
243         FLASH2X_SECTION_VAL eFlashSectionVal,
244         UINT uiOffset,
245         UINT uiNumBytes,
246         UINT bVerify);
247
248 INT BcmFlash2xBulkRead(
249         PMINI_ADAPTER Adapter,
250         PUINT pBuffer,
251         FLASH2X_SECTION_VAL eFlashSectionVal,
252         UINT uiOffsetWithinSectionVal,
253         UINT uiNumBytes);
254 INT BcmGetSectionValEndOffset(PMINI_ADAPTER Adapter, FLASH2X_SECTION_VAL eFlashSectionVal);
255
256 INT BcmGetSectionValStartOffset(PMINI_ADAPTER Adapter, FLASH2X_SECTION_VAL eFlashSectionVal);
257
258 INT BcmSetActiveSection(PMINI_ADAPTER Adapter, FLASH2X_SECTION_VAL eFlash2xSectVal);
259 INT BcmAllocFlashCSStructure(PMINI_ADAPTER psAdapter);
260 INT BcmDeAllocFlashCSStructure(PMINI_ADAPTER psAdapter);
261
262 INT BcmCopyISO(PMINI_ADAPTER Adapter, FLASH2X_COPY_SECTION sCopySectStrut);
263 INT BcmFlash2xCorruptSig(PMINI_ADAPTER Adapter, FLASH2X_SECTION_VAL eFlash2xSectionVal);
264 INT BcmFlash2xWriteSig(PMINI_ADAPTER Adapter, FLASH2X_SECTION_VAL eFlashSectionVal);
265 INT     validateFlash2xReadWrite(PMINI_ADAPTER Adapter, PFLASH2X_READWRITE psFlash2xReadWrite);
266 INT IsFlash2x(PMINI_ADAPTER Adapter);
267 INT GetFlashBaseAddr(PMINI_ADAPTER Adapter);
268 INT SaveHeaderIfPresent(PMINI_ADAPTER Adapter, PUCHAR pBuff, UINT uiSectAlignAddr);
269 INT     BcmCopySection(PMINI_ADAPTER Adapter,
270                                                 FLASH2X_SECTION_VAL SrcSection,
271                                                 FLASH2X_SECTION_VAL DstSection,
272                                                 UINT offset,
273                                                 UINT numOfBytes);
274
275 INT BcmDoChipSelect(PMINI_ADAPTER Adapter, UINT offset);
276 INT BcmMakeFlashCSActive(PMINI_ADAPTER Adapter, UINT offset);
277 INT ReadDSDSignature(PMINI_ADAPTER Adapter, FLASH2X_SECTION_VAL dsd);
278 INT ReadDSDPriority(PMINI_ADAPTER Adapter, FLASH2X_SECTION_VAL dsd);
279 FLASH2X_SECTION_VAL getHighestPriDSD(PMINI_ADAPTER Adapter);
280 INT ReadISOSignature(PMINI_ADAPTER Adapter, FLASH2X_SECTION_VAL iso);
281 INT ReadISOPriority(PMINI_ADAPTER Adapter, FLASH2X_SECTION_VAL iso);
282 FLASH2X_SECTION_VAL getHighestPriISO(PMINI_ADAPTER Adapter);
283 INT WriteToFlashWithoutSectorErase(PMINI_ADAPTER Adapter,
284                                                                                 PUINT pBuff,
285                                                                                 FLASH2X_SECTION_VAL eFlash2xSectionVal,
286                                                                                 UINT uiOffset,
287                                                                                 UINT uiNumBytes
288                                                                                 );
289
290 //UINT getNumOfSubSectionWithWRPermisson(PMINI_ADAPTER Adapter, SECTION_TYPE secType);
291 BOOLEAN IsSectionExistInFlash(PMINI_ADAPTER Adapter, FLASH2X_SECTION_VAL section);
292 INT IsSectionWritable(PMINI_ADAPTER Adapter, FLASH2X_SECTION_VAL Section);
293 INT CorruptDSDSig(PMINI_ADAPTER Adapter, FLASH2X_SECTION_VAL eFlash2xSectionVal);
294 INT CorruptISOSig(PMINI_ADAPTER Adapter, FLASH2X_SECTION_VAL eFlash2xSectionVal);
295 BOOLEAN IsNonCDLessDevice(PMINI_ADAPTER Adapter);
296
297
298 VOID OverrideServiceFlowParams(PMINI_ADAPTER Adapter,PUINT puiBuffer);
299
300 int wrmaltWithLock (PMINI_ADAPTER Adapter, UINT uiAddress, PUINT pucBuff, size_t sSize);
301 int rdmaltWithLock (PMINI_ADAPTER Adapter, UINT uiAddress, PUINT pucBuff, size_t sSize);
302
303 int rdmWithLock(PMINI_ADAPTER Adapter, UINT uiAddress, PCHAR pucBuff, size_t size);
304 int wrmWithLock(PMINI_ADAPTER Adapter, UINT uiAddress, PCHAR pucBuff, size_t size);
305 INT buffDnldVerify(PMINI_ADAPTER Adapter, unsigned char *mappedbuffer, unsigned int u32FirmwareLength,
306                 unsigned long u32StartingAddress);
307
308
309 VOID putUsbSuspend(struct work_struct *work);
310 BOOLEAN IsReqGpioIsLedInNVM(PMINI_ADAPTER Adapter, UINT gpios);
311
312 #ifdef BCM_SHM_INTERFACE
313 INT beceem_virtual_device_init(void);
314 VOID virtual_mail_box_interrupt(void);
315 INT beceem_virtual_device_exit(void);
316 #endif
317
318 #endif
319
320
321
322