diff options
author | Alexander Aring <alex.aring@gmail.com> | 2014-11-05 14:51:24 -0500 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2014-11-05 15:53:05 -0500 |
commit | 705cbbbe9ccca260658f971a4369c22f5704db75 (patch) | |
tree | 2dd83c1c2334a2c80502085a6ebeaa3d6e434213 | |
parent | 239a84a9a0bcbc7214eb93fb3ba76962de846239 (diff) |
mac802154: cleanup ieee802154_netdev_to_extended_addr
This patch cleanups the ieee802154_be64_to_le64 to have a similar
function like ieee802154_le64_to_be64 only with switched source and
destionation types.
Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
-rw-r--r-- | include/net/mac802154.h | 11 | ||||
-rw-r--r-- | net/mac802154/iface.c | 2 |
2 files changed, 8 insertions, 5 deletions
diff --git a/include/net/mac802154.h b/include/net/mac802154.h index cc188cb4f94d..632f6566adb5 100644 --- a/include/net/mac802154.h +++ b/include/net/mac802154.h | |||
@@ -224,12 +224,15 @@ struct ieee802154_ops { | |||
224 | }; | 224 | }; |
225 | 225 | ||
226 | /** | 226 | /** |
227 | * ieee802154_netdev_to_extended_addr - convert big endian 64 byte void pointer to __le64 | 227 | * ieee802154_be64_to_le64 - copies and convert be64 to le64 |
228 | * @dev_addr: big endian address pointer like netdevice dev_addr attribute | 228 | * @le64_dst: le64 destination pointer |
229 | * @be64_src: be64 source pointer | ||
229 | */ | 230 | */ |
230 | static inline __le64 ieee802154_netdev_to_extended_addr(const void *dev_addr) | 231 | static inline void ieee802154_be64_to_le64(void *le64_dst, const void *be64_src) |
231 | { | 232 | { |
232 | return (__force __le64)swab64p(dev_addr); | 233 | __le64 tmp = (__force __le64)swab64p(be64_src); |
234 | |||
235 | memcpy(le64_dst, &tmp, IEEE802154_EXTENDED_ADDR_LEN); | ||
233 | } | 236 | } |
234 | 237 | ||
235 | /** | 238 | /** |
diff --git a/net/mac802154/iface.c b/net/mac802154/iface.c index 764ce496fdc3..a1aa09b03d12 100644 --- a/net/mac802154/iface.c +++ b/net/mac802154/iface.c | |||
@@ -117,7 +117,7 @@ static int mac802154_wpan_mac_addr(struct net_device *dev, void *p) | |||
117 | if (netif_running(dev)) | 117 | if (netif_running(dev)) |
118 | return -EBUSY; | 118 | return -EBUSY; |
119 | 119 | ||
120 | extended_addr = ieee802154_netdev_to_extended_addr(addr->sa_data); | 120 | ieee802154_be64_to_le64(&extended_addr, addr->sa_data); |
121 | if (!ieee802154_is_valid_extended_addr(extended_addr)) | 121 | if (!ieee802154_is_valid_extended_addr(extended_addr)) |
122 | return -EINVAL; | 122 | return -EINVAL; |
123 | 123 | ||