tree: https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git pending head: 13112a10a90ece17774a25bc363a7561c26aa19f commit: c995c0bdf2d68ce279507a2017e1e65e823339df [10/12] ath10k: allow dynamic SAR power limits via common API config: x86_64-randconfig-m001-20210121 (attached as .config) compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <[email protected]> Reported-by: Dan Carpenter <[email protected]> New smatch warnings: drivers/net/wireless/ath/ath10k/mac.c:3010 ath10k_mac_set_sar_specs() warn: this array is probably non-NULL. 'sar->sub_specs' Old smatch warnings: drivers/net/wireless/ath/ath10k/mac.c:5150 ath10k_start() warn: missing error code 'ret' drivers/net/wireless/ath/ath10k/mac.c:5589 ath10k_add_interface() warn: missing error code 'ret' vim +3010 drivers/net/wireless/ath/ath10k/mac.c c995c0bdf2d68ce Carl Huang 2021-01-18 2993 c995c0bdf2d68ce Carl Huang 2021-01-18 2994 static int ath10k_mac_set_sar_specs(struct ieee80211_hw *hw, c995c0bdf2d68ce Carl Huang 2021-01-18 2995 const struct cfg80211_sar_specs *sar) c995c0bdf2d68ce Carl Huang 2021-01-18 2996 { c995c0bdf2d68ce Carl Huang 2021-01-18 2997 const struct cfg80211_sar_sub_specs *sub_specs; c995c0bdf2d68ce Carl Huang 2021-01-18 2998 struct ath10k *ar = hw->priv; c995c0bdf2d68ce Carl Huang 2021-01-18 2999 u32 i; c995c0bdf2d68ce Carl Huang 2021-01-18 3000 int ret; c995c0bdf2d68ce Carl Huang 2021-01-18 3001 c995c0bdf2d68ce Carl Huang 2021-01-18 3002 mutex_lock(&ar->conf_mutex); c995c0bdf2d68ce Carl Huang 2021-01-18 3003 c995c0bdf2d68ce Carl Huang 2021-01-18 3004 if (!ar->hw_params.dynamic_sar_support) { c995c0bdf2d68ce Carl Huang 2021-01-18 3005 ret = -EOPNOTSUPP; c995c0bdf2d68ce Carl Huang 2021-01-18 3006 goto error; c995c0bdf2d68ce Carl Huang 2021-01-18 3007 } c995c0bdf2d68ce Carl Huang 2021-01-18 3008 c995c0bdf2d68ce Carl Huang 2021-01-18 3009 if (!sar || sar->type != NL80211_SAR_TYPE_POWER || c995c0bdf2d68ce Carl Huang 2021-01-18 @3010 sar->num_sub_specs == 0 || !sar->sub_specs) { ^^^^^^^^^^^^^^^ You could delete this if you want. It can't be NULL. c995c0bdf2d68ce Carl Huang 2021-01-18 3011 ret = -EINVAL; c995c0bdf2d68ce Carl Huang 2021-01-18 3012 goto error; c995c0bdf2d68ce Carl Huang 2021-01-18 3013 } c995c0bdf2d68ce Carl Huang 2021-01-18 3014 c995c0bdf2d68ce Carl Huang 2021-01-18 3015 sub_specs = sar->sub_specs; c995c0bdf2d68ce Carl Huang 2021-01-18 3016 c995c0bdf2d68ce Carl Huang 2021-01-18 3017 /* 0dbm is not a practical value for ath10k, so use 0 c995c0bdf2d68ce Carl Huang 2021-01-18 3018 * as no SAR limitation on it. c995c0bdf2d68ce Carl Huang 2021-01-18 3019 */ c995c0bdf2d68ce Carl Huang 2021-01-18 3020 ar->tx_power_2g_limit = 0; c995c0bdf2d68ce Carl Huang 2021-01-18 3021 ar->tx_power_5g_limit = 0; c995c0bdf2d68ce Carl Huang 2021-01-18 3022 c995c0bdf2d68ce Carl Huang 2021-01-18 3023 /* note the power is in 0.25dbm unit, while ath10k uses c995c0bdf2d68ce Carl Huang 2021-01-18 3024 * 0.5dbm unit. c995c0bdf2d68ce Carl Huang 2021-01-18 3025 */ c995c0bdf2d68ce Carl Huang 2021-01-18 3026 for (i = 0; i < sar->num_sub_specs; i++) { c995c0bdf2d68ce Carl Huang 2021-01-18 3027 if (sub_specs->freq_range_index == 0) c995c0bdf2d68ce Carl Huang 2021-01-18 3028 ar->tx_power_2g_limit = sub_specs->power / 2; c995c0bdf2d68ce Carl Huang 2021-01-18 3029 else if (sub_specs->freq_range_index == 1) c995c0bdf2d68ce Carl Huang 2021-01-18 3030 ar->tx_power_5g_limit = sub_specs->power / 2; c995c0bdf2d68ce Carl Huang 2021-01-18 3031 c995c0bdf2d68ce Carl Huang 2021-01-18 3032 sub_specs++; c995c0bdf2d68ce Carl Huang 2021-01-18 3033 } c995c0bdf2d68ce Carl Huang 2021-01-18 3034 c995c0bdf2d68ce Carl Huang 2021-01-18 3035 ret = ath10k_mac_set_sar_power(ar); c995c0bdf2d68ce Carl Huang 2021-01-18 3036 error: c995c0bdf2d68ce Carl Huang 2021-01-18 3037 mutex_unlock(&ar->conf_mutex); c995c0bdf2d68ce Carl Huang 2021-01-18 3038 return ret; c995c0bdf2d68ce Carl Huang 2021-01-18 3039 } --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/[email protected]
.config.gz
Description: application/gzip
_______________________________________________ ath10k mailing list [email protected] http://lists.infradead.org/mailman/listinfo/ath10k
