Hi,
This patch series includes a rework of the at86rf230 driver.
There are several changes:
- Add regmap support.
- Merge at86rf212 operations with generic at86rf2xx operations, all chips
supports these operations.
- Drop of irqworker. This is a workqueue which will scheduled by an irq to
handle synchronous spi handling. Instead using asynchronous spi handling,
then no scheduler is involved at irq handling.
- Also detected some bugs by receiving frame like CRC can be correct and a
802.15.4 frame length could be above 127 bytes. This would crash the whole
kernel (but should be handled by the mac layer). Another bug is the handling
with RX_SAFE_MODE which protect the frame buffer after a readout. This is
currently not working because we read out the buffer twice and the first one
to get the frame size. Solution is to readout always the whole frame buffer.
- Added some timing relevants things from the datasheet for state changes And
IEEE 802.15.4 standard like interframe spacing. Interframe spacing is needed
to insert some receiving space time between frame transmitting. This should
be
also handled by MAC layer, but it's currently a workaround to add this inside
the driver layer.
- Add some callback setting for chip specific handling, instead of runtime
decisions
if (is_chip_type()). Callbacks are set only once at probe time.
- We don't using a force state change anymore. A force state change will do a
abort of receiving frames while we want to transmit a new frame. This should
decrease the drop rate of packets.
- And many others changes and bug fixes...
- Alex
changes since v2:
- add check if necessary functions are implemented when hw flags are set in
patch
("mac802154: at86rf230: add hw flags and merge ops"). I choosed the second
variant.
- remove unnecessary includes for workqueue and mutex in patch
("at86rf230: rework transmit and receive").
- remove unnecessary cast in patch ("at86rf230: rework transmit and receive").
- acivate regmap cache with REGCACHE_RBTREE in patch
("at86rf230: add regmap support").
Alexander Aring (13):
mac802154: at86rf230: add hw flags and merge ops
at86rf230: add regmap support
at86rf230: rework detect device handling
at86rf230: remove is212 and add driver data
at86rf230: add support for at86rf23x desense
at86rf230: rework transmit and receive handling
at86rf230: move RX_SAFE_MODE setting to hw_init
at86rf230: rework irq_pol setting
at86rf230: rework state change and start/stop
at86rf230: rework reset to trx_off state change
at86rf230: add timing for channel switch
at86rf230: add sleep cycle timing
at86rf230: add new author
drivers/net/ieee802154/Kconfig | 1 +
drivers/net/ieee802154/at86rf230.c | 1466 +++++++++++++++++++++++-------------
include/net/mac802154.h | 19 +
net/mac802154/ieee802154_dev.c | 60 +-
4 files changed, 991 insertions(+), 555 deletions(-)
--
2.0.1
------------------------------------------------------------------------------
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
_______________________________________________
Linux-zigbee-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-zigbee-devel