ieee802154: move wpan-phy.h to cfg802154.h
authorAlexander Aring <alex.aring@gmail.com>
Sat, 25 Oct 2014 07:41:02 +0000 (09:41 +0200)
committerMarcel Holtmann <marcel@holtmann.org>
Sat, 25 Oct 2014 19:39:56 +0000 (21:39 +0200)
The wpan-phy header contains the wpan_phy struct information. Later this
header will be have similar function like cfg80211 header. The cfg80211
header contains the wiphy struct which is identically the wpan_phy
struct inside 802.15.4 subsystem.

Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Cc: Alan Ott <alan@signal11.us>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
16 files changed:
drivers/net/ieee802154/at86rf230.c
drivers/net/ieee802154/cc2520.c
drivers/net/ieee802154/fakehard.c
drivers/net/ieee802154/fakelb.c
drivers/net/ieee802154/mrf24j40.c
include/net/cfg802154.h [new file with mode: 0644]
include/net/wpan-phy.h [deleted file]
net/ieee802154/nl-mac.c
net/ieee802154/nl-phy.c
net/ieee802154/wpan-class.c
net/mac802154/iface.c
net/mac802154/mac_cmd.c
net/mac802154/main.c
net/mac802154/mib.c
net/mac802154/monitor.c
net/mac802154/tx.c

index 83a635f..795ac11 100644 (file)
@@ -32,7 +32,7 @@
 
 #include <net/ieee802154.h>
 #include <net/mac802154.h>
