Skip to contentSkip to conversation

ieee802154: add support for atusb transceiver

PFC bluetooth-next Alexander Aring 1 participant 1 message May 13, 2015

Subsystems (3)
lore
Share & tools
lore

Alexander Aring

author maintainer
#0 lore raw

This patch adds support for the atusb transceiver.

The current driver supports basic functionality only. Possible further tasks would be to sync functionality with the at86rf230 driver, because the atusb use internally an at86rf231 transceiver. Some of these features need a firmware update like AACK and ARET handling.

I did small changes to this driver to work with xmit_async callback and setting of a random extended perm address.

Cc Werner Almesberger <[email protected]>
Cc Stefan Schmidt <[email protected]>
Cc Richard Sharpe <[email protected]>

---
This patch is currently based on pending patches which are not mainline now. If there are mainline, then I will send a real patch and not a RFC. This version is just for reviewing and look at current status.

btw: We should update the firmware to use RX_AACK_ON (I hacked it and it works well on my side, but I need to look deeper into the firmware. I think I can do that because I also most reworked the at86rf230 driver). Nevertheless this driver need to be mainline and it supports ssynchronous xmit handling now, which is fine.

 drivers/net/ieee802154/Kconfig     |  10 +
 drivers/net/ieee802154/Makefile    |   1 +
 drivers/net/ieee802154/at86rf230.c | 199 +----------
 drivers/net/ieee802154/at86rf230.h | 220 ++++++++++++
 drivers/net/ieee802154/atusb.c     | 692 +++++++++++++++++++++++++++++++++++++
 drivers/net/ieee802154/atusb.h     |  84 +++++
 6 files changed, 1009 insertions(+), 197 deletions(-)
 create mode 100644 drivers/net/ieee802154/at86rf230.h
 create mode 100644 drivers/net/ieee802154/atusb.c
 create mode 100644 drivers/net/ieee802154/atusb.h
drivers/net/ieee802154/Kconfig +10 -0
index 1a3c3e5..1dd5ab8 100644
@@ -53,3 +53,13 @@ config IEEE802154_CC2520
 
 	  This driver can also be built as a module. To do so, say M here.
 	  the module will be called 'cc2520'.
+
+config IEEE802154_ATUSB
+	tristate "ATUSB transceiver driver"
+	depends on IEEE802154_DRIVERS && MAC802154 && USB
+	---help---
+	  Say Y here to enable the ATUSB IEEE 802.15.4 wireless
+	  controller.
+
+	  This driver can also be built as a module. To do so say M here.
+	  The module will be called 'atusb'.
drivers/net/ieee802154/Makefile +1 -0
index d77fa4d..cf1d2a6 100644
@@ -2,3 +2,4 @@ obj-$(CONFIG_IEEE802154_FAKELB) += fakelb.o
 obj-$(CONFIG_IEEE802154_AT86RF230) += at86rf230.o
 obj-$(CONFIG_IEEE802154_MRF24J40) += mrf24j40.o
 obj-$(CONFIG_IEEE802154_CC2520) += cc2520.o
+obj-$(CONFIG_IEEE802154_ATUSB) += atusb.o
drivers/net/ieee802154/at86rf230.c +2 -197

211 lines not on this page · raw message

drivers/net/ieee802154/at86rf230.h new file +220 -0

220 lines not on this page · raw message

drivers/net/ieee802154/atusb.c new file +692 -0

692 lines not on this page · raw message

drivers/net/ieee802154/atusb.h new file +84 -0

84 lines not on this page · raw message

Signature · 1 line
2.3.7