1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /* Copyright (c) 2013-2017, The Linux Foundation. All rights reserved.
3  *
4  * RMNET Data Virtual Network Device APIs
5  */
6 
7 #ifndef _RMNET_VND_H_
8 #define _RMNET_VND_H_
9 
10 int rmnet_vnd_do_flow_control(struct net_device *dev, int enable);
11 int rmnet_vnd_newlink(u8 id, struct net_device *rmnet_dev,
12 		      struct rmnet_port *port,
13 		      struct net_device *real_dev,
14 		      struct rmnet_endpoint *ep,
15 		      struct netlink_ext_ack *extack);
16 int rmnet_vnd_dellink(u8 id, struct rmnet_port *port,
17 		      struct rmnet_endpoint *ep);
18 void rmnet_vnd_rx_fixup(struct sk_buff *skb, struct net_device *dev);
19 void rmnet_vnd_tx_fixup_len(unsigned int len, struct net_device *dev);
20 void rmnet_vnd_tx_fixup(struct sk_buff *skb, struct net_device *dev);
21 void rmnet_vnd_setup(struct net_device *dev);
22 int rmnet_vnd_validate_real_dev_mtu(struct net_device *real_dev);
23 int rmnet_vnd_update_dev_mtu(struct rmnet_port *port,
24 			     struct net_device *real_dev);
25 #endif /* _RMNET_VND_H_ */
26