-#include <net/wpan-phy.h>
+#include <net/cfg802154.h>
 
 struct at86rf230_local;
 /* at86rf2xx chip depend data.
index 571f280..f1770cf 100644 (file)
@@ -23,7 +23,7 @@
 #include <linux/of_gpio.h>
 
 #include <net/mac802154.h>
-#include <net/wpan-phy.h>
+#include <net/cfg802154.h>
 #include <net/ieee802154.h>
 
 #define        SPI_COMMAND_BUFFER      3
index 9ce854f..1460bf5 100644 (file)
@@ -30,7 +30,7 @@
 #include <net/ieee802154_netdev.h>
 #include <net/ieee802154.h>
 #include <net/nl802154.h>
-#include <net/wpan-phy.h>
+#include <net/cfg802154.h>
 
 struct fakehard_priv {
        struct wpan_phy *phy;
index e4b1b1f..e6e2993 100644 (file)
@@ -25,7 +25,7 @@
 #include <linux/device.h>
 #include <linux/spinlock.h>
 #include <net/mac802154.h>
-#include <net/wpan-phy.h>
+#include <net/cfg802154.h>
 
 static int numlbs = 1;
 
index 0006b9a..bea7349 100644 (file)
@@ -18,7 +18,7 @@
 #include <linux/spi/spi.h>
 #include <linux/interrupt.h>
 #include <linux/module.h>
-#include <net/wpan-phy.h>
+#include <net/cfg802154.h>
 #include <net/mac802154.h>
 #include <net/ieee802154.h>
 
diff --git a/include/net/cfg802154.h b/include/net/cfg802154.h
new file mode 100644 (file)
index 0000000..5c67467
--- /dev/null
@@ -0,0 +1,103 @@
+/*
+ * Copyright (C) 2007, 2008, 2009 Siemens AG
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2
+ * as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * Written by:
+ * Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
+ */
+
+#ifndef __NET_CFG802154_H
+#define __NET_CFG802154_H
+
+#include <linux/netdevice.h>
+#include <linux/mutex.h>
+#include <linux/bug.h>
+
+/* According to the IEEE 802.15.4 stadard the upper most significant bits of
+ * the 32-bit channel bitmaps shall be used as an integer value to specify 32
+ * possible channel pages. The lower 27 bits of the channel bit map shall be
+ * used as a bit mask to specify channel numbers within a channel page.
+ */
+#define WPAN_NUM_CHANNELS      27
+#define WPAN_NUM_PAGES         32
+
+struct wpan_phy {
+       struct mutex pib_lock;
+
+       /*
+        * This is a PIB according to 802.15.4-2011.
+        * We do not provide timing-related variables, as they
+        * aren't used outside of driver
+        */
+       u8 current_channel;
+       u8 current_page;
+       u32 channels_supported[32];
+       s8 transmit_power;
+       u8 cca_mode;
+       u8 min_be;
+       u8 max_be;
+       u8 csma_retries;
+       s8 frame_retries;
+
+       bool lbt;
+       s32 cca_ed_level;
+
+       struct device dev;
+       int idx;
+
+       struct net_device *(*add_iface)(struct wpan_phy *phy,
+                                       const char *name, int type);
+       void (*del_iface)(struct wpan_phy *phy, struct net_device *dev);
+
+       int (*set_txpower)(struct wpan_phy *phy, int db);
+       int (*set_lbt)(struct wpan_phy *phy, bool on);
+       int (*set_cca_mode)(struct wpan_phy *phy, u8 cca_mode);
+       int (*set_cca_ed_level)(struct wpan_phy *phy, int level);
+       int (*set_csma_params)(struct wpan_phy *phy, u8 min_be, u8 max_be,
+                              u8 retries);
+       int (*set_frame_retries)(struct wpan_phy *phy, s8 retries);
+
+       char priv[0] __aligned(NETDEV_ALIGN);
+};
+
+#define to_phy(_dev)   container_of(_dev, struct wpan_phy, dev)
+
+struct wpan_phy *wpan_phy_alloc(size_t priv_size);
+static inline void wpan_phy_set_dev(struct wpan_phy *phy, struct device *dev)
+{
+       phy->dev.parent = dev;
+}
+
+int wpan_phy_register(struct wpan_phy *phy);
+void wpan_phy_unregister(struct wpan_phy *phy);
+void wpan_phy_free(struct wpan_phy *phy);
+/* Same semantics as for class_for_each_device */
+int wpan_phy_for_each(int (*fn)(struct wpan_phy *phy, void *data), void *data);
+
+static inline void *wpan_phy_priv(struct wpan_phy *phy)
+{
+       BUG_ON(!phy);
+       return &phy->priv;
+}
+
+struct wpan_phy *wpan_phy_find(const char *str);
+
+static inline void wpan_phy_put(struct wpan_phy *phy)
+{
+       put_device(&phy->dev);
+}
+
+static inline const char *wpan_phy_name(struct wpan_phy *phy)
+{
+       return dev_name(&phy->dev);
+}
+
+#endif /* __NET_CFG802154_H */
diff --git a/include/net/wpan-phy.h b/include/net/wpan-phy.h
deleted file mode 100644 (file)
index 1e9795f..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-/*
- * Copyright (C) 2007, 2008, 2009 Siemens AG
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2
- * as published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * Written by:
- * Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
- */
-
-#ifndef WPAN_PHY_H
-#define WPAN_PHY_H
-
-#include <linux/netdevice.h>
-#include <linux/mutex.h>
-#include <linux/bug.h>
-
-/* According to the IEEE 802.15.4 stadard the upper most significant bits of
- * the 32-bit channel bitmaps shall be used as an integer value to specify 32
- * possible channel pages. The lower 27 bits of the channel bit map shall be
- * used as a bit mask to specify channel numbers within a channel page.
- */
-#define WPAN_NUM_CHANNELS      27
-#define WPAN_NUM_PAGES         32
-
-struct wpan_phy {
-       struct mutex pib_lock;
-
-       /*
-        * This is a PIB according to 802.15.4-2011.
-        * We do not provide timing-related variables, as they
-        * aren't used outside of driver
-        */
-       u8 current_channel;
-       u8 current_page;
-       u32 channels_supported[32];
-       s8 transmit_power;
-       u8 cca_mode;
-       u8 min_be;
-       u8 max_be;
-       u8 csma_retries;
-       s8 frame_retries;
-
-       bool lbt;
-       s32 cca_ed_level;
-
-       struct device dev;
-       int idx;
-
-       struct net_device *(*add_iface)(struct wpan_phy *phy,
-                                       const char *name, int type);
-       void (*del_iface)(struct wpan_phy *phy, struct net_device *dev);
-
-       int (*set_txpower)(struct wpan_phy *phy, int db);
-       int (*set_lbt)(struct wpan_phy *phy, bool on);
-       int (*set_cca_mode)(struct wpan_phy *phy, u8 cca_mode);
-       int (*set_cca_ed_level)(struct wpan_phy *phy, int level);
-       int (*set_csma_params)(struct wpan_phy *phy, u8 min_be, u8 max_be,
-                              u8 retries);
-       int (*set_frame_retries)(struct wpan_phy *phy, s8 retries);
-
-       char priv[0] __aligned(NETDEV_ALIGN);
-};
-
-#define to_phy(_dev)   container_of(_dev, struct wpan_phy, dev)
-
-struct wpan_phy *wpan_phy_alloc(size_t priv_size);
-static inline void wpan_phy_set_dev(struct wpan_phy *phy, struct device *dev)
-{
-       phy->dev.parent = dev;
-}
-
-int wpan_phy_register(struct wpan_phy *phy);
-void wpan_phy_unregister(struct wpan_phy *phy);
-void wpan_phy_free(struct wpan_phy *phy);
-/* Same semantics as for class_for_each_device */
-int wpan_phy_for_each(int (*fn)(struct wpan_phy *phy, void *data), void *data);
-
-static inline void *wpan_phy_priv(struct wpan_phy *phy)
-{
-       BUG_ON(!phy);
-       return &phy->priv;
-}
-
-struct wpan_phy *wpan_phy_find(const char *str);
-
-static inline void wpan_phy_put(struct wpan_phy *phy)
-{
-       put_device(&phy->dev);
-}
-
-static inline const char *wpan_phy_name(struct wpan_phy *phy)
-{
-       return dev_name(&phy->dev);
-}
-#endif
index 78a1529..a9c8e3e 100644 (file)
@@ -31,7 +31,7 @@
 #include <net/nl802154.h>
 #include <net/ieee802154.h>
 #include <net/ieee802154_netdev.h>
