Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a1332cad authored by Glen Lee's avatar Glen Lee Committed by Greg Kroah-Hartman
Browse files

staging: wilc1000: wilc_wlan_handle_txq: add argument and use wilc



This patch adds argument net_device dev and use netdev private data memeber
wilc instead of g_linux_wlan.

Signed-off-by: default avatarGlen Lee <glen.lee@atmel.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 88687584
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -476,10 +476,10 @@ static int linux_wlan_txq_task(void *vp)
		}
		PRINT_D(TX_DBG, "txq_task handle the sending packet and let me go to sleep.\n");
#if !defined USE_TX_BACKOFF_DELAY_IF_NO_BUFFERS
		ret = wilc_wlan_handle_txq(&txq_count);
		ret = wilc_wlan_handle_txq(dev, &txq_count);
#else
		do {
			ret = wilc_wlan_handle_txq(&txq_count);
			ret = wilc_wlan_handle_txq(dev, &txq_count);
			if (txq_count < FLOW_CONTROL_LOWER_THRESHOLD /* && netif_queue_stopped(pd->wilc_netdev)*/) {
				PRINT_D(TX_DBG, "Waking up queue\n");
				/* netif_wake_queue(pd->wilc_netdev); */
+8 −3
Original line number Diff line number Diff line
@@ -814,7 +814,7 @@ void chip_sleep_manually(u32 u32SleepTime)
 *      Tx, Rx queue handle functions
 *
 ********************************************/
int wilc_wlan_handle_txq(u32 *pu32TxqCount)
int wilc_wlan_handle_txq(struct net_device *dev, u32 *pu32TxqCount)
{
	wilc_wlan_dev_t *p = (wilc_wlan_dev_t *)&g_wlan;
	int i, entries = 0;
@@ -828,13 +828,18 @@ int wilc_wlan_handle_txq(u32 *pu32TxqCount)
	int counter;
	int timeout;
	u32 vmm_table[WILC_VMM_TBL_SIZE];
	perInterface_wlan_t *nic;
	struct wilc *wilc;

	nic = netdev_priv(dev);
	wilc = nic->wilc;

	p->txq_exit = 0;
	do {
		if (p->quit)
			break;

		linux_wlan_lock_timeout(&g_linux_wlan->txq_add_to_head_cs,
		linux_wlan_lock_timeout(&wilc->txq_add_to_head_cs,
					CFG_PKTS_TIMEOUT);
#ifdef	TCP_ACK_FILTER
		wilc_wlan_txq_filter_dup_tcp_ack();
@@ -1098,7 +1103,7 @@ int wilc_wlan_handle_txq(u32 *pu32TxqCount)
		if (ret != 1)
			break;
	} while (0);
	up(&g_linux_wlan->txq_add_to_head_cs);
	up(&wilc->txq_add_to_head_cs);

	p->txq_exit = 1;
	PRINT_D(TX_DBG, "THREAD: Exiting txq\n");
+1 −1
Original line number Diff line number Diff line
@@ -300,7 +300,7 @@ int wilc_wlan_start(void);
int wilc_wlan_stop(void);
int wilc_wlan_txq_add_net_pkt(void *priv, u8 *buffer, u32 buffer_size,
			      wilc_tx_complete_func_t func);
int wilc_wlan_handle_txq(u32 *pu32TxqCount);
int wilc_wlan_handle_txq(struct net_device *dev, u32 *pu32TxqCount);
void wilc_handle_isr(void *wilc);
void wilc_wlan_cleanup(void);
int wilc_wlan_cfg_set(int start, u32 wid, u8 *buffer, u32 buffer_size,