]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/blobdiff - include/uapi/linux/if_bridge.h
bridge: mrp: Rework the MRP netlink interface
[mirror_ubuntu-jammy-kernel.git] / include / uapi / linux / if_bridge.h
index bfe621ea51b378c52f02393d6c9626c1e7bdef16..5a43eb86c93bf245eefed12c41c1157c6abbb403 100644 (file)
@@ -120,6 +120,7 @@ enum {
        IFLA_BRIDGE_MODE,
        IFLA_BRIDGE_VLAN_INFO,
        IFLA_BRIDGE_VLAN_TUNNEL_INFO,
+       IFLA_BRIDGE_MRP,
        __IFLA_BRIDGE_MAX,
 };
 #define IFLA_BRIDGE_MAX (__IFLA_BRIDGE_MAX - 1)
@@ -157,6 +158,97 @@ struct bridge_vlan_xstats {
        __u32 pad2;
 };
 
+enum {
+       IFLA_BRIDGE_MRP_UNSPEC,
+       IFLA_BRIDGE_MRP_INSTANCE,
+       IFLA_BRIDGE_MRP_PORT_STATE,
+       IFLA_BRIDGE_MRP_PORT_ROLE,
+       IFLA_BRIDGE_MRP_RING_STATE,
+       IFLA_BRIDGE_MRP_RING_ROLE,
+       IFLA_BRIDGE_MRP_START_TEST,
+       __IFLA_BRIDGE_MRP_MAX,
+};
+
+#define IFLA_BRIDGE_MRP_MAX (__IFLA_BRIDGE_MRP_MAX - 1)
+
+enum {
+       IFLA_BRIDGE_MRP_INSTANCE_UNSPEC,
+       IFLA_BRIDGE_MRP_INSTANCE_RING_ID,
+       IFLA_BRIDGE_MRP_INSTANCE_P_IFINDEX,
+       IFLA_BRIDGE_MRP_INSTANCE_S_IFINDEX,
+       __IFLA_BRIDGE_MRP_INSTANCE_MAX,
+};
+
+#define IFLA_BRIDGE_MRP_INSTANCE_MAX (__IFLA_BRIDGE_MRP_INSTANCE_MAX - 1)
+
+enum {
+       IFLA_BRIDGE_MRP_PORT_STATE_UNSPEC,
+       IFLA_BRIDGE_MRP_PORT_STATE_STATE,
+       __IFLA_BRIDGE_MRP_PORT_STATE_MAX,
+};
+
+#define IFLA_BRIDGE_MRP_PORT_STATE_MAX (__IFLA_BRIDGE_MRP_PORT_STATE_MAX - 1)
+
+enum {
+       IFLA_BRIDGE_MRP_PORT_ROLE_UNSPEC,
+       IFLA_BRIDGE_MRP_PORT_ROLE_ROLE,
+       __IFLA_BRIDGE_MRP_PORT_ROLE_MAX,
+};
+
+#define IFLA_BRIDGE_MRP_PORT_ROLE_MAX (__IFLA_BRIDGE_MRP_PORT_ROLE_MAX - 1)
+
+enum {
+       IFLA_BRIDGE_MRP_RING_STATE_UNSPEC,
+       IFLA_BRIDGE_MRP_RING_STATE_RING_ID,
+       IFLA_BRIDGE_MRP_RING_STATE_STATE,
+       __IFLA_BRIDGE_MRP_RING_STATE_MAX,
+};
+
+#define IFLA_BRIDGE_MRP_RING_STATE_MAX (__IFLA_BRIDGE_MRP_RING_STATE_MAX - 1)
+
+enum {
+       IFLA_BRIDGE_MRP_RING_ROLE_UNSPEC,
+       IFLA_BRIDGE_MRP_RING_ROLE_RING_ID,
+       IFLA_BRIDGE_MRP_RING_ROLE_ROLE,
+       __IFLA_BRIDGE_MRP_RING_ROLE_MAX,
+};
+
+#define IFLA_BRIDGE_MRP_RING_ROLE_MAX (__IFLA_BRIDGE_MRP_RING_ROLE_MAX - 1)
+
+enum {
+       IFLA_BRIDGE_MRP_START_TEST_UNSPEC,
+       IFLA_BRIDGE_MRP_START_TEST_RING_ID,
+       IFLA_BRIDGE_MRP_START_TEST_INTERVAL,
+       IFLA_BRIDGE_MRP_START_TEST_MAX_MISS,
+       IFLA_BRIDGE_MRP_START_TEST_PERIOD,
+       __IFLA_BRIDGE_MRP_START_TEST_MAX,
+};
+
+#define IFLA_BRIDGE_MRP_START_TEST_MAX (__IFLA_BRIDGE_MRP_START_TEST_MAX - 1)
+
+struct br_mrp_instance {
+       __u32 ring_id;
+       __u32 p_ifindex;
+       __u32 s_ifindex;
+};
+
+struct br_mrp_ring_state {
+       __u32 ring_id;
+       __u32 ring_state;
+};
+
+struct br_mrp_ring_role {
+       __u32 ring_id;
+       __u32 ring_role;
+};
+
+struct br_mrp_start_test {
+       __u32 ring_id;
+       __u32 interval;
+       __u32 max_miss;
+       __u32 period;
+};
+
 struct bridge_stp_xstats {
        __u64 transition_blk;
        __u64 transition_fwd;