2 * Copyright (C) 2013 Realtek Semiconductor Corp.
5 * Unless you and Realtek execute a separate written software license
6 * agreement governing use of this software, this software is licensed
7 * to you under the terms of the GNU General Public License version 2,
8 * available at https://www.gnu.org/licenses/old-licenses/gpl-2.0.txt
11 * $Date: 2017-03-08 15:13:58 +0800 (週三, 08 三月 2017) $
13 * Purpose : RTK switch high-level API for RTL8367/RTL8367C
14 * Feature : Here is a list of all functions and variables in Storm module.
18 #include <rtk_switch.h>
19 #include <rtk_error.h>
23 #include <rtl8367c_asicdrv.h>
24 #include <rtl8367c_asicdrv_storm.h>
25 #include <rtl8367c_asicdrv_meter.h>
26 #include <rtl8367c_asicdrv_rma.h>
27 #include <rtl8367c_asicdrv_igmp.h>
30 * rtk_rate_stormControlMeterIdx_set
32 * Set the storm control meter index.
35 * storm_type - storm group type
36 * index - storm control meter index.
42 * RT_ERR_PORT_ID - Invalid port id
43 * RT_ERR_FILTER_METER_ID - Invalid meter
47 rtk_api_ret_t
rtk_rate_stormControlMeterIdx_set(rtk_port_t port
, rtk_rate_storm_group_t stormType
, rtk_uint32 index
)
51 /* Check initialization state */
54 /* Check Port Valid */
55 RTK_CHK_PORT_VALID(port
);
57 if (stormType
>= STORM_GROUP_END
)
58 return RT_ERR_SFC_UNKNOWN_GROUP
;
60 if (index
> RTK_MAX_METER_ID
)
61 return RT_ERR_FILTER_METER_ID
;
65 case STORM_GROUP_UNKNOWN_UNICAST
:
66 if ((retVal
= rtl8367c_setAsicStormFilterUnknownUnicastMeter(rtk_switch_port_L2P_get(port
), index
))!=RT_ERR_OK
)
69 case STORM_GROUP_UNKNOWN_MULTICAST
:
70 if ((retVal
= rtl8367c_setAsicStormFilterUnknownMulticastMeter(rtk_switch_port_L2P_get(port
), index
))!=RT_ERR_OK
)
73 case STORM_GROUP_MULTICAST
:
74 if ((retVal
= rtl8367c_setAsicStormFilterMulticastMeter(rtk_switch_port_L2P_get(port
), index
))!=RT_ERR_OK
)
77 case STORM_GROUP_BROADCAST
:
78 if ((retVal
= rtl8367c_setAsicStormFilterBroadcastMeter(rtk_switch_port_L2P_get(port
), index
))!=RT_ERR_OK
)
89 * rtk_rate_stormControlMeterIdx_get
91 * Get the storm control meter index.
94 * storm_type - storm group type
96 * pIndex - storm control meter index.
100 * RT_ERR_PORT_ID - Invalid port id
101 * RT_ERR_FILTER_METER_ID - Invalid meter
105 rtk_api_ret_t
rtk_rate_stormControlMeterIdx_get(rtk_port_t port
, rtk_rate_storm_group_t stormType
, rtk_uint32
*pIndex
)
107 rtk_api_ret_t retVal
;
109 /* Check initialization state */
110 RTK_CHK_INIT_STATE();
112 /* Check Port Valid */
113 RTK_CHK_PORT_VALID(port
);
115 if (stormType
>= STORM_GROUP_END
)
116 return RT_ERR_SFC_UNKNOWN_GROUP
;
119 return RT_ERR_NULL_POINTER
;
123 case STORM_GROUP_UNKNOWN_UNICAST
:
124 if ((retVal
= rtl8367c_getAsicStormFilterUnknownUnicastMeter(rtk_switch_port_L2P_get(port
), pIndex
))!=RT_ERR_OK
)
127 case STORM_GROUP_UNKNOWN_MULTICAST
:
128 if ((retVal
= rtl8367c_getAsicStormFilterUnknownMulticastMeter(rtk_switch_port_L2P_get(port
), pIndex
))!=RT_ERR_OK
)
131 case STORM_GROUP_MULTICAST
:
132 if ((retVal
= rtl8367c_getAsicStormFilterMulticastMeter(rtk_switch_port_L2P_get(port
), pIndex
))!=RT_ERR_OK
)
135 case STORM_GROUP_BROADCAST
:
136 if ((retVal
= rtl8367c_getAsicStormFilterBroadcastMeter(rtk_switch_port_L2P_get(port
), pIndex
))!=RT_ERR_OK
)
147 * rtk_rate_stormControlPortEnable_set
149 * Set enable status of storm control on specified port.
152 * stormType - storm group type
153 * enable - enable status of storm control
159 * RT_ERR_NOT_INIT - The module is not initial
160 * RT_ERR_PORT_ID - invalid port id
161 * RT_ERR_INPUT - invalid input parameter
165 rtk_api_ret_t
rtk_rate_stormControlPortEnable_set(rtk_port_t port
, rtk_rate_storm_group_t stormType
, rtk_enable_t enable
)
167 rtk_api_ret_t retVal
;
169 /* Check initialization state */
170 RTK_CHK_INIT_STATE();
172 /* Check Port Valid */
173 RTK_CHK_PORT_VALID(port
);
175 if (stormType
>= STORM_GROUP_END
)
176 return RT_ERR_SFC_UNKNOWN_GROUP
;
178 if (enable
>= RTK_ENABLE_END
)
179 return RT_ERR_ENABLE
;
183 case STORM_GROUP_UNKNOWN_UNICAST
:
184 if ((retVal
= rtl8367c_setAsicStormFilterUnknownUnicastEnable(rtk_switch_port_L2P_get(port
), enable
)) != RT_ERR_OK
)
187 case STORM_GROUP_UNKNOWN_MULTICAST
:
188 if ((retVal
= rtl8367c_setAsicStormFilterUnknownMulticastEnable(rtk_switch_port_L2P_get(port
), enable
)) != RT_ERR_OK
)
191 case STORM_GROUP_MULTICAST
:
192 if ((retVal
= rtl8367c_setAsicStormFilterMulticastEnable(rtk_switch_port_L2P_get(port
), enable
)) != RT_ERR_OK
)
195 case STORM_GROUP_BROADCAST
:
196 if ((retVal
= rtl8367c_setAsicStormFilterBroadcastEnable(rtk_switch_port_L2P_get(port
), enable
)) != RT_ERR_OK
)
207 * rtk_rate_stormControlPortEnable_set
209 * Set enable status of storm control on specified port.
212 * stormType - storm group type
214 * pEnable - enable status of storm control
218 * RT_ERR_NOT_INIT - The module is not initial
219 * RT_ERR_PORT_ID - invalid port id
220 * RT_ERR_INPUT - invalid input parameter
224 rtk_api_ret_t
rtk_rate_stormControlPortEnable_get(rtk_port_t port
, rtk_rate_storm_group_t stormType
, rtk_enable_t
*pEnable
)
226 rtk_api_ret_t retVal
;
228 /* Check initialization state */
229 RTK_CHK_INIT_STATE();
231 /* Check Port Valid */
232 RTK_CHK_PORT_VALID(port
);
234 if (stormType
>= STORM_GROUP_END
)
235 return RT_ERR_SFC_UNKNOWN_GROUP
;
238 return RT_ERR_ENABLE
;
242 case STORM_GROUP_UNKNOWN_UNICAST
:
243 if ((retVal
= rtl8367c_getAsicStormFilterUnknownUnicastEnable(rtk_switch_port_L2P_get(port
), pEnable
)) != RT_ERR_OK
)
246 case STORM_GROUP_UNKNOWN_MULTICAST
:
247 if ((retVal
= rtl8367c_getAsicStormFilterUnknownMulticastEnable(rtk_switch_port_L2P_get(port
), pEnable
)) != RT_ERR_OK
)
250 case STORM_GROUP_MULTICAST
:
251 if ((retVal
= rtl8367c_getAsicStormFilterMulticastEnable(rtk_switch_port_L2P_get(port
), pEnable
)) != RT_ERR_OK
)
254 case STORM_GROUP_BROADCAST
:
255 if ((retVal
= rtl8367c_getAsicStormFilterBroadcastEnable(rtk_switch_port_L2P_get(port
), pEnable
)) != RT_ERR_OK
)
266 * rtk_storm_bypass_set
268 * Set bypass storm filter control configuration.
270 * type - Bypass storm filter control type.
271 * enable - Bypass status.
276 * RT_ERR_FAILED - Failed
277 * RT_ERR_SMI - SMI access error
278 * RT_ERR_INPUT - Invalid input parameters.
279 * RT_ERR_ENABLE - Invalid IFG parameter
282 * This API can set per-port bypass stomr filter control frame type including RMA and igmp.
283 * The bypass frame type is as following:
284 * - BYPASS_BRG_GROUP,
288 * - BYPASS_UNDEF_BRG_04,
289 * - BYPASS_UNDEF_BRG_05,
290 * - BYPASS_UNDEF_BRG_06,
291 * - BYPASS_UNDEF_BRG_07,
292 * - BYPASS_PROVIDER_BRIDGE_GROUP_ADDRESS,
293 * - BYPASS_UNDEF_BRG_09,
294 * - BYPASS_UNDEF_BRG_0A,
295 * - BYPASS_UNDEF_BRG_0B,
296 * - BYPASS_UNDEF_BRG_0C,
297 * - BYPASS_PROVIDER_BRIDGE_GVRP_ADDRESS,
299 * - BYPASS_UNDEF_BRG_0F,
300 * - BYPASS_BRG_MNGEMENT,
301 * - BYPASS_UNDEFINED_11,
302 * - BYPASS_UNDEFINED_12,
303 * - BYPASS_UNDEFINED_13,
304 * - BYPASS_UNDEFINED_14,
305 * - BYPASS_UNDEFINED_15,
306 * - BYPASS_UNDEFINED_16,
307 * - BYPASS_UNDEFINED_17,
308 * - BYPASS_UNDEFINED_18,
309 * - BYPASS_UNDEFINED_19,
310 * - BYPASS_UNDEFINED_1A,
311 * - BYPASS_UNDEFINED_1B,
312 * - BYPASS_UNDEFINED_1C,
313 * - BYPASS_UNDEFINED_1D,
314 * - BYPASS_UNDEFINED_1E,
315 * - BYPASS_UNDEFINED_1F,
318 * - BYPASS_UNDEF_GARP_22,
319 * - BYPASS_UNDEF_GARP_23,
320 * - BYPASS_UNDEF_GARP_24,
321 * - BYPASS_UNDEF_GARP_25,
322 * - BYPASS_UNDEF_GARP_26,
323 * - BYPASS_UNDEF_GARP_27,
324 * - BYPASS_UNDEF_GARP_28,
325 * - BYPASS_UNDEF_GARP_29,
326 * - BYPASS_UNDEF_GARP_2A,
327 * - BYPASS_UNDEF_GARP_2B,
328 * - BYPASS_UNDEF_GARP_2C,
329 * - BYPASS_UNDEF_GARP_2D,
330 * - BYPASS_UNDEF_GARP_2E,
331 * - BYPASS_UNDEF_GARP_2F,
337 rtk_api_ret_t
rtk_storm_bypass_set(rtk_storm_bypass_t type
, rtk_enable_t enable
)
339 rtk_api_ret_t retVal
;
340 rtl8367c_rma_t rmacfg
;
343 /* Check initialization state */
344 RTK_CHK_INIT_STATE();
346 if (type
>= BYPASS_END
)
349 if (enable
>= RTK_ENABLE_END
)
352 if (type
>= 0 && type
<= BYPASS_UNDEF_GARP_2F
)
354 if ((retVal
= rtl8367c_getAsicRma(type
, &rmacfg
)) != RT_ERR_OK
)
357 rmacfg
.discard_storm_filter
= enable
;
359 if ((retVal
= rtl8367c_setAsicRma(type
, &rmacfg
)) != RT_ERR_OK
)
362 else if(type
== BYPASS_IGMP
)
364 if ((retVal
= rtl8367c_setAsicIGMPBypassStormCTRL(enable
)) != RT_ERR_OK
)
367 else if (type
== BYPASS_CDP
)
369 if ((retVal
= rtl8367c_getAsicRmaCdp(&rmacfg
)) != RT_ERR_OK
)
372 rmacfg
.discard_storm_filter
= enable
;
374 if ((retVal
= rtl8367c_setAsicRmaCdp(&rmacfg
)) != RT_ERR_OK
)
377 else if (type
== BYPASS_CSSTP
)
379 if ((retVal
= rtl8367c_getAsicRmaCsstp(&rmacfg
)) != RT_ERR_OK
)
382 rmacfg
.discard_storm_filter
= enable
;
384 if ((retVal
= rtl8367c_setAsicRmaCsstp(&rmacfg
)) != RT_ERR_OK
)
387 else if (type
== BYPASS_LLDP
)
389 if ((retVal
= rtl8367c_getAsicRmaLldp(&tmp
, &rmacfg
)) != RT_ERR_OK
)
392 rmacfg
.discard_storm_filter
= enable
;
394 if ((retVal
= rtl8367c_setAsicRmaLldp(tmp
, &rmacfg
)) != RT_ERR_OK
)
404 * rtk_storm_bypass_get
406 * Get bypass storm filter control configuration.
408 * type - Bypass storm filter control type.
410 * pEnable - Bypass status.
413 * RT_ERR_FAILED - Failed
414 * RT_ERR_SMI - SMI access error
415 * RT_ERR_INPUT - Invalid input parameters.
417 * This API can get per-port bypass stomr filter control frame type including RMA and igmp.
418 * The bypass frame type is as following:
419 * - BYPASS_BRG_GROUP,
423 * - BYPASS_UNDEF_BRG_04,
424 * - BYPASS_UNDEF_BRG_05,
425 * - BYPASS_UNDEF_BRG_06,
426 * - BYPASS_UNDEF_BRG_07,
427 * - BYPASS_PROVIDER_BRIDGE_GROUP_ADDRESS,
428 * - BYPASS_UNDEF_BRG_09,
429 * - BYPASS_UNDEF_BRG_0A,
430 * - BYPASS_UNDEF_BRG_0B,
431 * - BYPASS_UNDEF_BRG_0C,
432 * - BYPASS_PROVIDER_BRIDGE_GVRP_ADDRESS,
434 * - BYPASS_UNDEF_BRG_0F,
435 * - BYPASS_BRG_MNGEMENT,
436 * - BYPASS_UNDEFINED_11,
437 * - BYPASS_UNDEFINED_12,
438 * - BYPASS_UNDEFINED_13,
439 * - BYPASS_UNDEFINED_14,
440 * - BYPASS_UNDEFINED_15,
441 * - BYPASS_UNDEFINED_16,
442 * - BYPASS_UNDEFINED_17,
443 * - BYPASS_UNDEFINED_18,
444 * - BYPASS_UNDEFINED_19,
445 * - BYPASS_UNDEFINED_1A,
446 * - BYPASS_UNDEFINED_1B,
447 * - BYPASS_UNDEFINED_1C,
448 * - BYPASS_UNDEFINED_1D,
449 * - BYPASS_UNDEFINED_1E,
450 * - BYPASS_UNDEFINED_1F,
453 * - BYPASS_UNDEF_GARP_22,
454 * - BYPASS_UNDEF_GARP_23,
455 * - BYPASS_UNDEF_GARP_24,
456 * - BYPASS_UNDEF_GARP_25,
457 * - BYPASS_UNDEF_GARP_26,
458 * - BYPASS_UNDEF_GARP_27,
459 * - BYPASS_UNDEF_GARP_28,
460 * - BYPASS_UNDEF_GARP_29,
461 * - BYPASS_UNDEF_GARP_2A,
462 * - BYPASS_UNDEF_GARP_2B,
463 * - BYPASS_UNDEF_GARP_2C,
464 * - BYPASS_UNDEF_GARP_2D,
465 * - BYPASS_UNDEF_GARP_2E,
466 * - BYPASS_UNDEF_GARP_2F,
472 rtk_api_ret_t
rtk_storm_bypass_get(rtk_storm_bypass_t type
, rtk_enable_t
*pEnable
)
474 rtk_api_ret_t retVal
;
475 rtl8367c_rma_t rmacfg
;
478 /* Check initialization state */
479 RTK_CHK_INIT_STATE();
481 if (type
>= BYPASS_END
)
485 return RT_ERR_NULL_POINTER
;
487 if (type
>= 0 && type
<= BYPASS_UNDEF_GARP_2F
)
489 if ((retVal
= rtl8367c_getAsicRma(type
, &rmacfg
)) != RT_ERR_OK
)
492 *pEnable
= rmacfg
.discard_storm_filter
;
494 else if(type
== BYPASS_IGMP
)
496 if ((retVal
= rtl8367c_getAsicIGMPBypassStormCTRL(pEnable
)) != RT_ERR_OK
)
499 else if (type
== BYPASS_CDP
)
501 if ((retVal
= rtl8367c_getAsicRmaCdp(&rmacfg
)) != RT_ERR_OK
)
504 *pEnable
= rmacfg
.discard_storm_filter
;
506 else if (type
== BYPASS_CSSTP
)
508 if ((retVal
= rtl8367c_getAsicRmaCsstp(&rmacfg
)) != RT_ERR_OK
)
511 *pEnable
= rmacfg
.discard_storm_filter
;
513 else if (type
== BYPASS_LLDP
)
515 if ((retVal
= rtl8367c_getAsicRmaLldp(&tmp
,&rmacfg
)) != RT_ERR_OK
)
518 *pEnable
= rmacfg
.discard_storm_filter
;
527 * rtk_rate_stormControlExtPortmask_set
529 * Set externsion storm control port mask
531 * pPortmask - port mask
537 * RT_ERR_NOT_INIT - The module is not initial
538 * RT_ERR_INPUT - invalid input parameter
542 rtk_api_ret_t
rtk_rate_stormControlExtPortmask_set(rtk_portmask_t
*pPortmask
)
544 rtk_api_ret_t retVal
;
547 /* Check initialization state */
548 RTK_CHK_INIT_STATE();
550 if(NULL
== pPortmask
)
551 return RT_ERR_NULL_POINTER
;
553 if ((retVal
= rtk_switch_portmask_L2P_get(pPortmask
, &pmask
)) != RT_ERR_OK
)
556 if ((retVal
= rtl8367c_setAsicStormFilterExtEnablePortMask(pmask
)) != RT_ERR_OK
)
563 * rtk_rate_stormControlExtPortmask_get
565 * Set externsion storm control port mask
569 * pPortmask - port mask
573 * RT_ERR_NOT_INIT - The module is not initial
574 * RT_ERR_INPUT - invalid input parameter
578 rtk_api_ret_t
rtk_rate_stormControlExtPortmask_get(rtk_portmask_t
*pPortmask
)
580 rtk_api_ret_t retVal
;
583 /* Check initialization state */
584 RTK_CHK_INIT_STATE();
586 if(NULL
== pPortmask
)
587 return RT_ERR_NULL_POINTER
;
589 if ((retVal
= rtl8367c_getAsicStormFilterExtEnablePortMask(&pmask
)) != RT_ERR_OK
)
592 if ((retVal
= rtk_switch_portmask_P2L_get(pmask
, pPortmask
)) != RT_ERR_OK
)
599 * rtk_rate_stormControlExtEnable_set
601 * Set externsion storm control state
603 * stormType - storm group type
604 * enable - externsion storm control state
610 * RT_ERR_NOT_INIT - The module is not initial
611 * RT_ERR_INPUT - invalid input parameter
615 rtk_api_ret_t
rtk_rate_stormControlExtEnable_set(rtk_rate_storm_group_t stormType
, rtk_enable_t enable
)
617 rtk_api_ret_t retVal
;
619 /* Check initialization state */
620 RTK_CHK_INIT_STATE();
622 if (stormType
>= STORM_GROUP_END
)
623 return RT_ERR_SFC_UNKNOWN_GROUP
;
625 if (enable
>= RTK_ENABLE_END
)
626 return RT_ERR_ENABLE
;
630 case STORM_GROUP_UNKNOWN_UNICAST
:
631 if ((retVal
= rtl8367c_setAsicStormFilterExtUnknownUnicastEnable(enable
)) != RT_ERR_OK
)
634 case STORM_GROUP_UNKNOWN_MULTICAST
:
635 if ((retVal
= rtl8367c_setAsicStormFilterExtUnknownMulticastEnable(enable
)) != RT_ERR_OK
)
638 case STORM_GROUP_MULTICAST
:
639 if ((retVal
= rtl8367c_setAsicStormFilterExtMulticastEnable(enable
)) != RT_ERR_OK
)
642 case STORM_GROUP_BROADCAST
:
643 if ((retVal
= rtl8367c_setAsicStormFilterExtBroadcastEnable(enable
)) != RT_ERR_OK
)
654 * rtk_rate_stormControlExtEnable_get
656 * Get externsion storm control state
658 * stormType - storm group type
660 * pEnable - externsion storm control state
664 * RT_ERR_NOT_INIT - The module is not initial
665 * RT_ERR_INPUT - invalid input parameter
669 rtk_api_ret_t
rtk_rate_stormControlExtEnable_get(rtk_rate_storm_group_t stormType
, rtk_enable_t
*pEnable
)
671 rtk_api_ret_t retVal
;
673 /* Check initialization state */
674 RTK_CHK_INIT_STATE();
676 if (stormType
>= STORM_GROUP_END
)
677 return RT_ERR_SFC_UNKNOWN_GROUP
;
680 return RT_ERR_NULL_POINTER
;
684 case STORM_GROUP_UNKNOWN_UNICAST
:
685 if ((retVal
= rtl8367c_getAsicStormFilterExtUnknownUnicastEnable((rtk_uint32
*)pEnable
)) != RT_ERR_OK
)
688 case STORM_GROUP_UNKNOWN_MULTICAST
:
689 if ((retVal
= rtl8367c_getAsicStormFilterExtUnknownMulticastEnable((rtk_uint32
*)pEnable
)) != RT_ERR_OK
)
692 case STORM_GROUP_MULTICAST
:
693 if ((retVal
= rtl8367c_getAsicStormFilterExtMulticastEnable((rtk_uint32
*)pEnable
)) != RT_ERR_OK
)
696 case STORM_GROUP_BROADCAST
:
697 if ((retVal
= rtl8367c_getAsicStormFilterExtBroadcastEnable((rtk_uint32
*)pEnable
)) != RT_ERR_OK
)
708 * rtk_rate_stormControlExtMeterIdx_set
710 * Set externsion storm control meter index
712 * stormType - storm group type
713 * index - externsion storm control state
719 * RT_ERR_NOT_INIT - The module is not initial
720 * RT_ERR_INPUT - invalid input parameter
724 rtk_api_ret_t
rtk_rate_stormControlExtMeterIdx_set(rtk_rate_storm_group_t stormType
, rtk_uint32 index
)
726 rtk_api_ret_t retVal
;
728 /* Check initialization state */
729 RTK_CHK_INIT_STATE();
731 if (stormType
>= STORM_GROUP_END
)
732 return RT_ERR_SFC_UNKNOWN_GROUP
;
734 if (index
> RTK_MAX_METER_ID
)
735 return RT_ERR_FILTER_METER_ID
;
739 case STORM_GROUP_UNKNOWN_UNICAST
:
740 if ((retVal
= rtl8367c_setAsicStormFilterExtUnknownUnicastMeter(index
))!=RT_ERR_OK
)
743 case STORM_GROUP_UNKNOWN_MULTICAST
:
744 if ((retVal
= rtl8367c_setAsicStormFilterExtUnknownMulticastMeter(index
))!=RT_ERR_OK
)
747 case STORM_GROUP_MULTICAST
:
748 if ((retVal
= rtl8367c_setAsicStormFilterExtMulticastMeter(index
))!=RT_ERR_OK
)
751 case STORM_GROUP_BROADCAST
:
752 if ((retVal
= rtl8367c_setAsicStormFilterExtBroadcastMeter(index
))!=RT_ERR_OK
)
763 * rtk_rate_stormControlExtMeterIdx_get
765 * Get externsion storm control meter index
767 * stormType - storm group type
768 * pIndex - externsion storm control state
774 * RT_ERR_NOT_INIT - The module is not initial
775 * RT_ERR_INPUT - invalid input parameter
779 rtk_api_ret_t
rtk_rate_stormControlExtMeterIdx_get(rtk_rate_storm_group_t stormType
, rtk_uint32
*pIndex
)
781 rtk_api_ret_t retVal
;
783 /* Check initialization state */
784 RTK_CHK_INIT_STATE();
786 if (stormType
>= STORM_GROUP_END
)
787 return RT_ERR_SFC_UNKNOWN_GROUP
;
790 return RT_ERR_NULL_POINTER
;
794 case STORM_GROUP_UNKNOWN_UNICAST
:
795 if ((retVal
= rtl8367c_getAsicStormFilterExtUnknownUnicastMeter(pIndex
))!=RT_ERR_OK
)
798 case STORM_GROUP_UNKNOWN_MULTICAST
:
799 if ((retVal
= rtl8367c_getAsicStormFilterExtUnknownMulticastMeter(pIndex
))!=RT_ERR_OK
)
802 case STORM_GROUP_MULTICAST
:
803 if ((retVal
= rtl8367c_getAsicStormFilterExtMulticastMeter(pIndex
))!=RT_ERR_OK
)
806 case STORM_GROUP_BROADCAST
:
807 if ((retVal
= rtl8367c_getAsicStormFilterExtBroadcastMeter(pIndex
))!=RT_ERR_OK
)