linux/drivers/staging
Jérôme Pouiller a3c529a835 staging: wfx: simplify handling of IEEE80211_TX_CTL_SEND_AFTER_DTIM
When mac80211 ask for a frame to be sent after a DTIM, driver should:
  1. Update TIM with multicast bit set (using update_ie). This function
     can be called whenever.
  2. Keep buffered all frames marked "after dtim"
  3. When it receive a suspend_resume indication (see
     wfx_suspend_resume_mc()), send all the buffered frames. This
     indication is sent by the firmware 4ms before the dtim.
  4. If one of the frames returns status "REQUEUE", it means that the
     DTIM period was ended before to be able to send the frame.
  5. When all the buffered frames were sent or if DTIM period was ended,
     driver should update the TIM with multicast bit reset.

All the mess with the asynchronous works can be dropped.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
Link: https://lore.kernel.org/r/20200115135338.14374-58-Jerome.Pouiller@silabs.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-01-16 20:59:52 +01:00
..
android staging: android: ashmem: Replace strcpy with strscpy 2020-01-14 16:17:11 +01:00
axis-fifo staging: axis-fifo: add unspecified HAS_IOMEM dependency 2019-12-17 09:22:11 +01:00
board staging: board: use appropriate macro to initialize struct 2019-09-30 21:57:57 +02:00
clocking-wizard staging: clocking-wizard: use devm_platform_ioremap_resource() to simplify code 2019-10-10 11:00:59 +02:00
comedi staging: comedi: adv_pci1710: fix AI channels 16-31 for PCI-1713 2020-01-03 11:46:59 +01:00
emxx_udc staging: emxx_udc: Fix invalid reference error 2019-10-30 10:38:46 +01:00
exfat staging: exfat: Fix alignment warnings 2020-01-14 14:56:36 +01:00
fbtft fbtft: Fix the initialization from property algorithm 2019-12-10 15:55:55 +01:00
fieldbus staging: fieldbus: anybuss: use devm_platform_ioremap_resource helper 2019-10-27 08:15:43 +01:00
fsl-dpaa2 staging: dpaa2-ethsw: ordered workqueue should be per ethsw 2019-11-13 00:10:16 +01:00
fwserial staging: fwserial: Fix Kconfig indentation (seven spaces) 2019-11-22 11:32:54 +01:00
gasket pci-v5.5-changes 2019-12-03 13:58:22 -08:00
gdm724x
goldfish
greybus staging: greybus: light: fix a couple double frees 2019-09-03 09:39:10 +02:00
gs_fpgaboot
hp Merge 5.5-rc2 into staging-next 2019-12-16 09:06:50 +01:00
iio staging: iio: accel: adis16240: enforce SPI mode on probe function 2019-12-15 12:18:49 +00:00
kpc2000 staging: kpc2000: remove unnecessary assertions in kpc_dma_transfer 2020-01-03 11:04:57 +01:00
ks7010
media media: intel-ipu3: Align struct ipu3_uapi_awb_fr_config_s to 32 bytes 2020-01-03 15:02:59 +01:00
most staging: most: remove header include path to drivers/staging 2020-01-16 20:56:31 +01:00
mt7621-dma staging: mt7621-dma: align to match open parenthesis 2019-11-07 16:14:10 +01:00
mt7621-dts staging: mt7621-dts: fix register range of memc node in mt7621.dtsi 2020-01-10 13:49:18 +01:00
mt7621-pci MIPS: ralink: enable PCI support only if driver for mt7621 SoC is selected 2019-11-14 13:09:37 +08:00
mt7621-pci-phy
mt7621-pinctrl
netlogic Staging: Netlogic: Fix spelling mistake 2019-10-24 23:08:32 -04:00
nvec staging: nvec: check return value 2019-12-19 19:23:29 +01:00
olpc_dcon staging: olpc_dcon: fix wrong dependencies in Kconfig file 2019-09-30 21:58:00 +02:00
pi433 compat_ioctl: remove most of fs/compat_ioctl.c 2019-12-01 13:46:15 -08:00
qlge staging: qlge: Fix CHECK: Alignment should match open parenthesis 2019-12-17 13:34:57 +01:00
ralink-gdma staging: ralink-gdma: use devm_platform_ioremap_resource() to simplify code 2019-10-24 22:40:38 -04:00
rtl8188eu staging: rtl8188eu: cleanup whitespace in rtl8188e_dm.c 2020-01-14 14:59:47 +01:00
rtl8192e staging: rtl8192e: remove set but not used variable 'frag' 2019-11-18 12:49:40 +01:00
rtl8192u staging: rtl8192u: replace printk with natdev_<LEVEL> statements in ieee80211 2020-01-15 13:11:41 +01:00
rtl8712 staging: rtl8712: fix interface sanity check 2019-12-10 13:22:21 +01:00
rtl8723bs staging: rtl8723bs: remove ODM_GetRightChnlPlaceforIQK() 2020-01-14 14:56:37 +01:00
rts5208 staging: rts5208: remove unneeded header include path 2020-01-10 10:58:30 +01:00
sm750fb staging: sm750fb: Replace multiple spaces with tabs when it suits 2019-10-30 10:38:47 +01:00
speakup staging: speakup: document sysfs attributes 2019-10-04 10:06:05 +02:00
unisys Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2019-08-19 11:54:03 -07:00
uwb staging: uwb: fix coccinelle warnings of comparison to bool 2019-10-24 23:03:00 -04:00
vc04_services staging: vc04_services: remove header include path to vc04_services 2020-01-10 17:33:41 +01:00
vme compat_ioctl: move more drivers to compat_ptr_ioctl 2019-10-23 17:23:44 +02:00
vt6655 staging: vt6655: remove redundant assignment to variable ret 2020-01-15 13:11:41 +01:00
vt6656 Merge 5.5-rc6 into staging-next 2020-01-13 07:52:17 +01:00
wfx staging: wfx: simplify handling of IEEE80211_TX_CTL_SEND_AFTER_DTIM 2020-01-16 20:59:52 +01:00
wilc1000 staging: wilc1000: remove redundant assignment to variable result 2020-01-15 13:11:41 +01:00
wlan-ng staging: wlan-ng: ensure error return is actually returned 2020-01-15 13:11:41 +01:00
wusbcore staging: wusbcore: Fix build error without CONFIG_USB 2019-08-09 14:56:57 +02:00
Kconfig staging: octeon-usb: delete the octeon usb host controller driver 2019-12-17 12:54:55 +01:00
Makefile staging: exfat: add STAGING prefix to config names 2020-01-03 11:04:58 +01:00