From patchwork Thu Oct 3 15:53:21 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Greg Kroah-Hartman X-Patchwork-Id: 175118 Delivered-To: patch@linaro.org Received: by 2002:a92:7e96:0:0:0:0:0 with SMTP id q22csp544813ill; Thu, 3 Oct 2019 09:20:39 -0700 (PDT) X-Google-Smtp-Source: APXvYqzlzzHDRJZawrGexKnRG/qZNkyMhiXzw0mfPtoDbpSAXYUzi09KYDt8i6lbA1q5yiPDjeAe X-Received: by 2002:a05:6402:13c9:: with SMTP id a9mr10277640edx.25.1570119638451; Thu, 03 Oct 2019 09:20:38 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1570119638; cv=none; d=google.com; s=arc-20160816; b=kZy0zQXvsBvd7sa1q/aGCBb2aszmMo4HIsI7/DDKG2IWcZnXIJ2QdY1R6ikhKiv1OG I9VnuxJdd859Tl95lBBbzQld9cU6sEd4ScBc0lBi/rCGgToZb9fjrxQIBIoAmLrAczMk uMhbl/2Fj3GxJQVgaYP+3scTvZF4DuzB+R5w/oxdUjzAiZZkYmN9dKHEb4WFO2IVUHsj lG1ns8P/7aQJHKeGim43vOSdThrYEMsKLGNDsCOEDuFp0He6enyj2HNVVbZ+bB5X59bD R/BTzSjU9CVP4YGIggSuK3CJFDat9SQli7dp7zvkKyYYKE6wgSvQWaYfIuEsUBjKLuwb U1ZA== 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=WxYTIK4VNzcOWbonVackn9Yu9lqCtEHBB3gEA30/Aa0=; b=FvJkdojzpIp7G3cy9K257r3lrju3rhoPYTzCq3qQC6wEveZYUOEudF1pC5UF0nO6N0 x7DZHEF4Ye+Wvk3HDQ9KtsJyz6mNf8s/ARGRfZ5svBW2RsA95BcXuHSSI5ZazElXWlXd 5iQGHhLMQSaGPF1ZiFvUGjvrIDavfty4uVJqFRxZs177DvzGs8aFxfoSniKiYL22NDUH ABDce6ZPb1E9xnf4Zstzk+ilYUX9Gofxfn2V3wcXd9jm3Wfn+NkIrLkKQnHYEVUm3kGX 5AdCyTGC/whyv9uNnT69WIuQTRZmfPruKO13Gu1hCfhXan0XVHZv4lE8MYZuUleC+rj5 vfTQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=VRMzGFRN; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id g90si1919517edd.329.2019.10.03.09.20.37; Thu, 03 Oct 2019 09:20:38 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=VRMzGFRN; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2389949AbfJCQUg (ORCPT + 27 others); Thu, 3 Oct 2019 12:20:36 -0400 Received: from mail.kernel.org ([198.145.29.99]:48228 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1732597AbfJCQUb (ORCPT ); Thu, 3 Oct 2019 12:20:31 -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 C9E6720865; Thu, 3 Oct 2019 16:20:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1570119630; bh=DWNzfLJ61MFerPbmG0E1WG/O8uncf6ZwntcksS8TIQI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=VRMzGFRN5mYsANSMvD3kQr2jiOK/uNlSlrT9HrsjDYLM4kdvnQm9XpXSEk9QhX1bP 8/qceJmtVZqm+tdYyJUUeBUJYA8zDbXtLy9CvW9RkZylY7eZAXShNdT0zi4R3rXWex Hk7Q9kE/2jFlOcYmH7E6OZfqUBCs2NHwNkBEy2Vw= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Matthias Kaehlcke , Ulf Hansson , Douglas Anderson , Sasha Levin Subject: [PATCH 4.19 135/211] mmc: core: Add helper function to indicate if SDIO IRQs is enabled Date: Thu, 3 Oct 2019 17:53:21 +0200 Message-Id: <20191003154517.961917276@linuxfoundation.org> X-Mailer: git-send-email 2.23.0 In-Reply-To: <20191003154447.010950442@linuxfoundation.org> References: <20191003154447.010950442@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Ulf Hansson [ Upstream commit bd880b00697befb73eff7220ee20bdae4fdd487b ] To avoid each host driver supporting SDIO IRQs, from keeping track internally about if SDIO IRQs has been claimed, let's introduce a common helper function, sdio_irq_claimed(). The function returns true if SDIO IRQs are claimed, via using the information about the number of claimed irqs. This is safe, even without any locks, as long as the helper function is called only from runtime/system suspend callbacks of the host driver. Tested-by: Matthias Kaehlcke Signed-off-by: Ulf Hansson Reviewed-by: Douglas Anderson Signed-off-by: Ulf Hansson Signed-off-by: Sasha Levin --- include/linux/mmc/host.h | 9 +++++++++ 1 file changed, 9 insertions(+) -- 2.20.1 diff --git a/include/linux/mmc/host.h b/include/linux/mmc/host.h index 2ff52de1c2b89..840462ed1ec7e 100644 --- a/include/linux/mmc/host.h +++ b/include/linux/mmc/host.h @@ -488,6 +488,15 @@ void mmc_command_done(struct mmc_host *host, struct mmc_request *mrq); void mmc_cqe_request_done(struct mmc_host *host, struct mmc_request *mrq); +/* + * May be called from host driver's system/runtime suspend/resume callbacks, + * to know if SDIO IRQs has been claimed. + */ +static inline bool sdio_irq_claimed(struct mmc_host *host) +{ + return host->sdio_irqs > 0; +} + static inline void mmc_signal_sdio_irq(struct mmc_host *host) { host->ops->enable_sdio_irq(host, 0);