9ba5631807aea894cad1797dbe2eb8b5e7549594
[openwrt/staging/chunkeey.git] / package / kernel / linux / modules / wpan.mk
1 #
2 # Copyright (C) 2015 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6
7 WPAN_MENU:=WPAN 802.15.4 Support
8
9 define KernelPackage/ieee802154
10 SUBMENU:=$(WPAN_MENU)
11 TITLE:=IEEE-802.15.4 support
12 DEPENDS:=@LINUX_4_0
13 KCONFIG:= \
14 CONFIG_IEEE802154 \
15 CONFIG_IEEE802154_SOCKET=y
16 FILES:= \
17 $(LINUX_DIR)/net/ieee802154/ieee802154.ko \
18 $(LINUX_DIR)/net/ieee802154/ieee802154_socket.ko@ge4.0
19 AUTOLOAD:=$(call AutoLoad,90,ieee802154 ieee802154_socket)
20 endef
21
22 define KernelPackage/ieee802154/description
23 IEEE Std 802.15.4 defines a low data rate, low power and low
24 complexity short range wireless personal area networks. It was
25 designed to organise networks of sensors, switches, etc automation
26 devices. Maximum allowed data rate is 250 kb/s and typical personal
27 operating space around 10m.
28 endef
29
30 $(eval $(call KernelPackage,ieee802154))
31
32 define KernelPackage/mac802154
33 SUBMENU:=$(WPAN_MENU)
34 TITLE:=MAC-802.15.4 support
35 DEPENDS:=+kmod-ieee802154 +kmod-crypto-aead +kmod-lib-crc-ccitt @LINUX_4_0
36 KCONFIG:= \
37 CONFIG_MAC802154 \
38 CONFIG_IEEE802154_DRIVERS=y
39 FILES:=$(LINUX_DIR)/net/mac802154/mac802154.ko
40 AUTOLOAD:=$(call AutoLoad,91,mac802154)
41 endef
42
43 define KernelPackage/mac802154/description
44 This option enables the hardware independent IEEE 802.15.4
45 networking stack for SoftMAC devices (the ones implementing
46 only PHY level of IEEE 802.15.4 standard).
47
48 Note: this implementation is neither certified, nor feature
49 complete! Compatibility with other implementations hasn't
50 been tested yet!
51 endef
52
53 $(eval $(call KernelPackage,mac802154))
54
55 define KernelPackage/fakelb
56 SUBMENU:=$(WPAN_MENU)
57 TITLE:=Fake LR-WPAN driver
58 DEPENDS:=+kmod-mac802154 @LINUX_4_0
59 KCONFIG:=CONFIG_IEEE802154_FAKELB
60 FILES:=$(LINUX_DIR)/drivers/net/ieee802154/fakelb.ko
61 AUTOLOAD:=$(call AutoLoad,92,fakelb)
62 endef
63
64 define KernelPackage/fakelb/description
65 Say Y here to enable the fake driver that can emulate a net
66 of several interconnected radio devices.
67 endef
68
69 $(eval $(call KernelPackage,fakelb))
70
71 define KernelPackage/at86rf230
72 SUBMENU:=$(WPAN_MENU)
73 TITLE:=AT86RF230 transceiver driver
74 DEPENDS:=+kmod-mac802154
75 KCONFIG:=CONFIG_IEEE802154_AT86RF230 \
76 CONFIG_SPI=y \
77 CONFIG_SPI_MASTER=y
78 FILES:=$(LINUX_DIR)/drivers/net/ieee802154/at86rf230.ko
79 endef
80
81 $(eval $(call KernelPackage,at86rf230))
82
83 define KernelPackage/mrf24j40
84 SUBMENU:=$(WPAN_MENU)
85 TITLE:=MRF24J40 transceiver driver
86 DEPENDS:=+kmod-mac802154
87 KCONFIG:=CONFIG_IEEE802154_MRF24J40 \
88 CONFIG_SPI=y \
89 CONFIG_SPI_MASTER=y
90 FILES:=$(LINUX_DIR)/drivers/net/ieee802154/mrf24j40.ko
91 endef
92
93 $(eval $(call KernelPackage,mrf24j40))
94
95 define KernelPackage/cc2520
96 SUBMENU:=$(WPAN_MENU)
97 TITLE:=CC2520 transceiver driver
98 DEPENDS:=+kmod-mac802154
99 KCONFIG:=CONFIG_IEEE802154_CC2520 \
100 CONFIG_SPI=y \
101 CONFIG_SPI_MASTER=y
102 FILES:=$(LINUX_DIR)/drivers/net/ieee802154/cc2520.ko
103 endef
104
105 $(eval $(call KernelPackage,cc2520))
106
107 define KernelPackage/ieee802154_6lowpan
108 SUBMENU:=$(WPAN_MENU)
109 TITLE:= 6LoWPAN support over IEEE-802.15.4
110 DEPENDS:=@LINUX_4_0 +kmod-6lowpan
111 KCONFIG:=CONFIG_IEEE802154_6LOWPAN
112 FILES:= \
113 $(LINUX_DIR)/net/ieee802154/6lowpan/ieee802154_6lowpan.ko@ge4.0 \
114 $(LINUX_DIR)/net/ieee802154/ieee802154_6lowpan.ko@lt4.0
115 AUTOLOAD:=$(call AutoLoad,91,ieee802154_6lowpan)
116 endef
117
118 define KernelPackage/ieee802154_6lowpan/description
119 IPv6 compression over IEEE 802.15.4
120 endef
121
122 $(eval $(call KernelPackage,ieee802154_6lowpan))