oam.h (2082B)
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_OAM_H__ 14 #define __BCMX_OAM_H__ 15 16 #include <bcm/types.h> 17 #include <bcmx/bcmx.h> 18 #include <bcm/oam.h> 19 20 typedef bcm_oam_group_info_t bcmx_oam_group_info_t; 21 22 typedef bcm_oam_endpoint_info_t bcmx_oam_endpoint_info_t; 23 24 /* Initialize an OAM group info structure */ 25 extern void bcmx_oam_group_info_t_init( 26 bcmx_oam_group_info_t *group_info); 27 28 /* Initialize an OAM endpoint info structure */ 29 extern void bcmx_oam_endpoint_info_t_init( 30 bcmx_oam_endpoint_info_t *endpoint_info); 31 32 /* Initialize the OAM subsystem */ 33 extern int bcmx_oam_init(void); 34 35 /* Shut down the OAM subsystem */ 36 extern int bcmx_oam_detach(void); 37 38 /* Create or replace an OAM group object */ 39 extern int bcmx_oam_group_create( 40 bcmx_oam_group_info_t *group_info); 41 42 /* Get an OAM group object */ 43 extern int bcmx_oam_group_get( 44 bcm_oam_group_t group, 45 bcmx_oam_group_info_t *group_info); 46 47 /* 48 * Destroy an OAM group object. All OAM endpoints associated with the 49 * group will also be destroyed. 50 */ 51 extern int bcmx_oam_group_destroy( 52 bcm_oam_group_t group); 53 54 /* 55 * Destroy all OAM group objects. All OAM endpoints will also be 56 * destroyed. 57 */ 58 extern int bcmx_oam_group_destroy_all(void); 59 60 /* Create or replace an OAM endpoint object */ 61 extern int bcmx_oam_endpoint_create( 62 bcmx_oam_endpoint_info_t *endpoint_info); 63 64 /* Get an OAM endpoint object */ 65 extern int bcmx_oam_endpoint_get( 66 bcm_oam_endpoint_t endpoint, 67 bcmx_oam_endpoint_info_t *endpoint_info); 68 69 /* Destroy an OAM endpoint object */ 70 extern int bcmx_oam_endpoint_destroy( 71 bcm_oam_endpoint_t endpoint); 72 73 /* Destroy all OAM endpoint objects associated with a given OAM group */ 74 extern int bcmx_oam_endpoint_destroy_all( 75 bcm_oam_group_t group); 76 77 #endif /* __BCMX_OAM_H__ */