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