bridge: mrp: Extend br_mrp for MRP interconnect
This patch extends the 'struct br_mrp' to contain information regarding the MRP interconnect. It contains the following: - the interconnect port 'i_port', which is NULL if the node doesn't have a interconnect role - the interconnect id, which is similar with the ring id, but this field is also part of the MRP_InTest frames. - the interconnect role, which can be MIM or MIC. - the interconnect state, which can be open or closed. - the interconnect delayed_work for sending MRP_InTest frames and check for lost of continuity. Signed-off-by: Horatiu Vultur <horatiu.vultur@microchip.com> Acked-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
43364ef1a1
commit
78c1b4fb0e
@ -12,8 +12,10 @@ struct br_mrp {
|
||||
|
||||
struct net_bridge_port __rcu *p_port;
|
||||
struct net_bridge_port __rcu *s_port;
|
||||
struct net_bridge_port __rcu *i_port;
|
||||
|
||||
u32 ring_id;
|
||||
u16 in_id;
|
||||
u16 prio;
|
||||
|
||||
enum br_mrp_ring_role_type ring_role;
|
||||
@ -21,6 +23,11 @@ struct br_mrp {
|
||||
enum br_mrp_ring_state_type ring_state;
|
||||
u32 ring_transitions;
|
||||
|
||||
enum br_mrp_in_role_type in_role;
|
||||
u8 in_role_offloaded;
|
||||
enum br_mrp_in_state_type in_state;
|
||||
u32 in_transitions;
|
||||
|
||||
struct delayed_work test_work;
|
||||
u32 test_interval;
|
||||
unsigned long test_end;
|
||||
@ -28,6 +35,12 @@ struct br_mrp {
|
||||
u32 test_max_miss;
|
||||
bool test_monitor;
|
||||
|
||||
struct delayed_work in_test_work;
|
||||
u32 in_test_interval;
|
||||
unsigned long in_test_end;
|
||||
u32 in_test_count_miss;
|
||||
u32 in_test_max_miss;
|
||||
|
||||
u32 seq_id;
|
||||
|
||||
struct rcu_head rcu;
|
||||
|
Loading…
Reference in New Issue
Block a user