wpan.mk 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  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:=WPAN 802.15.4 Support
  7. define KernelPackage/ieee802154
  8. SUBMENU:=$(WPAN_MENU)
  9. TITLE:=IEEE-802.15.4 support
  10. KCONFIG:= \
  11. CONFIG_IEEE802154 \
  12. CONFIG_IEEE802154_SOCKET=y \
  13. CONFIG_IEEE802154_NL802154_EXPERIMENTAL=n
  14. FILES:= \
  15. $(LINUX_DIR)/net/ieee802154/ieee802154.ko \
  16. $(LINUX_DIR)/net/ieee802154/ieee802154_socket.ko@ge4.0
  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:=+kmod-ieee802154 +kmod-crypto-aead +kmod-lib-crc-ccitt
  31. KCONFIG:= \
  32. CONFIG_MAC802154 \
  33. CONFIG_IEEE802154_DRIVERS=y
  34. FILES:=$(LINUX_DIR)/net/mac802154/mac802154.ko
  35. AUTOLOAD:=$(call AutoLoad,91,mac802154)
  36. endef
  37. define KernelPackage/mac802154/description
  38. This option enables the hardware independent IEEE 802.15.4
  39. networking stack for SoftMAC devices (the ones implementing
  40. only PHY level of IEEE 802.15.4 standard).
  41. Note: this implementation is neither certified, nor feature
  42. complete! Compatibility with other implementations hasn't
  43. been tested yet!
  44. endef
  45. $(eval $(call KernelPackage,mac802154))
  46. define KernelPackage/fakelb
  47. SUBMENU:=$(WPAN_MENU)
  48. TITLE:=Fake LR-WPAN driver
  49. DEPENDS:=+kmod-mac802154
  50. KCONFIG:=CONFIG_IEEE802154_FAKELB
  51. FILES:=$(LINUX_DIR)/drivers/net/ieee802154/fakelb.ko
  52. AUTOLOAD:=$(call AutoLoad,92,fakelb)
  53. endef
  54. define KernelPackage/fakelb/description
  55. Say Y here to enable the fake driver that can emulate a net
  56. of several interconnected radio devices.
  57. endef
  58. $(eval $(call KernelPackage,fakelb))
  59. define KernelPackage/atusb
  60. SUBMENU:=$(WPAN_MENU)
  61. TITLE:=ATUSB transceiver driver
  62. DEPENDS:=@USB_SUPPORT +kmod-usb-core +kmod-mac802154
  63. KCONFIG:=CONFIG_IEEE802154_ATUSB
  64. FILES:=$(LINUX_DIR)/drivers/net/ieee802154/atusb.ko
  65. AUTOLOAD:=$(call AutoProbe,atusb)
  66. endef
  67. $(eval $(call KernelPackage,atusb))
  68. define KernelPackage/at86rf230
  69. SUBMENU:=$(WPAN_MENU)
  70. TITLE:=AT86RF230 transceiver driver
  71. DEPENDS:=+kmod-mac802154 +kmod-regmap-spi
  72. KCONFIG:=CONFIG_IEEE802154_AT86RF230 \
  73. CONFIG_IEEE802154_AT86RF230_DEBUGFS=n \
  74. CONFIG_SPI=y \
  75. CONFIG_SPI_MASTER=y
  76. FILES:=$(LINUX_DIR)/drivers/net/ieee802154/at86rf230.ko
  77. endef
  78. $(eval $(call KernelPackage,at86rf230))
  79. define KernelPackage/mrf24j40
  80. SUBMENU:=$(WPAN_MENU)
  81. TITLE:=MRF24J40 transceiver driver
  82. DEPENDS:=+kmod-mac802154 +kmod-regmap-spi
  83. KCONFIG:=CONFIG_IEEE802154_MRF24J40 \
  84. CONFIG_SPI=y \
  85. CONFIG_SPI_MASTER=y
  86. FILES:=$(LINUX_DIR)/drivers/net/ieee802154/mrf24j40.ko
  87. endef
  88. $(eval $(call KernelPackage,mrf24j40))
  89. define KernelPackage/cc2520
  90. SUBMENU:=$(WPAN_MENU)
  91. TITLE:=CC2520 transceiver driver
  92. DEPENDS:=+kmod-mac802154
  93. KCONFIG:=CONFIG_IEEE802154_CC2520 \
  94. CONFIG_SPI=y \
  95. CONFIG_SPI_MASTER=y
  96. FILES:=$(LINUX_DIR)/drivers/net/ieee802154/cc2520.ko
  97. endef
  98. $(eval $(call KernelPackage,cc2520))
  99. define KernelPackage/ieee802154_6lowpan
  100. SUBMENU:=$(WPAN_MENU)
  101. TITLE:= 6LoWPAN support over IEEE-802.15.4
  102. DEPENDS:=+kmod-6lowpan +kmod-ieee802154
  103. KCONFIG:=CONFIG_IEEE802154_6LOWPAN
  104. FILES:= \
  105. $(LINUX_DIR)/net/ieee802154/6lowpan/ieee802154_6lowpan.ko@ge4.0 \
  106. $(LINUX_DIR)/net/ieee802154/ieee802154_6lowpan.ko@lt4.0
  107. AUTOLOAD:=$(call AutoLoad,91,ieee802154_6lowpan)
  108. endef
  109. define KernelPackage/ieee802154_6lowpan/description
  110. IPv6 compression over IEEE 802.15.4
  111. endef
  112. $(eval $(call KernelPackage,ieee802154_6lowpan))