niv.h (1803B)
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_NIV_H__ 14 #define __BCMX_NIV_H__ 15 16 #if defined(INCLUDE_L3) 17 18 #include <bcm/types.h> 19 #include <bcmx/bcmx.h> 20 #include <bcm/niv.h> 21 22 /* NIV port type. */ 23 typedef bcm_niv_port_t bcmx_niv_port_t; 24 25 /* NIV forwarding table. */ 26 typedef bcm_niv_forward_t bcmx_niv_forward_t; 27 28 /* Initialize the NIV port structure. */ 29 extern void bcmx_niv_port_t_init( 30 bcmx_niv_port_t *niv_port); 31 32 /* Initialize the NIV Forwarding Entry structure. */ 33 extern void bcmx_niv_forward_t_init( 34 bcmx_niv_forward_t *iv_fwd_entry); 35 36 /* Initialize NIV module. */ 37 extern int bcmx_niv_init(void); 38 39 /* Detach NIV module. */ 40 extern int bcmx_niv_cleanup(void); 41 42 /* Create NIV port */ 43 extern int bcmx_niv_port_add( 44 bcmx_niv_port_t *niv_port); 45 46 /* Delete NIV port. */ 47 extern int bcmx_niv_port_delete( 48 bcm_gport_t niv_port_id); 49 50 /* Delete all NIV ports. */ 51 extern int bcmx_niv_port_delete_all(void); 52 53 /* Get NIV Port information */ 54 extern int bcmx_niv_port_get( 55 bcmx_niv_port_t *niv_port); 56 57 /* Add NIV forwarding table entry */ 58 extern int bcmx_niv_forward_add( 59 bcmx_niv_forward_t *iv_fwd_entry); 60 61 /* Delete NIV forwarding table entry. */ 62 extern int bcmx_niv_forward_delete( 63 bcmx_niv_forward_t *iv_fwd_entry); 64 65 /* Delete all NIV forwarding table entries. */ 66 extern int bcmx_niv_forward_delete_all(void); 67 68 /* Get NIV forwarding information */ 69 extern int bcmx_niv_forward_get( 70 bcmx_niv_forward_t *iv_fwd_entry); 71 72 #endif /* defined(INCLUDE_L3) */ 73 74 #endif /* __BCMX_NIV_H__ */