1 #ifndef BCM_MINIPORT_PHSMODULE_H
2 #define BCM_MINIPORT_PHSMODULE_H
3 
4 int PHSTransmit(PMINI_ADAPTER Adapter,
5 					struct sk_buff **pPacket,
6 					 USHORT Vcid,
7 					 B_UINT16 uiClassifierRuleID,
8 					 BOOLEAN bHeaderSuppressionEnabled,
9 					 PUINT PacketLen,
10 					 UCHAR bEthCSSupport);
11 
12 int PHSReceive(PMINI_ADAPTER Adapter,
13 					USHORT usVcid,
14 					struct sk_buff *packet,
15 					UINT *punPacketLen,
16 					UCHAR *pucEthernetHdr,
17 					UINT
18 					);
19 
20 
21 void DumpDataPacketHeader(PUCHAR pPkt);
22 
23 void DumpFullPacket(UCHAR *pBuf,UINT nPktLen);
24 
25 void DumpPhsRules(PPHS_DEVICE_EXTENSION pDeviceExtension);
26 
27 
28 int phs_init(PPHS_DEVICE_EXTENSION pPhsdeviceExtension,PMINI_ADAPTER Adapter);
29 
30 int PhsCleanup(PPHS_DEVICE_EXTENSION pPHSDeviceExt);
31 
32 //Utility Functions
33 ULONG PhsUpdateClassifierRule(void* pvContext,B_UINT16 uiVcid,B_UINT16 uiClsId,S_PHS_RULE *psPhsRule,B_UINT8  u8AssociatedPHSI );
34 
35 ULONG PhsDeletePHSRule(void* pvContext,B_UINT16 uiVcid,B_UINT8 u8PHSI);
36 
37 ULONG PhsDeleteClassifierRule(void* pvContext, B_UINT16 uiVcid ,B_UINT16  uiClsId);
38 
39 ULONG PhsDeleteSFRules(void* pvContext,B_UINT16 uiVcid) ;
40 
41 
42 BOOLEAN ValidatePHSRule(S_PHS_RULE *psPhsRule);
43 
44 UINT GetServiceFlowEntry(S_SERVICEFLOW_TABLE *psServiceFlowTable,B_UINT16 uiVcid,S_SERVICEFLOW_ENTRY **ppstServiceFlowEntry);
45 
46 
47 void DumpPhsRules(PPHS_DEVICE_EXTENSION pDeviceExtension);
48 
49 
50 #endif
51