trill.h (3143B)
1 /* 2 * 3 * 4 * This license is set out in https://raw.githubusercontent.com/Broadcom-Network-Switching-Software/OpenBCM/master/Legal/LICENSE file. 5 * 6 * Copyright 2007-2020 Broadcom Inc. All rights reserved. 7 * 8 * DO NOT EDIT THIS FILE! 9 * This file is auto-generated. 10 * Edits to this file will be lost when it is regenerated. 11 */ 12 13 #ifndef __BCMX_TRILL_H__ 14 #define __BCMX_TRILL_H__ 15 16 #if defined(INCLUDE_L3) 17 18 #include <bcm/types.h> 19 #include <bcmx/bcmx.h> 20 #include <bcm/trill.h> 21 22 /* TRILL Port structure. */ 23 typedef bcm_trill_port_t bcmx_trill_port_t; 24 25 /* TRILL Multicast Entry structure. */ 26 typedef bcm_trill_multicast_entry_t bcmx_trill_multicast_entry_t; 27 28 /* Initialize the TRILL Port structure. */ 29 extern void bcmx_trill_port_t_init( 30 bcmx_trill_port_t *trill_port); 31 32 /* Initialize the TRILL Multicast Entry structure. */ 33 extern void bcmx_trill_multicast_entry_t_init( 34 bcm_trill_multicast_entry_t *trill_multicast_entry); 35 36 /* Initialize TRILL module. */ 37 extern int bcmx_trill_init(void); 38 39 /* Detach TRILL module. */ 40 extern int bcmx_trill_cleanup(void); 41 42 /* Add Trill port to TRILL Cloud. */ 43 extern int bcmx_trill_port_add( 44 bcmx_trill_port_t *trill_port); 45 46 /* Delete Trill port from TRILL Cloud. */ 47 extern int bcmx_trill_port_delete( 48 bcm_gport_t trill_port_id); 49 50 /* Delete all Trill ports from TRILL Cloud. */ 51 extern int bcmx_trill_port_delete_all(void); 52 53 /* Get a TRILL port */ 54 extern int bcmx_trill_port_get( 55 bcmx_trill_port_t *trill_port); 56 57 /* Get all TRILL ports */ 58 extern int bcmx_trill_port_get_all( 59 int port_max, 60 bcmx_trill_port_t *port_array, 61 int *port_count); 62 63 /* Add TRILL multicast entry */ 64 extern int bcmx_trill_multicast_entry_add( 65 bcm_trill_multicast_entry_t *trill_mc_entry); 66 67 /* Delete TRILL multicast entry */ 68 extern int bcmx_trill_multicast_entry_delete( 69 bcm_trill_multicast_entry_t *trill_mc_entry); 70 71 /* Delete all TRILL multicast entries */ 72 extern int bcmx_trill_multicast_delete_all( 73 bcm_trill_name_t root_name); 74 75 /* Get TRILL multicast entry */ 76 extern int bcmx_trill_multicast_entry_get( 77 bcm_trill_multicast_entry_t *trill_mc_entry); 78 79 /* Add TRILL multicast RPF entry */ 80 extern int bcmx_trill_multicast_source_add( 81 bcm_trill_name_t root_name, 82 bcm_trill_name_t source_rbridge_name, 83 bcm_gport_t port, 84 bcm_if_t encap_intf); 85 86 /* Delete TRILL multicast RPF entry */ 87 extern int bcmx_trill_multicast_source_delete( 88 bcm_trill_name_t root_name, 89 bcm_trill_name_t source_rbridge_name, 90 bcm_gport_t port, 91 bcm_if_t encap_intf); 92 93 /* Get TRILL Multicast RPF entry */ 94 extern int bcmx_trill_multicast_source_get( 95 bcm_trill_name_t root_name, 96 bcm_trill_name_t source_rbridge_name, 97 bcm_gport_t *port); 98 99 /* bcm_trill_stat_get */ 100 extern int bcmx_trill_stat_get( 101 bcm_gport_t port, 102 bcm_trill_stat_t stat, 103 uint64 *val); 104 105 /* bcm_trill_stat_get32 */ 106 extern int bcmx_trill_stat_get32( 107 bcm_gport_t port, 108 bcm_trill_stat_t stat, 109 uint32 *val); 110 111 /* bcm_trill_stat_clear */ 112 extern int bcmx_trill_stat_clear( 113 bcm_gport_t port, 114 bcm_trill_stat_t stat); 115 116 #endif /* defined(INCLUDE_L3) */ 117 118 #endif /* __BCMX_TRILL_H__ */