6lowpan: introduce new net/6lowpan directory

This patch moves generic code which is used by bluetooth and ieee802154
6lowpan to a new net/6lowpan directory. This directory contains generic
6LoWPAN code which is shared between bluetooth and ieee802154 MAC-Layer.

This is the IPHC - "IPv6 Header Compression" format at the moment. Which
is described by RFC 6282 [0]. The BLTE 6LoWPAN draft describes that the
IPHC is the same format like IEEE 802.15.4, see [1].

Futuremore we can put more code into this directory which is shared
between BLTE and IEEE 802.15.4 6LoWPAN like RFC 6775 or the routing
protocol RPL RFC 6550.

To avoid naming conflicts I renamed 6lowpan-y to ieee802154_6lowpan-y
in net/ieee802154/Makefile.

[0] http://tools.ietf.org/html/rfc6282
[1] http://tools.ietf.org/html/draft-ietf-6lowpan-btle-12#section-3.2
[2] http://tools.ietf.org/html/rfc6775
[3] http://tools.ietf.org/html/rfc6550

Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Acked-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
This commit is contained in:
Alexander Aring 2014-07-11 10:24:18 +02:00 коммит произвёл Marcel Holtmann
Родитель 6c53823ae0
Коммит 2c6bed7cfc
8 изменённых файлов: 16 добавлений и 14 удалений

6
net/6lowpan/Kconfig Normal file
Просмотреть файл

@ -0,0 +1,6 @@
config 6LOWPAN
bool "6LoWPAN Support"
depends on IPV6
---help---
This enables IPv6 over Low power Wireless Personal Area Network -
"6LoWPAN" which is supported by IEEE 802.15.4 or Bluetooth stacks.

3
net/6lowpan/Makefile Normal file
Просмотреть файл

@ -0,0 +1,3 @@
obj-$(CONFIG_6LOWPAN) := 6lowpan.o
6lowpan-y := iphc.o

Просмотреть файл

Просмотреть файл

@ -214,6 +214,7 @@ source "drivers/net/appletalk/Kconfig"
source "net/x25/Kconfig" source "net/x25/Kconfig"
source "net/lapb/Kconfig" source "net/lapb/Kconfig"
source "net/phonet/Kconfig" source "net/phonet/Kconfig"
source "net/6lowpan/Kconfig"
source "net/ieee802154/Kconfig" source "net/ieee802154/Kconfig"
source "net/mac802154/Kconfig" source "net/mac802154/Kconfig"
source "net/sched/Kconfig" source "net/sched/Kconfig"

Просмотреть файл

@ -57,7 +57,8 @@ obj-$(CONFIG_CAIF) += caif/
ifneq ($(CONFIG_DCB),) ifneq ($(CONFIG_DCB),)
obj-y += dcb/ obj-y += dcb/
endif endif
obj-y += ieee802154/ obj-$(CONFIG_6LOWPAN) += 6lowpan/
obj-$(CONFIG_IEEE802154) += ieee802154/
obj-$(CONFIG_MAC802154) += mac802154/ obj-$(CONFIG_MAC802154) += mac802154/
ifeq ($(CONFIG_NET),y) ifeq ($(CONFIG_NET),y)

Просмотреть файл

@ -41,8 +41,7 @@ menuconfig BT
config BT_6LOWPAN config BT_6LOWPAN
tristate "Bluetooth 6LoWPAN support" tristate "Bluetooth 6LoWPAN support"
depends on BT && IPV6 depends on BT && 6LOWPAN
select 6LOWPAN_IPHC if BT_6LOWPAN
help help
IPv6 compression over Bluetooth Low Energy. IPv6 compression over Bluetooth Low Energy.

Просмотреть файл

@ -12,13 +12,6 @@ config IEEE802154
config IEEE802154_6LOWPAN config IEEE802154_6LOWPAN
tristate "6lowpan support over IEEE 802.15.4" tristate "6lowpan support over IEEE 802.15.4"
depends on IEEE802154 && IPV6 depends on IEEE802154 && 6LOWPAN
select 6LOWPAN_IPHC
---help--- ---help---
IPv6 compression over IEEE 802.15.4. IPv6 compression over IEEE 802.15.4.
config 6LOWPAN_IPHC
tristate
---help---
6lowpan compression code which is shared between IEEE 802.15.4 and Bluetooth
stacks.

Просмотреть файл

@ -1,8 +1,7 @@
obj-$(CONFIG_IEEE802154) += ieee802154.o af_802154.o obj-$(CONFIG_IEEE802154) += ieee802154.o af_802154.o
obj-$(CONFIG_IEEE802154_6LOWPAN) += 6lowpan.o obj-$(CONFIG_IEEE802154_6LOWPAN) += ieee802154_6lowpan.o
obj-$(CONFIG_6LOWPAN_IPHC) += 6lowpan_iphc.o
6lowpan-y := 6lowpan_rtnl.o reassembly.o ieee802154_6lowpan-y := 6lowpan_rtnl.o reassembly.o
ieee802154-y := netlink.o nl-mac.o nl-phy.o nl_policy.o wpan-class.o \ ieee802154-y := netlink.o nl-mac.o nl-phy.o nl_policy.o wpan-class.o \
header_ops.o header_ops.o
af_802154-y := af_ieee802154.o raw.o dgram.o af_802154-y := af_ieee802154.o raw.o dgram.o