From patchwork Tue Jun 23 19:50:51 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Greg KH X-Patchwork-Id: 191626 Delivered-To: patch@linaro.org Received: by 2002:a54:3249:0:0:0:0:0 with SMTP id g9csp1377438ecs; Tue, 23 Jun 2020 14:43:57 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxPTzddGL4fMZG/Qz4O60UMF2jaRW00T3lTsCsNfRGf717s2EpOjab3DxdLaKiW+fw4UcUY X-Received: by 2002:a17:906:cf91:: with SMTP id um17mr3527886ejb.168.1592948637459; Tue, 23 Jun 2020 14:43:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1592948637; cv=none; d=google.com; s=arc-20160816; b=iHCtiUBhcxmMRZiqPwopV+JGtgCF2uFIGaHgd3lonLt38D7fRPV7YWbWvzpaerPGCp dNBYfYyjmhCRt87q/imclHDmY4G9x0K+dQ0Vm3rY5B+044jIKtTdVyt8WGhgbgkD3sR1 wkMuhXMiiV1fhEoO1j3rC3/OHnGFlOLbE/osVNwy+eWnY0K/aFkZeoV0nVrVYhM8viHR 9AU+tBNCVrVFF7BNudNGPiphut3o+FO6Gtl7mDIn2Fb6VZAUvb0pW/T9JiMaGu5J9XWk 3N+c+OMKaJg5iv22tSTyY16K1TpUr5XNNtnVqX3//J7WvuGGY/uRUvFZ2tUcXPp46noC r7tw== 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=BPYMIw+37RvRV65vQztfzlSTSOCU6VoHT6epxVnG0Ss=; b=QOJnFeUj6f9RmdRHgK24OTtdYMIq0zQ/NsvJ3eawfDEEdpYmVGSjL0xAzUQ6Txdas5 13ZDTKof8Lm4a0Of7oEPLWMUY4NS4KPl/JTtP16nuCyP4aIvlvCnd1E/uxGtO+LunmQ2 gG6hBjXB/I/ziNU+f8VvQaMfQ6oxqSlNzIFLKj63DSJcCOLbVRr81vA6Bg1PPeKriaQJ iHZ43FqT2diq2kaRoIH4AfgfGi8Dv5OMmGGnO0cuKSubXK8ESLXQTcFGWE9XaSTzziOR UMtmHDwK6ut+DVExAHJOg1QfPXGihBUhdPika9fm45BcxUuNPTqFDDvP0trGhX1QkOk5 cFdg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=2gsnxsBV; spf=pass (google.com: domain of stable-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=stable-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 v8si6135640ejb.548.2020.06.23.14.43.57; Tue, 23 Jun 2020 14:43:57 -0700 (PDT) Received-SPF: pass (google.com: domain of stable-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=2gsnxsBV; spf=pass (google.com: domain of stable-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=stable-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387966AbgFWUDE (ORCPT + 15 others); Tue, 23 Jun 2020 16:03:04 -0400 Received: from mail.kernel.org ([198.145.29.99]:40472 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387964AbgFWUDC (ORCPT ); Tue, 23 Jun 2020 16:03:02 -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 0539A2078A; Tue, 23 Jun 2020 20:03:00 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1592942581; bh=9/LBg4O0E12RfutimPzYdGkz066z0xWK9cekAAQRx5c=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=2gsnxsBV4tQv2JTzEV0g60/Ge44pZAcmEbGSPdnt9ty5zdkfAKu6qmUkI0qqeQ80+ OopOv0DsgoIqw492zgpeCQFL7p3hCJrchvMZkt8bHEa8s0kCtOsLClWWpiMvPsOUUO yd3DCRlSb7B/ACobjsP5VbZUh50n3s6Lm9uMaVdE= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Daniel Baluta , Kai Vehmanen , Pierre-Louis Bossart , Ranjani Sridharan , Mark Brown , Sasha Levin Subject: [PATCH 5.7 054/477] ASoC: SOF: Do nothing when DSP PM callbacks are not set Date: Tue, 23 Jun 2020 21:50:51 +0200 Message-Id: <20200623195410.161234058@linuxfoundation.org> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20200623195407.572062007@linuxfoundation.org> References: <20200623195407.572062007@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Sender: stable-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: stable@vger.kernel.org From: Daniel Baluta [ Upstream commit c26fde3b15ed41f5f452f1da727795f787833287 ] This provides a better separation between runtime and PM sleep callbacks. Only do nothing if given runtime flag is set and calback is not set. With the current implementation, if PM sleep callback is set but runtime callback is not set then at runtime resume we reload the firmware even if we do not support runtime resume callback. Signed-off-by: Daniel Baluta Signed-off-by: Kai Vehmanen Reviewed-by: Pierre-Louis Bossart Reviewed-by: Ranjani Sridharan Link: https://lore.kernel.org/r/20200515135958.17511-2-kai.vehmanen@linux.intel.com Signed-off-by: Mark Brown Signed-off-by: Sasha Levin --- sound/soc/sof/pm.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) -- 2.25.1 diff --git a/sound/soc/sof/pm.c b/sound/soc/sof/pm.c index c410822d9920d..01d83ddc16bac 100644 --- a/sound/soc/sof/pm.c +++ b/sound/soc/sof/pm.c @@ -90,7 +90,10 @@ static int sof_resume(struct device *dev, bool runtime_resume) int ret; /* do nothing if dsp resume callbacks are not set */ - if (!sof_ops(sdev)->resume || !sof_ops(sdev)->runtime_resume) + if (!runtime_resume && !sof_ops(sdev)->resume) + return 0; + + if (runtime_resume && !sof_ops(sdev)->runtime_resume) return 0; /* DSP was never successfully started, nothing to resume */ @@ -175,7 +178,10 @@ static int sof_suspend(struct device *dev, bool runtime_suspend) int ret; /* do nothing if dsp suspend callback is not set */ - if (!sof_ops(sdev)->suspend) + if (!runtime_suspend && !sof_ops(sdev)->suspend) + return 0; + + if (runtime_suspend && !sof_ops(sdev)->runtime_suspend) return 0; if (sdev->fw_state != SOF_FW_BOOT_COMPLETE)