Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp4738690pxj; Wed, 12 May 2021 12:05:41 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwzDd5dv+lrY1AFq4EiD79C+hGgTOBCICOy2Xyqj4jVIMyhFCp7aUyy+PykRfqVvqPrNSNG X-Received: by 2002:aa7:d40e:: with SMTP id z14mr40151140edq.73.1620846222770; Wed, 12 May 2021 12:03:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1620846222; cv=none; d=google.com; s=arc-20160816; b=xA+3lS53wDBr9HR704d+22P+Fva2y9MP9SxAH1dKP7BNSJnhOTGiKQQDwOV/UxsZgL lQTpTo81Yne+boTeVmWvdc8+/YRQ0RFwFzY95A49ig+oGfuyAT29BLDnkYMIUEZQMCff 37t4CG6E+RXQ+bvNfOW30zm19w6chnXMfwaRfm4pD+Jq6ugmq1voqjRouRySn4kuyHCt OSdzarTEzOSEN3MNAwnCMNGkcVb5Dl0lOW/32CTMzJlWOrKAUMWTTJs/SpTslrBtxdYf nOXTTbG8GRFC46Vv8MuidTy8exay4Y9NCfKtmrXPWiHip1TtoW/xKzBVLLVrr4ztzODf 6IOg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=ammMQi4+jT8a2rV7wBfl/aWa1fXzEbTcK5LBdD8q3lY=; b=pwQzyPE8V1PRVHl5shx/8AxoFipLVKoOMBllGCys9C61atE8B8/4hlLOO3F9kb50oB z73Jyga8WsHvdW+Qznh2ydroX4/07YtOnPh4ekjX57WZmflRb1NmIz5lDn2EYiS1fX/E FqsXIzkd8WQP1orqzhj6n5PzDmx7Hgt1fw7wDT/THbI+oHfpKVTD3SRslurUxYvJxXpv Bf4usT/4Zvbq1N07e8nMEstBSYJ7RaJXWKK8Up/ufWMAFWFzzJDNt/cBNpI5hbuc4L5+ wETMjysSy9ThyBS2GwYYob7UCITH1MBFxqKDPzJl4uTONdcGqe708zHSj1KXqb8mOOzo OC8A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=EZoimnuN; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id qn15si718174ejb.104.2021.05.12.12.03.12; Wed, 12 May 2021 12:03:42 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=EZoimnuN; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S243682AbhELS4v (ORCPT + 99 others); Wed, 12 May 2021 14:56:51 -0400 Received: from mail.kernel.org ([198.145.29.99]:36858 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S244277AbhELQmv (ORCPT ); Wed, 12 May 2021 12:42:51 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id E6B4D61D36; Wed, 12 May 2021 16:12:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1620835922; bh=/Jw27qZHH2AbRwpO3QCMcHD9RYlFS9krL+HyQ/U0twE=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=EZoimnuN6TJrXwJqVfqd+HCIT79RSH/bpZ/3cV8iGoxI/JU/LgFP67kO9eqTeyjrA h6SNX81OW4OGoraNc+jcTxWHMUeqjKVMNj3UUlUozsFmYNQLPHjoJkvc7LxSE6V0j4 05rImV3LQ3QLqFa3mS4SPOjyS/uSuiaL29I4vQ1k= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Ryder Lee , Felix Fietkau , Sasha Levin Subject: [PATCH 5.12 539/677] mt76: mt7615: cleanup mcu tx queue in mt7615_dma_reset() Date: Wed, 12 May 2021 16:49:45 +0200 Message-Id: <20210512144855.277351449@linuxfoundation.org> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210512144837.204217980@linuxfoundation.org> References: <20210512144837.204217980@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Ryder Lee [ Upstream commit 69e74d7f23d515fb559b2e0bebfdf4c458d9507d ] With this patch, mt7615_mac_reset_work() can recover system back. Fixes: e637763b606b ("mt76: move mcu queues to mt76_dev q_mcu array") Signed-off-by: Ryder Lee Signed-off-by: Felix Fietkau Signed-off-by: Sasha Levin --- drivers/net/wireless/mediatek/mt76/mt7615/mac.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/net/wireless/mediatek/mt76/mt7615/mac.c b/drivers/net/wireless/mediatek/mt76/mt7615/mac.c index f594ea25ece6..d73841480544 100644 --- a/drivers/net/wireless/mediatek/mt76/mt7615/mac.c +++ b/drivers/net/wireless/mediatek/mt76/mt7615/mac.c @@ -1970,15 +1970,17 @@ void mt7615_dma_reset(struct mt7615_dev *dev) mt76_clear(dev, MT_WPDMA_GLO_CFG, MT_WPDMA_GLO_CFG_RX_DMA_EN | MT_WPDMA_GLO_CFG_TX_DMA_EN | MT_WPDMA_GLO_CFG_TX_WRITEBACK_DONE); + usleep_range(1000, 2000); - mt76_queue_tx_cleanup(dev, dev->mt76.q_mcu[MT_MCUQ_WM], true); for (i = 0; i < __MT_TXQ_MAX; i++) mt76_queue_tx_cleanup(dev, dev->mphy.q_tx[i], true); - mt76_for_each_q_rx(&dev->mt76, i) { + for (i = 0; i < __MT_MCUQ_MAX; i++) + mt76_queue_tx_cleanup(dev, dev->mt76.q_mcu[i], true); + + mt76_for_each_q_rx(&dev->mt76, i) mt76_queue_rx_reset(dev, i); - } mt76_set(dev, MT_WPDMA_GLO_CFG, MT_WPDMA_GLO_CFG_RX_DMA_EN | MT_WPDMA_GLO_CFG_TX_DMA_EN | -- 2.30.2