openbcm

Git mirror of https://github.com/Broadcom-Network-Switching-Software/OpenBCM
git clone git://git.finwo.net/mirror/broadcom/openbcm
Log | Files | Refs | README

eav.h (3254B)


      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 __BCM_EAV_H__
     14 #define __BCM_EAV_H__
     15 
     16 #include <bcm/types.h>
     17 #include <bcm/port.h>
     18 
     19 /* bcm_eav_control_e */
     20 typedef enum bcm_eav_control_e {
     21     bcmEAVControlTimeBase = 1, 
     22     bcmEAVControlTimeAdjust = 2, 
     23     bcmEAVControlStreamClassAPCP = 7, 
     24     bcmEAVControlStreamClassBPCP = 8 
     25 } bcm_eav_control_t;
     26 
     27 #define BCM_EAV_TIMEREF_MODE_FREERUN        0x0        
     28 #define BCM_EAV_TIMEREF_MODE_PHASE_ADJUSTMENT 0x1        
     29 #define BCM_EAV_TIMEREF_MODE_FREQ_ADJUMENT1 0x2        
     30 #define BCM_EAV_TIMEREF_MODE_FREQ_ADJUMENT2 0x3        
     31 
     32 /* bcm_eav_stream_class_e */
     33 typedef enum bcm_eav_stream_class_e {
     34     bcmEAVCStreamClassA = 0, 
     35     bcmEAVCStreamClassB = 1 
     36 } bcm_eav_stream_class_t;
     37 
     38 #ifndef BCM_HIDE_DISPATCHABLE
     39 
     40 /* bcm_eav_init */
     41 extern int bcm_eav_init(
     42     int unit);
     43 
     44 /* bcm_eav_port_enable_get */
     45 extern int bcm_eav_port_enable_get(
     46     int unit, 
     47     bcm_port_t port, 
     48     int *enable);
     49 
     50 /* bcm_eav_port_enable_set */
     51 extern int bcm_eav_port_enable_set(
     52     int unit, 
     53     bcm_port_t port, 
     54     int enable);
     55 
     56 /* bcm_eav_link_status_get */
     57 extern int bcm_eav_link_status_get(
     58     int unit, 
     59     bcm_port_t port, 
     60     int *link);
     61 
     62 /* bcm_eav_link_status_set */
     63 extern int bcm_eav_link_status_set(
     64     int unit, 
     65     bcm_port_t port, 
     66     int link);
     67 
     68 /* bcm_eav_control_get */
     69 extern int bcm_eav_control_get(
     70     int unit, 
     71     bcm_eav_control_t type, 
     72     uint32 *arg, 
     73     uint32 *arg2);
     74 
     75 /* bcm_eav_control_set */
     76 extern int bcm_eav_control_set(
     77     int unit, 
     78     bcm_eav_control_t type, 
     79     uint32 arg, 
     80     uint32 arg2);
     81 
     82 /* bcm_eav_timestamp_get */
     83 extern int bcm_eav_timestamp_get(
     84     int unit, 
     85     bcm_port_t port, 
     86     uint32 *timestamp);
     87 
     88 /* bcm_eav_timesync_mac_set */
     89 extern int bcm_eav_timesync_mac_set(
     90     int unit, 
     91     bcm_mac_t eav_mac);
     92 
     93 /* bcm_eav_timesync_mac_get */
     94 extern int bcm_eav_timesync_mac_get(
     95     int unit, 
     96     bcm_mac_t eav_mac);
     97 
     98 /* bcm_eav_srp_mac_ethertype_set */
     99 extern int bcm_eav_srp_mac_ethertype_set(
    100     int unit, 
    101     bcm_mac_t mac, 
    102     bcm_port_ethertype_t ethertype);
    103 
    104 /* bcm_eav_srp_mac_ethertype_get */
    105 extern int bcm_eav_srp_mac_ethertype_get(
    106     int unit, 
    107     bcm_mac_t mac, 
    108     bcm_port_ethertype_t *ethertype);
    109 
    110 /* bcm_eav_pcp_mapping_set */
    111 extern int bcm_eav_pcp_mapping_set(
    112     int unit, 
    113     bcm_eav_stream_class_t type, 
    114     int pcp, 
    115     int remapped_pcp);
    116 
    117 /* bcm_eav_pcp_mapping_get */
    118 extern int bcm_eav_pcp_mapping_get(
    119     int unit, 
    120     bcm_eav_stream_class_t type, 
    121     int *pcp, 
    122     int *remapped_pcp);
    123 
    124 /* bcm_bandwidth_set */
    125 extern int bcm_eav_bandwidth_set(
    126     int unit, 
    127     bcm_port_t port, 
    128     bcm_eav_stream_class_t type, 
    129     uint32 bytes_sec, 
    130     uint32 bytes_burst);
    131 
    132 /* bcm_eav_bandwidth_get */
    133 extern int bcm_eav_bandwidth_get(
    134     int unit, 
    135     bcm_port_t port, 
    136     bcm_eav_stream_class_t type, 
    137     uint32 *bytes_sec, 
    138     uint32 *bytes_burst);
    139 
    140 #endif /* BCM_HIDE_DISPATCHABLE */
    141 
    142 #endif /* __BCM_EAV_H__ */