Lines Matching refs:fw
13 #include "fw.h"
272 /* fw supports only one station associated to enter lps, if there are
274 * lps, because fw does not handle the overlapped beacon interval
410 struct rtw_fwcd_desc *desc = &rtwdev->fw.fwcd_desc;
434 struct rtw_fwcd_desc *desc = &rtwdev->fw.fwcd_desc;
461 struct rtw_fwcd_desc *desc = &rtwdev->fw.fwcd_desc;
475 struct rtw_fwcd_desc *desc = &rtwdev->fw.fwcd_desc;
497 rtw_dbg(rtwdev, RTW_DBG_FW, "dump fw fifo fail\n");
502 rtw_dbg(rtwdev, RTW_DBG_FW, "fw crash dump's length is 0\n");
509 "fw crash dump's seq is wrong: %d\n", seq);
535 "ddma fw 0x%x [+0x%x] to fw fifo fail\n",
544 "dump fw 0x%x [+0x%x] from fw fifo fail\n",
1333 struct rtw_fw_state *fw;
1335 fw = &rtwdev->fw;
1336 wait_for_completion(&fw->completion);
1337 if (!fw->firmware)
1341 fw = &rtwdev->wow_fw;
1342 wait_for_completion(&fw->completion);
1343 if (!fw->firmware)
1351 struct rtw_fw_state *fw)
1356 !fw->feature)
1360 rtw_fw_feature_check(fw, FW_FEATURE_PG))
1364 rtw_fw_feature_check(fw, FW_FEATURE_LCLK))
1373 struct rtw_fw_state *fw = &rtwdev->fw;
1396 ret = rtw_download_firmware(rtwdev, fw);
1436 if (!rtw_fw_feature_check(&rtwdev->fw, FW_FEATURE_NOTIFY_SCAN))
1511 rtwdev->lps_conf.deep_mode = rtw_update_lps_deep_mode(rtwdev, &rtwdev->fw);
1650 if (!rtw_fw_feature_check(&rtwdev->fw, FW_FEATURE_SCAN_OFFLOAD) &&
1653 else if (rtw_fw_feature_ext_check(&rtwdev->fw, FW_FEATURE_EXT_OLD_PAGE_NUM))
1730 struct rtw_fw_state *fw)
1734 (const struct rtw_fw_hdr *)fw->firmware->data;
1737 fw->feature = feature & FW_FEATURE_SIG ? feature : 0;
1740 RTW_FW_SUIT_VER_CODE(rtwdev->fw) < RTW_FW_VER_CODE(9, 9, 13))
1741 fw->feature_ext |= FW_FEATURE_EXT_OLD_PAGE_NUM;
1745 struct rtw_fw_state *fw)
1748 (const struct rtw_fw_hdr *)fw->firmware->data;
1750 fw->h2c_version = le16_to_cpu(fw_hdr->h2c_fmt_ver);
1751 fw->version = le16_to_cpu(fw_hdr->version);
1752 fw->sub_version = fw_hdr->subversion;
1753 fw->sub_index = fw_hdr->subindex;
1755 __update_firmware_feature(rtwdev, fw);
1759 struct rtw_fw_state *fw)
1763 (struct rtw_fw_hdr_legacy *)fw->firmware->data;
1765 __DECONST(struct rtw_fw_hdr_legacy *, fw->firmware->data);
1768 fw->h2c_version = 0;
1769 fw->version = le16_to_cpu(legacy->version);
1770 fw->sub_version = legacy->subversion1;
1771 fw->sub_index = legacy->subversion2;
1775 struct rtw_fw_state *fw)
1778 __update_firmware_info_legacy(rtwdev, fw);
1780 __update_firmware_info(rtwdev, fw);
1785 struct rtw_fw_state *fw = context;
1786 struct rtw_dev *rtwdev = fw->rtwdev;
1790 complete_all(&fw->completion);
1794 fw->firmware = firmware;
1795 update_firmware_info(rtwdev, fw);
1796 complete_all(&fw->completion);
1799 fw->type == RTW_WOWLAN_FW ? "WOW " : "",
1800 fw->version, fw->sub_version, fw->sub_index, fw->h2c_version);
1806 struct rtw_fw_state *fw;
1811 fw = &rtwdev->wow_fw;
1816 fw = &rtwdev->fw;
1825 fw->type = type;
1826 fw->rtwdev = rtwdev;
1827 init_completion(&fw->completion);
1830 GFP_KERNEL, fw, rtw_load_firmware_cb);
1894 struct rtw_fw_state *fw = &rtwdev->fw;
1911 wait_for_completion(&fw->completion);
1912 if (!fw->firmware) {
1918 ret = rtw_download_firmware(rtwdev, fw);
2177 wait_for_completion(&rtwdev->fw.completion);
2178 if (rtwdev->fw.firmware)
2179 release_firmware(rtwdev->fw.firmware);
2198 struct rtw_fw_state *fw = &rtwdev->fw;
2205 if (fw->firmware)
2206 release_firmware(fw->firmware);