From patchwork Tue Jun 4 15:51:33 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thierry Reding X-Patchwork-Id: 10975583 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id E57DF14E5 for ; Tue, 4 Jun 2019 15:51:54 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id C6B731FE82 for ; Tue, 4 Jun 2019 15:51:54 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id B95EA2000A; Tue, 4 Jun 2019 15:51:54 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,DKIM_VALID,FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id BD87C1FE82 for ; Tue, 4 Jun 2019 15:51:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:To :From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=Y/ts52Rus+f+nJFoHjO6G1X78NV6Pv1sAOsBIHs9YYI=; b=TL+kbGO7+k+YR8 1BGqL93mryw4u6bw8VPsOKxjfUME5Nsg/EKPJJ3Lkv04oQc3CZ87JFmqZ1mRhE0OgpG8qduQtSnFO WimfPSJfU6MYxQZDHjQgyHhpCtXeqdxm6WegstXW+nLeEWPqE2EYwHK5fcAHKYR2DtKIn+w7t4Isg Mi4yG9ai92Qj2rNJPiitucC2XIHQyrbGmAhREO7a9j388k38RC4K/MMCTIJftEdNiR8oI9tXoIiiz DRR9z1b0T9RTXX/65eAuQ0nswmnt7gdfWWvGRwB40zXCWRt8iturPNAPSLQarSGrz+kItP7J4TnoV cx23fc6mjcjBlgQaFnQA==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1hYBj2-0008AS-9t; Tue, 04 Jun 2019 15:51:48 +0000 Received: from mail-wr1-x444.google.com ([2a00:1450:4864:20::444]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1hYBiy-00089p-TR for linux-arm-kernel@lists.infradead.org; Tue, 04 Jun 2019 15:51:46 +0000 Received: by mail-wr1-x444.google.com with SMTP id e16so8129960wrn.1 for ; Tue, 04 Jun 2019 08:51:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=qH4FDRgRxazUxppnfy66oz7/ZG4EwLFotnt4vrr38Jk=; b=ph1lWQ+lD7EEE/KoatFoMerQik8dUq2QfqaGCfo7jVtKJxMuNmqsThFLNMeeh7kkS+ FD0nIKmo1GtzpfttCVJcwIMmJyB5JHhFexJ8+8wALREiZztVcbbLGac6k+1wZ4wWMQ9s S549TuGx7TdiORJMeoMfamHmIMeL9vhVWIvKklBmPOPrBXdf3KFoneu4kcfpMmIysKvr uSRWIkIh4h4kotHAJTFeNJ3qlTXKjXzHdRRumEHoXdy+N3gIqnghr8iBDZuMd1K+4kZq C/YWPpXgeDGmws4DQaMkdvTWNtLXBZFlbTRRUiwk4764DdtYBpwO87yIfQElPI88QA2e ldaQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=qH4FDRgRxazUxppnfy66oz7/ZG4EwLFotnt4vrr38Jk=; b=GmSTY24ugCjBsqfgpaAegZzY8n9agoxBkWNXx8ZV/VvNbdN4tRXJqjl/22ifFYoJC9 kRsV0Ifq6HJ98zn1A3hihxocp8y+FSO7zXx5bn8ZNldh0Rw00kq6zmj+s8GXGfFXOGUJ 7l95LiMuz+7y9tmaQBziIpCnb62xnJ/seNWKU06K1uglA7H83/JetcdQ3PCI1vVwB75t X1WFKFz6LeR0iPOOCQ7ue6KGDbsNJq5KZ0UcWae4p2F3T4PK1ZIPQZMgGvBcZT+G6ZAm iCDnOlhfUiNpbFKfJWtX9/82kujKu3LxQ+SuzWk6umzywDevY0YI5AGo0YDZZl6XiVJR AVcg== X-Gm-Message-State: APjAAAVDqlKpKJ4ImiDc1yWF1j8CfHbi8N0pTwRDX0UVGA/Zbzwimark DrMSwgd3BuPah0JY1dxBb+Y= X-Google-Smtp-Source: APXvYqyJDCOSSw64vLkSR9L4wCqk+kXrRkrMGCNK8o6OONOCjbvwA7NYyHqVoIQWqFYEp/Nq7LQ24g== X-Received: by 2002:a5d:404a:: with SMTP id w10mr2976806wrp.177.1559663502864; Tue, 04 Jun 2019 08:51:42 -0700 (PDT) Received: from localhost (p2E5BEF36.dip0.t-ipconnect.de. [46.91.239.54]) by smtp.gmail.com with ESMTPSA id d18sm3511733wrn.26.2019.06.04.08.51.36 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Tue, 04 Jun 2019 08:51:36 -0700 (PDT) From: Thierry Reding To: Thierry Reding Subject: [PATCH v2 1/3] soc/tegra: pmc: Fail to allocate more than one wake IRQ Date: Tue, 4 Jun 2019 17:51:33 +0200 Message-Id: <20190604155135.25390-1-thierry.reding@gmail.com> X-Mailer: git-send-email 2.21.0 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190604_085144_968995_CD6BA639 X-CRM114-Status: GOOD ( 11.23 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-tegra@vger.kernel.org, Bitan Biswas , linux-arm-kernel@lists.infradead.org, Jon Hunter Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP From: Thierry Reding The code currently doesn't support allocating more than one wake IRQ at a time. Detect this situation and error out. Also make sure to output a warning when that happens to help track down callers. Signed-off-by: Thierry Reding --- drivers/soc/tegra/pmc.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/soc/tegra/pmc.c b/drivers/soc/tegra/pmc.c index 5648e5c09ef5..653fe2c466f6 100644 --- a/drivers/soc/tegra/pmc.c +++ b/drivers/soc/tegra/pmc.c @@ -1863,6 +1863,9 @@ static int tegra_pmc_irq_alloc(struct irq_domain *domain, unsigned int virq, unsigned int i; int err = 0; + if (WARN_ON(num_irqs > 1)) + return -EINVAL; + for (i = 0; i < soc->num_wake_events; i++) { const struct tegra_wake_event *event = &soc->wake_events[i]; From patchwork Tue Jun 4 15:51:34 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thierry Reding X-Patchwork-Id: 10975585 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 38BD613AD for ; Tue, 4 Jun 2019 15:52:00 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 23FAA1FE82 for ; Tue, 4 Jun 2019 15:52:00 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 17BBF2000A; Tue, 4 Jun 2019 15:52:00 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,DKIM_VALID,FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id C13AE1FE82 for ; Tue, 4 Jun 2019 15:51:59 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-Id:Date:Subject:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=6g5mgMs/e3CJHZRPP3s8ruagZ2NIlgUQ3uzjYsOlNbk=; b=qyPFI4HUOygAAf IJCeP/Owi7n9JTXw/xkmf59O81rz01ZPsK+8/CjVTtWHmYw95d+ynEw8NrLQr8oNTYHtH0JdY5rHv aQPnnWkh97O8jgDVEZ6ZwzhUvqAfxGyM+Aa91f17PPQXcByhGnYsse0t8a4ry/6G1IvCUpFoKu6Gp qLQAzt7uU/XgPVvsAzfaDspgB5cB+qgDERMXaaedXQNDeOuWZXFfO7cWR1mgRoG3rRIi9F24ZFoqo D2drRJYkacPUSIjcP2ZVvCSpVKEQQMbJJtdBYOXK+qRFGL5RmjsDXanKS5WCldK8SO7qXE0vUllt+ HLCtagjVzyW9Gu9azhiw==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1hYBj9-0008HV-09; Tue, 04 Jun 2019 15:51:55 +0000 Received: from mail-wr1-x443.google.com ([2a00:1450:4864:20::443]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1hYBiz-00089t-VH for linux-arm-kernel@lists.infradead.org; Tue, 04 Jun 2019 15:51:47 +0000 Received: by mail-wr1-x443.google.com with SMTP id n9so3954649wru.0 for ; Tue, 04 Jun 2019 08:51:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=F4ek3zhf26WPz8SCGgna791YOt0uckHhipVYXfvPpfU=; b=XGG7x/0Qq8KnWSmPkGdKfHq1zDE2aAodLekp+OEHF8Tc/V5DFe6NQNd1OygFjjbn9S AOXqnPEK9bgacoCJFI/kWmmfYcnOTF2uirOplzw3465/WKxtyWshYUYpzaNPLVKWa69T s3oK+2GnKuxF2fRxoaPndZqcIDanJPzyKKwHsqSUTz7jvqT6mncu57KE6soXiVES4uCC Uigv2DfwGdj1QnCpVt66+RFxcUEPtJY3nVN8mFa2g+tBGBqMpRJ+Pu/bk7mz71npf86L PfCXK+BP8NCU6mCAQBkA4hq+5Ss1ey9+brNxtmMphkPjDep3thoXPkxb1ZmVdxZ2ANkW lmLA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=F4ek3zhf26WPz8SCGgna791YOt0uckHhipVYXfvPpfU=; b=tvokdtV35hClq6C2aiIpLdyjoBmrqbA+4jgJcUSgK+aqg7Qi2CoKbj/zztv7CZP/Qa 2JWrDUByCgBz77E/OfV04Af1uBftQpPO5qOwypZLnTliMKT272n9+w/i6o+gHIQiUUT0 17g39u5+nSBbqXlcI+6g/zb+yVkBzbunctVVdvK0jUFWNBG4776Gk0oElee5ecnGdzie U50E2j5usfxeHd1evVtKDKziakG4pwJs7jrP2QbhlCJImmvqSBrcTv2drItMqTFcGqbv vDbR0w/dkBvE5l7zyTJGynmpQPZj1nWUsZDgc6HEY52Bg1HbaV0IWTJuqCXFi2w4vRqq XSzg== X-Gm-Message-State: APjAAAW8l+SbRzR76Ndqo4eFhkLpWaJ4QEGATwB9JNVtN8pvsm3ZaXG9 V7f4atHmHIfA9bzWIwfuSAc= X-Google-Smtp-Source: APXvYqw4C4LGMN7NBSczIExaeHfJAuBoLFtRAb9hpG/JyhfUy+lb+y4NuU267pEoEav5OxrI3IfdNg== X-Received: by 2002:a05:6000:1202:: with SMTP id e2mr20691009wrx.239.1559663504460; Tue, 04 Jun 2019 08:51:44 -0700 (PDT) Received: from localhost (p2E5BEF36.dip0.t-ipconnect.de. [46.91.239.54]) by smtp.gmail.com with ESMTPSA id l8sm13748311wrw.56.2019.06.04.08.51.43 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Tue, 04 Jun 2019 08:51:43 -0700 (PDT) From: Thierry Reding To: Thierry Reding Subject: [PATCH v2 2/3] soc/tegra: pmc: Avoid crash for non-wake IRQs Date: Tue, 4 Jun 2019 17:51:34 +0200 Message-Id: <20190604155135.25390-2-thierry.reding@gmail.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190604155135.25390-1-thierry.reding@gmail.com> References: <20190604155135.25390-1-thierry.reding@gmail.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190604_085146_001457_D8C4D44D X-CRM114-Status: GOOD ( 11.09 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-tegra@vger.kernel.org, Bitan Biswas , linux-arm-kernel@lists.infradead.org, Jon Hunter Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP From: Thierry Reding For interrupts that are not wakeup sources but that may end up getting mapped through the PMC as interrupt parent (this can happen for GPIOs), return early in order to avoid a subsequent crash from an out-of-bounds access to the register region. Reported-by: Bitan Biswas Signed-off-by: Thierry Reding --- drivers/soc/tegra/pmc.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/soc/tegra/pmc.c b/drivers/soc/tegra/pmc.c index 653fe2c466f6..6e66b5e293be 100644 --- a/drivers/soc/tegra/pmc.c +++ b/drivers/soc/tegra/pmc.c @@ -1924,6 +1924,9 @@ static int tegra_pmc_irq_set_wake(struct irq_data *data, unsigned int on) unsigned int offset, bit; u32 value; + if (WARN_ON(data->hwirq == ULONG_MAX)) + return 0; + offset = data->hwirq / 32; bit = data->hwirq % 32; From patchwork Tue Jun 4 15:51:35 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thierry Reding X-Patchwork-Id: 10975587 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 8966014E5 for ; Tue, 4 Jun 2019 15:52:12 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 777A31FE82 for ; Tue, 4 Jun 2019 15:52:12 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 6B56B2000A; Tue, 4 Jun 2019 15:52:12 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,DKIM_VALID,FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 0F5E81FE82 for ; Tue, 4 Jun 2019 15:52:12 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-Id:Date:Subject:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=W+oqZJ7QjaEWuj7T/46e81ZceAZ0JVg0v0Tlje4/mbU=; b=VfraZP1RdTA5ji 9YYPhDTj4Sr2l3gcVfyY8tVRLWuqpQW8voiuRxSD5QsjO0f+fkPBR7ezFwYYnSqtCwxFimhdoW0hj iHUy4TES1SQEb87pf31klZaM0mjD7xgk8gT5/9gbw/8uO49OLjzxJbWGYWZWRAy6LN/c+0Wm7JBhw Hogj72CdEvADHyHqH/XGxstJrNrbufsTjCUPPpQW76HzjlmSZsmdTEzC3uj050WNYuqUc+CqkDf4p mkVVozyN7AsDvJcRbD/D4pTr1yceQJ3JtsVszrWg26OBS4F7AKvryj+iu5EsCFRGSrOXYxP9wLRtZ uwXkp5aHjQDpDmDGDzaQ==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1hYBjH-0008WT-Pu; Tue, 04 Jun 2019 15:52:03 +0000 Received: from mail-wm1-x344.google.com ([2a00:1450:4864:20::344]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1hYBj1-0008AM-Je for linux-arm-kernel@lists.infradead.org; Tue, 04 Jun 2019 15:51:49 +0000 Received: by mail-wm1-x344.google.com with SMTP id c6so617761wml.0 for ; Tue, 04 Jun 2019 08:51:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=Z+OhEzHhvUeJebIEatFExcxGd1KsR5MutbeuVcAmdiM=; b=IZoG5iQfhwH3WPZ7yI+hJljmBqEI9xfgXEgkUxl7gTycgWFGden7jqMKmTnTQvh+u2 yMHOBvLA3h8oxxpysF/UgPQrSmeRxjSvx92v/YzblfFF4jRFuyXJHzWATLk/jsv5+O86 bg4pNSi0dbnzBb070ToI5yPLMbPr4tMH25bK24rnfsfCLA5c7RxSSgq7n0WbXHVziroz WlQKYvRbvKpLvYjznY9TJsVjmwIJEdHMRhh5hY10oaM2+YSdXMvGsgkwJpjQc8N2JVXv WpNhN+W3C5O+JjEjhoumaTjIB9W7BNEjercK1MWRCXUW7m1uWOiTpP1AK268hRL2IK1b /hfw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=Z+OhEzHhvUeJebIEatFExcxGd1KsR5MutbeuVcAmdiM=; b=SbvXktFABLWfZA5En/YR0JdCphaf6LR4pwOGhRd/qOZEoMrKZIG93WDFWISKHKgR+a hi2HfCk4ZhUEBw/JUtxVe5lA5Pdry6PtCdm37QFjuHWLRnzyGCmMdzzf/i2Rzlim7fo4 Ezx4qLyXn3XNFXmUNxCYgL1kZceK1fVNJyibZMqJwp17zT4C3EvHJBwfkjYBnL0BM+mB Hf+7M+UbM9aG5iLw9n2+H+fUaesGavF7zKPKfVcDidhLSxkE4VR2ZShhq8XKAmDPDMEw cn4pnkPZ92ya3pBtvxTLgxjFoj0kRlwYobCM60sSzbOOY2DRX+qXp4S3qFAJ7D4AMBvd tOlQ== X-Gm-Message-State: APjAAAVgNXvCsdFA/VKVPz+nthqpSxbzaAzkmXSBdMBd5bbLbnCNekki 7ASBhojmBUnMooZ1VFfv0ic= X-Google-Smtp-Source: APXvYqzipgasfebfDR/ejdqGH7KrYRMV/DH+W6zwO2QcBQ3VZMp4cnJ2vJlkoz7iUX8LbNQ0GZifUg== X-Received: by 2002:a1c:a848:: with SMTP id r69mr17095918wme.12.1559663506048; Tue, 04 Jun 2019 08:51:46 -0700 (PDT) Received: from localhost (p2E5BEF36.dip0.t-ipconnect.de. [46.91.239.54]) by smtp.gmail.com with ESMTPSA id d18sm3512155wrn.26.2019.06.04.08.51.45 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Tue, 04 Jun 2019 08:51:45 -0700 (PDT) From: Thierry Reding To: Thierry Reding Subject: [PATCH v2 3/3] soc/tegra: pmc: Add comments clarifying wake events Date: Tue, 4 Jun 2019 17:51:35 +0200 Message-Id: <20190604155135.25390-3-thierry.reding@gmail.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190604155135.25390-1-thierry.reding@gmail.com> References: <20190604155135.25390-1-thierry.reding@gmail.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190604_085147_641383_44329B25 X-CRM114-Status: GOOD ( 12.95 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-tegra@vger.kernel.org, Bitan Biswas , linux-arm-kernel@lists.infradead.org, Jon Hunter Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP From: Thierry Reding Add some comments to clarify the purpose of the wake event support implemented in the PMC driver. Signed-off-by: Thierry Reding Reviewed-by: Jon Hunter --- drivers/soc/tegra/pmc.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/drivers/soc/tegra/pmc.c b/drivers/soc/tegra/pmc.c index 6e66b5e293be..af8f63a844cd 100644 --- a/drivers/soc/tegra/pmc.c +++ b/drivers/soc/tegra/pmc.c @@ -241,6 +241,11 @@ struct tegra_pmc_soc { const char * const *reset_levels; unsigned int num_reset_levels; + /* + * These describe events that can wake the system from sleep (i.e. + * LP0 or SC7). Wakeup from other sleep states (such as LP1 or LP2) + * are dealt with in the LIC. + */ const struct tegra_wake_event *wake_events; unsigned int num_wake_events; }; @@ -1906,6 +1911,11 @@ static int tegra_pmc_irq_alloc(struct irq_domain *domain, unsigned int virq, } } + /* + * For interrupts that don't have associated wake events, assign a + * dummy hardware IRQ number. This is used in the ->irq_set_type() + * and ->irq_set_wake() callbacks to return early for these IRQs. + */ if (i == soc->num_wake_events) err = irq_domain_set_hwirq_and_chip(domain, virq, ULONG_MAX, &pmc->irq, pmc); @@ -1924,6 +1934,7 @@ static int tegra_pmc_irq_set_wake(struct irq_data *data, unsigned int on) unsigned int offset, bit; u32 value; + /* nothing to do if there's no associated wake event */ if (WARN_ON(data->hwirq == ULONG_MAX)) return 0; @@ -1954,6 +1965,7 @@ static int tegra_pmc_irq_set_type(struct irq_data *data, unsigned int type) struct tegra_pmc *pmc = irq_data_get_irq_chip_data(data); u32 value; + /* nothing to do if there's no associated wake event */ if (data->hwirq == ULONG_MAX) return 0;