-#include <net/wpan-phy.h>
+#include <net/cfg802154.h>
 
 #include "ieee802154.h"
 
index e943e20..0afe760 100644 (file)
@@ -23,7 +23,7 @@
 #include <linux/if_arp.h>
 #include <net/netlink.h>
 #include <net/genetlink.h>
-#include <net/wpan-phy.h>
+#include <net/cfg802154.h>
 #include <net/af_ieee802154.h>
 #include <net/ieee802154_netdev.h>
 #include <net/rtnetlink.h> /* for rtnl_{un,}lock */
index e4c6fb3..760b7d7 100644 (file)
@@ -17,7 +17,7 @@
 #include <linux/module.h>
 #include <linux/device.h>
 
-#include <net/wpan-phy.h>
+#include <net/cfg802154.h>
 
 #include "ieee802154.h"
 
index 5adcbd8..5a60407 100644 (file)
@@ -27,7 +27,7 @@
 #include <net/mac802154.h>
 #include <net/ieee802154_netdev.h>
 #include <net/ieee802154.h>
-#include <net/wpan-phy.h>
+#include <net/cfg802154.h>
 
 #include "ieee802154_i.h"
 
index 7c4b05b..f118ea0 100644 (file)
@@ -23,7 +23,7 @@
 
 #include <net/ieee802154.h>
 #include <net/ieee802154_netdev.h>
-#include <net/wpan-phy.h>
+#include <net/cfg802154.h>
 #include <net/mac802154.h>
 #include <net/nl802154.h>
 
index d11e42a..9798c74 100644 (file)
@@ -25,7 +25,7 @@
 #include <net/mac802154.h>
 #include <net/ieee802154_netdev.h>
 #include <net/route.h>
-#include <net/wpan-phy.h>
+#include <net/cfg802154.h>
 
 #include "ieee802154_i.h"
 
index 91cd3b2..7c94672 100644 (file)
@@ -21,7 +21,7 @@
 
 #include <net/mac802154.h>
 #include <net/ieee802154_netdev.h>
-#include <net/wpan-phy.h>
+#include <net/cfg802154.h>
 
 #include "ieee802154_i.h"
 
index 2647a9e..ca1dedd 100644 (file)
@@ -25,7 +25,7 @@
 #include <net/ieee802154.h>
 #include <net/mac802154.h>
 #include <net/netlink.h>
-#include <net/wpan-phy.h>
+#include <net/cfg802154.h>
 #include <linux/nl802154.h>
 
 #include "ieee802154_i.h"
index ef11cc6..8f537bf 100644 (file)
@@ -23,7 +23,7 @@
 
 #include <net/ieee802154_netdev.h>
 #include <net/mac802154.h>
-#include <net/wpan-phy.h>
+#include <net/cfg802154.h>
 
 #include "ieee802154_i.h"