Something went wrong. Try again.
(I'm so sorry!) Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
Something went wrong. Try again.
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273/* SPDX-License-Identifier: GPL-2.0 */#ifndef __NET_NCSI_H#define __NET_NCSI_H
#include <linux/types.h>
/* * The NCSI device states seen from external. More NCSI device states are * only visible internally (in net/ncsi/internal.h). When the NCSI device * is registered, it's in ncsi_dev_state_registered state. The state * ncsi_dev_state_start is used to drive to choose active package and * channel. After that, its state is changed to ncsi_dev_state_functional. * * The state ncsi_dev_state_stop helps to shut down the currently active * package and channel while ncsi_dev_state_config helps to reconfigure * them. */enum { ncsi_dev_state_registered = 0x0000, ncsi_dev_state_functional = 0x0100, ncsi_dev_state_probe = 0x0200, ncsi_dev_state_config = 0x0300, ncsi_dev_state_suspend = 0x0400,};
struct ncsi_dev { int state; int link_up; struct net_device *dev; void (*handler)(struct ncsi_dev *ndev);};
#ifdef CONFIG_NET_NCSIint ncsi_vlan_rx_add_vid(struct net_device *dev, __be16 proto, u16 vid);int ncsi_vlan_rx_kill_vid(struct net_device *dev, __be16 proto, u16 vid);struct ncsi_dev *ncsi_register_dev(struct net_device *dev, void (*notifier)(struct ncsi_dev *nd));int ncsi_start_dev(struct ncsi_dev *nd);void ncsi_stop_dev(struct ncsi_dev *nd);void ncsi_unregister_dev(struct ncsi_dev *nd);#else /* !CONFIG_NET_NCSI */static inline int ncsi_vlan_rx_add_vid(struct net_device *dev, __be16 proto, u16 vid){ return -EINVAL;}
static inline int ncsi_vlan_rx_kill_vid(struct net_device *dev, __be16 proto, u16 vid){ return -EINVAL;}
static inline struct ncsi_dev *ncsi_register_dev(struct net_device *dev, void (*notifier)(struct ncsi_dev *nd)){ return NULL;}
static inline int ncsi_start_dev(struct ncsi_dev *nd){ return -ENOTTY;}
static inline void ncsi_stop_dev(struct ncsi_dev *nd){}
static inline void ncsi_unregister_dev(struct ncsi_dev *nd){}#endif /* CONFIG_NET_NCSI */
#endif /* __NET_NCSI_H */