linux/include/uapi/linux/cfm_bridge.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */
   2
   3#ifndef _UAPI_LINUX_CFM_BRIDGE_H_
   4#define _UAPI_LINUX_CFM_BRIDGE_H_
   5
   6#include <linux/types.h>
   7#include <linux/if_ether.h>
   8
   9#define ETHER_HEADER_LENGTH             (6+6+4+2)
  10#define CFM_MAID_LENGTH                 48
  11#define CFM_CCM_PDU_LENGTH              75
  12#define CFM_PORT_STATUS_TLV_LENGTH      4
  13#define CFM_IF_STATUS_TLV_LENGTH        4
  14#define CFM_IF_STATUS_TLV_TYPE          4
  15#define CFM_PORT_STATUS_TLV_TYPE        2
  16#define CFM_ENDE_TLV_TYPE               0
  17#define CFM_CCM_MAX_FRAME_LENGTH        (ETHER_HEADER_LENGTH+\
  18                                         CFM_CCM_PDU_LENGTH+\
  19                                         CFM_PORT_STATUS_TLV_LENGTH+\
  20                                         CFM_IF_STATUS_TLV_LENGTH)
  21#define CFM_FRAME_PRIO                  7
  22#define CFM_CCM_TLV_OFFSET              70
  23#define CFM_CCM_PDU_MAID_OFFSET         10
  24#define CFM_CCM_PDU_MEPID_OFFSET        8
  25#define CFM_CCM_PDU_SEQNR_OFFSET        4
  26#define CFM_CCM_PDU_TLV_OFFSET          74
  27#define CFM_CCM_ITU_RESERVED_SIZE       16
  28
  29struct br_cfm_common_hdr {
  30        __u8 mdlevel_version;
  31        __u8 opcode;
  32        __u8 flags;
  33        __u8 tlv_offset;
  34};
  35
  36enum br_cfm_opcodes {
  37        BR_CFM_OPCODE_CCM = 0x1,
  38};
  39
  40/* MEP domain */
  41enum br_cfm_domain {
  42        BR_CFM_PORT,
  43        BR_CFM_VLAN,
  44};
  45
  46/* MEP direction */
  47enum br_cfm_mep_direction {
  48        BR_CFM_MEP_DIRECTION_DOWN,
  49        BR_CFM_MEP_DIRECTION_UP,
  50};
  51
  52/* CCM interval supported. */
  53enum br_cfm_ccm_interval {
  54        BR_CFM_CCM_INTERVAL_NONE,
  55        BR_CFM_CCM_INTERVAL_3_3_MS,
  56        BR_CFM_CCM_INTERVAL_10_MS,
  57        BR_CFM_CCM_INTERVAL_100_MS,
  58        BR_CFM_CCM_INTERVAL_1_SEC,
  59        BR_CFM_CCM_INTERVAL_10_SEC,
  60        BR_CFM_CCM_INTERVAL_1_MIN,
  61        BR_CFM_CCM_INTERVAL_10_MIN,
  62};
  63
  64#endif
  65