From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4FEFAC433EF for ; Fri, 26 Nov 2021 02:42:42 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1359069AbhKZCpv (ORCPT ); Thu, 25 Nov 2021 21:45:51 -0500 Received: from mail.kernel.org ([198.145.29.99]:49868 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1358801AbhKZCnq (ORCPT ); Thu, 25 Nov 2021 21:43:46 -0500 Received: by mail.kernel.org (Postfix) with ESMTPSA id 481F461288; Fri, 26 Nov 2021 02:35:43 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1637894144; bh=/ScMztyGoGAgH57D3ymDlGHPtMmmTJJPkAupuW4TZkw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=l9dV5g6dijf9pV1owiajbf5/ciqF6UVomK4yzyrsVXBfxHyqAIybZIgDg0B3xZOFU Oa2/iSClUSiJ7vmAMt/jjHW1+vOn9ACr+kWROFL1F19estN8UAgsl/G0IbmBphrG3c qPyneO4VngTvrVYuW7sTQYuSAheXkhPd1zWZ7wAfdUTaK0HYnQg/U50KGyzQdyBprc xAbVTOjDjgW7kR+rYRXcjWM4FoCjysUqhbOiaTZIdpuJK3tsYnwoFImwwNBIjM5I6b zKnhdztLLYsjkuH+fNSwBCzFEPkYw/8fG6ESuWqCG4nrRwv38k+o1t0y+Kcbk1MmU5 g/ymxmXeL16VA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Slark Xiao , Hans de Goede , Sasha Levin , hmh@hmh.eng.br, markgross@kernel.org, ibm-acpi-devel@lists.sourceforge.net, platform-driver-x86@vger.kernel.org Subject: [PATCH AUTOSEL 4.19 06/15] platform/x86: thinkpad_acpi: Fix WWAN device disabled issue after S3 deep Date: Thu, 25 Nov 2021 21:35:24 -0500 Message-Id: <20211126023533.442895-6-sashal@kernel.org> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20211126023533.442895-1-sashal@kernel.org> References: <20211126023533.442895-1-sashal@kernel.org> MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Slark Xiao [ Upstream commit 39f53292181081d35174a581a98441de5da22bc9 ] When WWAN device wake from S3 deep, under thinkpad platform, WWAN would be disabled. This disable status could be checked by command 'nmcli r wwan' or 'rfkill list'. Issue analysis as below: When host resume from S3 deep, thinkpad_acpi driver would call hotkey_resume() function. Finnaly, it will use wan_get_status to check the current status of WWAN device. During this resume progress, wan_get_status would always return off even WWAN boot up completely. In patch V2, Hans said 'sw_state should be unchanged after a suspend/resume. It's better to drop the tpacpi_rfk_update_swstate call all together from the resume path'. And it's confimed by Lenovo that GWAN is no longer available from WHL generation because the design does not match with current pin control. Signed-off-by: Slark Xiao Link: https://lore.kernel.org/r/20211108060648.8212-1-slark_xiao@163.com Reviewed-by: Hans de Goede Signed-off-by: Hans de Goede Signed-off-by: Sasha Levin --- drivers/platform/x86/thinkpad_acpi.c | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/drivers/platform/x86/thinkpad_acpi.c b/drivers/platform/x86/thinkpad_acpi.c index 35c7d3185fea3..b8f2991581e73 100644 --- a/drivers/platform/x86/thinkpad_acpi.c +++ b/drivers/platform/x86/thinkpad_acpi.c @@ -1198,15 +1198,6 @@ static int tpacpi_rfk_update_swstate(const struct tpacpi_rfk *tp_rfk) return status; } -/* Query FW and update rfkill sw state for all rfkill switches */ -static void tpacpi_rfk_update_swstate_all(void) -{ - unsigned int i; - - for (i = 0; i < TPACPI_RFK_SW_MAX; i++) - tpacpi_rfk_update_swstate(tpacpi_rfkill_switches[i]); -} - /* * Sync the HW-blocking state of all rfkill switches, * do notice it causes the rfkill core to schedule uevents @@ -3145,9 +3136,6 @@ static void tpacpi_send_radiosw_update(void) if (wlsw == TPACPI_RFK_RADIO_OFF) tpacpi_rfk_update_hwblock_state(true); - /* Sync sw blocking state */ - tpacpi_rfk_update_swstate_all(); - /* Sync hw blocking state last if it is hw-unblocked */ if (wlsw == TPACPI_RFK_RADIO_ON) tpacpi_rfk_update_hwblock_state(false); -- 2.33.0