Stephen Hemminger | f8942e0 | 2010-09-08 14:46:36 -0700 | [diff] [blame] | 1 | #ifndef BCM_MINIPORT_PHSMODULE_H |
| 2 | #define BCM_MINIPORT_PHSMODULE_H |
| 3 | |
Kevin McKinney | 2979460 | 2012-05-26 12:05:12 -0400 | [diff] [blame] | 4 | int PHSTransmit(struct bcm_mini_adapter *Adapter, |
Stephen Hemminger | f8942e0 | 2010-09-08 14:46:36 -0700 | [diff] [blame] | 5 | struct sk_buff **pPacket, |
| 6 | USHORT Vcid, |
| 7 | B_UINT16 uiClassifierRuleID, |
Lisa Nguyen | 3abd6f1 | 2013-10-28 01:35:59 -0700 | [diff] [blame] | 8 | bool bHeaderSuppressionEnabled, |
Stephen Hemminger | f8942e0 | 2010-09-08 14:46:36 -0700 | [diff] [blame] | 9 | PUINT PacketLen, |
| 10 | UCHAR bEthCSSupport); |
| 11 | |
Kevin McKinney | 2979460 | 2012-05-26 12:05:12 -0400 | [diff] [blame] | 12 | int PHSReceive(struct bcm_mini_adapter *Adapter, |
Stephen Hemminger | f8942e0 | 2010-09-08 14:46:36 -0700 | [diff] [blame] | 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 | |
Zahari Doychev | ad45776 | 2014-07-27 10:26:40 +0200 | [diff] [blame] | 23 | void DumpFullPacket(UCHAR *pBuf, UINT nPktLen); |
Stephen Hemminger | f8942e0 | 2010-09-08 14:46:36 -0700 | [diff] [blame] | 24 | |
Kevin McKinney | 60dadf9 | 2012-12-20 00:31:28 -0500 | [diff] [blame] | 25 | void DumpPhsRules(struct bcm_phs_extension *pDeviceExtension); |
Stephen Hemminger | f8942e0 | 2010-09-08 14:46:36 -0700 | [diff] [blame] | 26 | |
| 27 | |
Zahari Doychev | ad45776 | 2014-07-27 10:26:40 +0200 | [diff] [blame] | 28 | int phs_init(struct bcm_phs_extension *pPhsdeviceExtension, |
| 29 | struct bcm_mini_adapter *Adapter); |
Stephen Hemminger | f8942e0 | 2010-09-08 14:46:36 -0700 | [diff] [blame] | 30 | |
Kevin McKinney | 60dadf9 | 2012-12-20 00:31:28 -0500 | [diff] [blame] | 31 | int PhsCleanup(struct bcm_phs_extension *pPHSDeviceExt); |
Stephen Hemminger | f8942e0 | 2010-09-08 14:46:36 -0700 | [diff] [blame] | 32 | |
Zahari Doychev | ad45776 | 2014-07-27 10:26:40 +0200 | [diff] [blame] | 33 | /* Utility Functions */ |
| 34 | ULONG PhsUpdateClassifierRule(void *pvContext, |
| 35 | B_UINT16 uiVcid, |
| 36 | B_UINT16 uiClsId, |
| 37 | struct bcm_phs_rule *psPhsRule, |
| 38 | B_UINT8 u8AssociatedPHSI); |
Stephen Hemminger | f8942e0 | 2010-09-08 14:46:36 -0700 | [diff] [blame] | 39 | |
Zahari Doychev | ad45776 | 2014-07-27 10:26:40 +0200 | [diff] [blame] | 40 | ULONG PhsDeletePHSRule(void *pvContext, B_UINT16 uiVcid, B_UINT8 u8PHSI); |
Stephen Hemminger | f8942e0 | 2010-09-08 14:46:36 -0700 | [diff] [blame] | 41 | |
Zahari Doychev | ad45776 | 2014-07-27 10:26:40 +0200 | [diff] [blame] | 42 | ULONG PhsDeleteClassifierRule(void *pvContext, |
| 43 | B_UINT16 uiVcid, |
| 44 | B_UINT16 uiClsId); |
Stephen Hemminger | f8942e0 | 2010-09-08 14:46:36 -0700 | [diff] [blame] | 45 | |
Zahari Doychev | ad45776 | 2014-07-27 10:26:40 +0200 | [diff] [blame] | 46 | ULONG PhsDeleteSFRules(void *pvContext, B_UINT16 uiVcid); |
Stephen Hemminger | f8942e0 | 2010-09-08 14:46:36 -0700 | [diff] [blame] | 47 | |
| 48 | |
Lisa Nguyen | 3abd6f1 | 2013-10-28 01:35:59 -0700 | [diff] [blame] | 49 | bool ValidatePHSRule(struct bcm_phs_rule *psPhsRule); |
Stephen Hemminger | f8942e0 | 2010-09-08 14:46:36 -0700 | [diff] [blame] | 50 | |
Zahari Doychev | ad45776 | 2014-07-27 10:26:40 +0200 | [diff] [blame] | 51 | UINT GetServiceFlowEntry(struct bcm_phs_table *psServiceFlowTable, |
| 52 | B_UINT16 uiVcid, |
| 53 | struct bcm_phs_entry **ppstServiceFlowEntry); |
Stephen Hemminger | f8942e0 | 2010-09-08 14:46:36 -0700 | [diff] [blame] | 54 | |
Stephen Hemminger | f8942e0 | 2010-09-08 14:46:36 -0700 | [diff] [blame] | 55 | |
Kevin McKinney | 60dadf9 | 2012-12-20 00:31:28 -0500 | [diff] [blame] | 56 | void DumpPhsRules(struct bcm_phs_extension *pDeviceExtension); |
Stephen Hemminger | f8942e0 | 2010-09-08 14:46:36 -0700 | [diff] [blame] | 57 | |
| 58 | |
| 59 | #endif |