upstream fixes for SDIO speed issues, certain mSD cards on Raspberry Pi 4, older brcm sdio WiFi
This commit is contained in:
parent
11aa761191
commit
323978eed5
|
@ -98,4 +98,3 @@ index 4bc187a4eacdb..2b378fa06d19e 100644
|
|||
pcie_ep@14160000 {
|
||||
--
|
||||
2.26.2
|
||||
|
||||
|
|
|
@ -45,4 +45,3 @@ index 9bc52fdb393c8..ebaac57853138 100644
|
|||
regulator-max-microvolt = <1320000>;
|
||||
--
|
||||
2.26.2
|
||||
|
||||
|
|
|
@ -0,0 +1,372 @@
|
|||
From patchwork Sun Aug 30 19:14:37 2020
|
||||
Content-Type: text/plain; charset="utf-8"
|
||||
MIME-Version: 1.0
|
||||
Content-Transfer-Encoding: 7bit
|
||||
X-Patchwork-Submitter: Dmitry Osipenko <digetx@gmail.com>
|
||||
X-Patchwork-Id: 11745283
|
||||
X-Patchwork-Delegate: kvalo@adurom.com
|
||||
Return-Path: <SRS0=8jSp=CI=vger.kernel.org=linux-wireless-owner@kernel.org>
|
||||
Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org
|
||||
[172.30.200.123])
|
||||
by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 02F8E722
|
||||
for <patchwork-linux-wireless@patchwork.kernel.org>;
|
||||
Sun, 30 Aug 2020 19:15:31 +0000 (UTC)
|
||||
Received: from vger.kernel.org (vger.kernel.org [23.128.96.18])
|
||||
by mail.kernel.org (Postfix) with ESMTP id D325020757
|
||||
for <patchwork-linux-wireless@patchwork.kernel.org>;
|
||||
Sun, 30 Aug 2020 19:15:30 +0000 (UTC)
|
||||
Authentication-Results: mail.kernel.org;
|
||||
dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com
|
||||
header.b="XOye4I75"
|
||||
Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand
|
||||
id S1726492AbgH3TPQ (ORCPT
|
||||
<rfc822;patchwork-linux-wireless@patchwork.kernel.org>);
|
||||
Sun, 30 Aug 2020 15:15:16 -0400
|
||||
Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36382 "EHLO
|
||||
lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org
|
||||
with ESMTP id S1726178AbgH3TPH (ORCPT
|
||||
<rfc822;linux-wireless@vger.kernel.org>);
|
||||
Sun, 30 Aug 2020 15:15:07 -0400
|
||||
Received: from mail-lf1-x143.google.com (mail-lf1-x143.google.com
|
||||
[IPv6:2a00:1450:4864:20::143])
|
||||
by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7B885C061575;
|
||||
Sun, 30 Aug 2020 12:15:06 -0700 (PDT)
|
||||
Received: by mail-lf1-x143.google.com with SMTP id y2so951774lfy.10;
|
||||
Sun, 30 Aug 2020 12:15:06 -0700 (PDT)
|
||||
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
|
||||
d=gmail.com; s=20161025;
|
||||
h=from:to:cc:subject:date:message-id:in-reply-to:references
|
||||
:mime-version:content-transfer-encoding;
|
||||
bh=hzL71nqb/6BZxUitP92QceAo8sdBLgT31i3ar+cwVk4=;
|
||||
b=XOye4I75cIfJ4wkN4RaeluIx+/YAJsxlMpAnP498/xZTl1BTh8eSlfQif5JouocnSh
|
||||
14l3fBQ+A+yleGcThqMh1IaJriMgqMbIE00NyGf7Vle0M2E7WLVo9PlrLCn9vtgowgLt
|
||||
Lr4Mu7V/lWdptapsH5tCqMvP1g5ir1mEsMMokwajMTno6GR0SBVHl/7ypVl5YA3p4HoF
|
||||
fFymnbrHgHbTrzQ/PoyTHfJ+z2cr7zsyoWJ2DNueWkIQjuS/8ueDks4amJJKs+KgB+yp
|
||||
+XRynXf/t0fyF8u1wenwv3sbeaCt3sIPLNePGmjRYeaXo5pTqEUgNHd6MH2PGfsDTuU0
|
||||
5MTg==
|
||||
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
|
||||
d=1e100.net; s=20161025;
|
||||
h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
|
||||
:references:mime-version:content-transfer-encoding;
|
||||
bh=hzL71nqb/6BZxUitP92QceAo8sdBLgT31i3ar+cwVk4=;
|
||||
b=j8AOqXUrl/hkYHnFrnNd2FRUeIHMr2dpaVrKcJBXuHajNJC8b3YN2G9F2K+lkC+ZxC
|
||||
w1B7sH1DNxY8u4wIuHketyNteuSdFH9vC+VZhu5DY5Bz0snrsLK43fS/8InrBWMd9/OZ
|
||||
3bt86DxIWv9szZELmV5sCnwAh5U9CKk95vI5k+mKJLfv8mmqgyJ2rbPBZO0xNWbyRMp3
|
||||
Bu+B+ze0mY9xjnOSwXK8dUvlTpRNr9zOeXmzjtWsb3xFgFN1PZ5wiD3bQ5m7XoYqQEXb
|
||||
Ah+zOiBL3P2mZUM54OyHP+HolPq8/V0zKDuw06na41SW1cJNuZUIG6W1m/x75S6hJO4D
|
||||
2lJg==
|
||||
X-Gm-Message-State: AOAM533MF2BJ56mP1JcVq45SsbuqEwSox1UmefQdmOHheDJSUx5w2LUC
|
||||
ca86fl0ZnPg4zrXg3bFav48=
|
||||
X-Google-Smtp-Source:
|
||||
ABdhPJx6cYCkNqBsgfZJn1WvrwBAiI7kWYd9Yi9pQ5L2953d0O0W457Bcur/fqHaFOJeiOQAPpwzwg==
|
||||
X-Received: by 2002:a19:f510:: with SMTP id j16mr337056lfb.169.1598814904892;
|
||||
Sun, 30 Aug 2020 12:15:04 -0700 (PDT)
|
||||
Received: from localhost.localdomain (109-252-170-211.dynamic.spd-mgts.ru.
|
||||
[109.252.170.211])
|
||||
by smtp.gmail.com with ESMTPSA id
|
||||
e23sm1409709lfj.80.2020.08.30.12.15.04
|
||||
(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
|
||||
Sun, 30 Aug 2020 12:15:04 -0700 (PDT)
|
||||
From: Dmitry Osipenko <digetx@gmail.com>
|
||||
To: Arend van Spriel <arend.vanspriel@broadcom.com>,
|
||||
Franky Lin <franky.lin@broadcom.com>,
|
||||
Hante Meuleman <hante.meuleman@broadcom.com>,
|
||||
Chi-Hsien Lin <chi-hsien.lin@cypress.com>,
|
||||
Wright Feng <wright.feng@cypress.com>,
|
||||
Kalle Valo <kvalo@codeaurora.org>
|
||||
Cc: linux-wireless@vger.kernel.org,
|
||||
brcm80211-dev-list.pdl@broadcom.com,
|
||||
brcm80211-dev-list@cypress.com, netdev@vger.kernel.org,
|
||||
linux-tegra@vger.kernel.org, linux-kernel@vger.kernel.org
|
||||
Subject: [PATCH v3 1/3] brcmfmac: increase F2 watermark for BCM4329
|
||||
Date: Sun, 30 Aug 2020 22:14:37 +0300
|
||||
Message-Id: <20200830191439.10017-2-digetx@gmail.com>
|
||||
X-Mailer: git-send-email 2.27.0
|
||||
In-Reply-To: <20200830191439.10017-1-digetx@gmail.com>
|
||||
References: <20200830191439.10017-1-digetx@gmail.com>
|
||||
MIME-Version: 1.0
|
||||
Sender: linux-wireless-owner@vger.kernel.org
|
||||
Precedence: bulk
|
||||
List-ID: <linux-wireless.vger.kernel.org>
|
||||
X-Mailing-List: linux-wireless@vger.kernel.org
|
||||
|
||||
This patch fixes SDHCI CRC errors during of RX throughput testing on
|
||||
BCM4329 chip if SDIO BUS is clocked above 25MHz. In particular the
|
||||
checksum problem is observed on NVIDIA Tegra20 SoCs. The good watermark
|
||||
value is borrowed from downstream BCMDHD driver and it's matching to the
|
||||
value that is already used for the BCM4339 chip, hence let's re-use it
|
||||
for BCM4329.
|
||||
|
||||
Reviewed-by: Arend van Spriel <arend.vanspriel@broadcom.com>
|
||||
Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
|
||||
---
|
||||
drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
|
||||
index d1b96bad2718..b16944a898f9 100644
|
||||
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
|
||||
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
|
||||
@@ -4278,6 +4278,7 @@ static void brcmf_sdio_firmware_callback(struct device *dev, int err,
|
||||
brcmf_sdiod_writeb(sdiod, SBSDIO_FUNC1_MESBUSYCTRL,
|
||||
CY_43012_MESBUSYCTRL, &err);
|
||||
break;
|
||||
+ case SDIO_DEVICE_ID_BROADCOM_4329:
|
||||
case SDIO_DEVICE_ID_BROADCOM_4339:
|
||||
brcmf_dbg(INFO, "set F2 watermark to 0x%x*4 bytes for 4339\n",
|
||||
CY_4339_F2_WATERMARK);
|
||||
|
||||
From patchwork Sun Aug 30 19:14:38 2020
|
||||
Content-Type: text/plain; charset="utf-8"
|
||||
MIME-Version: 1.0
|
||||
Content-Transfer-Encoding: 7bit
|
||||
X-Patchwork-Submitter: Dmitry Osipenko <digetx@gmail.com>
|
||||
X-Patchwork-Id: 11745287
|
||||
X-Patchwork-Delegate: kvalo@adurom.com
|
||||
Return-Path: <SRS0=8jSp=CI=vger.kernel.org=linux-wireless-owner@kernel.org>
|
||||
Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org
|
||||
[172.30.200.123])
|
||||
by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 8D83D722
|
||||
for <patchwork-linux-wireless@patchwork.kernel.org>;
|
||||
Sun, 30 Aug 2020 19:18:07 +0000 (UTC)
|
||||
Received: from vger.kernel.org (vger.kernel.org [23.128.96.18])
|
||||
by mail.kernel.org (Postfix) with ESMTP id 74984206F0
|
||||
for <patchwork-linux-wireless@patchwork.kernel.org>;
|
||||
Sun, 30 Aug 2020 19:18:07 +0000 (UTC)
|
||||
Authentication-Results: mail.kernel.org;
|
||||
dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com
|
||||
header.b="nVMf6eR/"
|
||||
Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand
|
||||
id S1727940AbgH3TRr (ORCPT
|
||||
<rfc822;patchwork-linux-wireless@patchwork.kernel.org>);
|
||||
Sun, 30 Aug 2020 15:17:47 -0400
|
||||
Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36384 "EHLO
|
||||
lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org
|
||||
with ESMTP id S1726350AbgH3TPI (ORCPT
|
||||
<rfc822;linux-wireless@vger.kernel.org>);
|
||||
Sun, 30 Aug 2020 15:15:08 -0400
|
||||
Received: from mail-lf1-x141.google.com (mail-lf1-x141.google.com
|
||||
[IPv6:2a00:1450:4864:20::141])
|
||||
by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6E897C061236;
|
||||
Sun, 30 Aug 2020 12:15:07 -0700 (PDT)
|
||||
Received: by mail-lf1-x141.google.com with SMTP id j15so2315573lfg.7;
|
||||
Sun, 30 Aug 2020 12:15:07 -0700 (PDT)
|
||||
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
|
||||
d=gmail.com; s=20161025;
|
||||
h=from:to:cc:subject:date:message-id:in-reply-to:references
|
||||
:mime-version:content-transfer-encoding;
|
||||
bh=85fBH067dHvKQNq6ek+W6lpUInMb+ZStwZLTCqTuQ3g=;
|
||||
b=nVMf6eR/tzJR9bU6YV5ktJWXhIRVVdwtYx5dR5sOF9HNUZJR1lw0R2eZ5yKGcbs3Ij
|
||||
UCrio8mvGQhynAaPTXjMhm57mDu723ApUr0TiZXjmUoJrFQVIFl6VYZeCDu3dXXFGUw0
|
||||
XasSLQZ6ak9UxEk4Xen3Q2U/Zr/P+/jB0QY1vR+MRsiIFzZXwQRQpM9IJzj4yIYopB5X
|
||||
9XhWNhf2QWh9gH61eTumnKsNzptLg/c8atZt15ncup5uu1C2f/rwt/4dav6jO2dmbGAs
|
||||
p9NeFTAyGXpQxrzCtfDUCTXvmsS6UEY3o15iWQaZopVbo0ypnts/6Vg8upR1VNQVxnM7
|
||||
E7Zw==
|
||||
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
|
||||
d=1e100.net; s=20161025;
|
||||
h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
|
||||
:references:mime-version:content-transfer-encoding;
|
||||
bh=85fBH067dHvKQNq6ek+W6lpUInMb+ZStwZLTCqTuQ3g=;
|
||||
b=WwmOJDBXyk7Su9lj9yFvo0X22q549x/nNNUuUYCmUf8OjvUL6LwAkcQ7l+F6X41BtP
|
||||
n1fYqGH6S7w68U3pIL2yyzR7YOl1NDYvZp3LRNGc6Y0dljwZbMMrbTXkdnimwrVneXLQ
|
||||
CLjOSIYQkJgtWX9ZG/Uaq+hnaY7BX9EMntr7mXYbD+O8Xmr8/Zb/jUJSKiKIxAVW48JM
|
||||
z2B7XRLEfmd8ELQoMhqtCw/23wbQ6tnT5tdtt+ngDJWh7aXnUaVgO8i/tQf0Th3JXBdj
|
||||
dB5/P8FDMKrLNwxVYaaHyo/vs86AeUzj+J7Vu+jSQYbWobKSsN0h9FsVwsoEzud1cPlw
|
||||
s9Tg==
|
||||
X-Gm-Message-State: AOAM531EgBgv8kHi8OlvBWwXAThNCUT/1OO1iu8iU00rAeqI5Tb40pod
|
||||
ZyIrbVjNZJe6MgLKqLMeZrw=
|
||||
X-Google-Smtp-Source:
|
||||
ABdhPJzI4lUuYNLpOO2XLO2AmkS9fShcfxSPyVOk6XVuyEYlvT5tmtBLoLVIApzOMF3Luuy0a5TW7Q==
|
||||
X-Received: by 2002:ac2:5e2c:: with SMTP id o12mr3918764lfg.71.1598814905875;
|
||||
Sun, 30 Aug 2020 12:15:05 -0700 (PDT)
|
||||
Received: from localhost.localdomain (109-252-170-211.dynamic.spd-mgts.ru.
|
||||
[109.252.170.211])
|
||||
by smtp.gmail.com with ESMTPSA id
|
||||
e23sm1409709lfj.80.2020.08.30.12.15.04
|
||||
(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
|
||||
Sun, 30 Aug 2020 12:15:05 -0700 (PDT)
|
||||
From: Dmitry Osipenko <digetx@gmail.com>
|
||||
To: Arend van Spriel <arend.vanspriel@broadcom.com>,
|
||||
Franky Lin <franky.lin@broadcom.com>,
|
||||
Hante Meuleman <hante.meuleman@broadcom.com>,
|
||||
Chi-Hsien Lin <chi-hsien.lin@cypress.com>,
|
||||
Wright Feng <wright.feng@cypress.com>,
|
||||
Kalle Valo <kvalo@codeaurora.org>
|
||||
Cc: linux-wireless@vger.kernel.org,
|
||||
brcm80211-dev-list.pdl@broadcom.com,
|
||||
brcm80211-dev-list@cypress.com, netdev@vger.kernel.org,
|
||||
linux-tegra@vger.kernel.org, linux-kernel@vger.kernel.org
|
||||
Subject: [PATCH v3 2/3] brcmfmac: drop chip id from debug messages
|
||||
Date: Sun, 30 Aug 2020 22:14:38 +0300
|
||||
Message-Id: <20200830191439.10017-3-digetx@gmail.com>
|
||||
X-Mailer: git-send-email 2.27.0
|
||||
In-Reply-To: <20200830191439.10017-1-digetx@gmail.com>
|
||||
References: <20200830191439.10017-1-digetx@gmail.com>
|
||||
MIME-Version: 1.0
|
||||
Sender: linux-wireless-owner@vger.kernel.org
|
||||
Precedence: bulk
|
||||
List-ID: <linux-wireless.vger.kernel.org>
|
||||
X-Mailing-List: linux-wireless@vger.kernel.org
|
||||
|
||||
The chip ID was already printed out at the time when debug message about
|
||||
the changed F2 watermark is printed, hence let's drop the unnecessary part
|
||||
of the debug messages. This cleans code a tad and also allows to re-use
|
||||
the F2 watermark debug messages by multiple chips.
|
||||
|
||||
Suggested-by: Arend van Spriel <arend.vanspriel@broadcom.com>
|
||||
Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
|
||||
---
|
||||
drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
|
||||
index b16944a898f9..d4989e0cd7be 100644
|
||||
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
|
||||
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
|
||||
@@ -4280,7 +4280,7 @@ static void brcmf_sdio_firmware_callback(struct device *dev, int err,
|
||||
break;
|
||||
case SDIO_DEVICE_ID_BROADCOM_4329:
|
||||
case SDIO_DEVICE_ID_BROADCOM_4339:
|
||||
- brcmf_dbg(INFO, "set F2 watermark to 0x%x*4 bytes for 4339\n",
|
||||
+ brcmf_dbg(INFO, "set F2 watermark to 0x%x*4 bytes\n",
|
||||
CY_4339_F2_WATERMARK);
|
||||
brcmf_sdiod_writeb(sdiod, SBSDIO_WATERMARK,
|
||||
CY_4339_F2_WATERMARK, &err);
|
||||
@@ -4293,7 +4293,7 @@ static void brcmf_sdio_firmware_callback(struct device *dev, int err,
|
||||
CY_4339_MESBUSYCTRL, &err);
|
||||
break;
|
||||
case SDIO_DEVICE_ID_BROADCOM_43455:
|
||||
- brcmf_dbg(INFO, "set F2 watermark to 0x%x*4 bytes for 43455\n",
|
||||
+ brcmf_dbg(INFO, "set F2 watermark to 0x%x*4 bytes\n",
|
||||
CY_43455_F2_WATERMARK);
|
||||
brcmf_sdiod_writeb(sdiod, SBSDIO_WATERMARK,
|
||||
CY_43455_F2_WATERMARK, &err);
|
||||
|
||||
From patchwork Sun Aug 30 19:14:39 2020
|
||||
Content-Type: text/plain; charset="utf-8"
|
||||
MIME-Version: 1.0
|
||||
Content-Transfer-Encoding: 7bit
|
||||
X-Patchwork-Submitter: Dmitry Osipenko <digetx@gmail.com>
|
||||
X-Patchwork-Id: 11745291
|
||||
X-Patchwork-Delegate: kvalo@adurom.com
|
||||
Return-Path: <SRS0=8jSp=CI=vger.kernel.org=linux-wireless-owner@kernel.org>
|
||||
Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org
|
||||
[172.30.200.123])
|
||||
by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id BC61D722
|
||||
for <patchwork-linux-wireless@patchwork.kernel.org>;
|
||||
Sun, 30 Aug 2020 19:18:14 +0000 (UTC)
|
||||
Received: from vger.kernel.org (vger.kernel.org [23.128.96.18])
|
||||
by mail.kernel.org (Postfix) with ESMTP id A440D20757
|
||||
for <patchwork-linux-wireless@patchwork.kernel.org>;
|
||||
Sun, 30 Aug 2020 19:18:14 +0000 (UTC)
|
||||
Authentication-Results: mail.kernel.org;
|
||||
dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com
|
||||
header.b="ADD6Kq4a"
|
||||
Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand
|
||||
id S1727902AbgH3TRq (ORCPT
|
||||
<rfc822;patchwork-linux-wireless@patchwork.kernel.org>);
|
||||
Sun, 30 Aug 2020 15:17:46 -0400
|
||||
Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36392 "EHLO
|
||||
lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org
|
||||
with ESMTP id S1726380AbgH3TPJ (ORCPT
|
||||
<rfc822;linux-wireless@vger.kernel.org>);
|
||||
Sun, 30 Aug 2020 15:15:09 -0400
|
||||
Received: from mail-lf1-x142.google.com (mail-lf1-x142.google.com
|
||||
[IPv6:2a00:1450:4864:20::142])
|
||||
by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6439FC061239;
|
||||
Sun, 30 Aug 2020 12:15:08 -0700 (PDT)
|
||||
Received: by mail-lf1-x142.google.com with SMTP id j15so2315593lfg.7;
|
||||
Sun, 30 Aug 2020 12:15:08 -0700 (PDT)
|
||||
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
|
||||
d=gmail.com; s=20161025;
|
||||
h=from:to:cc:subject:date:message-id:in-reply-to:references
|
||||
:mime-version:content-transfer-encoding;
|
||||
bh=WKk6KWPNkMHUCww/FbErLxUYYQtEUh3n/PTtmJB/IIQ=;
|
||||
b=ADD6Kq4arZJOO7Z+X6dlbNFUKa2MGhu79OcOljRz3WAcc/N3H23SdadMXUusZl7Re7
|
||||
mavcADGOOGjw4YPLh4Bd3AHe3Wf3GrR9xszVDjKeNWBVzpgfPFpbu+G5v/ZCc1IocLez
|
||||
Tml2HhWF++QwC8/gg0QSMJMYiVTHYrz7Mfq31KkwcMzdX/uXIwpZBuRtIx3Vf6OfTE4I
|
||||
gSfTcZ6mcSbFla2yJur9lviMamt/2uiHZG0/UTLDqfDQ0fXciUFWXW/wU1YYVwLxynkp
|
||||
32H0oWWSihfW4LFt7gufNGgSOCh6YMorVxHCY3+a2JagEhMaXuLn853leokAN8VD3nsO
|
||||
IjnQ==
|
||||
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
|
||||
d=1e100.net; s=20161025;
|
||||
h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
|
||||
:references:mime-version:content-transfer-encoding;
|
||||
bh=WKk6KWPNkMHUCww/FbErLxUYYQtEUh3n/PTtmJB/IIQ=;
|
||||
b=P70ZXffe7IiriynRgLFOrgujg3zCp+qiQV2DtraBUnPXzHbxNDRH7MnRX8RyYwJZs7
|
||||
MDwZwyOsryxbtpv/1lQfakB0pFKDzMAqpRhxIc4amXyIBz2g4uoZIDStNSODVhXtjG5H
|
||||
h4uPuSz9neHI7vO4/7Yp1kvBCS29fbXLIKIFGR4QrwqWxGuaMhNyeXs2Eb3K/jkyfDjn
|
||||
1HVDqw+yW5WX2R5Rq7xkjw05AMrqSVvecbX+WV/ksoCgYd3N9bS52B0rBA3Qd6uOADTj
|
||||
82vYn1zNANhjSnTRMC0hOTZmzmnqZsyksYdQrpbyEsdpHaKbB6GkX7ylp3TM9XDpD9xK
|
||||
+ROQ==
|
||||
X-Gm-Message-State: AOAM532osjv7Nw1P0/HRBwzPySBJZh+vqXrZj/Ko6Yzt0eyt2qeOFDG3
|
||||
JOT89QLhVftNg53aBYKa2p4=
|
||||
X-Google-Smtp-Source:
|
||||
ABdhPJzL0Cdo7AKGH5FiC2AREv1bSdtUCg+BEl1uu43NLTd1wRmGMfv3vj1BvcduUPeX7jN48VJ+7Q==
|
||||
X-Received: by 2002:ac2:41cc:: with SMTP id d12mr4018561lfi.20.1598814906867;
|
||||
Sun, 30 Aug 2020 12:15:06 -0700 (PDT)
|
||||
Received: from localhost.localdomain (109-252-170-211.dynamic.spd-mgts.ru.
|
||||
[109.252.170.211])
|
||||
by smtp.gmail.com with ESMTPSA id
|
||||
e23sm1409709lfj.80.2020.08.30.12.15.05
|
||||
(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
|
||||
Sun, 30 Aug 2020 12:15:06 -0700 (PDT)
|
||||
From: Dmitry Osipenko <digetx@gmail.com>
|
||||
To: Arend van Spriel <arend.vanspriel@broadcom.com>,
|
||||
Franky Lin <franky.lin@broadcom.com>,
|
||||
Hante Meuleman <hante.meuleman@broadcom.com>,
|
||||
Chi-Hsien Lin <chi-hsien.lin@cypress.com>,
|
||||
Wright Feng <wright.feng@cypress.com>,
|
||||
Kalle Valo <kvalo@codeaurora.org>
|
||||
Cc: linux-wireless@vger.kernel.org,
|
||||
brcm80211-dev-list.pdl@broadcom.com,
|
||||
brcm80211-dev-list@cypress.com, netdev@vger.kernel.org,
|
||||
linux-tegra@vger.kernel.org, linux-kernel@vger.kernel.org
|
||||
Subject: [PATCH v3 3/3] brcmfmac: set F2 SDIO block size to 128 bytes for
|
||||
BCM4329
|
||||
Date: Sun, 30 Aug 2020 22:14:39 +0300
|
||||
Message-Id: <20200830191439.10017-4-digetx@gmail.com>
|
||||
X-Mailer: git-send-email 2.27.0
|
||||
In-Reply-To: <20200830191439.10017-1-digetx@gmail.com>
|
||||
References: <20200830191439.10017-1-digetx@gmail.com>
|
||||
MIME-Version: 1.0
|
||||
Sender: linux-wireless-owner@vger.kernel.org
|
||||
Precedence: bulk
|
||||
List-ID: <linux-wireless.vger.kernel.org>
|
||||
X-Mailing-List: linux-wireless@vger.kernel.org
|
||||
|
||||
Setting F2 block size to 128 bytes for BCM4329 allows to significantly
|
||||
improve RX throughput on NVIDIA Tegra20. Before this change the throughput
|
||||
was capped to 30 Mbit/s on Tegra, now throughput is at 40 Mbit/s, which is
|
||||
a maximum throughput for the BCM4329 chip. The F2 block size is borrowed
|
||||
from the downstream BCMDHD driver. The comment in the BCMDHD driver says
|
||||
that 128B improves throughput and turns out that it works for the brcmfmac
|
||||
as well.
|
||||
|
||||
Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
|
||||
---
|
||||
drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c
|
||||
index 0dc4de2fa9f6..318bd00bf94f 100644
|
||||
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c
|
||||
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c
|
||||
@@ -45,6 +45,7 @@
|
||||
#define SDIO_FUNC2_BLOCKSIZE 512
|
||||
#define SDIO_4373_FUNC2_BLOCKSIZE 256
|
||||
#define SDIO_435X_FUNC2_BLOCKSIZE 256
|
||||
+#define SDIO_4329_FUNC2_BLOCKSIZE 128
|
||||
/* Maximum milliseconds to wait for F2 to come up */
|
||||
#define SDIO_WAIT_F2RDY 3000
|
||||
|
||||
@@ -920,6 +921,9 @@ int brcmf_sdiod_probe(struct brcmf_sdio_dev *sdiodev)
|
||||
case SDIO_DEVICE_ID_BROADCOM_4356:
|
||||
f2_blksz = SDIO_435X_FUNC2_BLOCKSIZE;
|
||||
break;
|
||||
+ case SDIO_DEVICE_ID_BROADCOM_4329:
|
||||
+ f2_blksz = SDIO_4329_FUNC2_BLOCKSIZE;
|
||||
+ break;
|
||||
default:
|
||||
break;
|
||||
}
|
17
kernel.spec
17
kernel.spec
|
@ -867,10 +867,18 @@ Patch105: 0001-platform-x86-thinkpad_acpi-lap-or-desk-mode-interfac.patch
|
|||
# https://bugzilla.redhat.com/show_bug.cgi?id=1874117
|
||||
Patch107: 0001-drivers-perf-xgene_pmu-Fix-uninitialized-resource-st.patch
|
||||
|
||||
Patch110: memory-tegra-Remove-GPU-from-DRM-IOMMU-group.patch
|
||||
# https://patchwork.kernel.org/patch/11745283/
|
||||
Patch108: brcmfmac-BCM4329-Fixes-and-improvement.patch
|
||||
|
||||
# https://patchwork.kernel.org/patch/11743769/
|
||||
Patch109: mmc-sdhci-iproc-Enable-eMMC-DDR-3.3V-support-for-bcm2711.patch
|
||||
# https://www.spinics.net/lists/linux-mmc/msg60653.html
|
||||
Patch111: mmc-sdio-Use-mmc_pre_req-mmc_post_req.patch
|
||||
|
||||
Patch112: memory-tegra-Remove-GPU-from-DRM-IOMMU-group.patch
|
||||
|
||||
# CVE-2020-25211 rhbz 1877571 1877572
|
||||
Patch111: netfilter-ctnetlink-add-range-check-for-l3-l4-protonum.patch
|
||||
Patch113: netfilter-ctnetlink-add-range-check-for-l3-l4-protonum.patch
|
||||
|
||||
# END OF PATCH DEFINITIONS
|
||||
|
||||
|
@ -2976,6 +2984,11 @@ fi
|
|||
#
|
||||
#
|
||||
%changelog
|
||||
* Sat Sep 12 2020 Peter Robinson <pbrobinson@fedoraproject.org>
|
||||
- Fix for SDIO speed issue
|
||||
- Fix for certain mSD cards on Raspberry Pi 4
|
||||
- Fix for older brcm sdio WiFi modules
|
||||
|
||||
* Thu Sep 10 2020 Justin M. Forbes <jforbes@fedoraproject.org>
|
||||
- Fix CVE-2020-25211 (rhbz 1877571 1877572)
|
||||
|
||||
|
|
|
@ -0,0 +1,98 @@
|
|||
From patchwork Fri Aug 28 21:47:14 2020
|
||||
Content-Type: text/plain; charset="utf-8"
|
||||
MIME-Version: 1.0
|
||||
Content-Transfer-Encoding: 7bit
|
||||
X-Patchwork-Submitter: Stefan Wahren <stefan.wahren@i2se.com>
|
||||
X-Patchwork-Id: 11743769
|
||||
Return-Path: <SRS0=IgIp=CG=vger.kernel.org=linux-mmc-owner@kernel.org>
|
||||
Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org
|
||||
[172.30.200.123])
|
||||
by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 9294E913
|
||||
for <patchwork-linux-mmc@patchwork.kernel.org>;
|
||||
Fri, 28 Aug 2020 21:48:59 +0000 (UTC)
|
||||
Received: from vger.kernel.org (vger.kernel.org [23.128.96.18])
|
||||
by mail.kernel.org (Postfix) with ESMTP id 83F242078A
|
||||
for <patchwork-linux-mmc@patchwork.kernel.org>;
|
||||
Fri, 28 Aug 2020 21:48:59 +0000 (UTC)
|
||||
Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand
|
||||
id S1726418AbgH1Vs7 (ORCPT
|
||||
<rfc822;patchwork-linux-mmc@patchwork.kernel.org>);
|
||||
Fri, 28 Aug 2020 17:48:59 -0400
|
||||
Received: from mout.kundenserver.de ([217.72.192.73]:41343 "EHLO
|
||||
mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org
|
||||
with ESMTP id S1726379AbgH1Vs5 (ORCPT
|
||||
<rfc822;linux-mmc@vger.kernel.org>); Fri, 28 Aug 2020 17:48:57 -0400
|
||||
Received: from localhost.localdomain ([37.4.249.236]) by
|
||||
mrelayeu.kundenserver.de (mreue107 [212.227.15.183]) with ESMTPSA (Nemesis)
|
||||
id 1MzQTm-1kXpKC3Jq4-00vObT; Fri, 28 Aug 2020 23:48:40 +0200
|
||||
From: Stefan Wahren <stefan.wahren@i2se.com>
|
||||
To: Adrian Hunter <adrian.hunter@intel.com>,
|
||||
Ulf Hansson <ulf.hansson@linaro.org>,
|
||||
Ray Jui <rjui@broadcom.com>,
|
||||
Scott Branden <sbranden@broadcom.com>
|
||||
Cc: Florian Fainelli <f.fainelli@gmail.com>,
|
||||
Nicolas Saenz Julienne <nsaenzjulienne@suse.de>,
|
||||
Matthias Brugger <mbrugger@suse.com>,
|
||||
bcm-kernel-feedback-list@broadcom.com, linux-mmc@vger.kernel.org,
|
||||
linux-arm-kernel@lists.infradead.org,
|
||||
Stefan Wahren <stefan.wahren@i2se.com>
|
||||
Subject: [PATCH] mmc: sdhci-iproc: Enable eMMC DDR 3.3V support for bcm2711
|
||||
Date: Fri, 28 Aug 2020 23:47:14 +0200
|
||||
Message-Id: <1598651234-29826-1-git-send-email-stefan.wahren@i2se.com>
|
||||
X-Mailer: git-send-email 2.7.4
|
||||
X-Provags-ID: V03:K1:kiziRvARXQvcShivifQ3e8jFQc5NDvS/jk5DcBO1+kY24pjuxcW
|
||||
pNMzHbKjpwEkD+6H3B4dmClTpiU+4kjeXUo3zfO/VqTahci/RQgw2Jjg5ClfAO20vRj4cmp
|
||||
eqHXUd9TKy5yr6xa9AzDep/tDWw/ZAMYe72C6NEC+QVodXdoe7JDC+duHvIEy7khM7PY+GF
|
||||
NzqIu6pdSVbj1v16NZ+sA==
|
||||
X-Spam-Flag: NO
|
||||
X-UI-Out-Filterresults: notjunk:1;V03:K0:eelQECZEP/o=:AtkwbFez+YK2lUaKrnCAex
|
||||
dIlTU0COpkkpKB5Qb0bMKrb8/w/SPJ2rMBPQOKwEd9/tUzoKWo+ZbAPQPpEnEcUM5QKbnzw+7
|
||||
qB1kFvhlFgAjX6S2VYE4TsPxy/Dk93b1KLbB3TpK4iOUqvcYMDP11kGtwphrPqzjB+yWqwO6y
|
||||
KgxT+VLe4SNkCYaD9JES6M1Hj770HNy3DMUeor3ZbWVQqJsm02Xd9jnX8ThCwNQM0x9NSolVQ
|
||||
25RoD6I8fehNYcceOQKKGQTSKFw5NMv66cwKfnVYhvG9mj1Fix4xF1ssUx+PIaAKz9IPtf88l
|
||||
ls9Dj7R5z6+Jfpg2yCxV8pPeg1/NewyDH1Bmv2XVIVVZa3o3Ffms2jaDcGuRIJzYvAGzwhj+z
|
||||
G+spv31CNuWsBbUeimVwPoWruWAapA+EIOp57iNo95TYAamLRoBF+aIc4DiCyoVKiHvWl7mOh
|
||||
iDs2nI+sgIn+GWEfuSGJNNmNXiOSRr8PyVRuQELwCvbnkr1JmZqzYOdiYlIdE60pjRs0VVnSZ
|
||||
xYhbUBsbEC/lXnNUb5fF1o3qlK742HPj1nJQ3lQOdh1rcqOG20kRgACUeVAbq1NMG3DNsuHRS
|
||||
xsYTKTMMWPPeSrsGrGwEWQurcjWiskZ8QvmiCkaJHzyxpEWZfmqH30xnyIVdeVakqbob0ddv6
|
||||
VLEnvtryHj/lA4fHtioyBJ4A5CpKR2At7wnlKOICKyaHniUfMlssMuxexvZkbh5Tk/TR7aW7A
|
||||
krPi5wigbGYz2Pf0BiIjJOix9EDYS3+e2oyn6oFZX2gJcfDBT48tMcVYK3IOk6vnwvvmszY/k
|
||||
jexjMPuNFqHptYGNN/TyrXxKulWcZQdCYcksDfKHCrY0TIrxu44YkbhUl22nDy4LRXZQU6h
|
||||
Sender: linux-mmc-owner@vger.kernel.org
|
||||
Precedence: bulk
|
||||
List-ID: <linux-mmc.vger.kernel.org>
|
||||
X-Mailing-List: linux-mmc@vger.kernel.org
|
||||
|
||||
The emmc2 interface on the bcm2711 supports DDR modes for eMMC devices
|
||||
running at 3.3V. This allows to run eMMC module with 3.3V signaling voltage
|
||||
at DDR52 mode on the Raspberry Pi 4 using a SD adapter:
|
||||
|
||||
clock: 52000000 Hz
|
||||
actual clock: 50000000 Hz
|
||||
vdd: 21 (3.3 ~ 3.4 V)
|
||||
bus mode: 2 (push-pull)
|
||||
chip select: 0 (don't care)
|
||||
power mode: 2 (on)
|
||||
bus width: 2 (4 bits)
|
||||
timing spec: 8 (mmc DDR52)
|
||||
signal voltage: 0 (3.30 V)
|
||||
driver type: 0 (driver type B)
|
||||
|
||||
Link: https://github.com/raspberrypi/linux/issues/3802
|
||||
Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
|
||||
---
|
||||
drivers/mmc/host/sdhci-iproc.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/drivers/mmc/host/sdhci-iproc.c b/drivers/mmc/host/sdhci-iproc.c
|
||||
index e2d8dfe..b540aa6 100644
|
||||
--- a/drivers/mmc/host/sdhci-iproc.c
|
||||
+++ b/drivers/mmc/host/sdhci-iproc.c
|
||||
@@ -283,6 +283,7 @@ static const struct sdhci_pltfm_data sdhci_bcm2711_pltfm_data = {
|
||||
|
||||
static const struct sdhci_iproc_data bcm2711_data = {
|
||||
.pdata = &sdhci_bcm2711_pltfm_data,
|
||||
+ .mmc_caps = MMC_CAP_3_3V_DDR,
|
||||
};
|
||||
|
||||
static const struct of_device_id sdhci_iproc_of_match[] = {
|
|
@ -0,0 +1,156 @@
|
|||
From patchwork Thu Sep 3 08:20:07 2020
|
||||
Content-Type: text/plain; charset="utf-8"
|
||||
MIME-Version: 1.0
|
||||
Content-Transfer-Encoding: 7bit
|
||||
X-Patchwork-Submitter: Adrian Hunter <adrian.hunter@intel.com>
|
||||
X-Patchwork-Id: 11752795
|
||||
Return-Path: <SRS0=lwnd=CM=vger.kernel.org=linux-mmc-owner@kernel.org>
|
||||
Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org
|
||||
[172.30.200.123])
|
||||
by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id C9EBB14E5
|
||||
for <patchwork-linux-mmc@patchwork.kernel.org>;
|
||||
Thu, 3 Sep 2020 08:20:33 +0000 (UTC)
|
||||
Received: from vger.kernel.org (vger.kernel.org [23.128.96.18])
|
||||
by mail.kernel.org (Postfix) with ESMTP id BC26D2071B
|
||||
for <patchwork-linux-mmc@patchwork.kernel.org>;
|
||||
Thu, 3 Sep 2020 08:20:33 +0000 (UTC)
|
||||
Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand
|
||||
id S1728222AbgICIUc (ORCPT
|
||||
<rfc822;patchwork-linux-mmc@patchwork.kernel.org>);
|
||||
Thu, 3 Sep 2020 04:20:32 -0400
|
||||
Received: from mga05.intel.com ([192.55.52.43]:36764 "EHLO mga05.intel.com"
|
||||
rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP
|
||||
id S1726967AbgICIUc (ORCPT <rfc822;linux-mmc@vger.kernel.org>);
|
||||
Thu, 3 Sep 2020 04:20:32 -0400
|
||||
IronPort-SDR:
|
||||
UAhQwI9nWr5N0Ssk91Enat0eUs15ciWos+Mpf9aZyd9VfUitB9WC+vPWh1uI8SDDj4GleLaAws
|
||||
HrPm3i/171hQ==
|
||||
X-IronPort-AV: E=McAfee;i="6000,8403,9732"; a="242356326"
|
||||
X-IronPort-AV: E=Sophos;i="5.76,385,1592895600";
|
||||
d="scan'208";a="242356326"
|
||||
X-Amp-Result: SKIPPED(no attachment in message)
|
||||
X-Amp-File-Uploaded: False
|
||||
Received: from fmsmga002.fm.intel.com ([10.253.24.26])
|
||||
by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
|
||||
03 Sep 2020 01:20:31 -0700
|
||||
IronPort-SDR:
|
||||
us9vTGT33QbxjZoviJb7le3HTC8FOUlIec36VMhX5tXlhCcvcPW9B/SKFJcwEJiMvCa3zvNnDf
|
||||
7Vbl3UaoRlmQ==
|
||||
X-ExtLoop1: 1
|
||||
X-IronPort-AV: E=Sophos;i="5.76,385,1592895600";
|
||||
d="scan'208";a="334396201"
|
||||
Received: from slisovsk-lenovo-ideapad-720s-13ikb.fi.intel.com (HELO
|
||||
ahunter-Desktop.fi.intel.com) ([10.237.72.190])
|
||||
by fmsmga002.fm.intel.com with ESMTP; 03 Sep 2020 01:20:29 -0700
|
||||
From: Adrian Hunter <adrian.hunter@intel.com>
|
||||
To: Ulf Hansson <ulf.hansson@linaro.org>
|
||||
Cc: linux-mmc <linux-mmc@vger.kernel.org>,
|
||||
=?utf-8?q?Pali_Roh=C3=A1r?= <pali@kernel.org>,
|
||||
Haibo Chen <haibo.chen@nxp.com>, Yue Hu <huyue2@yulong.com>,
|
||||
Douglas Anderson <dianders@chromium.org>, Dmitry Osipenko <digetx@gmail.com>
|
||||
Subject: [PATCH] mmc: sdio: Use mmc_pre_req() / mmc_post_req()
|
||||
Date: Thu, 3 Sep 2020 11:20:07 +0300
|
||||
Message-Id: <20200903082007.18715-1-adrian.hunter@intel.com>
|
||||
X-Mailer: git-send-email 2.17.1
|
||||
Organization: Intel Finland Oy, Registered Address: PL 281, 00181 Helsinki,
|
||||
Business Identity Code: 0357606 - 4, Domiciled in Helsinki
|
||||
Sender: linux-mmc-owner@vger.kernel.org
|
||||
Precedence: bulk
|
||||
List-ID: <linux-mmc.vger.kernel.org>
|
||||
X-Mailing-List: linux-mmc@vger.kernel.org
|
||||
|
||||
SDHCI changed from using a tasklet to finish requests, to using an IRQ
|
||||
thread i.e. commit c07a48c2651965 ("mmc: sdhci: Remove finish_tasklet").
|
||||
Because this increased the latency to complete requests, a preparatory
|
||||
change was made to complete the request from the IRQ handler if
|
||||
possible i.e. commit 19d2f695f4e827 ("mmc: sdhci: Call mmc_request_done()
|
||||
from IRQ handler if possible"). That alleviated the situation for MMC
|
||||
block devices because the MMC block driver makes use of mmc_pre_req()
|
||||
and mmc_post_req() so that successful requests are completed in the IRQ
|
||||
handler and any DMA unmapping is handled separately in mmc_post_req().
|
||||
However SDIO was still affected, and an example has been reported with
|
||||
up to 20% degradation in performance.
|
||||
|
||||
Looking at SDIO I/O helper functions, sdio_io_rw_ext_helper() appeared
|
||||
to be a possible candidate for making use of asynchronous requests
|
||||
within its I/O loops, but analysis revealed that these loops almost
|
||||
never iterate more than once, so the complexity of the change would not
|
||||
be warrented.
|
||||
|
||||
Instead, mmc_pre_req() and mmc_post_req() are added before and after I/O
|
||||
submission (mmc_wait_for_req) in mmc_io_rw_extended(). This still has
|
||||
the potential benefit of reducing the duration of interrupt handlers, as
|
||||
well as addressing the latency issue for SDHCI. It also seems a more
|
||||
reasonable solution than forcing drivers to do everything in the IRQ
|
||||
handler.
|
||||
|
||||
Reported-by: Dmitry Osipenko <digetx@gmail.com>
|
||||
Fixes: c07a48c2651965 ("mmc: sdhci: Remove finish_tasklet")
|
||||
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
|
||||
Tested-by: Dmitry Osipenko <digetx@gmail.com>
|
||||
---
|
||||
drivers/mmc/core/sdio_ops.c | 39 +++++++++++++++++++++----------------
|
||||
1 file changed, 22 insertions(+), 17 deletions(-)
|
||||
|
||||
diff --git a/drivers/mmc/core/sdio_ops.c b/drivers/mmc/core/sdio_ops.c
|
||||
index 93d346c01110..4c229dd2b6e5 100644
|
||||
--- a/drivers/mmc/core/sdio_ops.c
|
||||
+++ b/drivers/mmc/core/sdio_ops.c
|
||||
@@ -121,6 +121,7 @@ int mmc_io_rw_extended(struct mmc_card *card, int write, unsigned fn,
|
||||
struct sg_table sgtable;
|
||||
unsigned int nents, left_size, i;
|
||||
unsigned int seg_size = card->host->max_seg_size;
|
||||
+ int err;
|
||||
|
||||
WARN_ON(blksz == 0);
|
||||
|
||||
@@ -170,28 +171,32 @@ int mmc_io_rw_extended(struct mmc_card *card, int write, unsigned fn,
|
||||
|
||||
mmc_set_data_timeout(&data, card);
|
||||
|
||||
- mmc_wait_for_req(card->host, &mrq);
|
||||
+ mmc_pre_req(card->host, &mrq);
|
||||
|
||||
- if (nents > 1)
|
||||
- sg_free_table(&sgtable);
|
||||
+ mmc_wait_for_req(card->host, &mrq);
|
||||
|
||||
if (cmd.error)
|
||||
- return cmd.error;
|
||||
- if (data.error)
|
||||
- return data.error;
|
||||
-
|
||||
- if (mmc_host_is_spi(card->host)) {
|
||||
+ err = cmd.error;
|
||||
+ else if (data.error)
|
||||
+ err = data.error;
|
||||
+ else if (mmc_host_is_spi(card->host))
|
||||
/* host driver already reported errors */
|
||||
- } else {
|
||||
- if (cmd.resp[0] & R5_ERROR)
|
||||
- return -EIO;
|
||||
- if (cmd.resp[0] & R5_FUNCTION_NUMBER)
|
||||
- return -EINVAL;
|
||||
- if (cmd.resp[0] & R5_OUT_OF_RANGE)
|
||||
- return -ERANGE;
|
||||
- }
|
||||
+ err = 0;
|
||||
+ else if (cmd.resp[0] & R5_ERROR)
|
||||
+ err = -EIO;
|
||||
+ else if (cmd.resp[0] & R5_FUNCTION_NUMBER)
|
||||
+ err = -EINVAL;
|
||||
+ else if (cmd.resp[0] & R5_OUT_OF_RANGE)
|
||||
+ err = -ERANGE;
|
||||
+ else
|
||||
+ err = 0;
|
||||
|
||||
- return 0;
|
||||
+ mmc_post_req(card->host, &mrq, err);
|
||||
+
|
||||
+ if (nents > 1)
|
||||
+ sg_free_table(&sgtable);
|
||||
+
|
||||
+ return err;
|
||||
}
|
||||
|
||||
int sdio_reset(struct mmc_host *host)
|
Loading…
Reference in New Issue