wpan.mk 3.4 KB

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