From patchwork Mon Dec 16 17:03:36 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?SsOpcsO0bWUgUG91aWxsZXI=?= X-Patchwork-Id: 11294723 X-Patchwork-Delegate: johannes@sipsolutions.net Return-Path: 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 3DD9D930 for ; Mon, 16 Dec 2019 17:05:54 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 11D6520717 for ; Mon, 16 Dec 2019 17:05:54 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=silabs.onmicrosoft.com header.i=@silabs.onmicrosoft.com header.b="JdkXQZsp" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726942AbfLPRDv (ORCPT ); Mon, 16 Dec 2019 12:03:51 -0500 Received: from mail-eopbgr750081.outbound.protection.outlook.com ([40.107.75.81]:59109 "EHLO NAM02-BL2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726515AbfLPRDt (ORCPT ); Mon, 16 Dec 2019 12:03:49 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=EZ0Ap+N4Y3KXnYw88WTgJlE9s8TFU+Z0LEousYt5AeJU/5szVSWj3+rDd4yZ8amWe+K7Rv35qvy4LWOR+LynO3oeNwBkDjMIj9klTzMlRRqP5wlgjI43+DLipho9CRDT7ceePS9NhyvHAm96KSodihuFowp+2oDXz2VG2h2C80JpFh0pGmjOBdLcI8wg1gjM547XonMCCG5ajeI8uucoevoGC5Reh41q2lbXEI9axAAkk8E0z7llQnTHlQfZKPD7eYoX4Tvc3glEZUKwhEUjP85rdUevsMQ2mI5eZnxCAfUkhX9pqKj1yLIE2iF27aj4m6lzNPMj6hTf1KIH495xRw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=CMuY9Bd/n5yOSxKk77U3gaSSLH6bVEIGEc9MECBvc44=; b=Cg+aN/Z1rTY1CzUUl4noAKppq10GDUl/yXc4wms+U8dVlWnSUaDvTkKCOpSjBNKG5MMj+7o4hBt6QWvw4tz4iIU9AaquBlmgwcUHQoPMhldxXNWR3LroHqmDd0AtmiIJUe9rZOU1+l7yRQm54NeAAQbDDjGP1xsjh/U0damYRGiskjhM+O4YF/uFmfyEDywXqY13iGS7WxlfbqQ8rxaSU9ZP/s11k8wO+Rj7IMoZ/rB1pHLBoY8ArF+pjQcxsVdY4PG+6pqqvL9B3aAzAhchcZkHxQru6zbynzjBURFqDnm3tObDhFA89Yt53nxIsW+YQiAUMGwL3z7J8JiPeBpUNA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=silabs.com; dmarc=pass action=none header.from=silabs.com; dkim=pass header.d=silabs.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=silabs.onmicrosoft.com; s=selector2-silabs-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=CMuY9Bd/n5yOSxKk77U3gaSSLH6bVEIGEc9MECBvc44=; b=JdkXQZspfKtHH43bFd3WGjzhrY40BXruoXVMwPTr1p0rf6LKUOw2mmv4yyhPPtA7mVJFZ6FJE/fAqk0/IThePSl+7+EMYpCXWED9VCCW0oaG+JObJXzNldc8jRL92qLcfhEMr8x6YtOEsZRRnGAndCw9+526qhQiG34Q2uh0cZA= Received: from MN2PR11MB4063.namprd11.prod.outlook.com (10.255.180.22) by MN2PR11MB3838.namprd11.prod.outlook.com (20.178.252.202) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2538.19; Mon, 16 Dec 2019 17:03:41 +0000 Received: from MN2PR11MB4063.namprd11.prod.outlook.com ([fe80::f46c:e5b4:2a85:f0bf]) by MN2PR11MB4063.namprd11.prod.outlook.com ([fe80::f46c:e5b4:2a85:f0bf%4]) with mapi id 15.20.2538.019; Mon, 16 Dec 2019 17:03:41 +0000 From: =?utf-8?b?SsOpcsO0bWUgUG91aWxsZXI=?= To: "devel@driverdev.osuosl.org" , "linux-wireless@vger.kernel.org" CC: "netdev@vger.kernel.org" , "linux-kernel@vger.kernel.org" , Greg Kroah-Hartman , Kalle Valo , "David S . Miller" , =?utf-8?b?SsOpcsO0bWUgUG91aWxsZXI=?= Subject: [PATCH 06/55] staging: wfx: fix rate control handling Thread-Topic: [PATCH 06/55] staging: wfx: fix rate control handling Thread-Index: AQHVtDLBrt01a30t0E2TkFlK/I6J9g== Date: Mon, 16 Dec 2019 17:03:36 +0000 Message-ID: <20191216170302.29543-7-Jerome.Pouiller@silabs.com> References: <20191216170302.29543-1-Jerome.Pouiller@silabs.com> In-Reply-To: <20191216170302.29543-1-Jerome.Pouiller@silabs.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=Jerome.Pouiller@silabs.com; x-originating-ip: [37.71.187.125] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: bdb3a1b0-4b12-418e-4ab1-08d78249e70b x-ms-traffictypediagnostic: MN2PR11MB3838: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:7691; x-forefront-prvs: 02530BD3AA x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(376002)(346002)(136003)(39860400002)(396003)(366004)(189003)(199004)(85202003)(8936002)(81166006)(8676002)(54906003)(110136005)(316002)(85182001)(6506007)(186003)(2906002)(5660300002)(6512007)(26005)(107886003)(81156014)(36756003)(4326008)(6666004)(2616005)(76116006)(91956017)(64756008)(66556008)(66476007)(66946007)(71200400001)(86362001)(66446008)(6486002)(478600001)(1076003);DIR:OUT;SFP:1101;SCL:1;SRVR:MN2PR11MB3838;H:MN2PR11MB4063.namprd11.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;MX:1;A:1; received-spf: None (protection.outlook.com: silabs.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: HsQWRMopeVk0jSZ2keiwjN8l3E4pkbbNm2hyC6UEk/8S2I0hMwXEmvgmrGwrW/Qchz1nWCRxFlW0vpHoh0WZhtyGO0k5kI8XBaDq2SljOAhXDHeWx8png3au6rCq1F1Vu65TbBq+dbjCnCnSxZ98xeXCjjS8KqGniLYoTUQJQiqFhKrSqYpmQ/dwI0qriD7tTLkijJYbKLz6Qp/UpPMFhzE0h4z+hu3tqCQz9sJ4OaJaH1fM1UZnQjfeoP7/nMdkoMfe/4+rAuEoOCZlY1ieSxOiLjnUHAQOIQhBCJ99WkgQMUID0WGBXsWkjybUEDm3o8mLvAxKg+arcE5VB67AFIRKTuIqDFQpE9YY/ltpVbetbNIGM6JowPHah6xBLnrY58K6yMJKdo3FkfInq44xicZoN2Y8667JfVD6+QcjjGU4fiju3ZiofLFgPD/IR+UP Content-ID: <966E117E84C6214FB71D6AAC690B6CC0@namprd11.prod.outlook.com> MIME-Version: 1.0 X-OriginatorOrg: silabs.com X-MS-Exchange-CrossTenant-Network-Message-Id: bdb3a1b0-4b12-418e-4ab1-08d78249e70b X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Dec 2019 17:03:36.3715 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 54dbd822-5231-4b20-944d-6f4abcd541fb X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: wt4B+/9SyR0j63vGmnfzihvaVBBTNTtMs9pdfQwj8+g1R1VM7F+6uXvY0urzTDsaFaJY4P6PNdMJVfAVgNSt6g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR11MB3838 Sender: linux-wireless-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org From: Jérôme Pouiller A tx_retry_policy (the equivalent of a list of ieee80211_tx_rate in hardware API) is not able to include a rate multiple time. So currently, the driver merges the identical rates from the policy provided by minstrel (and it try to do the best choice it can in the associated flags) before to sent it to firmware. Until now, when rates are merged, field "count" is set to max(count1, count2). But, it means that the sum of retries for all rates could be far less than initial number of retries. So, this patch changes the value of field "count" to count1 + count2. Thus, sum of all retries for all rates stay the same. Signed-off-by: Jérôme Pouiller --- drivers/staging/wfx/data_tx.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/staging/wfx/data_tx.c b/drivers/staging/wfx/data_tx.c index b726dd5e59f3..46ad83b95f52 100644 --- a/drivers/staging/wfx/data_tx.c +++ b/drivers/staging/wfx/data_tx.c @@ -524,9 +524,9 @@ static void wfx_tx_fixup_rates(struct ieee80211_tx_rate *rates) for (i = 0; i < IEEE80211_TX_MAX_RATES - 1; i++) { if (rates[i + 1].idx == rates[i].idx && rates[i].idx != -1) { - rates[i].count = - max_t(int, rates[i].count, - rates[i + 1].count); + rates[i].count += rates[i + 1].count; + if (rates[i].count > 15) + rates[i].count = 15; rates[i + 1].idx = -1; rates[i + 1].count = 0;