wifi: rtw89: request full firmware only once if it's early requested
authorZong-Zhe Yang <kevin_yang@realtek.com>
Fri, 2 Dec 2022 06:05:21 +0000 (14:05 +0800)
committerKalle Valo <kvalo@kernel.org>
Thu, 8 Dec 2022 14:47:29 +0000 (16:47 +0200)
commit13eb07e0be1b95f1e1fab721fb0f38117edfe80b
treecf4be14f4a05856b5cc1c46dd7ece2f371ce7023
parent3ddfe3bdd3cf199676737fbd8cb7878b962acd2a
wifi: rtw89: request full firmware only once if it's early requested

Under some condition, we now have to do early request full firmware when
rtw89_early_fw_feature_recognize(). In this case, we can avoid requesting
full firmware twice during probing driver. So, we pass out full firmware
from rtw89_early_fw_feature_recognize() if it's requested successfully.
And then, if firmware is settled, we have no need to request full firmware
again during normal initizating flow.

Setting firmware flow is updated to be as the following.

 platform | early recognizing  | normally initizating
-----------------------------------------------------------------------
 deny reading  | request full FW | (no more FW requesting)
 partial file  | | (obtain FW from early pahse)
-----------------------------------------------------------------------
 able to read | request partial FW | async request full FW
 partial file | (quite small chunk) |

Signed-off-by: Zong-Zhe Yang <kevin_yang@realtek.com>
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://lore.kernel.org/r/20221202060521.501512-3-pkshih@realtek.com
drivers/net/wireless/realtek/rtw89/core.c
drivers/net/wireless/realtek/rtw89/fw.c
drivers/net/wireless/realtek/rtw89/fw.h