OpenCloudOS-Kernel/drivers/net/ieee802154
Michael Hennerich 8f1878a182 net: ieee802154: adf7242: Rework IRQ and packet handling
* Stop unconditionally polling for RC_STATUS_PHY_RDY at the entry of
the threaded IRQ handler. Once IRQ_RX_PKT_RCVD is received we can
read immediately the packet from the buffer. However we still need
to wait afterwards for RC_STATUS_PHY_RDY, to make sure that the
ACK (in case requested) was processed and send out by the
Radio Controller, before we issue the next CMD_RC_RX.
This significantly reduces the overall time spend in the threaded
IRQ handler.

 * Avoid raise condition between xmit and coincident packet reception,
by disabling the IRQ and clearing the IRQ status upon xmit entry.

 * Introduce helper functions adf7242_clear_irqstat() and adf7242_cmd_rx()

Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Signed-off-by: Stefan Schmidt <stefan@osg.samsung.com>
2017-11-29 16:49:41 +01:00
..
Kconfig ieee802154: don't select COMMON_CLK 2017-04-22 10:28:40 +02:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
adf7242.c net: ieee802154: adf7242: Rework IRQ and packet handling 2017-11-29 16:49:41 +01:00
at86rf230.c networking: introduce and use skb_put_data() 2017-06-16 11:48:37 -04:00
at86rf230.h at86rf230: add debugfs support 2015-09-17 13:20:05 +02:00
atusb.c ieee802154: atusb: switch from BUG_ON() to WARN_ON() on problem 2017-11-06 16:16:26 +01:00
atusb.h ieee802154: atusb: Driver for Busware HUL dongle 2017-09-20 13:37:16 +02:00
ca8210.c ieee802154: ca8210: use __func__ macro for debug messages 2017-11-06 16:39:14 +01:00
cc2520.c ieee802154: cc2520: switch from BUG_ON() to WARN_ON() on problem 2017-11-06 16:27:55 +01:00
fakelb.c ieee802154: fakelb: print number of created fake devices during probe 2016-11-30 12:33:07 +01:00
mrf24j40.c ieee802154: mrf24j40: fix incorrect mask in mrf24j40_stop 2017-11-06 16:27:55 +01:00