net, lib: kill arch_fast_hash library bits
[firefly-linux-kernel-4.4.55.git] / include / linux / if_bridge.h
index 808dcb8cc04fbeee82f00bab944ff45e8087078a..0a8ce762a47fded2031d83ec3535feaed062806a 100644 (file)
@@ -15,6 +15,7 @@
 
 #include <linux/netdevice.h>
 #include <uapi/linux/if_bridge.h>
+#include <linux/bitops.h>
 
 struct br_ip {
        union {
@@ -32,11 +33,41 @@ struct br_ip_list {
        struct br_ip addr;
 };
 
+#define BR_HAIRPIN_MODE                BIT(0)
+#define BR_BPDU_GUARD          BIT(1)
+#define BR_ROOT_BLOCK          BIT(2)
+#define BR_MULTICAST_FAST_LEAVE        BIT(3)
+#define BR_ADMIN_COST          BIT(4)
+#define BR_LEARNING            BIT(5)
+#define BR_FLOOD               BIT(6)
+#define BR_AUTO_MASK           (BR_FLOOD | BR_LEARNING)
+#define BR_PROMISC             BIT(7)
+#define BR_PROXYARP            BIT(8)
+#define BR_LEARNING_SYNC       BIT(9)
+
 extern void brioctl_set(int (*ioctl_hook)(struct net *, unsigned int, void __user *));
 
 typedef int br_should_route_hook_t(struct sk_buff *skb);
 extern br_should_route_hook_t __rcu *br_should_route_hook;
 
+#if IS_ENABLED(CONFIG_BRIDGE)
+int br_fdb_external_learn_add(struct net_device *dev,
+                             const unsigned char *addr, u16 vid);
+int br_fdb_external_learn_del(struct net_device *dev,
+                             const unsigned char *addr, u16 vid);
+#else
+static inline int br_fdb_external_learn_add(struct net_device *dev,
+                                           const unsigned char *addr, u16 vid)
+{
+       return 0;
+}
+static inline int br_fdb_external_learn_del(struct net_device *dev,
+                                           const unsigned char *addr, u16 vid)
+{
+       return 0;
+}
+#endif
+
 #if IS_ENABLED(CONFIG_BRIDGE) && IS_ENABLED(CONFIG_BRIDGE_IGMP_SNOOPING)
 int br_multicast_list_adjacent(struct net_device *dev,
                               struct list_head *br_ip_list);