staging/bcm: add sparse annotations
[linux-2.6/linux-acpi-2.6/ibm-acpi-2.6.git] / drivers / staging / bcm / Prototypes.h
blob70ec8bcafd1e9ddf4b3bce842709f94f49145455
1 #ifndef _PROTOTYPES_H_
2 #define _PROTOTYPES_H_
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);
10 VOID StatisticsResponse(PMINI_ADAPTER Adapter,PVOID pvBuffer);
12 VOID IdleModeResponse(PMINI_ADAPTER Adapter,PUINT puiBuffer);
14 void bcm_kfree_skb(struct sk_buff *skb);
15 VOID bcm_kfree(VOID *ptr);
18 VOID handle_rx_control_packet(PMINI_ADAPTER Adapter, /**<Pointer to the Adapter structure*/
19 struct sk_buff *skb); /**<Pointer to the socket buffer*/
21 int control_packet_handler (PMINI_ADAPTER Adapter);
23 VOID DeleteAllClassifiersForSF(PMINI_ADAPTER Adapter,UINT uiSearchRuleIndex);
25 VOID flush_all_queues(PMINI_ADAPTER Adapter);
27 int register_control_device_interface(PMINI_ADAPTER ps_adapter);
29 void unregister_control_device_interface(PMINI_ADAPTER Adapter);
31 INT CopyBufferToControlPacket(PMINI_ADAPTER Adapter,/**<Logical Adapter*/
32 PVOID ioBuffer/**<Control Packet Buffer*/
35 VOID SortPackInfo(PMINI_ADAPTER Adapter);
37 VOID SortClassifiers(PMINI_ADAPTER Adapter);
39 VOID flush_all_queues(PMINI_ADAPTER Adapter);
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 );
45 VOID PruneQueue(PMINI_ADAPTER Adapter,/**<Pointer to the driver control structure*/
46 INT iIndex/**<Queue Index*/
49 VOID PruneQueueAllSF(PMINI_ADAPTER Adapter);
51 INT SearchSfid(PMINI_ADAPTER Adapter,UINT uiSfid);
53 USHORT GetPacketQueueIndex(PMINI_ADAPTER Adapter, /**<Pointer to the driver control structure */
54 struct sk_buff* Packet /**< Pointer to the Packet to be sent*/
57 VOID
58 reply_to_arp_request(struct sk_buff *skb /**<sk_buff of ARP request*/
61 INT SetupNextSend(PMINI_ADAPTER Adapter, /**<Logical Adapter*/
62 struct sk_buff *Packet, /**<data buffer*/
63 USHORT Vcid) ;
65 VOID LinkMessage(PMINI_ADAPTER Adapter);
67 VOID transmit_packets(PMINI_ADAPTER Adapter);
69 INT SendControlPacket(PMINI_ADAPTER Adapter, /**<Logical Adapter*/
70 char *pControlPacket/**<Control Packet*/
73 INT bcm_transmit(struct sk_buff *skb, /**< skb */
74 struct net_device *dev /**< net device pointer */
77 int register_networkdev(PMINI_ADAPTER Adapter);
79 INT AllocAdapterDsxBuffer(PMINI_ADAPTER Adapter);
81 VOID AdapterFree(PMINI_ADAPTER Adapter);
83 INT FreeAdapterDsxBuffer(PMINI_ADAPTER Adapter);
85 int create_worker_threads(PMINI_ADAPTER psAdapter);
87 int tx_pkt_handler(PMINI_ADAPTER Adapter);
89 int reset_card_proc(PMINI_ADAPTER Adapter );
91 int run_card_proc(PMINI_ADAPTER Adapter );
93 int InitCardAndDownloadFirmware(PMINI_ADAPTER ps_adapter);
95 int bcm_parse_target_params(PMINI_ADAPTER Adapter);
97 INT ReadMacAddressFromNVM(PMINI_ADAPTER Adapter);
99 int register_control_device_interface(PMINI_ADAPTER ps_adapter);
101 void DumpPackInfo(PMINI_ADAPTER Adapter);
103 int rdm(PMINI_ADAPTER Adapter, UINT uiAddress, PCHAR pucBuff, size_t size);
105 int wrm(PMINI_ADAPTER Adapter, UINT uiAddress, PCHAR pucBuff, size_t size);
107 int wrmalt (PMINI_ADAPTER Adapter, UINT uiAddress, PUINT pucBuff, size_t sSize);
109 int rdmalt (PMINI_ADAPTER Adapter, UINT uiAddress, PUINT pucBuff, size_t sSize);
111 int get_dsx_sf_data_to_application(PMINI_ADAPTER Adapter, UINT uiSFId, void __user * user_buffer);
113 void SendLinkDown(PMINI_ADAPTER Adapter);
115 void SendIdleModeResponse(PMINI_ADAPTER Adapter);
117 void HandleShutDownModeRequest(PMINI_ADAPTER Adapter,PUCHAR pucBuffer);
119 int ProcessGetHostMibs(PMINI_ADAPTER Adapter, PVOID ioBuffer,
120 ULONG inputBufferLength);
122 int GetDroppedAppCntrlPktMibs(PVOID ioBuffer, PPER_TARANG_DATA pTarang);
123 void beceem_parse_target_struct(PMINI_ADAPTER Adapter);
125 void doPowerAutoCorrection(PMINI_ADAPTER psAdapter);
127 int bcm_ioctl_fw_download(PMINI_ADAPTER Adapter, FIRMWARE_INFO *psFwInfo);
129 void bcm_unregister_networkdev(PMINI_ADAPTER Adapter);
131 int SearchVcid(PMINI_ADAPTER Adapter,unsigned short usVcid);
133 void CopyMIBSExtendedSFParameters(PMINI_ADAPTER Adapter,
134 CServiceFlowParamSI *psfLocalSet, UINT uiSearchRuleIndex);
136 VOID ResetCounters(PMINI_ADAPTER Adapter);
138 int InitLedSettings(PMINI_ADAPTER Adapter);
140 S_CLASSIFIER_RULE *GetFragIPClsEntry(PMINI_ADAPTER Adapter,USHORT usIpIdentification,ULONG SrcIP);
142 void AddFragIPClsEntry(PMINI_ADAPTER Adapter,PS_FRAGMENTED_PACKET_INFO psFragPktInfo);
144 void DelFragIPClsEntry(PMINI_ADAPTER Adapter,USHORT usIpIdentification,ULONG SrcIp);
146 void update_per_cid_rx (PMINI_ADAPTER Adapter);
148 void update_per_sf_desc_cnts( PMINI_ADAPTER Adapter);
150 void ClearTargetDSXBuffer(PMINI_ADAPTER Adapter,B_UINT16 TID,BOOLEAN bFreeAll);
152 void beceem_protocol_reset (PMINI_ADAPTER Adapter);
154 void flush_queue(PMINI_ADAPTER Adapter, UINT iQIndex);
157 INT flushAllAppQ(VOID);
160 INT BeceemEEPROMBulkRead(
161 PMINI_ADAPTER Adapter,
162 PUINT pBuffer,
163 UINT uiOffset,
164 UINT uiNumBytes);
167 INT BeceemFlashBulkRead(
168 PMINI_ADAPTER Adapter,
169 PUINT pBuffer,
170 UINT uiOffset,
171 UINT uiNumBytes);
173 UINT BcmGetEEPROMSize(PMINI_ADAPTER Adapter);
175 INT WriteBeceemEEPROM(PMINI_ADAPTER Adapter,UINT uiEEPROMOffset, UINT uiData);
177 UINT BcmGetFlashSize(PMINI_ADAPTER Adapter);
179 UINT BcmGetFlashSectorSize(PMINI_ADAPTER Adapter, UINT FlashSectorSizeSig, UINT FlashSectorSize);
181 INT BeceemFlashBulkWrite(
182 PMINI_ADAPTER Adapter,
183 PUINT pBuffer,
184 UINT uiOffset,
185 UINT uiNumBytes,
186 BOOLEAN bVerify);
188 INT PropagateCalParamsFromFlashToMemory(PMINI_ADAPTER Adapter);
190 INT PropagateCalParamsFromEEPROMToMemory(PMINI_ADAPTER Adapter);
193 INT BeceemEEPROMBulkWrite(
194 PMINI_ADAPTER Adapter,
195 PUCHAR pBuffer,
196 UINT uiOffset,
197 UINT uiNumBytes,
198 BOOLEAN bVerify);
201 INT ReadBeceemEEPROMBulk(PMINI_ADAPTER Adapter,UINT dwAddress, UINT *pdwData, UINT dwNumData);
203 INT ReadBeceemEEPROM(PMINI_ADAPTER Adapter,UINT dwAddress, UINT *pdwData);
205 NVM_TYPE BcmGetNvmType(PMINI_ADAPTER Adapter);
207 INT BeceemNVMRead(
208 PMINI_ADAPTER Adapter,
209 PUINT pBuffer,
210 UINT uiOffset,
211 UINT uiNumBytes);
213 INT BeceemNVMWrite(
214 PMINI_ADAPTER Adapter,
215 PUINT pBuffer,
216 UINT uiOffset,
217 UINT uiNumBytes,
218 BOOLEAN bVerify);
220 INT BcmUpdateSectorSize(PMINI_ADAPTER Adapter,UINT uiSectorSize);
222 INT BcmInitNVM(PMINI_ADAPTER Adapter);
224 INT BcmGetNvmSize(PMINI_ADAPTER Adapter);
226 INT IsSectionExistInVendorInfo(PMINI_ADAPTER Adapter, FLASH2X_SECTION_VAL section);
228 VOID BcmValidateNvmType(PMINI_ADAPTER Adapter);
230 VOID ConfigureEndPointTypesThroughEEPROM(PMINI_ADAPTER Adapter);
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);
240 INT BcmFlash2xBulkWrite(
241 PMINI_ADAPTER Adapter,
242 PUINT pBuffer,
243 FLASH2X_SECTION_VAL eFlashSectionVal,
244 UINT uiOffset,
245 UINT uiNumBytes,
246 UINT bVerify);
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);
256 INT BcmGetSectionValStartOffset(PMINI_ADAPTER Adapter, FLASH2X_SECTION_VAL eFlashSectionVal);
258 INT BcmSetActiveSection(PMINI_ADAPTER Adapter, FLASH2X_SECTION_VAL eFlash2xSectVal);
259 INT BcmAllocFlashCSStructure(PMINI_ADAPTER psAdapter);
260 INT BcmDeAllocFlashCSStructure(PMINI_ADAPTER psAdapter);
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);
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
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);
298 VOID OverrideServiceFlowParams(PMINI_ADAPTER Adapter,PUINT puiBuffer);
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);
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);
309 VOID putUsbSuspend(struct work_struct *work);
310 BOOLEAN IsReqGpioIsLedInNVM(PMINI_ADAPTER Adapter, UINT gpios);
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
318 #endif