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>
This commit is contained in:
Jérôme Pouiller 2020-04-01 13:03:44 +02:00 committed by Greg Kroah-Hartman
parent abaef5374e
commit 517b358fdd

View File

@ -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;