| mac80211 from kernel 5.3 and later checks the new policy attribute. |
| As this driver does not define any policies and does strange things, |
| just tell mac80211 to ignore the policies. |
| |
| --- a/os_dep/linux/rtw_cfgvendor.c |
| +++ b/os_dep/linux/rtw_cfgvendor.c |
| @@ -1173,7 +1173,8 @@ static const struct wiphy_vendor_command |
| .subcmd = BRCM_VENDOR_SCMD_PRIV_STR |
| }, |
| .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, |
| - .doit = wl_cfgvendor_priv_string_handler |
| + .doit = wl_cfgvendor_priv_string_handler, |
| + .policy = VENDOR_CMD_RAW_DATA, |
| }, |
| #if defined(GSCAN_SUPPORT) && 0 |
| { |
| @@ -1182,7 +1183,8 @@ static const struct wiphy_vendor_command |
| .subcmd = GSCAN_SUBCMD_GET_CAPABILITIES |
| }, |
| .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, |
| - .doit = wl_cfgvendor_gscan_get_capabilities |
| + .doit = wl_cfgvendor_gscan_get_capabilities, |
| + .policy = VENDOR_CMD_RAW_DATA, |
| }, |
| { |
| { |
| @@ -1190,7 +1192,8 @@ static const struct wiphy_vendor_command |
| .subcmd = GSCAN_SUBCMD_SET_CONFIG |
| }, |
| .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, |
| - .doit = wl_cfgvendor_set_scan_cfg |
| + .doit = wl_cfgvendor_set_scan_cfg, |
| + .policy = VENDOR_CMD_RAW_DATA, |
| }, |
| { |
| { |
| @@ -1198,7 +1201,8 @@ static const struct wiphy_vendor_command |
| .subcmd = GSCAN_SUBCMD_SET_SCAN_CONFIG |
| }, |
| .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, |
| - .doit = wl_cfgvendor_set_batch_scan_cfg |
| + .doit = wl_cfgvendor_set_batch_scan_cfg, |
| + .policy = VENDOR_CMD_RAW_DATA, |
| }, |
| { |
| { |
| @@ -1206,7 +1210,8 @@ static const struct wiphy_vendor_command |
| .subcmd = GSCAN_SUBCMD_ENABLE_GSCAN |
| }, |
| .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, |
| - .doit = wl_cfgvendor_initiate_gscan |
| + .doit = wl_cfgvendor_initiate_gscan, |
| + .policy = VENDOR_CMD_RAW_DATA, |
| }, |
| { |
| { |
| @@ -1214,7 +1219,8 @@ static const struct wiphy_vendor_command |
| .subcmd = GSCAN_SUBCMD_ENABLE_FULL_SCAN_RESULTS |
| }, |
| .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, |
| - .doit = wl_cfgvendor_enable_full_scan_result |
| + .doit = wl_cfgvendor_enable_full_scan_result, |
| + .policy = VENDOR_CMD_RAW_DATA, |
| }, |
| { |
| { |
| @@ -1222,7 +1228,8 @@ static const struct wiphy_vendor_command |
| .subcmd = GSCAN_SUBCMD_SET_HOTLIST |
| }, |
| .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, |
| - .doit = wl_cfgvendor_hotlist_cfg |
| + .doit = wl_cfgvendor_hotlist_cfg, |
| + .policy = VENDOR_CMD_RAW_DATA, |
| }, |
| { |
| { |
| @@ -1230,7 +1237,8 @@ static const struct wiphy_vendor_command |
| .subcmd = GSCAN_SUBCMD_SET_SIGNIFICANT_CHANGE_CONFIG |
| }, |
| .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, |
| - .doit = wl_cfgvendor_significant_change_cfg |
| + .doit = wl_cfgvendor_significant_change_cfg, |
| + .policy = VENDOR_CMD_RAW_DATA, |
| }, |
| { |
| { |
| @@ -1238,7 +1246,8 @@ static const struct wiphy_vendor_command |
| .subcmd = GSCAN_SUBCMD_GET_SCAN_RESULTS |
| }, |
| .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, |
| - .doit = wl_cfgvendor_gscan_get_batch_results |
| + .doit = wl_cfgvendor_gscan_get_batch_results, |
| + .policy = VENDOR_CMD_RAW_DATA, |
| }, |
| { |
| { |
| @@ -1246,7 +1255,8 @@ static const struct wiphy_vendor_command |
| .subcmd = GSCAN_SUBCMD_GET_CHANNEL_LIST |
| }, |
| .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, |
| - .doit = wl_cfgvendor_gscan_get_channel_list |
| + .doit = wl_cfgvendor_gscan_get_channel_list, |
| + .policy = VENDOR_CMD_RAW_DATA, |
| }, |
| #endif /* GSCAN_SUPPORT */ |
| #if defined(RTT_SUPPORT) && 0 |
| @@ -1256,7 +1266,8 @@ static const struct wiphy_vendor_command |
| .subcmd = RTT_SUBCMD_SET_CONFIG |
| }, |
| .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, |
| - .doit = wl_cfgvendor_rtt_set_config |
| + .doit = wl_cfgvendor_rtt_set_config, |
| + .policy = VENDOR_CMD_RAW_DATA, |
| }, |
| { |
| { |
| @@ -1264,7 +1275,8 @@ static const struct wiphy_vendor_command |
| .subcmd = RTT_SUBCMD_CANCEL_CONFIG |
| }, |
| .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, |
| - .doit = wl_cfgvendor_rtt_cancel_config |
| + .doit = wl_cfgvendor_rtt_cancel_config, |
| + .policy = VENDOR_CMD_RAW_DATA, |
| }, |
| { |
| { |
| @@ -1272,7 +1284,8 @@ static const struct wiphy_vendor_command |
| .subcmd = RTT_SUBCMD_GETCAPABILITY |
| }, |
| .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, |
| - .doit = wl_cfgvendor_rtt_get_capability |
| + .doit = wl_cfgvendor_rtt_get_capability, |
| + .policy = VENDOR_CMD_RAW_DATA, |
| }, |
| #endif /* RTT_SUPPORT */ |
| { |
| @@ -1281,7 +1294,8 @@ static const struct wiphy_vendor_command |
| .subcmd = ANDR_WIFI_SUBCMD_GET_FEATURE_SET |
| }, |
| .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, |
| - .doit = rtw_cfgvendor_get_feature_set |
| + .doit = rtw_cfgvendor_get_feature_set, |
| + .policy = VENDOR_CMD_RAW_DATA, |
| }, |
| { |
| { |
| @@ -1289,7 +1303,8 @@ static const struct wiphy_vendor_command |
| .subcmd = ANDR_WIFI_SUBCMD_GET_FEATURE_SET_MATRIX |
| }, |
| .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, |
| - .doit = rtw_cfgvendor_get_feature_set_matrix |
| + .doit = rtw_cfgvendor_get_feature_set_matrix, |
| + .policy = VENDOR_CMD_RAW_DATA, |
| } |
| }; |
| |