blob: 868373822ee4cc883f35e796f213d8a40cd06407 [file] [log] [blame]
Murali Karicheri0e7623b2019-04-05 13:31:34 -04001/* SPDX-License-Identifier: GPL-2.0 */
Arvid Brodin70ebe4a2014-07-04 23:34:38 +02002/* Copyright 2011-2014 Autronica Fire and Security AS
Arvid Brodinf4214362013-10-30 21:10:47 +01003 *
Arvid Brodinf4214362013-10-30 21:10:47 +01004 * Author(s):
Arvid Brodin70ebe4a2014-07-04 23:34:38 +02005 * 2011-2014 Arvid Brodin, arvid.brodin@alten.se
Murali Karicheri8f4c0e02020-07-22 10:40:16 -04006 *
7 * include file for HSR and PRP.
Arvid Brodinf4214362013-10-30 21:10:47 +01008 */
9
10#ifndef __HSR_DEVICE_H
11#define __HSR_DEVICE_H
12
13#include <linux/netdevice.h>
14#include "hsr_main.h"
15
Taehee Yoode0083c2020-06-21 13:46:25 +000016void hsr_del_ports(struct hsr_priv *hsr);
Arvid Brodinf4214362013-10-30 21:10:47 +010017void hsr_dev_setup(struct net_device *dev);
18int hsr_dev_finalize(struct net_device *hsr_dev, struct net_device *slave[2],
Taehee Yoo13eeb5f2020-02-28 18:01:35 +000019 unsigned char multicast_spec, u8 protocol_version,
20 struct netlink_ext_ack *extack);
Arvid Brodine9aae562014-07-04 23:36:40 +020021void hsr_check_carrier_and_operstate(struct hsr_priv *hsr);
Arvid Brodinf4214362013-10-30 21:10:47 +010022bool is_hsr_master(struct net_device *dev);
Arvid Brodin70ebe4a2014-07-04 23:34:38 +020023int hsr_get_max_mtu(struct hsr_priv *hsr);
Arvid Brodinf4214362013-10-30 21:10:47 +010024#endif /* __HSR_DEVICE_H */