From patchwork Mon Feb 9 14:04:55 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michal Kazior X-Patchwork-Id: 5801381 X-Patchwork-Delegate: kvalo@adurom.com Return-Path: X-Original-To: patchwork-linux-wireless@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 3ED86BF440 for ; Mon, 9 Feb 2015 14:06:16 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 459C620121 for ; Mon, 9 Feb 2015 14:06:12 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 31D612011E for ; Mon, 9 Feb 2015 14:06:08 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932281AbbBIOGF (ORCPT ); Mon, 9 Feb 2015 09:06:05 -0500 Received: from mail-la0-f48.google.com ([209.85.215.48]:46946 "EHLO mail-la0-f48.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1759746AbbBIOGE (ORCPT ); Mon, 9 Feb 2015 09:06:04 -0500 Received: by lams18 with SMTP id s18so13558775lam.13 for ; Mon, 09 Feb 2015 06:06:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tieto.com; s=google; h=from:to:cc:subject:date:message-id; bh=gxRLbglAI/A1vDroURZyCK6o6wiMJ+CQ9wS27FaJrlE=; b=nLF4RWBSSXomYNPTXDL4iAhBpQUwu62yj8w+Auyp+LBRaJLjdIwNzYRVXi5BgqmyM6 7r4mKairMCmQ7Z/k+QonWNXaWluWEbhhKCatQgIPTdPzyt8iKdCpp6MWKnquekag5et9 A5kZD7C5UVLy9QDOMz5vN6HonoHTc0xsePevw= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=gxRLbglAI/A1vDroURZyCK6o6wiMJ+CQ9wS27FaJrlE=; b=nLqy7TJ2ntOu4DfsccUgTIKT9KzjPnVfoQmDzcJ+p1IXfzEsGqvBEAs3ahNSMAlF6Y fz84CRU/Z0IG95qBNOIYCCyf84DuTQ8o0UDlCwir0x9YNPyPznrvPQFkZOSkZQEzYNNH YKnkGwrsqfCHXLsw3dBPg9sPiKYpEjBjTM/j9NrqRICiAJa8EFmUlJWSwQ+STtbHl9dl R+9VWe//FTlVmpRsAv6acEQp9TAdUqSUvNpX4w62IPTGum4Mc/OhFALw//+qEtX1INaA vARo2U0Q94avZqWYqTS0YNhwJFTa219j65J6GdNI5xJIrCQwvgLwKTMGfJDaRZmshRR+ 0CQg== X-Gm-Message-State: ALoCoQnc6FYwZpjklacx+mmoV8/UWhNpjYGcN7aWsRWeaGAHw/MT1NL8CsEFkEgjdW25mr7HXPS8NMYtdxPE190iLt0ueKE3OmkY/rBrpxbyC9lsD2NrHtqNGPw/GS8VAMHFiylstDnQ X-Received: by 10.112.243.12 with SMTP id wu12mr16821345lbc.91.1423490762305; Mon, 09 Feb 2015 06:06:02 -0800 (PST) Received: from bob.homerouter.cpe (apn-31-1-134-151.dynamic.gprs.plus.pl. [31.1.134.151]) by mx.google.com with ESMTPSA id t2sm2120010lag.38.2015.02.09.06.06.01 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 09 Feb 2015 06:06:01 -0800 (PST) From: Michal Kazior To: ath10k@lists.infradead.org Cc: linux-wireless@vger.kernel.org, Michal Kazior Subject: [PATCH] ath10k: workaround corrupted htt rx events Date: Mon, 9 Feb 2015 15:04:55 +0100 Message-Id: <1423490695-24829-1-git-send-email-michal.kazior@tieto.com> X-Mailer: git-send-email 1.8.5.3 X-DomainID: tieto.com Sender: linux-wireless-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org X-Spam-Status: No, score=-6.8 required=5.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_HI,T_DKIM_INVALID,T_RP_MATCHES_RCVD,UNPARSEABLE_RELAY autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP qca6174 WLAN.RM.2.0-00073 firmware uses full rx reordering offload and delivers Rx via a new HTT event. The event however is incorrectly generated in firmware and becomes overly long (with trailing garbage). This was hitting defined CE buffer limit that was programmed to the device and caused device to crash upon busier Rx traffic. Increasing the CE buffer limit for HTT Rx pipe to 2KBytes seems to be enough to workaround this problem. Signed-off-by: Michal Kazior --- drivers/net/wireless/ath/ath10k/pci.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/wireless/ath/ath10k/pci.c b/drivers/net/wireless/ath/ath10k/pci.c index e6972b0..7681237 100644 --- a/drivers/net/wireless/ath/ath10k/pci.c +++ b/drivers/net/wireless/ath/ath10k/pci.c @@ -104,7 +104,7 @@ static const struct ce_attr host_ce_config_wlan[] = { { .flags = CE_ATTR_FLAGS, .src_nentries = 0, - .src_sz_max = 512, + .src_sz_max = 2048, .dest_nentries = 512, }, @@ -174,7 +174,7 @@ static const struct ce_pipe_config target_ce_config_wlan[] = { .pipenum = __cpu_to_le32(1), .pipedir = __cpu_to_le32(PIPEDIR_IN), .nentries = __cpu_to_le32(32), - .nbytes_max = __cpu_to_le32(512), + .nbytes_max = __cpu_to_le32(2048), .flags = __cpu_to_le32(CE_ATTR_FLAGS), .reserved = __cpu_to_le32(0), },