From: John Crispin Date: Fri, 10 Apr 2015 08:29:35 +0000 (+0000) Subject: kernel: adds wpan related packages X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fsvn-archive%2Farchive.git;a=commitdiff_plain;h=b7292a63fd39838a3e5433e3dbc9a80ffabe2c39 kernel: adds wpan related packages This patch adds the IEEE-802.15.4 and 6LoWPAN related packages. Signed-off-by: Varka Bhadram SVN-Revision: 45348 --- diff --git a/package/kernel/linux/modules/wpan.mk b/package/kernel/linux/modules/wpan.mk new file mode 100644 index 0000000000..b0adda1bae --- /dev/null +++ b/package/kernel/linux/modules/wpan.mk @@ -0,0 +1,122 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. + +WPAN_MENU:=Wireless Drivers + +define KernelPackage/ieee802154 + SUBMENU:=$(WPAN_MENU) + TITLE:=IEEE-802.15.4 support + DEPENDS:=@!LINUX_4.0 + KCONFIG:= \ + CONFIG_IEEE802154 \ + CONFIG_IEEE802154_SOCKET=y + FILES:= \ + $(LINUX_DIR)/net/ieee802154/ieee802154.ko \ + $(LINUX_DIR)/net/ieee802154/ieee802154_socket.ko + AUTOLOAD:=$(call AutoLoad,90,ieee802154 ieee802154_socket) +endef + +define KernelPackage/ieee802154/description + IEEE Std 802.15.4 defines a low data rate, low power and low + complexity short range wireless personal area networks. It was + designed to organise networks of sensors, switches, etc automation + devices. Maximum allowed data rate is 250 kb/s and typical personal + operating space around 10m. +endef + +$(eval $(call KernelPackage,ieee802154)) + +define KernelPackage/mac802154 + SUBMENU:=$(WPAN_MENU) + TITLE:=MAC-802.15.4 support + DEPENDS:=@!LINUX_4.0 + KCONFIG:= \ + CONFIG_MAC802154 \ + CONFIG_IEEE802154_DRIVERS=y + DEPENDS:=+kmod-ieee802154 +kmod-crypto-aead +kmod-lib-crc-ccitt @!LINUX_4.0 + FILES:=$(LINUX_DIR)/net/mac802154/mac802154.ko + AUTOLOAD:=$(call AutoLoad,91,mac802154) +endef + +define KernelPackage/mac802154/description + This option enables the hardware independent IEEE 802.15.4 + networking stack for SoftMAC devices (the ones implementing + only PHY level of IEEE 802.15.4 standard). + + Note: this implementation is neither certified, nor feature + complete! Compatibility with other implementations hasn't + been tested yet! +endef + +$(eval $(call KernelPackage,mac802154)) + +define KernelPackage/fakelb + SUBMENU:=$(WPAN_MENU) + TITLE:=Fake LR-WPAN driver + DEPENDS:=+kmod-mac802154 @!LINUX_4.0 + KCONFIG:=CONFIG_IEEE802154_FAKELB + FILES:=$(LINUX_DIR)/drivers/net/ieee802154/fakelb.ko + AUTOLOAD:=$(call AutoLoad,92,fakelb) +endef + +define KernelPackage/fakelb/description + Say Y here to enable the fake driver that can emulate a net + of several interconnected radio devices. +endef + +$(eval $(call KernelPackage,fakelb)) + +define KernelPackage/at86rf230 + SUBMENU:=$(WPAN_MENU) + TITLE:=AT86RF230 transceiver driver + DEPENDS:=+kmod-mac802154 + KCONFIG:=CONFIG_IEEE802154_AT86RF230 \ + CONFIG_SPI=y \ + CONFIG_SPI_MASTER=y + FILES:=$(LINUX_DIR)/drivers/net/ieee802154/at86rf230.ko +endef + +$(eval $(call KernelPackage,at86rf230)) + +define KernelPackage/mrf24j40 + SUBMENU:=$(WPAN_MENU) + TITLE:=MRF24J40 transceiver driver + DEPENDS:=+kmod-mac802154 + KCONFIG:=CONFIG_IEEE802154_MRF24J40 \ + CONFIG_SPI=y \ + CONFIG_SPI_MASTER=y + FILES:=$(LINUX_DIR)/drivers/net/ieee802154/mrf24j40.ko +endef + +$(eval $(call KernelPackage,mrf24j40)) + +define KernelPackage/cc2520 + SUBMENU:=$(WPAN_MENU) + TITLE:=CC2520 transceiver driver + DEPENDS:=+kmod-mac802154 + KCONFIG:=CONFIG_IEEE802154_CC2520 \ + CONFIG_SPI=y \ + CONFIG_SPI_MASTER=y + FILES:=$(LINUX_DIR)/drivers/net/ieee802154/cc2520.ko +endef + +$(eval $(call KernelPackage,cc2520)) + +define KernelPackage/ieee802154_6lowpan + SUBMENU:=$(WPAN_MENU) + TITLE:= 6LoWPAN support over IEEE-802.15.4 + DEPENDS:=@!LINUX_4.0 + KCONFIG:=IEEE802154_6LOWPAN + DEPENDS:=@!LINUX_4.0 + FILES:=$(LINUX_DIR)/net/ieee802154/6lowpan/ieee802154_6lowpan.ko + AUTOLOAD:=$(call AutoLoad,91,ieee802154_6lowpan) +endef + +define KernelPackage/ieee802154_6lowpan/description + IPv6 compression over IEEE 802.15.4 +endef + +$(eval $(call KernelPackage,ieee802154_6lowpan))