linux/drivers/net/wireless/realtek/rtw88
Andreas Färber ac4bac9916 rtw88: Fix potential probe error handling race with wow firmware loading
If rtw_core_init() fails to load the wow firmware, rtw_core_deinit()
will not get called to clean up the regular firmware.

Ensure that an error loading the wow firmware does not produce an oops
for the regular firmware by waiting on its completion to be signalled
before returning. Also release the loaded firmware.

Fixes: c8e5695eae ("rtw88: load wowlan firmware if wowlan is supported")
Cc: Chin-Yen Lee <timlee@realtek.com>
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com>
Signed-off-by: Andreas Färber <afaerber@suse.de>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Link: https://lore.kernel.org/r/20200920132621.26468-3-afaerber@suse.de
2020-09-24 18:49:56 +03:00
..
bf.c rtw88: 8821c: add beamformee support 2020-07-15 12:08:14 +03:00
bf.h rtw88: 8723d: add beamform wrapper functions 2020-04-21 15:59:18 +03:00
coex.c rtw88: coex: only skip coex triggered by BT info 2020-08-02 18:05:15 +03:00
coex.h rtw88: coex: Fix ACL Tx pause during BT inquiry/page. 2020-07-15 12:14:01 +03:00
debug.c rtw88: debug: Remove unused variables 'val' 2020-09-01 16:14:48 +03:00
debug.h rtw88: support wowlan feature for 8822c 2020-01-26 17:37:03 +02:00
efuse.c rtw88: extract: export symbols used in chip functionalities 2020-05-18 15:16:15 +03:00
efuse.h rtw88: set power trim according to efuse PG values 2020-04-21 16:00:21 +03:00
fw.c rtw88: add h2c command in debugfs 2020-08-02 18:05:19 +03:00
fw.h rtw88: add h2c command in debugfs 2020-08-02 18:05:19 +03:00
hci.h rtw88: kick off TX packets once for higher efficiency 2020-03-23 19:29:58 +02:00
Kconfig rtw88: 8821c: Add 8821CE to Kconfig and Makefile 2020-07-15 12:08:16 +03:00
mac80211.c rtw88: allows driver to enable/disable beacon 2020-08-02 18:05:18 +03:00
mac.c rtw88: use read_poll_timeout_atomic() for poll loop 2020-08-27 13:04:38 +03:00
mac.h rtw88: 8723d: Organize chip TX/RX FIFO 2020-04-23 07:47:26 +03:00
main.c rtw88: Fix potential probe error handling race with wow firmware loading 2020-09-24 18:49:56 +03:00
main.h rtw88: update tx descriptor of mgmt and reserved page packets 2020-08-02 18:05:14 +03:00
Makefile rtw88: 8821c: Add 8821CE to Kconfig and Makefile 2020-07-15 12:08:16 +03:00
pci.c rtw88: switch from 'pci_' to 'dma_' API 2020-08-27 13:01:59 +03:00
pci.h rtw88: extract: remove the unused after extracting 2020-05-18 15:16:21 +03:00
phy.c rtw88: don't treat NULL pointer as an array 2020-08-27 13:04:16 +03:00
phy.h rtw88: 8723d: Add power tracking 2020-05-13 18:48:44 +03:00
ps.c rtw88: use shorter delay time to poll PS state 2020-01-26 17:42:56 +02:00
ps.h rtw88: raise LPS threshold to 50, for less power consumption 2019-11-06 19:55:37 +02:00
reg.h rtw88: 8821c: coex: add functions and parameters 2020-08-02 18:06:51 +03:00
regd.c rtw88: update tx power limit table to RF v20 2019-06-27 20:24:27 +03:00
regd.h rtw88: update tx power limit table to RF v20 2019-06-27 20:24:27 +03:00
rtw8723d_table.c rtw88: 8723d: Add mac/bb/rf/agc/power_limit tables 2020-04-21 15:59:21 +03:00
rtw8723d_table.h rtw88: 8723d: Add mac/bb/rf/agc/power_limit tables 2020-04-21 15:59:21 +03:00
rtw8723d.c rtw88: coex: Fix ACL Tx pause during BT inquiry/page. 2020-07-15 12:14:01 +03:00
rtw8723d.h rtw88: coex: 8723d: set antanna control owner 2020-05-29 20:36:02 +03:00
rtw8723de.c rtw88: extract: make 8723d an individual kernel module 2020-05-18 15:16:20 +03:00
rtw8723de.h rtw88: extract: make 8723d an individual kernel module 2020-05-18 15:16:20 +03:00
rtw8821c_table.c rtw88: 8821c: add basic functions 2020-07-15 12:06:51 +03:00
rtw8821c_table.h rtw88: 8821c: add basic functions 2020-07-15 12:06:51 +03:00
rtw8821c.c rtw88: fix compile warning: [-Wignored-qualifiers] 2020-09-07 11:29:38 +03:00
rtw8821c.h rtw88: 8821c: coex: add functions and parameters 2020-08-02 18:06:51 +03:00
rtw8821ce.c rtw88: 8821c: add basic functions 2020-07-15 12:06:51 +03:00
rtw8821ce.h rtw88: 8821c: add basic functions 2020-07-15 12:06:51 +03:00
rtw8822b_table.c rtw88: use rtw_phy_pg_cfg_pair struct, not arrays 2019-10-31 10:03:48 +02:00
rtw8822b_table.h rtw88: 8822b: add RFE type 3 support 2019-10-31 10:03:47 +02:00
rtw8822b.c rtw88: fix spelling mistake: "unsupport" -> "unsupported" 2020-08-18 15:51:08 +03:00
rtw8822b.h rtw88: add phy_info debugfs to show Tx/Rx physical status 2019-10-24 08:46:25 +03:00
rtw8822be.c rtw88: extract: make 8822b an individual kernel module 2020-05-18 15:16:19 +03:00
rtw8822be.h rtw88: extract: make 8822b an individual kernel module 2020-05-18 15:16:19 +03:00
rtw8822c_table.c rtw88: 8822c: update tx power limit tables to RF v20.1 2020-08-27 13:05:06 +03:00
rtw8822c_table.h rtw88: 8822c: update phy parameter tables to v50 2020-05-04 12:46:14 +03:00
rtw8822c.c rtw88: rtw8822c: eliminate code duplication, use native swap() function 2020-09-16 09:08:36 +03:00
rtw8822c.h rtw88: set power trim according to efuse PG values 2020-04-21 16:00:21 +03:00
rtw8822ce.c rtw88: 8822ce: add support for device ID 0xc82f 2020-07-15 12:11:06 +03:00
rtw8822ce.h rtw88: extract: make 8822c an individual kernel module 2020-05-18 15:16:18 +03:00
rx.c rtw88: extract: export symbols used in chip functionalities 2020-05-18 15:16:15 +03:00
rx.h rtw88: Don't set RX_FLAG_DECRYPTED if packet has no encryption 2019-10-04 16:45:01 +03:00
sec.c rtw88: fill zeros to words 0x06 and 0x07 of security cam entry 2020-05-13 18:48:52 +03:00
sec.h rtw88: add deep PS PG mode for 8822c 2019-10-02 07:33:49 +03:00
tx.c rtlwifi/rtw88: convert tasklets to use new tasklet_setup() API 2020-08-27 16:22:14 +03:00
tx.h rtlwifi/rtw88: convert tasklets to use new tasklet_setup() API 2020-08-27 16:22:14 +03:00
util.c rtw88: extract: export symbols used in chip functionalities 2020-05-18 15:16:15 +03:00
util.h rtw88: support wowlan feature for 8822c 2020-01-26 17:37:03 +02:00
wow.c rtw88: associate reserved pages with each vif 2020-03-23 19:29:42 +02:00
wow.h rtw88: Add wowlan net-detect support 2020-01-26 17:37:05 +02:00