Commit f5e6c0c4 authored by Dmitry Antipov's avatar Dmitry Antipov Committed by Kalle Valo

wifi: ath11k: refactor ath11k_wmi_tlv_parse_alloc()

Since 'ath11k_wmi_tlv_parse_alloc()' always operates on
'skb->data, skb->len' tuple, it may be simplified to pass
the only 'skb' argument instead (which also implies
refactoring of 'ath11k_pull_bcn_tx_status_ev()' and
'ath11k_pull_chan_info_ev()' in the same way). Compile
tested only.
Signed-off-by: default avatarDmitry Antipov <dmantipov@yandex.ru>
Signed-off-by: default avatarKalle Valo <quic_kvalo@quicinc.com>
Link: https://msgid.link/20231214161117.75145-1-dmantipov@yandex.ru
parent ad25ee36
...@@ -198,7 +198,7 @@ static void ath11k_tm_wmi_event_segmented(struct ath11k_base *ab, u32 cmd_id, ...@@ -198,7 +198,7 @@ static void ath11k_tm_wmi_event_segmented(struct ath11k_base *ab, u32 cmd_id,
u16 length; u16 length;
int ret; int ret;
tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, "failed to parse ftm event tlv: %d\n", ret); ath11k_warn(ab, "failed to parse ftm event tlv: %d\n", ret);
......
...@@ -238,8 +238,8 @@ static int ath11k_wmi_tlv_parse(struct ath11k_base *ar, const void **tb, ...@@ -238,8 +238,8 @@ static int ath11k_wmi_tlv_parse(struct ath11k_base *ar, const void **tb,
(void *)tb); (void *)tb);
} }
const void **ath11k_wmi_tlv_parse_alloc(struct ath11k_base *ab, const void *ptr, const void **ath11k_wmi_tlv_parse_alloc(struct ath11k_base *ab,
size_t len, gfp_t gfp) struct sk_buff *skb, gfp_t gfp)
{ {
const void **tb; const void **tb;
int ret; int ret;
...@@ -248,7 +248,7 @@ const void **ath11k_wmi_tlv_parse_alloc(struct ath11k_base *ab, const void *ptr, ...@@ -248,7 +248,7 @@ const void **ath11k_wmi_tlv_parse_alloc(struct ath11k_base *ab, const void *ptr,
if (!tb) if (!tb)
return ERR_PTR(-ENOMEM); return ERR_PTR(-ENOMEM);
ret = ath11k_wmi_tlv_parse(ab, tb, ptr, len); ret = ath11k_wmi_tlv_parse(ab, tb, skb->data, skb->len);
if (ret) { if (ret) {
kfree(tb); kfree(tb);
return ERR_PTR(ret); return ERR_PTR(ret);
...@@ -3930,7 +3930,7 @@ ath11k_wmi_obss_color_collision_event(struct ath11k_base *ab, struct sk_buff *sk ...@@ -3930,7 +3930,7 @@ ath11k_wmi_obss_color_collision_event(struct ath11k_base *ab, struct sk_buff *sk
struct ath11k_vif *arvif; struct ath11k_vif *arvif;
int ret; int ret;
tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, "failed to parse tlv: %d\n", ret); ath11k_warn(ab, "failed to parse tlv: %d\n", ret);
...@@ -5003,7 +5003,7 @@ static int ath11k_pull_vdev_start_resp_tlv(struct ath11k_base *ab, struct sk_buf ...@@ -5003,7 +5003,7 @@ static int ath11k_pull_vdev_start_resp_tlv(struct ath11k_base *ab, struct sk_buf
const struct wmi_vdev_start_resp_event *ev; const struct wmi_vdev_start_resp_event *ev;
int ret; int ret;
tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, "failed to parse tlv: %d\n", ret); ath11k_warn(ab, "failed to parse tlv: %d\n", ret);
...@@ -5102,7 +5102,7 @@ static int ath11k_pull_reg_chan_list_update_ev(struct ath11k_base *ab, ...@@ -5102,7 +5102,7 @@ static int ath11k_pull_reg_chan_list_update_ev(struct ath11k_base *ab,
ath11k_dbg(ab, ATH11K_DBG_WMI, "processing regulatory channel list\n"); ath11k_dbg(ab, ATH11K_DBG_WMI, "processing regulatory channel list\n");
tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, "failed to parse tlv: %d\n", ret); ath11k_warn(ab, "failed to parse tlv: %d\n", ret);
...@@ -5278,7 +5278,7 @@ static int ath11k_pull_reg_chan_list_ext_update_ev(struct ath11k_base *ab, ...@@ -5278,7 +5278,7 @@ static int ath11k_pull_reg_chan_list_ext_update_ev(struct ath11k_base *ab,
ath11k_dbg(ab, ATH11K_DBG_WMI, "processing regulatory ext channel list\n"); ath11k_dbg(ab, ATH11K_DBG_WMI, "processing regulatory ext channel list\n");
tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, "failed to parse tlv: %d\n", ret); ath11k_warn(ab, "failed to parse tlv: %d\n", ret);
...@@ -5634,7 +5634,7 @@ static int ath11k_pull_peer_del_resp_ev(struct ath11k_base *ab, struct sk_buff * ...@@ -5634,7 +5634,7 @@ static int ath11k_pull_peer_del_resp_ev(struct ath11k_base *ab, struct sk_buff *
const struct wmi_peer_delete_resp_event *ev; const struct wmi_peer_delete_resp_event *ev;
int ret; int ret;
tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, "failed to parse tlv: %d\n", ret); ath11k_warn(ab, "failed to parse tlv: %d\n", ret);
...@@ -5666,7 +5666,7 @@ static int ath11k_pull_vdev_del_resp_ev(struct ath11k_base *ab, ...@@ -5666,7 +5666,7 @@ static int ath11k_pull_vdev_del_resp_ev(struct ath11k_base *ab,
const struct wmi_vdev_delete_resp_event *ev; const struct wmi_vdev_delete_resp_event *ev;
int ret; int ret;
tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, "failed to parse tlv: %d\n", ret); ath11k_warn(ab, "failed to parse tlv: %d\n", ret);
...@@ -5686,15 +5686,15 @@ static int ath11k_pull_vdev_del_resp_ev(struct ath11k_base *ab, ...@@ -5686,15 +5686,15 @@ static int ath11k_pull_vdev_del_resp_ev(struct ath11k_base *ab,
return 0; return 0;
} }
static int ath11k_pull_bcn_tx_status_ev(struct ath11k_base *ab, void *evt_buf, static int ath11k_pull_bcn_tx_status_ev(struct ath11k_base *ab,
u32 len, u32 *vdev_id, struct sk_buff *skb,
u32 *tx_status) u32 *vdev_id, u32 *tx_status)
{ {
const void **tb; const void **tb;
const struct wmi_bcn_tx_status_event *ev; const struct wmi_bcn_tx_status_event *ev;
int ret; int ret;
tb = ath11k_wmi_tlv_parse_alloc(ab, evt_buf, len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, "failed to parse tlv: %d\n", ret); ath11k_warn(ab, "failed to parse tlv: %d\n", ret);
...@@ -5722,7 +5722,7 @@ static int ath11k_pull_vdev_stopped_param_tlv(struct ath11k_base *ab, struct sk_ ...@@ -5722,7 +5722,7 @@ static int ath11k_pull_vdev_stopped_param_tlv(struct ath11k_base *ab, struct sk_
const struct wmi_vdev_stopped_event *ev; const struct wmi_vdev_stopped_event *ev;
int ret; int ret;
tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, "failed to parse tlv: %d\n", ret); ath11k_warn(ab, "failed to parse tlv: %d\n", ret);
...@@ -5876,7 +5876,7 @@ static int ath11k_pull_mgmt_tx_compl_param_tlv(struct ath11k_base *ab, ...@@ -5876,7 +5876,7 @@ static int ath11k_pull_mgmt_tx_compl_param_tlv(struct ath11k_base *ab,
const struct wmi_mgmt_tx_compl_event *ev; const struct wmi_mgmt_tx_compl_event *ev;
int ret; int ret;
tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, "failed to parse tlv: %d\n", ret); ath11k_warn(ab, "failed to parse tlv: %d\n", ret);
...@@ -6052,7 +6052,7 @@ static int ath11k_pull_scan_ev(struct ath11k_base *ab, struct sk_buff *skb, ...@@ -6052,7 +6052,7 @@ static int ath11k_pull_scan_ev(struct ath11k_base *ab, struct sk_buff *skb,
const struct wmi_scan_event *ev; const struct wmi_scan_event *ev;
int ret; int ret;
tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, "failed to parse tlv: %d\n", ret); ath11k_warn(ab, "failed to parse tlv: %d\n", ret);
...@@ -6085,7 +6085,7 @@ static int ath11k_pull_peer_sta_kickout_ev(struct ath11k_base *ab, struct sk_buf ...@@ -6085,7 +6085,7 @@ static int ath11k_pull_peer_sta_kickout_ev(struct ath11k_base *ab, struct sk_buf
const struct wmi_peer_sta_kickout_event *ev; const struct wmi_peer_sta_kickout_event *ev;
int ret; int ret;
tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, "failed to parse tlv: %d\n", ret); ath11k_warn(ab, "failed to parse tlv: %d\n", ret);
...@@ -6112,7 +6112,7 @@ static int ath11k_pull_roam_ev(struct ath11k_base *ab, struct sk_buff *skb, ...@@ -6112,7 +6112,7 @@ static int ath11k_pull_roam_ev(struct ath11k_base *ab, struct sk_buff *skb,
const struct wmi_roam_event *ev; const struct wmi_roam_event *ev;
int ret; int ret;
tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, "failed to parse tlv: %d\n", ret); ath11k_warn(ab, "failed to parse tlv: %d\n", ret);
...@@ -6153,14 +6153,14 @@ static int freq_to_idx(struct ath11k *ar, int freq) ...@@ -6153,14 +6153,14 @@ static int freq_to_idx(struct ath11k *ar, int freq)
return idx; return idx;
} }
static int ath11k_pull_chan_info_ev(struct ath11k_base *ab, u8 *evt_buf, static int ath11k_pull_chan_info_ev(struct ath11k_base *ab, struct sk_buff *skb,
u32 len, struct wmi_chan_info_event *ch_info_ev) struct wmi_chan_info_event *ch_info_ev)
{ {
const void **tb; const void **tb;
const struct wmi_chan_info_event *ev; const struct wmi_chan_info_event *ev;
int ret; int ret;
tb = ath11k_wmi_tlv_parse_alloc(ab, evt_buf, len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, "failed to parse tlv: %d\n", ret); ath11k_warn(ab, "failed to parse tlv: %d\n", ret);
...@@ -6199,7 +6199,7 @@ ath11k_pull_pdev_bss_chan_info_ev(struct ath11k_base *ab, struct sk_buff *skb, ...@@ -6199,7 +6199,7 @@ ath11k_pull_pdev_bss_chan_info_ev(struct ath11k_base *ab, struct sk_buff *skb,
const struct wmi_pdev_bss_chan_info_event *ev; const struct wmi_pdev_bss_chan_info_event *ev;
int ret; int ret;
tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, "failed to parse tlv: %d\n", ret); ath11k_warn(ab, "failed to parse tlv: %d\n", ret);
...@@ -6239,7 +6239,7 @@ ath11k_pull_vdev_install_key_compl_ev(struct ath11k_base *ab, struct sk_buff *sk ...@@ -6239,7 +6239,7 @@ ath11k_pull_vdev_install_key_compl_ev(struct ath11k_base *ab, struct sk_buff *sk
const struct wmi_vdev_install_key_compl_event *ev; const struct wmi_vdev_install_key_compl_event *ev;
int ret; int ret;
tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, "failed to parse tlv: %d\n", ret); ath11k_warn(ab, "failed to parse tlv: %d\n", ret);
...@@ -6270,7 +6270,7 @@ static int ath11k_pull_peer_assoc_conf_ev(struct ath11k_base *ab, struct sk_buff ...@@ -6270,7 +6270,7 @@ static int ath11k_pull_peer_assoc_conf_ev(struct ath11k_base *ab, struct sk_buff
const struct wmi_peer_assoc_conf_event *ev; const struct wmi_peer_assoc_conf_event *ev;
int ret; int ret;
tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, "failed to parse tlv: %d\n", ret); ath11k_warn(ab, "failed to parse tlv: %d\n", ret);
...@@ -6995,7 +6995,7 @@ static int ath11k_reg_11d_new_cc_event(struct ath11k_base *ab, struct sk_buff *s ...@@ -6995,7 +6995,7 @@ static int ath11k_reg_11d_new_cc_event(struct ath11k_base *ab, struct sk_buff *s
const void **tb; const void **tb;
int ret, i; int ret, i;
tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, "failed to parse tlv: %d\n", ret); ath11k_warn(ab, "failed to parse tlv: %d\n", ret);
...@@ -7384,8 +7384,7 @@ static void ath11k_bcn_tx_status_event(struct ath11k_base *ab, struct sk_buff *s ...@@ -7384,8 +7384,7 @@ static void ath11k_bcn_tx_status_event(struct ath11k_base *ab, struct sk_buff *s
struct ath11k_vif *arvif; struct ath11k_vif *arvif;
u32 vdev_id, tx_status; u32 vdev_id, tx_status;
if (ath11k_pull_bcn_tx_status_ev(ab, skb->data, skb->len, if (ath11k_pull_bcn_tx_status_ev(ab, skb, &vdev_id, &tx_status) != 0) {
&vdev_id, &tx_status) != 0) {
ath11k_warn(ab, "failed to extract bcn tx status"); ath11k_warn(ab, "failed to extract bcn tx status");
return; return;
} }
...@@ -7416,7 +7415,7 @@ static void ath11k_wmi_event_peer_sta_ps_state_chg(struct ath11k_base *ab, ...@@ -7416,7 +7415,7 @@ static void ath11k_wmi_event_peer_sta_ps_state_chg(struct ath11k_base *ab,
enum ath11k_wmi_peer_ps_state peer_previous_ps_state; enum ath11k_wmi_peer_ps_state peer_previous_ps_state;
int ret; int ret;
tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, "failed to parse tlv: %d\n", ret); ath11k_warn(ab, "failed to parse tlv: %d\n", ret);
...@@ -7884,7 +7883,7 @@ static void ath11k_chan_info_event(struct ath11k_base *ab, struct sk_buff *skb) ...@@ -7884,7 +7883,7 @@ static void ath11k_chan_info_event(struct ath11k_base *ab, struct sk_buff *skb)
/* HW channel counters frequency value in hertz */ /* HW channel counters frequency value in hertz */
u32 cc_freq_hz = ab->cc_freq_hz; u32 cc_freq_hz = ab->cc_freq_hz;
if (ath11k_pull_chan_info_ev(ab, skb->data, skb->len, &ch_info_ev) != 0) { if (ath11k_pull_chan_info_ev(ab, skb, &ch_info_ev) != 0) {
ath11k_warn(ab, "failed to extract chan info event"); ath11k_warn(ab, "failed to extract chan info event");
return; return;
} }
...@@ -8216,7 +8215,7 @@ static void ath11k_pdev_ctl_failsafe_check_event(struct ath11k_base *ab, ...@@ -8216,7 +8215,7 @@ static void ath11k_pdev_ctl_failsafe_check_event(struct ath11k_base *ab,
const struct wmi_pdev_ctl_failsafe_chk_event *ev; const struct wmi_pdev_ctl_failsafe_chk_event *ev;
int ret; int ret;
tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, "failed to parse tlv: %d\n", ret); ath11k_warn(ab, "failed to parse tlv: %d\n", ret);
...@@ -8281,7 +8280,7 @@ ath11k_wmi_pdev_csa_switch_count_status_event(struct ath11k_base *ab, ...@@ -8281,7 +8280,7 @@ ath11k_wmi_pdev_csa_switch_count_status_event(struct ath11k_base *ab,
const u32 *vdev_ids; const u32 *vdev_ids;
int ret; int ret;
tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, "failed to parse tlv: %d\n", ret); ath11k_warn(ab, "failed to parse tlv: %d\n", ret);
...@@ -8315,7 +8314,7 @@ ath11k_wmi_pdev_dfs_radar_detected_event(struct ath11k_base *ab, struct sk_buff ...@@ -8315,7 +8314,7 @@ ath11k_wmi_pdev_dfs_radar_detected_event(struct ath11k_base *ab, struct sk_buff
struct ath11k *ar; struct ath11k *ar;
int ret; int ret;
tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, "failed to parse tlv: %d\n", ret); ath11k_warn(ab, "failed to parse tlv: %d\n", ret);
...@@ -8369,7 +8368,7 @@ ath11k_wmi_pdev_temperature_event(struct ath11k_base *ab, ...@@ -8369,7 +8368,7 @@ ath11k_wmi_pdev_temperature_event(struct ath11k_base *ab,
const struct wmi_pdev_temperature_event *ev; const struct wmi_pdev_temperature_event *ev;
int ret; int ret;
tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, "failed to parse tlv: %d\n", ret); ath11k_warn(ab, "failed to parse tlv: %d\n", ret);
...@@ -8409,7 +8408,7 @@ static void ath11k_fils_discovery_event(struct ath11k_base *ab, ...@@ -8409,7 +8408,7 @@ static void ath11k_fils_discovery_event(struct ath11k_base *ab,
const struct wmi_fils_discovery_event *ev; const struct wmi_fils_discovery_event *ev;
int ret; int ret;
tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, ath11k_warn(ab,
...@@ -8441,7 +8440,7 @@ static void ath11k_probe_resp_tx_status_event(struct ath11k_base *ab, ...@@ -8441,7 +8440,7 @@ static void ath11k_probe_resp_tx_status_event(struct ath11k_base *ab,
const struct wmi_probe_resp_tx_status_event *ev; const struct wmi_probe_resp_tx_status_event *ev;
int ret; int ret;
tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, ath11k_warn(ab,
...@@ -8567,7 +8566,7 @@ static void ath11k_wmi_twt_add_dialog_event(struct ath11k_base *ab, ...@@ -8567,7 +8566,7 @@ static void ath11k_wmi_twt_add_dialog_event(struct ath11k_base *ab,
const struct wmi_twt_add_dialog_event *ev; const struct wmi_twt_add_dialog_event *ev;
int ret; int ret;
tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, ath11k_warn(ab,
...@@ -8604,7 +8603,7 @@ static void ath11k_wmi_gtk_offload_status_event(struct ath11k_base *ab, ...@@ -8604,7 +8603,7 @@ static void ath11k_wmi_gtk_offload_status_event(struct ath11k_base *ab,
u64 replay_ctr; u64 replay_ctr;
int ret; int ret;
tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC); tb = ath11k_wmi_tlv_parse_alloc(ab, skb, GFP_ATOMIC);
if (IS_ERR(tb)) { if (IS_ERR(tb)) {
ret = PTR_ERR(tb); ret = PTR_ERR(tb);
ath11k_warn(ab, "failed to parse tlv: %d\n", ret); ath11k_warn(ab, "failed to parse tlv: %d\n", ret);
......
...@@ -6295,8 +6295,8 @@ enum wmi_sta_keepalive_method { ...@@ -6295,8 +6295,8 @@ enum wmi_sta_keepalive_method {
#define WMI_STA_KEEPALIVE_INTERVAL_DEFAULT 30 #define WMI_STA_KEEPALIVE_INTERVAL_DEFAULT 30
#define WMI_STA_KEEPALIVE_INTERVAL_DISABLE 0 #define WMI_STA_KEEPALIVE_INTERVAL_DISABLE 0
const void **ath11k_wmi_tlv_parse_alloc(struct ath11k_base *ab, const void *ptr, const void **ath11k_wmi_tlv_parse_alloc(struct ath11k_base *ab,
size_t len, gfp_t gfp); struct sk_buff *skb, gfp_t gfp);
int ath11k_wmi_cmd_send(struct ath11k_pdev_wmi *wmi, struct sk_buff *skb, int ath11k_wmi_cmd_send(struct ath11k_pdev_wmi *wmi, struct sk_buff *skb,
u32 cmd_id); u32 cmd_id);
struct sk_buff *ath11k_wmi_alloc_skb(struct ath11k_wmi_base *wmi_sc, u32 len); struct sk_buff *ath11k_wmi_alloc_skb(struct ath11k_wmi_base *wmi_sc, u32 len);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment