xref: /openbmc/linux/net/6lowpan/6lowpan_i.h (revision db50450d)
1b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */
2b1815fd9SAlexander Aring #ifndef __6LOWPAN_I_H
3b1815fd9SAlexander Aring #define __6LOWPAN_I_H
4b1815fd9SAlexander Aring 
5b1815fd9SAlexander Aring #include <linux/netdevice.h>
6b1815fd9SAlexander Aring 
727323631SAlexander Aring #include <net/6lowpan.h>
827323631SAlexander Aring 
927323631SAlexander Aring /* caller need to be sure it's dev->type is ARPHRD_6LOWPAN */
lowpan_is_ll(const struct net_device * dev,enum lowpan_lltypes lltype)1027323631SAlexander Aring static inline bool lowpan_is_ll(const struct net_device *dev,
1127323631SAlexander Aring 				enum lowpan_lltypes lltype)
1227323631SAlexander Aring {
1327323631SAlexander Aring 	return lowpan_dev(dev)->lltype == lltype;
1427323631SAlexander Aring }
1527323631SAlexander Aring 
16bbe5f5ceSAlexander Aring extern const struct ndisc_ops lowpan_ndisc_ops;
17bbe5f5ceSAlexander Aring 
18bbe5f5ceSAlexander Aring int addrconf_ifid_802154_6lowpan(u8 *eui, struct net_device *dev);
19bbe5f5ceSAlexander Aring 
20b1815fd9SAlexander Aring #ifdef CONFIG_6LOWPAN_DEBUGFS
21db50450dSGreg Kroah-Hartman void lowpan_dev_debugfs_init(struct net_device *dev);
22b1815fd9SAlexander Aring void lowpan_dev_debugfs_exit(struct net_device *dev);
23b1815fd9SAlexander Aring 
24db50450dSGreg Kroah-Hartman void __init lowpan_debugfs_init(void);
25b1815fd9SAlexander Aring void lowpan_debugfs_exit(void);
26b1815fd9SAlexander Aring #else
lowpan_dev_debugfs_init(struct net_device * dev)27db50450dSGreg Kroah-Hartman static inline void lowpan_dev_debugfs_init(struct net_device *dev) { }
lowpan_dev_debugfs_exit(struct net_device * dev)28b1815fd9SAlexander Aring static inline void lowpan_dev_debugfs_exit(struct net_device *dev) { }
29b1815fd9SAlexander Aring 
lowpan_debugfs_init(void)30db50450dSGreg Kroah-Hartman static inline void __init lowpan_debugfs_init(void) { }
lowpan_debugfs_exit(void)31b1815fd9SAlexander Aring static inline void lowpan_debugfs_exit(void) { }
32b1815fd9SAlexander Aring #endif /* CONFIG_6LOWPAN_DEBUGFS */
33b1815fd9SAlexander Aring 
34b1815fd9SAlexander Aring #endif /* __6LOWPAN_I_H */
35