From c2fd51ad82af369529c9c3960f7d56c6f949793a Mon Sep 17 00:00:00 2001 From: kimocoder Date: Fri, 16 Aug 2019 23:44:50 +0200 Subject: [PATCH] Added kernel v5.3+ support - enjoy --- dkms.conf | 2 +- include/hal_ic_cfg.h | 1 - os_dep/linux/rtw_cfgvendor.c | 93 +++++++++++++++++++++++++++++++++++- 3 files changed, 92 insertions(+), 4 deletions(-) diff --git a/dkms.conf b/dkms.conf index e82745f..190af3d 100644 --- a/dkms.conf +++ b/dkms.conf @@ -1,5 +1,5 @@ PACKAGE_NAME="realtek-rtl88xxau" -PACKAGE_VERSION="5.6.4.1~20190816" +PACKAGE_VERSION="5.6.4.1~20190817" CLEAN="'make' clean" BUILT_MODULE_NAME[0]=88XXau PROCS_NUM=`nproc` diff --git a/include/hal_ic_cfg.h b/include/hal_ic_cfg.h index 2feadf1..9492e2e 100644 --- a/include/hal_ic_cfg.h +++ b/include/hal_ic_cfg.h @@ -57,7 +57,6 @@ #ifdef CONFIG_RTL8812A #undef RTL8812A_SUPPORT #define RTL8812A_SUPPORT 1 - #define CONFIG_DFS /* Enable 5G band 2&3 channel */ #ifndef CONFIG_FW_C2H_PKT #define CONFIG_FW_C2H_PKT #endif diff --git a/os_dep/linux/rtw_cfgvendor.c b/os_dep/linux/rtw_cfgvendor.c index d906163..0e552c1 100644 --- a/os_dep/linux/rtw_cfgvendor.c +++ b/os_dep/linux/rtw_cfgvendor.c @@ -1748,6 +1748,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = GSCAN_SUBCMD_GET_CAPABILITIES }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_gscan_get_capabilities }, { @@ -1756,6 +1759,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = GSCAN_SUBCMD_SET_CONFIG }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_set_scan_cfg }, { @@ -1764,6 +1770,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = GSCAN_SUBCMD_SET_SCAN_CONFIG }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_set_batch_scan_cfg }, { @@ -1780,6 +1789,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = GSCAN_SUBCMD_ENABLE_FULL_SCAN_RESULTS }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_enable_full_scan_result }, { @@ -1788,6 +1800,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = GSCAN_SUBCMD_SET_HOTLIST }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_hotlist_cfg }, { @@ -1796,6 +1811,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = GSCAN_SUBCMD_SET_SIGNIFICANT_CHANGE_CONFIG }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_significant_change_cfg }, { @@ -1804,6 +1822,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = GSCAN_SUBCMD_GET_SCAN_RESULTS }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_gscan_get_batch_results }, { @@ -1812,6 +1833,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = GSCAN_SUBCMD_GET_CHANNEL_LIST }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_gscan_get_channel_list }, #endif /* GSCAN_SUPPORT */ @@ -1822,6 +1846,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = RTT_SUBCMD_SET_CONFIG }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_rtt_set_config }, { @@ -1830,6 +1857,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = RTT_SUBCMD_CANCEL_CONFIG }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_rtt_cancel_config }, { @@ -1838,6 +1868,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = RTT_SUBCMD_GETCAPABILITY }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_rtt_get_capability }, #endif /* RTT_SUPPORT */ @@ -1848,6 +1881,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = LSTATS_SUBCMD_GET_INFO }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_lstats_get_info }, { @@ -1856,6 +1892,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = LSTATS_SUBCMD_SET_INFO }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_lstats_set_info }, { @@ -1864,6 +1903,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = LSTATS_SUBCMD_CLEAR_INFO }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_lstats_clear_info }, #endif /* CONFIG_RTW_CFGVEDNOR_LLSTATS */ @@ -1874,6 +1916,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = WIFI_SUBCMD_SET_RSSI_MONITOR }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_set_rssi_monitor }, #endif /* CONFIG_RTW_CFGVEDNOR_RSSIMONITOR */ @@ -1884,6 +1929,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = LOGGER_START_LOGGING }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_logger_start_logging }, { @@ -1892,6 +1940,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = LOGGER_GET_FEATURE }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_logger_get_feature }, { @@ -1900,6 +1951,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = LOGGER_GET_VER }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_logger_get_version }, { @@ -1908,6 +1962,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = LOGGER_GET_RING_STATUS }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_logger_get_ring_status }, { @@ -1916,6 +1973,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = LOGGER_GET_RING_DATA }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_logger_get_ring_data }, { @@ -1924,6 +1984,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = LOGGER_TRIGGER_MEM_DUMP }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_logger_get_firmware_memory_dump }, { @@ -1932,6 +1995,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = LOGGER_START_PKT_FATE_MONITORING }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_logger_start_pkt_fate_monitoring }, { @@ -1940,6 +2006,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = LOGGER_GET_TX_PKT_FATES }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_logger_get_tx_pkt_fates }, { @@ -1948,8 +2017,11 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = LOGGER_GET_RX_PKT_FATES }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_logger_get_rx_pkt_fates - }, + }, #endif /* CONFIG_RTW_CFGVENDOR_WIFI_LOGGER */ #ifdef CONFIG_RTW_WIFI_HAL #ifdef CONFIG_RTW_CFGVENDOR_RANDOM_MAC_OUI @@ -1959,6 +2031,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = WIFI_SUBCMD_SET_PNO_RANDOM_MAC_OUI }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_set_rand_mac_oui }, #endif @@ -1968,8 +2043,10 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = WIFI_SUBCMD_NODFS_SET }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_set_nodfs_flag - }, { { @@ -1977,6 +2054,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = WIFI_SUBCMD_SET_COUNTRY_CODE }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_set_country }, { @@ -1985,6 +2065,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = WIFI_SUBCMD_CONFIG_ND_OFFLOAD }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_set_nd_offload }, #endif /* CONFIG_RTW_WIFI_HAL */ @@ -1994,6 +2077,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = WIFI_SUBCMD_GET_FEATURE_SET }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_get_feature_set }, { @@ -2002,6 +2088,9 @@ static const struct wiphy_vendor_command rtw_vendor_cmds[] = { .subcmd = WIFI_SUBCMD_GET_FEATURE_SET_MATRIX }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0) + .policy = VENDOR_CMD_RAW_DATA, +#endif .doit = rtw_cfgvendor_get_feature_set_matrix } };