These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / include / net / ieee802154_netdev.h
index 94a2970..a62a051 100644 (file)
@@ -50,15 +50,6 @@ struct ieee802154_sechdr {
        };
 };
 
-struct ieee802154_addr {
-       u8 mode;
-       __le16 pan_id;
-       union {
-               __le16 short_addr;
-               __le64 extended_addr;
-       };
-};
-
 struct ieee802154_hdr_fc {
 #if defined(__LITTLE_ENDIAN_BITFIELD)
        u16 type:3,
@@ -99,7 +90,7 @@ struct ieee802154_hdr {
  * hdr->fc will be ignored. this includes the INTRA_PAN bit and the frame
  * version, if SECEN is set.
  */
-int ieee802154_hdr_push(struct sk_buff *skb, const struct ieee802154_hdr *hdr);
+int ieee802154_hdr_push(struct sk_buff *skb, struct ieee802154_hdr *hdr);
 
 /* pulls the entire 802.15.4 header off of the skb, including the security
  * header, and performs pan id decompression
@@ -243,38 +234,6 @@ static inline struct ieee802154_mac_cb *mac_cb_init(struct sk_buff *skb)
        return mac_cb(skb);
 }
 
-#define IEEE802154_LLSEC_KEY_SIZE 16
-
-struct ieee802154_llsec_key_id {
-       u8 mode;
-       u8 id;
-       union {
-               struct ieee802154_addr device_addr;
-               __le32 short_source;
-               __le64 extended_source;
-       };
-};
-
-struct ieee802154_llsec_key {
-       u8 frame_types;
-       u32 cmd_frame_ids;
-       u8 key[IEEE802154_LLSEC_KEY_SIZE];
-};
-
-struct ieee802154_llsec_key_entry {
-       struct list_head list;
-
-       struct ieee802154_llsec_key_id id;
-       struct ieee802154_llsec_key *key;
-};
-
-struct ieee802154_llsec_device_key {
-       struct list_head list;
-
-       struct ieee802154_llsec_key_id key_id;
-       u32 frame_counter;
-};
-
 enum {
        IEEE802154_LLSEC_DEVKEY_IGNORE,
        IEEE802154_LLSEC_DEVKEY_RESTRICT,
@@ -283,49 +242,6 @@ enum {
        __IEEE802154_LLSEC_DEVKEY_MAX,
 };
 
-struct ieee802154_llsec_device {
-       struct list_head list;
-
-       __le16 pan_id;
-       __le16 short_addr;
-       __le64 hwaddr;
-       u32 frame_counter;
-       bool seclevel_exempt;
-
-       u8 key_mode;
-       struct list_head keys;
-};
-
-struct ieee802154_llsec_seclevel {
-       struct list_head list;
-
-       u8 frame_type;
-       u8 cmd_frame_id;
-       bool device_override;
-       u32 sec_levels;
-};
-
-struct ieee802154_llsec_params {
-       bool enabled;
-
-       __be32 frame_counter;
-       u8 out_level;
-       struct ieee802154_llsec_key_id out_key;
-
-       __le64 default_key_source;
-
-       __le16 pan_id;
-       __le64 hwaddr;
-       __le64 coord_hwaddr;
-       __le16 coord_shortaddr;
-};
-
-struct ieee802154_llsec_table {
-       struct list_head keys;
-       struct list_head devices;
-       struct list_head security_levels;
-};
-
 #define IEEE802154_MAC_SCAN_ED         0
 #define IEEE802154_MAC_SCAN_ACTIVE     1
 #define IEEE802154_MAC_SCAN_PASSIVE    2
@@ -346,15 +262,15 @@ struct ieee802154_mac_params {
 struct wpan_phy;
 
 enum {
-       IEEE802154_LLSEC_PARAM_ENABLED = 1 << 0,
-       IEEE802154_LLSEC_PARAM_FRAME_COUNTER = 1 << 1,
-       IEEE802154_LLSEC_PARAM_OUT_LEVEL = 1 << 2,
-       IEEE802154_LLSEC_PARAM_OUT_KEY = 1 << 3,
-       IEEE802154_LLSEC_PARAM_KEY_SOURCE = 1 << 4,
-       IEEE802154_LLSEC_PARAM_PAN_ID = 1 << 5,
-       IEEE802154_LLSEC_PARAM_HWADDR = 1 << 6,
-       IEEE802154_LLSEC_PARAM_COORD_HWADDR = 1 << 7,
-       IEEE802154_LLSEC_PARAM_COORD_SHORTADDR = 1 << 8,
+       IEEE802154_LLSEC_PARAM_ENABLED          = BIT(0),
+       IEEE802154_LLSEC_PARAM_FRAME_COUNTER    = BIT(1),
+       IEEE802154_LLSEC_PARAM_OUT_LEVEL        = BIT(2),
+       IEEE802154_LLSEC_PARAM_OUT_KEY          = BIT(3),
+       IEEE802154_LLSEC_PARAM_KEY_SOURCE       = BIT(4),
+       IEEE802154_LLSEC_PARAM_PAN_ID           = BIT(5),
+       IEEE802154_LLSEC_PARAM_HWADDR           = BIT(6),
+       IEEE802154_LLSEC_PARAM_COORD_HWADDR     = BIT(7),
+       IEEE802154_LLSEC_PARAM_COORD_SHORTADDR  = BIT(8),
 };
 
 struct ieee802154_llsec_ops {
@@ -422,16 +338,6 @@ struct ieee802154_mlme_ops {
                               struct ieee802154_mac_params *params);
 
        struct ieee802154_llsec_ops *llsec;
-
-       /* The fields below are required. */
-
-       /*
-        * FIXME: these should become the part of PIB/MIB interface.
-        * However we still don't have IB interface of any kind
-        */
-       __le16 (*get_pan_id)(const struct net_device *dev);
-       __le16 (*get_short_addr)(const struct net_device *dev);
-       u8 (*get_dsn)(const struct net_device *dev);
 };
 
 static inline struct ieee802154_mlme_ops *
@@ -440,10 +346,4 @@ ieee802154_mlme_ops(const struct net_device *dev)
        return dev->ml_priv;
 }
 
-static inline struct ieee802154_reduced_mlme_ops *
-ieee802154_reduced_mlme_ops(const struct net_device *dev)
-{
-       return dev->ml_priv;
-}
-
 #endif