diff options
author | Sergey Lapin <slapin@ossfans.org> | 2009-06-08 08:18:49 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-06-09 08:25:33 -0400 |
commit | 2c21d11518b688cd4c8e7ddfcd4ba41482ad075b (patch) | |
tree | 9f662cdc499da079616b882b98ab71e488bd5a4d /net/ieee802154/nl_policy.c | |
parent | 9ec7671603573ede31207eb5b0b3e1aa211b2854 (diff) |
net: add NL802154 interface for configuration of 802.15.4 devices
Add a netlink interface for configuration of IEEE 802.15.4 device. Also this
interface specifies events notification sent by devices towards higher layers.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Sergey Lapin <slapin@ossfans.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ieee802154/nl_policy.c')
-rw-r--r-- | net/ieee802154/nl_policy.c | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/net/ieee802154/nl_policy.c b/net/ieee802154/nl_policy.c new file mode 100644 index 000000000000..c7d71d1adcac --- /dev/null +++ b/net/ieee802154/nl_policy.c | |||
@@ -0,0 +1,52 @@ | |||
1 | /* | ||
2 | * nl802154.h | ||
3 | * | ||
4 | * Copyright (C) 2007, 2008 Siemens AG | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License version 2 | ||
8 | * as published by the Free Software Foundation. | ||
9 | * | ||
10 | * This program is distributed in the hope that it will be useful, | ||
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
13 | * GNU General Public License for more details. | ||
14 | * | ||
15 | * You should have received a copy of the GNU General Public License along | ||
16 | * with this program; if not, write to the Free Software Foundation, Inc., | ||
17 | * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | ||
18 | * | ||
19 | */ | ||
20 | |||
21 | #include <linux/kernel.h> | ||
22 | #include <net/netlink.h> | ||
23 | #include <linux/nl802154.h> | ||
24 | |||
25 | #define NLA_HW_ADDR NLA_U64 | ||
26 | |||
27 | struct nla_policy ieee802154_policy[IEEE802154_ATTR_MAX + 1] = { | ||
28 | [IEEE802154_ATTR_DEV_NAME] = { .type = NLA_STRING, }, | ||
29 | [IEEE802154_ATTR_DEV_INDEX] = { .type = NLA_U32, }, | ||
30 | |||
31 | [IEEE802154_ATTR_STATUS] = { .type = NLA_U8, }, | ||
32 | [IEEE802154_ATTR_SHORT_ADDR] = { .type = NLA_U16, }, | ||
33 | [IEEE802154_ATTR_HW_ADDR] = { .type = NLA_HW_ADDR, }, | ||
34 | [IEEE802154_ATTR_PAN_ID] = { .type = NLA_U16, }, | ||
35 | [IEEE802154_ATTR_CHANNEL] = { .type = NLA_U8, }, | ||
36 | [IEEE802154_ATTR_COORD_SHORT_ADDR] = { .type = NLA_U16, }, | ||
37 | [IEEE802154_ATTR_COORD_HW_ADDR] = { .type = NLA_HW_ADDR, }, | ||
38 | [IEEE802154_ATTR_COORD_PAN_ID] = { .type = NLA_U16, }, | ||
39 | [IEEE802154_ATTR_SRC_SHORT_ADDR] = { .type = NLA_U16, }, | ||
40 | [IEEE802154_ATTR_SRC_HW_ADDR] = { .type = NLA_HW_ADDR, }, | ||
41 | [IEEE802154_ATTR_SRC_PAN_ID] = { .type = NLA_U16, }, | ||
42 | [IEEE802154_ATTR_DEST_SHORT_ADDR] = { .type = NLA_U16, }, | ||
43 | [IEEE802154_ATTR_DEST_HW_ADDR] = { .type = NLA_HW_ADDR, }, | ||
44 | [IEEE802154_ATTR_DEST_PAN_ID] = { .type = NLA_U16, }, | ||
45 | |||
46 | [IEEE802154_ATTR_CAPABILITY] = { .type = NLA_U8, }, | ||
47 | [IEEE802154_ATTR_REASON] = { .type = NLA_U8, }, | ||
48 | [IEEE802154_ATTR_SCAN_TYPE] = { .type = NLA_U8, }, | ||
49 | [IEEE802154_ATTR_CHANNELS] = { .type = NLA_U32, }, | ||
50 | [IEEE802154_ATTR_DURATION] = { .type = NLA_U8, }, | ||
51 | [IEEE802154_ATTR_ED_LIST] = { .len = 27 }, | ||
52 | }; | ||