diff options
author | Jérôme Pouiller <jerome.pouiller@silabs.com> | 2020-04-01 13:03:44 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2020-04-13 08:55:34 +0200 |
commit | 517b358fddd737e81a3e0762d0893722871fafe9 (patch) | |
tree | bf04e79da4fd2958486931035ee65a979aa99485 /drivers/staging/wfx/queue.c | |
parent | abaef5374e53be81ca46ef76d9c03e103b49da51 (diff) |
staging: wfx: simplify wfx_tx_queue_mask_get()
It is far simpler to return a pointer instead of an error. Thus, it is
no more necessary to pass a pointer reference as argument.
Reviewed-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
Link: https://lore.kernel.org/r/20200401110405.80282-12-Jerome.Pouiller@silabs.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/wfx/queue.c')
-rw-r--r-- | drivers/staging/wfx/queue.c | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/drivers/staging/wfx/queue.c b/drivers/staging/wfx/queue.c index bbab6b192b0c..c602496580f7 100644 --- a/drivers/staging/wfx/queue.c +++ b/drivers/staging/wfx/queue.c @@ -382,9 +382,8 @@ static int wfx_get_prio_queue(struct wfx_vif *wvif, u32 tx_allowed_mask) return winner; } -static int wfx_tx_queue_mask_get(struct wfx_vif *wvif, - struct wfx_queue **queue_p, - u32 *tx_allowed_mask_p) +static struct wfx_queue *wfx_tx_queue_mask_get(struct wfx_vif *wvif, + u32 *tx_allowed_mask_p) { int idx; u32 tx_allowed_mask; @@ -398,11 +397,10 @@ static int wfx_tx_queue_mask_get(struct wfx_vif *wvif, tx_allowed_mask |= BIT(WFX_LINK_ID_AFTER_DTIM); idx = wfx_get_prio_queue(wvif, tx_allowed_mask); if (idx < 0) - return -ENOENT; + return NULL; - *queue_p = &wvif->wdev->tx_queue[idx]; *tx_allowed_mask_p = tx_allowed_mask; - return 0; + return &wvif->wdev->tx_queue[idx]; } struct hif_msg *wfx_tx_queues_get_after_dtim(struct wfx_vif *wvif) @@ -434,7 +432,6 @@ struct hif_msg *wfx_tx_queues_get(struct wfx_dev *wdev) u32 tx_allowed_mask = 0; u32 vif_tx_allowed_mask = 0; struct wfx_vif *wvif; - int not_found; int i; if (atomic_read(&wdev->tx_lock)) @@ -469,12 +466,12 @@ struct hif_msg *wfx_tx_queues_get(struct wfx_dev *wdev) while ((wvif = wvif_iterate(wdev, wvif)) != NULL) { spin_lock_bh(&wvif->ps_state_lock); - not_found = wfx_tx_queue_mask_get(wvif, &vif_queue, + vif_queue = wfx_tx_queue_mask_get(wvif, &vif_tx_allowed_mask); spin_unlock_bh(&wvif->ps_state_lock); - if (!not_found) { + if (vif_queue) { if (queue && queue != vif_queue) dev_info(wdev->dev, "vifs disagree about queue priority\n"); tx_allowed_mask |= vif_tx_allowed_mask; |