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