Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp1639448ybz; Thu, 16 Apr 2020 12:47:14 -0700 (PDT) X-Google-Smtp-Source: APiQypKZkAhQDoU97Fqka5wFH4yR3K3eDEEP3OOIO5HXgjLJREyqt2bVUhbTRjFGJQiAdkizgXrt X-Received: by 2002:a17:906:3481:: with SMTP id g1mr10874217ejb.305.1587066433988; Thu, 16 Apr 2020 12:47:13 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1587066433; cv=none; d=google.com; s=arc-20160816; b=kU4Zb/YCRyXRvjjJJeLPuOg+ZyL7WsW1xFLsy3RUZVXL52ldOCN0eDg+wTBlKx2VgL 1gHkDZy4QlH7wG6WO1VVU1VAdsKmcFWS+trRMiajDPZLcC0E6vImJjjISg/ADWmXvIBB lQYNWEv/2upgZ+/fKQXdI3946/+GNrbaIMJ/mvz7nVNWD9GLGGnh+QYJSCBeQ/NDbZfK vD1M5kM/YKDttiBjRxokhAuQ3d14Rqp5cOfNT8qenwETXx3W8607KzI4MhUByaD6/aoO 1Rp+JveVXVivfo63OIf2ZcjmHWbNITeqZ9KyVBtHI+HumoWc30GTknr9uZT0TY5UA/aH bOeQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=b1JKpeGThrz+uMqW/tbO2bPjNdQThLbOa3LOaE/wSSU=; b=zcNFre+GCrMThMMeq2VjX69zoNXHA8woLxVlBVkhP22rIhufVKEhWvDuXZNXp76Wzq OkcAc4o1Z+Gl3pOOxPp/g0j70In2sjiD353Z7peUVQ41wOT7sLxR+prFXk2X8lCClzfN yX3kR6WFyiXh+z81rD9c166pkhM1lddcz86c+vcCanjFNnrbLXWbWUtlnuljJoxShSEd oGgjoOfhCIujSLStak3KtgH8K/7KQHYucmd7ZKOdlVLQ5giLymXYOM/NKwViJskAOZ8C lWsU/CqVmBv3bn29g5+DepktAf6pJe5sUcX58vx9ZQxM0OKeFv3nZ5e9R+FTCnTYlZtv ITBQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=sU3Un7Xs; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id u2si14903188edp.153.2020.04.16.12.46.46; Thu, 16 Apr 2020 12:47:13 -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=@kernel.org header.s=default header.b=sU3Un7Xs; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2896958AbgDPNed (ORCPT + 99 others); Thu, 16 Apr 2020 09:34:33 -0400 Received: from mail.kernel.org ([198.145.29.99]:38674 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2895946AbgDPN3H (ORCPT ); Thu, 16 Apr 2020 09:29:07 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 4F2F1217D8; Thu, 16 Apr 2020 13:29:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1587043746; bh=WtyTCRlFyMzJAkJbuvSlHht8TZrezfj5ottSM/w2hRY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=sU3Un7XsYcIDGlz/TEcJ+RC5Kl1IFUUfidUIeo0X3EkHE5X/me+0aWA4DJkhMp85U 5p8lJCesLgLZPMEc/JlEkz+bEilKXoGyGYQr75R6qh6Hi1jOfgkhlIUQLxuF/K3eP6 tstpR170yZRnQzDIZcegxgV7W+Jw3lcCEetnsudE= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Remi Pommarel , Kalle Valo Subject: [PATCH 4.19 076/146] ath9k: Handle txpower changes even when TPC is disabled Date: Thu, 16 Apr 2020 15:23:37 +0200 Message-Id: <20200416131253.328364379@linuxfoundation.org> X-Mailer: git-send-email 2.26.1 In-Reply-To: <20200416131242.353444678@linuxfoundation.org> References: <20200416131242.353444678@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Remi Pommarel commit 968ae2caad0782db5dbbabb560d3cdefd2945d38 upstream. When TPC is disabled IEEE80211_CONF_CHANGE_POWER event can be handled to reconfigure HW's maximum txpower. This fixes 0dBm txpower setting when user attaches to an interface for the first time with the following scenario: ieee80211_do_open() ath9k_add_interface() ath9k_set_txpower() /* Set TX power with not yet initialized sc->hw->conf.power_level */ ieee80211_hw_config() /* Iniatilize sc->hw->conf.power_level and raise IEEE80211_CONF_CHANGE_POWER */ ath9k_config() /* IEEE80211_CONF_CHANGE_POWER is ignored */ This issue can be reproduced with the following: $ modprobe -r ath9k $ modprobe ath9k $ wpa_supplicant -i wlan0 -c /tmp/wpa.conf & $ iw dev /* Here TX power is either 0 or 3 depending on RF chain */ $ killall wpa_supplicant $ iw dev /* TX power goes back to calibrated value and subsequent calls will be fine */ Fixes: 283dd11994cde ("ath9k: add per-vif TX power capability") Cc: stable@vger.kernel.org Signed-off-by: Remi Pommarel Signed-off-by: Kalle Valo Signed-off-by: Greg Kroah-Hartman --- drivers/net/wireless/ath/ath9k/main.c | 3 +++ 1 file changed, 3 insertions(+) --- a/drivers/net/wireless/ath/ath9k/main.c +++ b/drivers/net/wireless/ath/ath9k/main.c @@ -1457,6 +1457,9 @@ static int ath9k_config(struct ieee80211 ath_chanctx_set_channel(sc, ctx, &hw->conf.chandef); } + if (changed & IEEE80211_CONF_CHANGE_POWER) + ath9k_set_txpower(sc, NULL); + mutex_unlock(&sc->mutex); ath9k_ps_restore(sc);