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 bool MatchDestPort(struct bcm_classifier_rule *pstClassifierRule,USHORT ushSrcPort); 38 bool MatchProtocol(struct bcm_classifier_rule *pstClassifierRule,UCHAR ucProtocol); 39 40 41 INT SetupNextSend(struct bcm_mini_adapter *Adapter, /**<Logical Adapter*/ 42 struct sk_buff *Packet, /**<data buffer*/ 43 USHORT Vcid) ; 44 45 VOID LinkMessage(struct bcm_mini_adapter *Adapter); 46 47 VOID transmit_packets(struct bcm_mini_adapter *Adapter); 48 49 INT SendControlPacket(struct bcm_mini_adapter *Adapter, /**<Logical Adapter*/ 50 char *pControlPacket/**<Control Packet*/ 51 ); 52 53 54 int register_networkdev(struct bcm_mini_adapter *Adapter); 55 void unregister_networkdev(struct bcm_mini_adapter *Adapter); 56 57 INT AllocAdapterDsxBuffer(struct bcm_mini_adapter *Adapter); 58 59 VOID AdapterFree(struct bcm_mini_adapter *Adapter); 60 61 INT FreeAdapterDsxBuffer(struct bcm_mini_adapter *Adapter); 62 63 int tx_pkt_handler(struct bcm_mini_adapter *Adapter); 64 65 int reset_card_proc(struct bcm_mini_adapter *Adapter ); 66 67 int run_card_proc(struct bcm_mini_adapter *Adapter ); 68 69 int InitCardAndDownloadFirmware(struct bcm_mini_adapter *ps_adapter); 70 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 91 int ProcessGetHostMibs(struct bcm_mini_adapter *Adapter, struct bcm_host_stats_mibs *buf); 92 void GetDroppedAppCntrlPktMibs(struct bcm_host_stats_mibs *ioBuffer, struct bcm_tarang_data *pTarang); 93 void beceem_parse_target_struct(struct bcm_mini_adapter *Adapter); 94 95 int bcm_ioctl_fw_download(struct bcm_mini_adapter *Adapter, struct bcm_firmware_info *psFwInfo); 96 97 void CopyMIBSExtendedSFParameters(struct bcm_mini_adapter *Adapter, 98 struct bcm_connect_mgr_params *psfLocalSet, UINT uiSearchRuleIndex); 99 100 VOID ResetCounters(struct bcm_mini_adapter *Adapter); 101 102 int InitLedSettings(struct bcm_mini_adapter *Adapter); 103 104 struct bcm_classifier_rule *GetFragIPClsEntry(struct bcm_mini_adapter *Adapter,USHORT usIpIdentification,ULONG SrcIP); 105 106 void AddFragIPClsEntry(struct bcm_mini_adapter *Adapter, struct bcm_fragmented_packet_info *psFragPktInfo); 107 108 void DelFragIPClsEntry(struct bcm_mini_adapter *Adapter,USHORT usIpIdentification,ULONG SrcIp); 109 110 void update_per_cid_rx (struct bcm_mini_adapter *Adapter); 111 112 void update_per_sf_desc_cnts( struct bcm_mini_adapter *Adapter); 113 114 void ClearTargetDSXBuffer(struct bcm_mini_adapter *Adapter,B_UINT16 TID,BOOLEAN bFreeAll); 115 116 117 void flush_queue(struct bcm_mini_adapter *Adapter, UINT iQIndex); 118 119 120 INT flushAllAppQ(VOID); 121 122 123 INT BeceemEEPROMBulkRead( 124 struct bcm_mini_adapter *Adapter, 125 PUINT pBuffer, 126 UINT uiOffset, 127 UINT uiNumBytes); 128 129 130 131 INT WriteBeceemEEPROM(struct bcm_mini_adapter *Adapter,UINT uiEEPROMOffset, UINT uiData); 132 133 INT PropagateCalParamsFromFlashToMemory(struct bcm_mini_adapter *Adapter); 134 135 136 INT BeceemEEPROMBulkWrite( 137 struct bcm_mini_adapter *Adapter, 138 PUCHAR pBuffer, 139 UINT uiOffset, 140 UINT uiNumBytes, 141 BOOLEAN bVerify); 142 143 144 INT ReadBeceemEEPROM(struct bcm_mini_adapter *Adapter,UINT dwAddress, UINT *pdwData); 145 146 147 INT BeceemNVMRead( 148 struct bcm_mini_adapter *Adapter, 149 PUINT pBuffer, 150 UINT uiOffset, 151 UINT uiNumBytes); 152 153 INT BeceemNVMWrite( 154 struct bcm_mini_adapter *Adapter, 155 PUINT pBuffer, 156 UINT uiOffset, 157 UINT uiNumBytes, 158 BOOLEAN bVerify); 159 160 161 INT BcmInitNVM(struct bcm_mini_adapter *Adapter); 162 163 INT BcmUpdateSectorSize(struct bcm_mini_adapter *Adapter,UINT uiSectorSize); 164 BOOLEAN IsSectionExistInFlash(struct bcm_mini_adapter *Adapter, enum bcm_flash2x_section_val section); 165 166 INT BcmGetFlash2xSectionalBitMap(struct bcm_mini_adapter *Adapter, struct bcm_flash2x_bitmap *psFlash2xBitMap); 167 168 INT BcmFlash2xBulkWrite( 169 struct bcm_mini_adapter *Adapter, 170 PUINT pBuffer, 171 enum bcm_flash2x_section_val eFlashSectionVal, 172 UINT uiOffset, 173 UINT uiNumBytes, 174 UINT bVerify); 175 176 INT BcmFlash2xBulkRead( 177 struct bcm_mini_adapter *Adapter, 178 PUINT pBuffer, 179 enum bcm_flash2x_section_val eFlashSectionVal, 180 UINT uiOffsetWithinSectionVal, 181 UINT uiNumBytes); 182 183 INT BcmGetSectionValStartOffset(struct bcm_mini_adapter *Adapter, enum bcm_flash2x_section_val eFlashSectionVal); 184 185 INT BcmSetActiveSection(struct bcm_mini_adapter *Adapter, enum bcm_flash2x_section_val eFlash2xSectVal); 186 INT BcmAllocFlashCSStructure(struct bcm_mini_adapter *psAdapter); 187 INT BcmDeAllocFlashCSStructure(struct bcm_mini_adapter *psAdapter); 188 189 INT BcmCopyISO(struct bcm_mini_adapter *Adapter, struct bcm_flash2x_copy_section sCopySectStrut); 190 INT BcmFlash2xCorruptSig(struct bcm_mini_adapter *Adapter, enum bcm_flash2x_section_val eFlash2xSectionVal); 191 INT BcmFlash2xWriteSig(struct bcm_mini_adapter *Adapter, enum bcm_flash2x_section_val eFlashSectionVal); 192 INT validateFlash2xReadWrite(struct bcm_mini_adapter *Adapter, struct bcm_flash2x_readwrite *psFlash2xReadWrite); 193 INT IsFlash2x(struct bcm_mini_adapter *Adapter); 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 201 BOOLEAN IsNonCDLessDevice(struct bcm_mini_adapter *Adapter); 202 203 204 VOID OverrideServiceFlowParams(struct bcm_mini_adapter *Adapter,PUINT puiBuffer); 205 206 int wrmaltWithLock (struct bcm_mini_adapter *Adapter, UINT uiAddress, unsigned int *pucBuff, size_t sSize); 207 int rdmaltWithLock (struct bcm_mini_adapter *Adapter, UINT uiAddress, unsigned int *pucBuff, size_t sSize); 208 209 int wrmWithLock(struct bcm_mini_adapter *Adapter, UINT uiAddress, PCHAR pucBuff, size_t size); 210 INT buffDnldVerify(struct bcm_mini_adapter *Adapter, unsigned char *mappedbuffer, unsigned int u32FirmwareLength, 211 unsigned long u32StartingAddress); 212 213 214 VOID putUsbSuspend(struct work_struct *work); 215 BOOLEAN IsReqGpioIsLedInNVM(struct bcm_mini_adapter *Adapter, UINT gpios); 216 217 218 #endif 219 220 221 222 223