xref: /openbmc/linux/net/hsr/hsr_device.h (revision 70ebe4a47185db15f3c55be9611a1a971237870b)
1 /* Copyright 2011-2014 Autronica Fire and Security AS
2  *
3  * This program is free software; you can redistribute it and/or modify it
4  * under the terms of the GNU General Public License as published by the Free
5  * Software Foundation; either version 2 of the License, or (at your option)
6  * any later version.
7  *
8  * Author(s):
9  *	2011-2014 Arvid Brodin, arvid.brodin@alten.se
10  */
11 
12 #ifndef __HSR_DEVICE_H
13 #define __HSR_DEVICE_H
14 
15 #include <linux/netdevice.h>
16 #include "hsr_main.h"
17 
18 void hsr_dev_setup(struct net_device *dev);
19 int hsr_dev_finalize(struct net_device *hsr_dev, struct net_device *slave[2],
20 		     unsigned char multicast_spec);
21 void hsr_set_operstate(struct net_device *hsr_dev, struct net_device *slave1,
22 		       struct net_device *slave2);
23 void hsr_set_carrier(struct net_device *hsr_dev, struct net_device *slave1,
24 		     struct net_device *slave2);
25 void hsr_check_announce(struct net_device *hsr_dev, int old_operstate);
26 bool is_hsr_master(struct net_device *dev);
27 int hsr_get_max_mtu(struct hsr_priv *hsr);
28 
29 #endif /* __HSR_DEVICE_H */
30